欢迎来到天天文库
浏览记录
ID:43482939
大小:1.05 MB
页数:84页
时间:2019-10-08
《计算机操作系统_第2章_进程管理》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、计算机操作系统南京工业大学信息学院第二章进程管理★进程的基本概念★进程控制★进程同步★经典进程同步问题★进程通信★线程这一章介绍如下几个问题:2.1进程的基本概念(1)程序的顺序执行及其特征顺序执行包含两层含义:●对于多个用户程序来说,所有程序是依次执行的。(外部顺序性)●对于一个程序来说,它的所有指令是按序执行的。(内部顺序性)2.1进程的基本概念(2)程序顺序执行的特征(1)顺序性:处理机的操作严格按照程序所规定的顺序执行,即每一操作必须在下一操作开始之前结束(或者说下一操作必须在当前操作结束后才能开始)。(2)封闭性
2、:程序是在封闭的环境下执行的。即●程序运行时独占全机资源,资源的状态(除初始态外)只有本程序才能改变它。●程序一旦开始执行,其执行结果不受外界影响。(3)可再现性:只要程序执行时的环境和初始条件相同,当程序重复执行时,都将获得相同的结果。2.1进程的基本概念(3)程序的并发执行及其特征程序的并发执行包括两层含义:●对于一个程序来说,它的所有指令是按序执行的。(内部顺序性)●对于多个程序(进程)来说,所有进程是交叉执行的。(外部并发性)2.1进程的基本概念(4)程序并发执行时的特征1)间断性:程序在并发执行时,由于它们共享系
3、统资源,以及为完成同一任务而相互合作,致使这些并发执行的程序之间形成了相互制约的关系。(互斥关系、同步关系)相互制约导致并发执行的程序具有“执行——暂停——执行”这种间断性活动规律。2)失去封闭性:程序在并发执行时,由于多个程序共享系统资源,因而这些资源的状态将由多个程序来改变,致使程序的运行已失去了封闭性。某程序的执行时,会受到其他程序的影响。2.1进程的基本概念(5)程序并发执行时的特征3)不可再现性——与时间有关的错误程序在并发执行时,由于失去了封闭性,也将导致其再失去可再现性。例如:有两个循环程序A和B,它们共享一
4、个变量N。L1:N=N+1;gotoL1;L2:print(N);N=0;gotoL2;程序A程序B程序A和B并发执行时,可能出现下述三种情况(设某时刻N的值为10):(1)N=N+1在print(N)和N=0之前,此时得到的N值分别为11,11,0。(2)N=N+1在print(N)和N=0之后,此时得到的N值分别为10,0,1。(3)N=N+1在print(N)和N=0之间,此时得到的N值分别为10,11,0。计算结果已与并发程序的执行速度有关,从而使程序执行失去了可再现性。2.1进程的基本概念(6)进程的特征与状态1
5、.进程的定义和特征进程是程序在一个数据集上的运行过程,是系统进行资源分配和调度的一个独立单位。(传统OS的定义)定义1)结构特征:进程的特征程序段、相关的数据段、PCB三部分构成了进程实体。通常的程序是不能并发执行的,为使程序(含数据)能独立运行,应为之配置一进程控制块(即PCB)。在许多情况下所说的进程,实际上是指进程实体。如,所谓创建进程,……2)动态性:进程的实质是进程实体的一次执行过程,故动态性是进程的最基本特征。3)并发性:这是指多个进程实体同存于内存中,且能在一段时间内同时运行。2.1进程的基本概念(7)进程的
6、特征与状态4)独立性:进程的特征:在传统的OS中,独立性是指进程实体是一个能独立运行、独立分配资源和独立接受调度的基本单位。5)异步性:是指进程按各自独立的、不可预知的速度向前推进,或说进程实体按异步方式运行。2.1进程的基本概念(8)进程的特征与状态进程的三种基本状态:1)就绪(Ready)状态:当进程已分配到除CPU以外的所有资源后,只要再获得CPU,便可立即执行,进程这时的状态称为就绪状态。系统中处于就绪状态的进程可能有多个,通常将它们排成一个队列,称为就绪队列。2)执行(Running)状态:进程已获得CPU,其程
7、序正在执行。3)阻塞(Blocked)状态:正在执行的进程由于发生某事件而暂时无法继续执行时,便放弃处理机而处于暂停状态,亦即进程的执行受到阻塞,把这种暂停状态称为阻塞状态(或等待状态)。使进程阻塞的典型事件:请求I/O,申请缓冲空间等等。2.1进程的基本概念(9)进程的特征与状态进程的三种基本状态的转换:进程调度:就绪态执行态时间片完:执行态就绪态请求I/O:执行态阻塞态I/O完成:阻塞态就绪态引起进程状态转换的典型事件:2.1进程的基本概念(10)进程的特征与状态挂起状态:有些系统除了进程的三种基本状态外,还有
8、挂起状态。1)引入挂起状态的原因:(1)终端用户的请求:(2)父进程请求:(3)负荷调节的需要:(4)操作系统的需要:当终端用户在自己的程序运行期间发现有可疑问题时,希望暂停执行。希望考察和修改子进程,或协调各子进程间的活动时实时系统中工作负荷较重时,系统可把一些不重要的进程挂起。操作系统有时希望挂起某
此文档下载收益归作者所有