我是靠谱客的博主 繁荣月饼,这篇文章主要介绍笔记 操作系统概论_进程管理第一节 进程的描述第二节 进程的控制,现在分享给大家,希望可以做个参考。

第一节 进程的描述

一.程序的并发执行

1.程序的顺序执行:
一条指令完毕之前不能开始执行另一条指令。特点如下:
① 顺序性:处理机的操作,严格按照程序规定的顺序执行,只有前一操作结束后才能执行后继操作。
② 封闭性:程序是在封闭的环境下运行的。程序在运行是独占全机资源,程序一旦执行,其结果不受外界因素影响。
③ 可在现性:只要程序执行时的环境和初始条件相同,多次重复执行,执行结果相同。
2.程序的并发执行:
并发执行同一时间间隔内运行多个程序。特点如下:
① 间断性:每个程序在cpu上运行都是时断时续的。因申请不到资源而暂停的程序,当其他程序释放后,该程序才可继续执行。资源有限使并发执行的程序呈现执行过程的间断性。
② 失去封闭性:程序并发执行时,他们共享资源或者合作完成同一项任务,系统的状态不在是只有一个程序可见。
③不可再现性:程序在并发执行时,由于失去封闭性,导致其失去执行结果的可再现性。多次运行出现不同的结果。

二.进程的概念

1.进程的定义:
定义1:进程时允许并发执行的程序在某个数据集合上的运行过程

定义2:进程由正文段、用户数据段和进程控制块组成。
正文段:存放被执行的机器指令。
用户数据段:存放进程在执行时直接进行操作的用户数据。
进程控制块: 存放程序的运行环境。

2.进程的特征:
①.并发性: 多个进程实体能在一段时间间隔内同时运行。
②.动态性: 进程是程序实体的执行过程,进程的动态性表现在因执行程序而创建进程,因获得cpu而执行进程的指令、因运行终止而被撤销的动态变化过程。
③.独立性: 在没有引入线程概念的操作系统中,进程是独立运行和资源调度的基本单位
④.异步性: 进程的执行时断时续,什么时候执行、什么时候暂停都是无法预知的。
⑤.结构特征: 进程实体包括用户正文段、用户数据段和进程控制块。

3.进程与程序的比较
进程与程序的区别:程序是静态的,进程是动态的。程序是存储在某种介质上的二进制代码,进程对应程序执行的过程。
进程与程序的联系: 进程是程序的一次执行,进程总是对应至少一个特定的程序,执行程序的代码。
一个程序可以对应多个进程,用一个程序在不同的数据集合上运行,构成多个进程

三.进程控制块

操作系统中的进程不仅是一个概念,而是真实存在的实体.
1.什么是进程控制块
进程控制块是进程实体的一部分,操作系统中最重要的数据结构。控制块记录了操作系统所需要的、描述进程情况以及控制进程运行所需要的全部信息。

2.进程控制块中的信息
不同操作系统进程控制块包含的描述信息不完全相同,一般操作系统包含一下信息:
①.进程标识符信息: 进程标识符用于唯一标识一个进程。除了本进程的标识符还存放其父进程、子进程的标识符。
②.处理机状态信息:
处理机状态信息通常包括一下几个:
通用寄存器: 用户程序可以访问的寄存器,用于暂存信息。
指令计数器:存放cpu要访问的下一条指令的地址。
程序状态字psw:包含状态信息,如条件码,执行方式和中断屏蔽标志等。
用户栈指针:每个用户进程都有一个与之相关的系统栈,用于存放过程和系统调用参数以及调用地址,栈指针指向该栈栈顶。
③.进程调度信息: 包括进程状态信息、进程优先级、进程调度所需的其他信息。
④.进程控制信息: 包括程序和数据的地址、进程同步和通信机制、资源清单、以及链接指针。

四.进程的状态

进程控制块的状态字段描述了进程当前所处的状态。
1.进程的3种基础状态
就绪态: 进程一旦获取CPU就可以投入运行的状态。
执行态: 进程获得CPU正在运行的状态。
阻塞态: 进程由于等待资源或某个事件的发生而暂停执行的状态,系统不会为处于阻塞的进程分配CPU。在获得其等待的资源或等待的事件发生后,转变为就绪态。

2.进程状态的转换
新创建进程的状态一般被设置为就绪态,当操作系统为处于就绪态的进程分配CPU时,进程开始在CPU上执行,进程的状态从就绪态变为执行态。执行态进程可能变为就绪态,也可能变为阻塞态。操作系统通常会为进程规定一个在CPU上连续运行的时间长度,称为时间片。当cpu运行的时间片为0时,系统将该进程状态由执行态变为就绪态,cpu分配给其他就绪态进程。如果执行态进程在运行过程种因为申请某种支援或等待某个时间的发生而不宜继续占用CPU,该进程状态改变为阻塞态。
在这里插入图片描述

五.进程的组织

进程的组织是通过定于数据结构来实现的。
1.链接方式: 把系统中具有相同状态的进程的进程控制块(PCB)用其中的链接字链接成一个队列
在这里插入图片描述

2.索引方式: 系统根据所有进程的状态,建立几张索引表,索引表的每一个表项指向一个PCB的物理块。
在这里插入图片描述

3.进程队列: 当系统中有很多进程时,可以把进程控制块用队列组织起来,形成进程队列。把具有相同状态的进程放在同一个队列中,具有不同状态的进程就形成了不同的进程队列、如就绪队列、阻塞队列。又可以把就绪队列按优先权的不同分成优先权不同的就绪队列。
在这里插入图片描述

第二节 进程的控制

一.进程的创建

创建新进程包括为进程分配必要的资源,建立操作系统用于管理进程的数据结构(如进程控制块)等操作。下列情况需要创建新进程。
1.用户登录: 在交互式系统中,当一个新用户登录系统时会创建进程。
2.作业调度: 当把位于外存储器中的作业调入内存准备运行时,操作系统会为作业的运行创建进程。
3.提供服务: 操作系统可以创建一个进程,代表用户程序执行某种功能,使用户无序等待。
4.应用请求: 当用户发出执行某程序的命令,或者用户程序在执行中基于并行的要求在程序中显式调用进程创建的系统调用时都会引起进程的创建。

二.进程的阻塞

操作系统在下列情况下可能进行进程的阻塞和唤醒操作
1.请求系统服务: 如打印服务,进程在提出打印请求后,系统创建打印服务进程为该进程服务,提出打印请求的进程可能被阻塞起来等待打印完成。
2.启动某种操作: 进程发出启动I/O或启动打印机的命令后,等待启动完成时处于阻塞态。
3.新数据尚未到达: 对于一个计算进程,如果新的输入数据还没有达到,计算进程需要阻塞等待。
4.无新工作可做: 发送消息之后等待时。
处于执行态的进程被阻塞时,cpu空闲,需要执行调度程序,从就绪态进程中为cpu选择一个进程运行。

三.进程的唤醒

操作系统通过下列过程将阻塞态进程唤醒,使其变为就绪态进程。进程唤醒过程如下。
1.将进程从阻塞队列中移除。
2.将进程状态有阻塞态改为就绪态。
3.将进程插入就绪队列。

四.进程的终止

进程的终止也称进程的销毁,在下列情况下,进程会被终止。
1.当进程正常执行完毕,调用终止进程的系统调用,请求操作系统删除该进程。
2.一个进程调用适当的系统调用,终止另外一个进程。通常,操作系统规定只允许父进程通过这种方式终止其子进程。
父进程终止其子进程的原因可能有以下几个。
1.子进程使用了超过它所分配到的一些资源。
2.分配给子进程的任务已不再需要。
3.父进程退出,如果父进程终止,那么操作系统不允许子进程继续,称为级联终止。
操作系统通过系统调用完成进程终止的一般过程如下:
1.从进程PCB中读进程状态。
2.若进程正在执行,则终止进程的执行。
3.若进程有子孙进程,在大多数情况下需要终止子孙进程。
4.释放资源。
5.将终止进程的PCB移出。

五.操作系统的启动和系统中进程的出现

在这里插入图片描述

最后

以上就是繁荣月饼最近收集整理的关于笔记 操作系统概论_进程管理第一节 进程的描述第二节 进程的控制的全部内容,更多相关笔记内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(44)

评论列表共有 0 条评论

立即
投稿
返回
顶部