UNIX基础知识
UNIX体系结构
- 严格意义上来说,可以将操作系统定义为一种软件,控制计算机硬件资源,提供程序运行环境。通常把这种软件成为内核。
- 内核的接口被成为系统调用(system call)。公共函数库构建在系统调用接口之上,应用程序既可使用公共函数库,也可使用系统调用。shell是一个特殊的应用程序,为其他应用程序提供接口。
- 从广义上来说,操作系统包含了内核和一些其他软件,这些软件使得计算机能够发货作用,并且具有自己的特性。这些软件包含了系统实用程序(system utility)、应用程序、shell以及公用函数库等。
文件与目录
- UNIX文件系统是目录和文件的一种层次结构,所有东西的起点是称为根(root)的目录,这个目录的名称是一个字符“/”。
- 创建新目录时会自动创建了两个文件名:.(称为点)和…(称为点点)。点指向当前目录,点点指向父目录。在最高层次的根目录中,点点与点相同。
输入和输出
- 文件描述符(file descriptor)通常是一个小的非负整数,内核用以标识一个特定进程正在访问的文件。
- 每当运行一个新程序时,所有的 shell 都为其打开 3 个文件描述符,即标准输