进程及其实现

本文深入解析进程的概念,探讨进程为何重要,以及操作系统如何通过进程三态和五态模型管理进程。详细介绍了进程上下文切换的过程,包括上下文的组成及切换步骤。此外,还涵盖了进程的创建、撤销、阻塞和唤醒机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、进程的定义

1、进程是可并发执行的程序在某个数据集合上的一次计算活动,也是操作系统进行资源分配和保护的基本单位

2、可以用来共享资源又能描述程序并发

 

为什么要引入进程概念

1、刻画程序的并发性:程序是并发执行的,这是由于资源共享和竞争问题,程序自身只是计算任务的指令和数据的描述,是静态的,进程是动态描述

2、共享性:可重入程序

二、

进程三态模型及其转换

 

进程五态模型

进程的挂起?

 为了让某些进程暂时不参与低级调度,释放它占有的资源以平滑系统负荷的目的而需引入挂起态;

 

 

三、进程上下文以及进程的切换

进程上下文:进程物理实体以及支持进程运行的环境

                     组成:

                                  用户级上下文

                                  系统级上下文

                                   寄存器上下文  

当进程发生切换的时候:进程上下文也必须发生切换

进程控制块PCB:用于记录和刻画进程状态以及有关信息的数据结构,包括进程运行时的状态以及让出处理后的状态以及断点等信息(三类信息:标识信息、现场信息、控制信息)

 

进程上下文的切换

概念:让出处理器,保存原来老进程的上下文而装入被保护了的新的进程上下文

具体步骤:

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

2、修改被中断进程的进程控制块的有关状态

3、被中断进程的PSW放入相关队列

4、选择要运行的进程

5、修改要运行的进程的PSW

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

7、恢复处理器的现场

 

四、进程的创建、撤销、

(一)进程的创建

1、从PCB池中,申请一个空闲的额PCB,为进程分配唯一的进程标识符

2、为新进程的进程映像分配地址空间

3、分配除了内存之外的其他资源

4、初始化PCB

5、设置为 就绪态 

(二)进程的撤销

1、撤销进程的标识符

2、收回进程的资源

3、如果有子进程的话,先撤销他的子进程

4、回收PCB

(三)进程的阻塞

1、停止进程的运行,保存信息到PCB中

2、修改PCB有关内容,如修改状态 从就绪到等待

3、去调度其他进程

(四)、进程的唤醒

1、从等待队列中移出进程

2、修改PCB中的状态

3、判断当前进程与正在运行进程的PCB,看是否抢占处理机

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值