1.3 操作系统概念
操作系统对计算机的扩展体现在一系列系统调用接口上。(system call)
以MINIX 3为例来介绍系统调用,系统调用分为两类:处理进程的、处理文件系统的
1)进程:进程是操作系统中的一个重要概念,指的是一个运行的程序,包括这个进程可读写的地址空间。地址空间包括程序本身、程序数据、堆栈。进程还包括一个寄存器的集合,包括程序计数器、栈指针和其他硬件寄存器。
进程可以被操作系统在内核中调度。
当进程临时挂起时,其相关的数据保存在进程表中,以便恢复运行时取用。
一个挂起的进程和其地址空间被称为 core image.
与进程相关的系统调用包括进程的创建和停止。
进程可以派生子进程;进程间可以通讯;
进程可能被signal中断,包括软中断、硬中断;
进程都有一个启动它的用户UID,用户又可以分组GID
2)文件:文件相关的系统调用包括打开、关闭、删除、读、写
引入了目录的概念,将相关的文件放在一起,形成了文件树;
每个进程都有其工作路径working directory
文件和路径都有权限保护:rwx
对文件的操作都通过文件描述符(file descriptor)
特殊的设备文件(special file): 包括块设备文件、字符设备文件。一般放在/dev目录下
特殊的文件管道(pipe)可以完成两个进程间的通讯;(windows就有这种通讯方式)
3)shell: 就是命令解释器,本身不属于操作系统,但是用户与操作系统交互的媒介,现在有很多流行的shell,如csh, bash等,可以参考相关的资料了解如何使用。