随笔分类 - unix-c
摘要:《unix环境高级编程》是stevens大师为我们留下的一本关于unix的经典著作,内容详尽深刻,对unix系统接口做了深入的描述,博主闲来无事,做了张本书的思维导图,方法很简单,不过是根据原书的目录写成,在这过程中,又回忆了一下看过的知识。发现忘了好多,看来还得继续看啊。当然这种经典书籍,看多少遍也不为过,只要每次都能得到新知识便没有白看。图片下载链接:http://download.csdn.net/detail/ro_wsy/4617718
阅读全文
摘要:信号屏蔽字是指一个进程中当前阻塞而不能够递送给该进程的信号集。信号集则是一个能表示多个信号的集合的一种数据类型,为sigset_t。与信号集设置相关的函数有如下几个:#include <signal.h>/* * 下列四个函数成功返回0,出错返回-1 */int sigemptyset(sigset_t *set);int sigfillset(sigset_t *set);int sigaddset(sigset_t *set, int signo);int sigdelset(sigset_t *set, int signo);/* * 下面函数若真返回1,若假返回0,出错返回
阅读全文
摘要:unix中,信号是一种很重要的软件中断,提供了一种异步处理事件的方法,那么程序刚开始执行时信号的状态时什么样的呢?我们知道程序的创建无非两种情况,一种是调用exec函数,一种是调用fork函数。一般情况下,当一个程序执行时,所有信号的状态都是系统默认或者忽略。通常所有信号的动作都被设置成系统默认,除非调用exec的进程忽略该信号。确切的讲,exec函数将原先设置为要捕捉的信号都更改为系统默认动作,其他信号的状态不变。因为在新进程中,原进程的信号处理程序的地址在新进程中可能已无意义,所以原来要捕捉的信号在新进程中自然就不能捕捉了。另外,在fork中,信号的状态很简单,子进程继承其父进程的信号处理
阅读全文
摘要:unix中,信号是一种非常重要的软件中断,那么什么时候会产生信号呢,有下面四种情况:1. 硬件异常(如除以0)2.软件条件(如alarm计时器超时)3.终端产生信号4.调用kill函数
阅读全文
摘要:1.加载BIOS的硬件信息与进行自我测试,并依据设置取得地一个可启动的设备2.读取并执行第一个启动设备内的MBR的boot loader(即grub,spfdisk等程序)3.依据boot loader的设置加载kernel,kernel会开始检测硬件与加载驱动程序4.在硬件驱动成功后,kernel会主动调用init进程,而init会去的run-level信息5.init执行/etc/rc.d/rc.sysinit文件来准备软件执行的操作环境(如网络,时区等)6.init执行run-level的各个服务的启动(script方式)7.init执行/etc/rc.d/rc.local文件8.ini
阅读全文
摘要:unix系统中,有8种方式可以使进程终止,其中五种为正常终止,三种为异常终止。五种正常终止方式为:1.从mian返回2.调用exit()3.调用_exit()或_Exit()4.最后一个线程从启动例程返回5.最后一个现成调用pthread_exit三种异常终止方式:6.调用abort()7.接到一个信号并终止8.最后一个线程对取消请求作出响应
阅读全文

浙公网安备 33010602011771号