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;
信号
处理信号的三种方式:忽略信号,按照系统默认终止进程,提供一个函数去处理信号