APUE<一>

unix基础知识

unix体系结构

内核的接口称之为系统调用; 公用函数库建立在系统调用上,用户既可以调用函数库函数,也可以使用系统调用; shell是特殊的应用程序,为其它应用程序提供接口;

登录

登录项通常在/etc/passwd文件中,但加密口令不在此;

文件和目录

目录是一个包含目录项的文件,而目录项包含一个文件名和相关的文件属性;

工作目录:当前目录

起始目录:登陆后的当前目录

输入和输出

文件描述符:一个非负整数,用来标识一个特定进程正在访问的文件;

标注输入、输出、错误:0,1,2;

不带缓冲的IO:open、read、write、lseek、close;

带缓冲:fgets、fgetc、printf等等;

程序与进程

程序:磁盘上的可执行文件,内核通过exec将程序读入内存;

进程:程序的执行实例;

线程:线程的ID只在本进程下有效;

出错处理

当Unix的系统函数出错时,会返回一个负数,同时errno变量会被设置为一定的相关值。

用户标识

用户ID为0的是root;组ID的登录项在/etc/group

信号

处理信号的三种方式:忽略信号,按照系统默认终止进程,提供一个函数去处理信号