您的位置:首页 > 其它

操作系统之进程描述详解

2017-04-22 19:49 176 查看

进程的描述

操作系统的控制结构

操作系统作为资源管理和分配程序,其本质任务是自动控制程序的执行,并满足进程执行过程中提出的资源使用要求,因此操作系统的核心控制结构是进程结构,资源管理的数据结构将围绕进程结构展开。

为了有效的管理进程和资源,操作系统必须掌握每一个进程和资源的当前状态,通过构造一组表来管理和维护进程和每一类资源的信息,操作系统的控制表分为四类:

1. 进程控制表:来管理进程及其相关信息

2. 存储控制表:用来管理一级(主)存储器和二级(虚拟)存储器,主要内容包括:

1. 主存储器的分配信息
2. 二级存储器的分配信息
3. 存储保护和分区共享信息
4. 虚拟存储器管理信息。


3. I/O 控制表:用来管理计算机系统的 I/O 设备和通道,主要内容包括:

1. I/O 设备和通道是否可用
2. I/O 设备和通道的分配信息
3. I/O 操作的状态和进展
4. I/O 操作传输数据所在的主存区


4. 文件控制表:文件控制表用来管理文件,主要内容包括:

1. 被打开文件的信息
2. 文件在主存储器和二级存储器中的位置信息
3. 被打开文件的状态和其他属性信息


进程映像

当一个程序进入计算机的主存储器进行计算就构成了进程,操作系统中把进程物理实体和支持进程运行的环境合称为进程上下文(context)。当系统调度新进程占有处理器时,新老进程随之发生上下文切换。

进程上下文包括三个组成部分:

1. 用户级上下文:由用户程序块、用户数据块(含共享数据块)和用户堆栈组成的进程地址空间。

2. 系统级上下文:包括进程的标识信息、现场信息和控制信息,进程环境块,以及系统堆栈等组成的进程地址空间。

3. 寄存器上下文:由程序状态字寄存器和各类控制寄存器、地址寄存器、通用寄存器组成。

由于一个进程让出处理器时,其寄存器上下文将被保存到系统级上下文的相应的现场信息位置,因此进程的内存映像可以很好地说明进程的组成。简单的说,一个进程映像(Process Image)包括:

1. 进程程序块,即被执行的程序,规定了进程一次运行应完成的功能。通常它是纯代码,作为一种系统资源可被多个进程共享。

2. 进程数据块,即程序运行时加工处理对象,包括全局变量、局部变量和常量等的存放区以及开辟的工作区,常常为一个进程专用。

3. 系统/用户堆栈,每一个进程都将捆绑一个系统/用户堆栈。用来解决过程调用或系统调用时的地址存储和参数传递。

4. 进程控制块,每一个进程都将捆绑一个进程控制块,用来存储进程的标志信息、现场信息和控制信息。进程创建时,建立一个PCB;进程撤销时,回收PCB,它与进程一一对应。

进程控制块

每一个进程都有一个也只有一个进程控制块(Process Control Block),是操作系统用于记录和刻划进程状态及有关信息的数据结构

一般说,进程控制块包含三类信息:

1. 标识信息。用于唯一地标识一个进程

2. 现场信息。用于保留一个进程在运行时存放在处理器现场中的各种信息

3. 控制信息。用于管理和调度一个进程。常用的控制信息包括:

1. 进程的调度相关信息,如进程状态、等待事件和等待原因、进程优先级、队列指引元等
2. 进程组成信息,如正文段指针 、数据段指针
3. 进程间通信相关信息,如消息队列指针、信号量等互斥和同步机制
4. 进程在二级存储器内的地址
5. CPU 资源的占用和使用信息,如时向片余量、进程己占用 CPU 的时间、进程己执行的时间总和,记帐信息
6. 进程特权信息,如在内存访问和处理器状态方面的特权
7. 资源清单,包括进程所需全部资源、已经分得的资源,如主存资源、I/O 设备、打开文件表等。


进程的创建过程

在主进程表中增加一项,并从 PCB 池中取一个空白 PCB。

为新进程的进程映像中的所有成分分配地址空间。对于进程孵化操作(父进程创建子进程)还需要传递环境变量,构造共享地址空间。

为新进程分配资源,除内存空间外,还有其它各种资源。

查找辅存,找到进程正文段并装到正文区。

初始化进程控制块,为新进程分配一个唯一的进程标识符,初始化 PSW。

加入某一就绪进程队列,或直接将进程投入运行。

通知操作系统的某些模块,如记账程序、性能监控程序

进程上下文切换

进程的切换就是让处于运行态的进程中断运行,让出处理器,这时要做一次进程上下文切换、即保存老进程状态而装入被保护了的新进程的状态,以便新进程运行。进程切换的步骤如下:

1. 保存被中断进程的处理器现场信息。

2. 修改被中断进程的进程控制块的有关信息,如进程状态等。

3. 把被中断进程的进程控制块加入有关队列。

4. 选择下一个占有处理器运行的进程。

5. 修改被选中进程的进程控制块的有关信息。

6. 根据被选中进程设置操作系统用到的地址转换和存储保护信息。

7. 根据被选中进程恢复处理器现场。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: