考研—操作系统—进程管理

操作系统中的进程管理包括进程的创建、终止、阻塞与唤醒、切换、结构、控制及通信等。进程是运行中的程序,具有动态性、并发性、独立性、异步性和结构性等特征。进程状态包括运行、就绪、阻塞、创建和结束,通过PCB(进程控制块)进行管理。进程间通信方式有共享存储、消息传递和管道通信。线程作为轻量级实体,提高了并发效率,降低了进程切换开销。处理机调度则涉及不同层次和多种调度算法,如FCFS、SJF、优先级调度等,以实现系统的高效运行。
摘要由CSDN通过智能技术生成

综述:何谓进程,进行中的程序,顾名思义,进程就是运行中的程序。即用户使用时的东西。所以进程是一种动态的概念,是只存在一段时间的过程概念。有着开始有着灭亡。进程可以称为是动态的程序。是程序实现功能时的投影。操作系统因为有了进程的概念,可以进行并发操作,并发运行的就是这些进程们。

进程的概念

为了实现进程,特别的设置一种数据结构叫做PCB(进程控制块),这里面包含着一个进程的各种信息,可以帮助完成各种操作。而进程的产生就是pcb的产生,而进程的灭亡就是pcb的灭亡,pcb就是进程存在的唯一标志。再加上程序段和数据段,一个进程就完整了。进程是一个动态的概念,可以这样理解,程序段和数据段是基础,没有程序数据也就没了进程,而程序段和数据段都是静态的,想让程序运行起来就需要合力一起创建PCB,这样进程就诞生了,程序就可以以进程的方式运行了。当需要关掉程序时,也就删除pcb。程序段和数据段也就变回了静止的样子。进程在运行过程中,是需要计算机资源的,进程就是计算机分配资源的一个最小单位。系统资源可以理解为时间片,每个进程宠幸几个时间片,也都是以进程为分配单位的。皇帝宠爱皇妃,不能以皇妃身上的汗毛为单位吧。

 

进程的特征

进程的特征是相对于单个程序顺序执行而提出的

动态性:是一次动态的过程,有创建、活动、暂停、终止等过程。具有生命周期。(是最基本的特征)

并发性:指进程的目的,进程的提出本身就是为了程序并发而设计的,进程的存在当然实现了程序的并发。也自然就有并发性的特征。

独立性:指进程是一个可以独立运行的独立单位。可以独立获得资源,独立接受调度的单位。

异步性:由于是并发进行的,资源又有限,进程以不可知的速度向前推进。进程的异步性与操作系统的异步性是一样的。表达的具有不可预知性。

结构性:进程具有相对规整的结构,都是由PCB、程序段、数据段构成的。

 

进程的状态与其转换

进程从创建到消亡,整个生命周期,具有几个特点鲜明的状态。通常有五种状态(也称为五态图

运行状态:正在使用处理机资源(此时是并发进行的,微观上依旧存在走走停停,但即使短暂的挺也算运行状态)

就绪状态:进程已经准备好了所有运行所需要的条件,就差cpu临幸了。一旦得到资源,立刻就可以运行。

阻塞状态:又称等待状态,进程因为某一件事暂停运行(这里是宏观上的暂停,不是微观上的暂停),阻塞状态就是进程还没有达到就绪的状态。即使cpu空闲也不能临幸它。

创建状态:进程正在被创建,PCB初始化。然后由系统分配必备的资源,最后把进程转入就绪状态。

结束状态:进程正在消失,可能是正常结束也可能是中断退出。系统置进程结束状态,收回资源,删除pcb。

【ps】就绪状态要转入运行状态的时候,系统分配的是时间片,当时间片进程还没结束的时候,会被重新挂为就绪状态。

 

 

进程控制

计算机中的控制就是管理,对进程实现创建,结束,状态转换的控制。控制进程所用的是原语。

 

进程创建

进程的创建可以是一个新的进程,也可以是已有进程创建的子进程。子进程可以继承父进程的资源,当子进程被撤销时,资源归还给父进程,而不是归还给系统。当父进程被撤销时,子进程也不能独立存在,也要被撤销。

操作系统创建一个进程的过程如下(创建原语

1)分配进程标识号,申请空白PCB(申请失败则创建失败)

2)为进程分配资源(程序、数据、内存空间)。(分配失败则转为阻塞状态而非失败)

3)初始化PCB(标志信息、处理机状态信息、处理控制信息、设置优先级)。

4)如果就绪队列可以接纳新进程,则接收到就绪队列中。

 

进程的终止

进程的中止有三种情况:1)正常结束2)异常结束3)外界干预(我关的,咋地?)

操作系统终止进程的过程(撤销原语):

1)根据要禁止的标识号,检索PCB,找到它,并读取状态。

2)终止。

3)如果还有子进程,终止

4)归还资源,或父进程或操作系统。

5)从PCB中删除。

 

进程的阻塞与唤醒

 

进程的阻塞是一种进程自身的主动行为,是进程自己要求的,因为自身条件不满足。

阻塞原语:

1)根据标识号找到对应的pcb

2)若在运行,保护好现场。将状态转为阻塞

3)把该PCB插入到对应事件的等待队列中(等待资源)

当被阻塞的进程所期待的事情都发生之后,便安排让它重新就绪。执行唤醒原语。

唤醒原语

1)找到相应进程的pcb

2)将其从等待队列中移除,并将状态转换为就绪状态

3)把该pcb插入到就绪队列中。

 

进程切换

进程切换是指处理机从这个进程到另一个进程的转换。切换过程如下:

1)保护现场

2)更新pcb

3)把该进程移入等待队列(如就绪队列)

4)选择另一个进程,并更新其pcb

5)更新内存管理的数据结构

6)恢复上下文

进程切换是逻辑上的切换,而处理机模式切换不一样,模式切换可能处理机还在执行这个进程,可能进程刚刚去了一趟核心态,回来的时候,逻辑没有变,依旧是这个程序。所以,无需如此复杂的切换环境。

【注解】调度是指资源的分配,切换是进程的切换,实际的行为。进程的切换效率不高,所以后文中的线程帮助提高效率,减少进程间的切换。

 

进程的结构

 

PCB

一旦进程被创建,那他的PCB就常驻在内存中,只有在进程结束的时候才会被删除。PCB是进程实体的一部分,也是进程存在的唯一标志。

主要组成部分如下:
1)进程描述信息

进程标识符:所有进程的编号

用户标识符:进程归属的用户的编号

2)进程控制和管理信息

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值