操作系统概念

一、进程

1、进程的本质:正在执行的一个程序。
2、进程的地址空间:从某个最小值的存储位置(通常是零)到某个最大值存储位置的列表。在这个地址空间中,进程可以进行读写。该地址空间中存放有可执行程序、程序的数据以及程序的堆栈。与每个进程相关的还有资源集,通常包含寄存器(含有程序计数器和堆栈指针)、打开文件的清单、突出的报警、有关进程清单,以及运行该程序所需要的所有其他信息。
3、进程基本上是容纳运行一个程序需要所有信息的容器。
在许多操作系统中,与一个进程有关的所有信息,处理该进程自身地址空间的内容以外,均存放在操作系统中的进程表中,进程表是数组(或链表)结构,当前存在的每个进程都要占用其中的一项。一个(挂起的)进程包括:进程的地址空间(磁芯映像),以及对应的进程表项,其中包括寄存器以及稍后重新启动该进程所需的其他信息。

进程间通信:合作完成某些作业的相关进程进行彼此通信以便同步它们的行为。
进程系统调用:进程创建、进程终止、申请更多内存(或释放不再需要内存)、等待一个子进程结束、用另一个程序覆盖该程序等。

系统管理器授权每个进程使用一个给定的UID标识符,每个被启动的进程都有一个启动该进程的用户UID。子进程拥有与父进程一样的UID,用户可以是某个组的成员,每个组也有一个GID标识。

二、地址空间

通常每个进程有一些可以使用的地址集合,典型值从0开始直到某个最大值。在最简单情况下,一个进程可拥有的最大地址空间小于主存。

在23位地址的计算机中,有2^32字节的地址空间;64位就有2^64字节的地址空间。

虚拟内存:操作系统可以把部分地址空间装入主存,部分留在磁盘上,并且在需要时穿梭交换它们。该地址空间与机器的物理内存解耦,可能大于也可能小于该物理空间。

三、文件

操作系统的一项主要功能就是隐藏磁盘和其他I/O设备的细节特性,并提供给程序员一个良好、清晰的独立于设备的抽象文件模型。

进程和文件层次都可以组成树状结构,它们的不同之处在于:
一般进程的树状结构层次不深(低于三层),而文件树状结构的层次常多于4层以上,进程树层次结构是暂时的,时间短,而目录层次是永久性的。进程和文件在所有权及保护方面也有区别:只有父进程能控制和访问子进程,而在文件和目录中存在一种机制,使文件所有者之外的其他用户也可以进行访问。
目录结构中的每个文件都可以通过根目录(目录的顶部)来确定。在读写文件之前,首先要打开文件,检查其访问权限。若权限许可,系统将返回一个文件描述符(小整数),供后续操作使用。若禁止访问就会返回一个错误码。

四、保护

管理系统的安全性完全依赖操作系统,文件的访问权限也是需要进行保护的。
在UNIX系统中,每个文件赋予一个9位的二进制保护码,该保护码有三个3位字段—rwx位,其中r代表可读,w代表可写,x代表可执行。三个字段分别用于所有者,所有者同组中的其他成员以及其他成员。例如:rwxrw-r–代表了所有者可以读写执行文件,同组具有读写权限,而其他成员只具备读的权限。

五、shell

操作系统是进行系统调用的代码,shell是UNIX中的命令解释器,它本身不是操作系统的组成部分,它是终端用户与操作系统之间的界面。

你可能感兴趣的:(操作系统)