版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第2章 进程管理 辅导与自测2.1 本章知识点进程是操作系统中最基本、最重要的概念之一,在计算机系统中,进程不仅是最基本的并发执行的单位,而且也是分配资源的基本单位。引入进程这个概念,对于我们理解、描述和设计操作系统具有重要意义。本章的主要知识点为: (1)进程的概念进程是程序在并发环境中的执行过程。进程最根本的属性是动态性和并发性。要注意进程与程序的区别。进程的五个基本特征是:动态性、并发性、独立性、制约性、结构性。一个进程实体通常由程序、数据、栈和进程控制块(PCB)这四部分组成。进程控制块是进程组成中最关键的部分。每个进程有唯一的进程控制块。操作系统根据PCB对进程实施控制和管理。进程的
2、动态、并发等特征是利用PCB表现出来的。为了对所有进程进行有效地管理,常将各进程的PCB用适当的方式组织起来。一般说来,进程队列有以下几种方式:线性方式、链接方式和索引方式。进程有三个基本状态:运行态、就绪态和阻塞态。在一定的条件下,进程的状态将发生转换。下图所示为进程的状态及其转换。运行态分配到CPU时间片到等待某事件发生所等待的事件发生阻塞态就绪态图 进程状态及其转换 (2)进程管理就如同人类的族系一样,系统中众多的进程也存在族系关系:由父进程创建子进程,子进程再创建子进程,从而构成一棵树形的进程族系图。进程作为有“生命期”的动态过程,对它们的实施管理主要包括:创建进程、撤消进程、挂起进程
3、、恢复进程、改变进程优先级、封锁进程、唤醒进程、调度进程等。在Linux系统中,进程有5种状态。进程分为系统进程和用户进程。其中,系统进程只运行在内核模式下;用户进程既可以在用户模式下运行,也可以通过系统调用等运行在内核模式下。Linux的task_struct结构相当于其进程控制块。Linux系统对进程的操作常用命令有:ps、kill、sleep等。常用的系统调用有:fork,exec,wait,exit,getpid,sleep,nice等。(3)进程通信进程通信是指进程间的信息交换。根据进程间交换信息量的多少,分为高级进程通信和低级进程通信。进程的同步与互斥是指进程在推进时的相互制约关系
4、,属于低级进程通信。一般来说同步反映了进程之间的协作关系,往往指有几个进程共同完成一个任务时在时间次序上的某种限制,进程相互之间各自的存在及作用,通过交换信息完成通信。如接力比赛中一组队员使用接力棒等。进程互斥体现了进程之间对资源的竞争关系,这时进程相互之间不一定清楚其它进程的情况,往往指多个任务多个进程间的通讯制约,因而使用更广泛。如打篮球时双方挣抢篮板球等。我们用信号量(Semaphore)及P,V操作来实现进程的同步和互斥。生产者-消费者问题是经典的进程同步和互斥问题。(4)死锁死锁是指多个进程循环等待他方占有的资源而无限期地僵持下去的局面。计算机系统产生死锁的根本原因就是资源有限且操作
5、不当。一种原因是竞争资源引起的死锁,另一种原因是由于进程推进顺序不合适引发的死锁。产生死锁的四个必要条件是:互斥条件,不可抢占条件,占有且申请条件,循环等待条件。如果在计算机系统中同时具备这四个必要条件时,那么会发生死锁。一般地,解决死锁的方法分为死锁的预防、避免、检测与恢复三种。2.2 典型例题解析【例1】判断题:并发是并行的不同表述,其原理相同。( )答案 。分析 并发是指多道程序的执行在时间上是重叠的,一个程序的执行尚未结束,另一个程序的执行已经开始。但对单CPU系统而言,每一时刻只有一个程序在CPU上运行(有可能此时其他的程序在进行输入、输出)。也就是说,占有CPU的只能有一个程序。因
6、此,并发实际上是“在宏观上并行执行,在微观上串行执行”。而并行是真正意义上的并行执行,因此两者的含义是不同的。【例2】在操作系统中引入“进程”概念的主要目的是( )。A改善用户编程环境 B提高程序的运行速度C描述程序动态执行过程的性质 D使程序与计算过程一一对应答案 C分析 操作系统中多道程序的引入,使得它们在并发执行时共享系统资源,共同决定这些资源的状态,因此系统中各道程序在执行过程中就出现了相互制约的新关系,程序的执行出现“走走停停”的新状态。这些都是在程序的动态过程中发生的。而程序本身是机器能够翻译或执行的一组动作或指令,它或者写在纸面上,或者存放在磁盘等介质上,是静止的。很显然,直接从
7、程序的字面上无法看出它什么时候运行、什么时候停顿,也看不出它是否影响其它程序或者一定受其它程序的影响。因此,用程序这个静态概念已不能如实反映程序并发执行过程中的这些特征。为此,人们引入进程的概念来描述程序动态执行过程的性质,这是引入“进程”概念的主要目的。【例3】下列进程状态的转换中,不正确的是( )。A就绪阻塞 B运行就绪 C就绪运行 D阻塞就绪答案 A分析 回答这道题要知道进程的3种基本状态,以及它们之间的转换关系。通过下图可以看到,凡是图中有箭头指向的转换都是可行的,而没有箭头指向的则不可能。因此A是不正确的。运行态分配到CPU时间片到等待某事件发生所等待的事件发生阻塞态就绪态图 进程状
8、态及其转换如果有的同学记不住这张图,那就从理解的角度进行思考。首先要理解3种状态的含义,然后再理解它们之间的转换。例如:运行的进程能变成就绪吗?可以,如果运行进程的时间片到了,就必修让出CPU,转换为就绪态。就绪的进程能变成阻塞吗?不可以,就绪态的进程已经具备了运行条件,只在等待CPU,怎么可能还退回到还不具备运行条件的阻塞态呢?因此,如果理解了,这张图就可以自己画出来,并不需要死记硬背。【例4】进程控制块是描述进程状态和特性的数据结构,一个进程( )。A可以有多个进程控制块 B可以和其他进程共用一个进程控制块C可以没有进程控制块 D只能有唯一的进程控制块答案 D分析 进程控制块(PCB)是一
9、个用于描述进程动态性质的数据结构。操作系统根据PCB对进程实施控制和管理。进程的动态、并发等特征也是通过PCB表现出来的。进程由程序、数据、栈和PCB构成。构成进程的有关程序和数据集合是进程得以存在的物质基础,它们是进程的实体;PCB用于标识和刻画实体的存在和变化,是进程存在的唯一标志。当系统创建一个新进程时,就为它建立一个PCB;当进程终止后,系统回收为其分配的PCB,该进程在系统中就不存在了。【例5】在执行V操作时,当信号量的值( ),应释放一个等待该信号量的进程。 A小于0 B大于0 C小于等于0 D大于等于0答案 C分析 P,V操作能够实现对临界区的管理要求。它由P操作原语和V操作原语
10、组成(原语是不可中断的过程),对信号量进行操作,具体定义如下: P(S):将信号量S的值减1,即S=S-1; 如果S0,则该进程继续执行;否则该进程置为阻塞状态,排入阻塞队列。 V(S):将信号量S的值加1,即S=S+1; 如果S0,则该进程继续执行;否则释放队列中第一个等待信号量的进程。 信号量的数据结构为一个值和一个指针,指针指向等待该信号量的下一个进程。信号量的值与相应资源的使用情况有关。当它的值大于0时,表示当前可用资源的数量;当它的值小于0时,其绝对值表示等待使用该资源的进程个数。注意,信号量的值仅能由P,V操作来改变。一般来说,信号量S0时,S表示可用资源的数量。执行一次P操作意味
11、着请求分配一个单位资源,因此S的值减1;当S0 BS=0 CS0 DS024. 信号量S的初值为8,在S上执行了10次P操作,6次V操作后,S的值为( )。 A10 B8 C6 D425. 若P、V操作的信号量S初值为2,当前值为 -1,则表示有( )个等待进程。 A0 Bl C2 D3 26. 在进程通信中,使用信箱方式交换信息的是( )。A低级进程通信 B高级进程通信 C共享内存方式 D管道文件方式27. 系统出现死锁的原因是( )。A计算机系统发生了重大故障B有多个封锁的进程同时存在C若干进程因竞争资源而无休止地循环等待着,而且都不释放已占有的资源 D资源数大大少于进程数,或进程同时申请
12、的资源数大大超过资源总数28. 两个进程争夺同一个资源( )。A一定死锁 B不一定死锁 C不会死锁 D以上说法都不对二、判断题(正确的划,错误的划。)1. 简单地说,进程是程序的执行过程。因而,进程和程序是一一对应的。( )2. 进程和程序是两个截然不同的概念。( ) 3. 程序在运行时需要很多系统资源,如内存、文件、设备等,因此操作系统以程序为单位分配系统资源。( ) 4. 进程控制块(PCB)是专为用户进程设置的私有数据结构,每个进程仅有一个PCB。( ) 5. 进程执行的相对速度不能由进程自己来控制。( )6. 进程之间的互斥,主要源于进程之间的资源竞争,从而实现多个相关进程在执行次序上
13、的协调。( )7. 信号量机制是一种有效的实现进程同步与互斥的工具。信号量只能由P、V操作来改变。( )8. V操作是对信号量执行加1操作,意味着释放一个单位资源,如果加1后信号量的值小于等于零,则从等待队列中唤醒一个进程,现进程变为阻塞状态,否则现进程继续进行。( )9. 利用信号量的P,V操作,进程之间可以交换大量信息。( )10. 系统产生死锁的根本原因是资源有限且操作不当。因此,当系统提供的资源少于并发进程的需求时,系统就产生死锁。( )三、简答题四、应用题请同学们解答参考教材68页的课后习题。请大家自己完成参考答案:一、CCCAA BACDB ACACD DBCBC BBCDB BCB二、2,5,7是正确的。1. ()。进程
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 新疆维吾尔自治区奇台县第四中学2024届九年级上学期期末考试数学试卷(含答案)
- 《社会调查方法》课件
- 养老院老人疾病预防措施制度
- 保险精算分类费率课件讲解
- 收物业费保密协议书(2篇)
- 《药品采购》课件
- 《高血压规范化诊治》课件
- 2024年度食用菌产业投资基金销售合同3篇
- 2025年南阳货运上岗证模拟考试题
- 2025年洛阳货运考试题库
- 《护理伦理与法律法规》期末考试复习题库(含答案)
- DL-T5190.1-2022电力建设施工技术规范第1部分:土建结构工程
- 欢喜就好-大漆文创产品设计智慧树知到期末考试答案章节答案2024年泉州华光职业学院
- 学困生转化讲座PP课件
- 2024华为员工股权激励协议
- TD/T 1044-2014 生产项目土地复垦验收规程(正式版)
- 模拟电子技术智慧树知到期末考试答案章节答案2024年齐鲁工业大学
- 沈阳市铁西区2024年九年级上册《道德》期末试题与参考答案
- 起重(信号、司索工)安全技术交底记录
- 伤寒论选读智慧树知到期末考试答案章节答案2024年云南中医药大学
- 第22章二次函数二次函数与不等式的关系课件人教版数学九年级上册
评论
0/150
提交评论