进程控制
发表于|更新于|操作系统
|浏览量:
什么是进程控制
进程控制的主要功能是对操作系统中的所有进程实施有效的管理,它具有创建新进程、撤销已有进程、实现进程状态转换等功能。
怎么实现进程控制
- 原语的执行具有原子性,即执行过程只能一气呵成,期间不允许被中断。
- 可以用“关中断指令”和“开中断指令”这两个特权指令实现原子性。
- CPU执行了关中断指令之后,就不再例行检查中断信号,直到执行开中断指令之后才会恢复检查。
进程控制相关的原语
进程的创建

进程的终止

进程的阻塞和唤醒

进程的切换

无论哪个进程控制原语,要做的无非三类事情:
- 更新PCB中的信息(修改进程状态,保存/恢复运行环境)
- 将PCB插入合适的队列
- 分配/回收资源
相关推荐
2021-10-03
操作系统的运行机制
指令 “指令”就是处理器(CPU)能识别、执行的最基本命令。 两种处理器状态两种处理器状态 CPU有两种状态,“内核态”和“用户态”。 处于内核态时,说明此时正在运行的是内核程序,此时可以执行特权指令。 处于用户态时,说明此时正在运行的是应用程序,此时只能执行非特权指令。 别名内核态=核心态=管态 用户态=目态 PSW CPU中有一个寄存器叫程序状态寄存器(PSW),其中有个二进制位,1表示“内核态”,0表示“用户态”。 如何变态 1 操作系统内核在让出CPU之前,会用一条特权指令把PSW的标志位设置为“用户态“。 2 CPU检测到中断信号后,会立即变为“核心态”,并停止运行当前的应用程序,转而运行处理中断信号的内核程序。 3 内核态->用户态:执行一条特权指令——修改PSW的标...
2021-10-04
中断和异常
中断的作用 1 CPU上会运行两种程序,一种是操作系统内核程序,一种是应用程序。 2 在合适的情况下,操作系统内核会把CPU的使用权主动让给应用程序。 3 “中断”是让操作系统内核夺回CPU使用权的唯一途径。 4 “中断”会使CPU由用户态变为内核态,使操作系统重新夺回对CPU的控制权。 5 如果没有“中断”机制,那么一旦应用程序上CPU运行,CPU就会一直运行这个应用程序。 中断的分类 “中断”特指狭义中的中断,即外中断。而内中断一般称为“异常“。 内中断 也称异常、例外。 与当前执行的指令有关,中断信号来源于C...
2021-10-11
线程、多线程模型
什么是线程可以把线程理解为”轻量级进程“。 线程是一个基本的CPU执行单元,也是程序执行流的最小单位。 为什么要引入线程还没引入进程之前,系统中的各个程序只能串行执行。 有的进程可能需要“同时”做很多事,而传统的进程只能串行地执行一系列程序。为此,引入了“线程”,来增加并发度。 引入了线程之后,不仅是进程之间可以并发,进程内的各线程之间也可以并发,从而进一步提升了系统的并发度,使得一个进程内也可以并发处理各种任务。 引入线程后,进程只作为除CPU之外的系统资源的分配单元(如打印机、内存地址空间等都是分配给进程的)。 引入线程机制的变化 线程有哪些重要的属性 线程的实现方式用户级线程(User-Level Thread, ULT) 历史背景:早期的操作系统(如:早期Unix)只支持进程,不支持线程。当时的“线程”是由线程库实现的。 用户级线程由应用程序通过线程库实现,所有的线程管理工作都由应用程序负责(包括线程切换) 用户级线程中,线程切换可以在用户态下即可完成,无需操作系统干预。 在用户看来,是有多个线程。但是在操作系统内核看来,并意识不到线程的存在。“用户级线程”就是“从...
2021-10-12
处理机调度
调度的基本概念 高级调度 简化理解:好几个程序需要启动,到底先启动哪个? 高级调度(作业调度)。按一定的原则从外存的作业后备队列中挑选一个作业调入内存,并创建进程。。作业调入时会建立PCB,调出时才撤销PCB。 低级调度 低级调度(进程调度/处理机调度) —— 按照某种策略从就绪队列中选取一个进程,将处理机分配给它。 内存不够时,可将某些进程的数据调出外存。等内存空闲或者进程需要运行时再重新调入内存。 暂时调到外存等待的进程状态为挂起状态。被挂起的进程PCB会被组织成挂起队列。 中级调度(内存调度) —— 按照某种策略决定将哪个处于挂起状态的进程重新调入内存。 一个进程可能会被多次调出、调入内存,因此中级调度发生的频率要比高级调度更高。 进程的挂起态与七状态模型暂时调到外存等待的进程状态为挂起状态(挂起态,suspend) 挂起态又可以进一步细分为就绪挂起、阻塞挂起两种状态 三层调度的联系、对比
2021-10-07
进程的概念和特征
进程的概念程序:是静态的,就是个存放在磁盘里的可执行文件,就是一系列的指令集合。 进程(Process):是动态的,是程序的一次执行过程。同一个程序多次执行会对应多个进程。 当进程被创建时,操作系统会为该进程分配一个唯一的、不重复的“身份证号”——PID(Process ID,进程ID)。 进程是进程实体的运行过程,是系统进程资源分配和调度的一个独立单位。 进程的组成—PCB PCB是进程存在的唯一标志,当进程被创建时,操作系统为其创建PCB,当进程结束时,会回收其PCB。 PCB是给操作系统用的。 程序段、数据段是给进程自己用的。 进程实体 一个进程实体(进程映像)由PCB、程序段、数据段组成。 进程是动态的,进程实体(进程映像)是静态的。 PCB:一个程序开始运行前,需要创建对应的进程,也就要创建相应的PCB 程序段:包含程序指令 数据段:包含运行过程中产生的各种数据 程序段、数据段、PCB三部分组成了进程实体(进程映像)。引入进程实体的概念后,可把进程定义为: 进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位。 注意:PCB是进程存在...
2021-10-01
操作系统的四个特征
并发 并发 并发:指两个或多个事件在同一时间间隔内发生。这些事件宏观上是同时发生的,但微观上是交替发生的。 并行 并行:指两个或多个事件在同一时刻同时发生。 并发 操作系统的并发性指计算机系统中”同时“运行着多个程序,这些程序宏观上看是同时运行着的,而微观上看是交替运行的。 操作系统就是伴随着“多道程序技术”而出现的。因此,操作系统和程序并发是一起诞生的。 并行 单核CPU同一时刻只能执行一个程序,各个程序只能并发地执行。 多核CPU同一时刻可以同时执行多个程序,多个程序可以并行地执行。 共享 共享即资源共享,是指系统中的资源可供内存中多个并发执行的进程共同使用。 资源共享方式 互斥共享方式:系统中的某些...
评论


