自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 【linux文件系统】inode索引节点/dentry目录对象/file文件对象

资料链接:Linux 内核编程之文件系统(二)几个关系:(1)inode索引节点表示文件的信息——每个文件都有一个inode。(2)dentry目录项表示文件名与inode的对应关系。(3)一个inode可能对应不止一个dentry结构。(一)inode索引节点:            一个文件对应的索引节点和超级块对象是唯一的,有多少个文件就有多少

2013-04-26 17:35:50 1840

原创 【linux管道】自学笔记

(管道)1.管道本身的性质:   管道创建后,一端fd[0]只能读,一端fd[1]只能写。如果试图在读端写,或在写端读,都会报错。2.父进程存有fd[0]和fd[1],fork后,子进程复制父进程的fd[0]和fd[1]。3.关闭父进/子进程的fd[0/1],并非关闭管道的读/写端,而是关闭父/子进程的文件描述符。4.以下是四种特殊情况:(读数据时)A. 若写端引用

2013-04-22 13:19:04 683

原创 【C指针详解】自学笔记

以下内容只有我能看懂了……(内存:010101001010010100101序列)(“本身能否实现”:如int型4字节赋值给指针型4字节时,指针的4字节本身能实现,但因类型不同,不能赋值)(某内存区,从当成”char“转为当成”int“:内存01序列是否变化;含义改变;本身能否实现)1.指针变量是可以存储值的。2.指针存的是地址。3.指针自身也占内存(对左值

2013-04-15 17:50:25 513

原创 【linux信号】信号处理函数执行后返回到信号发生处

运行系统:ubuntu 11.04编译环境:GCC语言:C语言#include#include#include#includevoid send_ip(){ printf("send a icmp echo request packet\n");}void recv_ip(){ while(1) ;}void handler_sigalar

2013-04-13 17:47:47 851

原创 【linux信号】sleep的用法

运行系统:ubuntu 11.04编译环境:GCC语言:C语言根据所查资料:sleep函数:#include unsigned int sleep(unsigned int seconds);此函数使调用进程被挂起,直到满足以下条件之一:1)已经过了seconds所指定的墙上时钟时间2)调用进程捕捉到一个信号并从信号处理程序返回注:由于其他系

2013-04-13 17:21:05 900

转载 (转载)【linux 信号】struct sigaction

Linux中信号相关的一个结构体struct sigaction主要在sigaction信号安装和sigqueue信号发送时会用到该结构位于/usr/include/bits/sigaction.h在里面可以找到该结构的描述/* Structure describing the action to be taken when a signal arrives.     */

2013-04-13 11:04:36 897

原创 【linux 信号】学习笔记

一. 几个时刻点:1.信号诞生;2.信号在进程中注册完毕;3.信号在进程中的注销完毕;(信号加入进程屏蔽字block中,函数执行完毕返回时,block恢复为原来的值)(不管是否屏蔽信号,注销是肯定的)4.信号处理函数开始执行。(sa_flags不为SA_NOMASK/SA_NODIFFER,该信号在此过程被屏蔽;否则不被屏蔽,可以执行。)

2013-04-13 00:20:55 649

转载 (转载)linux 信号

转自:http://blog.chinaunix.net/u2/63273/showart_613712.html 今天学习了Linux0.11核中与信号处理有关的部分,东西不多,但花了我很长时间取整明白。      在早期Linux中进程的通信方式就是信号机制。这种机制提供了一种处理异步事件得方法。信号的处理是在系统调用返回前进行的,之前在系统调用部分我已经说过,在系统调用返回之前如

2013-04-12 23:54:31 517

转载 (转载)【linux信号】信号未决与阻塞

信号状态:   信号的”未决“是一种状态,指的是从信号的产生到信号被处理前的这一段时间;信号的”阻塞“是一个开关动作,指的是阻止信号被处理,但不是阻止信号产生。   APUE例题在sleep前用sigprocmask阻塞了退出信号,然后sleep,然后在sleep的过程中产生一个退出信号,但是此时退出信号被阻塞过,(中文的”阻塞”在这里容易被误解为一种状态,实际上是一种类似于开关的动作,所

2013-04-12 15:10:53 478

转载 (转载)Linux C 多线程执行顺序问题

1:多线程设计通常是比较麻烦的,因为它牵涉到,线程间的同步、和执行顺序问题。在用户没有设定线程间的调度策略时,系统默认采取基于时间片轮转的调度策略。本实验是在默认的调度策略下,测试线程间的执行顺序问题。本实验用的系统为Ubuntu10.04,Thread model: posixgcc version 4.4.3 (Ubuntu 4.4.3-4ubuntu5) 2 执行代码#i

2013-04-11 15:21:26 951

转载 【linux进程】fork函数浅析

(本文内容总结:)1.虚拟内存。(不同的进程使用的虚拟内存,因此即使两个进程变量的地址(虚拟地址)一样,映射的物理地址也是不同的)。2.父进程运行到pid=fork()时,进入fork函数,创建一个进程,在进程表中新建一个进程表项(子进程表项中pc和父进程的pc一样)。3.子进程和父进程共享代码段。3.fork是“写时复制”。子进程也能运行原代码。但是不清楚子进程变

2013-04-11 15:17:47 575

原创 【linux多线程】自学笔记

1.多线程运行顺序:   单个进程内是顺序进行的。   多线程中子线程的执行是在主线程有空闲的条件下。即,如果主线程忙,或者是没有执行等待那么,子线程是不会执行的。   在用户看来,多个线程是同时执行的。   从操作系统调度上看:   单核单CPU:各个线程是交替执行的。系统不停地在各个线程之间切换,每个线程只有在系统分配给它的时间片内才能取得CPU的控制权,执行线程中的代

2013-04-11 15:15:07 548

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除