第3章 进程管理PPT课件
3.1 进程的引入
3.1.1 顺序程序与并发程序 1.顺序程序:是指严格按照写入的顺序执行的程序。
顺序程序执行时具有以下特征: 顺序性。 封闭性。 可再现性。
2. 并发程序
并发程序是指两道或两道以上程序同时装入内 存中运行,这些程序的执行在时间上互相有重叠, 即在一个程序执行结束之前,另一个程序已经开始 执行。 并发程序具有与顺序程序不同的特征: 间断性:执行—暂停—执行 失去封闭性:程序的执行会受到其他程序的影响 程序结果的不可再现性:共享变量,举例 程序与计算不再一一对应:多个程序共享一个程序 段。
挂起就绪→活动就绪。处于挂起就绪状态的进程, 若用激活原语将该进程激活后,进程状态就由挂起 就绪状态变为活动就绪状态,激活后的进程就可以 被调度执行了。
活动阻塞→挂起阻塞。当进程处于未被挂起的 阻塞状态时,称之为活动阻塞状态。在用挂起 原语将该进程挂起后,此时进程就转变为挂起 阻塞状态。
挂起阻塞→活动阻塞。处于挂起阻塞状态的进 程,若用激活原语将该进程激活,进程状态就 由挂起阻塞状态变为活动阻塞状态。
3.进程的挂起状态
(3)操作系统的需求。操作系统有时需要挂起某 些进程,然后检查系统中资源的使用情况,进行 记账控制,以便改善系统运行的性能。
(4)对换的需求。为了缓和主存与系统其他资源 的紧张情况,并且提高系统性能,有些系统希望 将处于阻塞状态的进程从主存换到外存。而换到 外存的进程,当等待的事件完成,它仍然不具备 执行的条件,不能进入就绪队列,所以需要一个 有别于阻塞状态的新状态来表示,即挂起阻塞状 态。
挂起阻塞→挂起就绪。处于挂起阻塞状态的进 程,在其所需要的资源满足或完成等待的事件 后,就会变为挂起就绪状态。
运行态。进程已获得CPU,正在执行。 在单处理机系统中,处于运行状态的进程只
有一个,而在多处理机系统中,有多个进程处于 运行状态。
3.1.3 进程的状态及其转换
阻塞态。也称为等待状态或睡眠状态,指 正在执行的进程由于等待I/O或某个事件 的完成,暂时不能运行,这时便放弃CPU 处于暂停状态。 系统根据进程阻塞的不同原因,把进 程组织成多个队列,称为阻塞队列。
No Image
整体概述
概况一
点击此处输入相关文本内容 点击此处输入相关文本内容
概况二
点击此处输入相关文本内容 点击此处输入相关文本内容
概况三
点击此处输入相关文本内容 点击此处输入相关文本内容
第3章 进程管理
3.1 进程的引入 3.2 进程的结构 3.3 进程控制 3.4 进程的同步与互斥 3.5 进程间通信 3.6 进程调度 3.7 死锁 3.8 线程
在这种情况下,程序这个静态的概念已经不能 如实地反映多道系统中程序的并发活动,故引入了 进程的概念来描述系统和用户的程序活动。
3.1.2 进程的定义与特性
1、定义:进程是指可并发执行的程序,在一个 数据集合上的一次运行过程。
2、五大特征: 动态性:进程是程序执行的过程。 并发性:进程使程序能并发执行。 异步性:进程以各自独立的、不可预知的速度
程序A和程序B为并发执行,它们共享变量M1。
程序A和程序B执行的顺序若不相同,M的结 果将产生不同的变化: 顺序1:M = M +1;print M;M = 1。
M值依次为4、4、1。 顺序2:print M;M = M +1;M = 1。
可疑问题时,希望进程暂时停止下来,但是,并不 终止进程。若进程处于执行状态,则暂停执行;若 进程处于就绪状态,则暂时不接受调度,以便研究 进程执行情况或对程序进行修改。这种静止状态称 为挂起状态。 (2)父进程的需求。父进程往往希望考查和修改子 进程,或者协调各个子进程之间的活动,此时需要 挂起自己的子进程。
3.1.3 进程的状态及其转换
1、三状态模型 :
就绪态。进程已经具备了运行的所有条件,一旦 分配到CPU就立即可以执行,而这时CPU正被其他 进程占用,因此暂时不能执行。 系统中处于就绪状态的进程一般有多个,通 常将这些进程组织成一个队列,称为就绪队列。 当CPU空闲时,从就绪队列中选择一个进程执行。
2.引入进程挂起状态后进程状态的转换。
执行状态→挂起就绪。正在执行的进程,如果用挂 起原语将该进程挂起后,此时进程就暂停执行,转 变为挂起就绪状态。
活动就绪→挂起就绪。当进程处于未被挂起的就绪 状态时,称之为活动就绪状态,在用挂起原语将该 进程挂起后,此时进程就转变为挂起就绪状态。处 于挂起就绪状态的进程,不能再被调度执行。
M值依次为3、4、1。 顺序3:print M;M = 1;M = M +1。
M值依次为3、1、2。
引入进程原因:
综上所述,可见在多道程序工作环境下,一个 程序活动不再能独占系统资源,因此也就不再能单 独决定这些资源的状态。
总之,程序活动不再处于一个封闭的系统中, 而是和其它程序活动之间存在着相互依赖和制约的 关系,因而呈现出并发、动态以及相互制约这些新 的特征。
向前推进
3.1.2 进程的定义与特性
独立性:进程是独立运行的基本单位, 也是系统资源分配与调度的独立单位。
结构性:进程包括可执行的程序代码、 程序的数据和堆栈、程序计数器、堆栈 指针、有关寄存器、以及所有运行程序 所必须的其它信息。
进程与程序的区别:
●动态性和静态性。进程是动态的,程序是静态的。 ●临时性和永久性。进程是临时的,程序是永久的; 进程是一个状态变化的过程,而程序可长久保存。 ●并发性与顺序性。 ●组成上的不同。进程的组成包括程序、数据和进程 控制块(PCB)。 ●多对一的关系。通过多次执行,一个程序可对应多 个进程;但一个进程只能对应一个程序。
状态的转换
2.五状态模型
(1)创建状态。当一个新进程刚刚建立, 还未将其放入就绪队列时的状态,称为创建 状态。
(2)终止状态。当一个进程已经正常结束 或异常结束,操作系统已将其从系统队列中 移出,但是,尚未撤消,这时称为终止状态。
3. 进程的挂起状态
1.进程挂起状态的引入原因: (1)用户的需求。当用户在进程运行期间,发现有