操作系统第4章答案(上)复习课程

合集下载

操作系统-第4章复习题答案

操作系统-第4章复习题答案

操作系统-第4章复习题答案操作系统第四章复习题⼀、选择题1、在可变式分区分配⽅案中,某⼀作业完成后系统收回其主存空间,并与相邻空闲区合并,为此修改空闲区表,造成空闲区数减⼀的情况是( D )。

A ⽆上邻空闲区,也⽆下邻空闲区B 有上邻空闲区,但⽆下邻空闲区C 有下邻空闲区,但⽆上邻空闲区D 有上邻空闲区,也有下邻空闲区2、分区式存储器管理⽅式,每个程序(B)。

A ⼀定在分区中连续,部分存放B ⼀定在分区中连续,整体存放C 可以在分区中不连续,整体存放D 可以在分区中连续,部分存放3、下列选项中对分段存储管理叙述正确的是(B)A 分段存储管理中每个段必须是⼤⼩相等的。

B 每⼀段必须是连续的存储区C 每⼀段不必是连续的存储区D 段间的存储区必须是连续的4、下列对重定位的叙述中,正确的选项是(B)。

A 经过静态重定位后,指令代码并不发⽣变化。

B 经过静态重定位后,数据地址和指令地址发⽣了变化C 经过动态重定位后,指令代码中的操作码和操作数地址都要发⽣变化。

D经过动态重定位后,数据地址发⽣了变化⽽指令地址没有发⽣变化。

5、虚拟存储器功能的管理⽅法包括(C)。

A 可变分区存储管理B 基本分页存储管理C 请求分段存储管理D 段页式存储管理6、虚拟存储器的最⼤容量(C)。

A 由作业的地址空间决定B 是任意的C 由计算机的地址结构决定的D 为内、外容量之和7、操作系统为( C )分配内存空间。

A线程B⾼速缓冲存储器(Cache)C 进程 D 块表8、下⾯的页⾯置换算法中会产⽣所谓Belady异常现象的是(B)。

A 最佳页⾯置换算法(OPT)B 先进先出页⾯置换算法(FIFO)C 最近最久未使⽤页⾯置换算法(LRU)D 最少使⽤页⾯置换算法(LFU)9、采⽤( B )不会产⽣内部碎⽚。

A 分页式存储管理B 分段式存储管理C 固定分区式存储管理D 段页式存储管理10、最佳适应算法的空闲区是(B)。

A 按⼤⼩递减顺序连在⼀起B按⼤⼩递增顺序连在⼀起C 按地址由⼩到⼤排列D 按地址由⼤到⼩排列11、在可变式分区存储管理中的拼接技术可以(A)。

第四章 复习题 计算机操作系统概论复习资料习题答案

第四章 复习题  计算机操作系统概论复习资料习题答案

第四章复习题一、单项选择题1. 在可变分区存储管理中,若采用最先适应分配算法宜将空闲区按(B)次序登记在空闲区表中。

A. 地址递减B. 地址递增C. 长度递减D. 长度递增2. 采用固定分区存储管理的计算机系统中(D)的做法是错误的。

A. 为作业分配的分区不能小于作业长度B. 可同时在多个分区中各装一个作业C. 不允许多个作业同时存放在一个分区中D. 一个分区中可同时装入多个作业3. 不适宜采用虚拟存储管理技术的存储管理方式是(D)。

A. 页式B. 段式C. 段页式D. 可变分区4. 在多道程序设计系统中,采用了页式存储管理。

如果允许并行工作的道数为n(n>1),则系统中同时建立的页表数一定为(C)。

A. 1B. nC. <=nD. n+15. 在单用户连续存储管理中,可供用户使用的主存区域起始地址存放在(B)。

A. 基址寄存器B. 界限寄存器C. 限长寄存器D. 相联寄存器6. 重定位的含义是(C)。

A. 把主存中的一个程序从一个区域重新定位到另一个区域B. 把绝对地址转换成逻辑地址C. 把逻辑地址换砖成绝对地址D. 把辅助存储器中的程序定位到主存的某个区域7. 在分页式存储管理中,逻辑地址由页号和页内地址两部分组成。

因而,分页的工作是在(C)时进行的。

A. 用户编制程序B. 地址转换C. 操作系统装入作业D. 系统初始化8. 采用固定分区存储管理的计算机系统中(D)的做法是错误的。

A. 为作业分配的分区不能小于作业长度B. 可同时在多个分区中各装一个作业C. 不允许多个作业同时存放在一个分区中D. 一个分区中可同时装入多个作业9. 在分页式虚拟存储管理中,若发现所要访问的页面不在主存储器中,则硬件要产生一个(C)中断。

A. I/OB. 缺段C. 缺页D. 访管10. 主存储器的每个存储单元都有一个地址与其对应,假定这些地址用n个二进制位来区分,则主存储器的容量为(D)。

A. 2n个字B. 2n-1个字C. 2n-1个字节D. 2n个字节11. LRU页面调度算法总是选择(C)页面调出。

《操作系统》第三版第四章课后答案

《操作系统》第三版第四章课后答案
设备驱动程序是驱动外部设备和相应的控制器等,使其可以直接和内存进行I/O操作的子程序的集合。它是I/O进程与设备控制器之间的通信程序
2、Spooling技术
也备的技术
六、简答题
1、操作系统设备管理的目标是什么?
*提高I/O设备和CPU的利用率
*提高I/O速度
*为用户使用设备提供方便、统一的界面
3、引入Spooling系统有哪些好处
*提高了I/O速度,将独占设备改造成共享设备,实现了虚拟设备功能,提高了系统的并行性,减少了用户进程的等待时间,提高了进程的推进速度。
5、什么是设备独立性?引入设备独立性有哪些好处?
*设备独立性也称设备无关性,指应用程序与实际使用的物理设备无关,亦即它独立于具体的物理设备。用户程序中使用逻辑设备,由操作系统完成逻辑设备到物理设备的映射
第四章(与磁盘相关不做)
一、填空题
1:字符、块、字符
2:设备驱动
3:缓冲
5:输入井和输出井、输入缓冲区和输出缓冲区、输入进程和输出进程
6:中断源
7:中断、DMA、通道
二、单项选择题
1、B
2、B C
6、C
7、A
三、多项选择题
1、BC
2、AB
3、AB DE
四、判断题
1、×
2、√
3、√
4、×
五、名词解释
1、设备驱动程序
*好处:设备分配时的灵活性、易于实现I/O重定向、方便用户编程

操作系统第4章习题带答案

操作系统第4章习题带答案

第四章一、问答题1、同步机制应遵循的准则是什么?2、死锁产生的4个必要条件是什么?它们是彼此独立的吗?3、简述死锁的定义和死锁产生的原因。

4、简述死锁定理和解除死锁的方法。

5、什么是安全状态?怎么判断系统是否处于安全状态?6、同步机制应遵循的准则是什么?7、死锁产生的4个必要条件是什么?它们是彼此独立的吗?二、计算题(共20分)1、当前系统中出现下述资源分配情况:利用银行家算法,试问如果进程P2提出资源请求Request(1,2,2,2)后,系统能否将资源分配给它?答:Request(1,2,2,2)<=(2,3,5,6)申请合法Request(1,2,2,2)<=Available,开始试探性分配,Available=(0,4,0,0) 测试系统是否安全:work= Available,finish=1没有进程的need满足<=work系统处于不安全状态,系统拒绝此次资源分配。

2、当前某系统有同类资源7个,进程P,Q所需资源总数分别为5,4。

它们向系统申请资源的次序和数量如表所示。

回答:问:采用死锁避免的方法进行资源分配,请你写出系统完成第3次分配后各进程占有资源量,在以后各次的申请中,哪次的申请要求可先得到满足?答:第1次申请,Q申请资源2,系统安全,分配第2次申请,P申请资源1,系统安全,分配第3次申请,Q申请资源1,系统安全,分配资源剩余3个,P占有1个资源,Q占有3个资源,第4次分配不安全,拒绝,第5分配系统安全,满足。

3、一个计算机系统有6个磁带驱动器和4个进程。

每个进程最多需要n个磁带驱动器。

问当n为什么值时,系统不会发生死锁?并说明理由答:n=2理由同第4题(进程资源最大需求-1)×进程数量+1≤系统资源数量4、若系统有某类资源m×n+1个,允许进程执行过程中动态申请该类资源,但在该系统上运行的每一个进程对该资源的占有量任何时刻都不会超过m+1个。

《操作系统》第4章教材习题解答

《操作系统》第4章教材习题解答

第4章存储管理“练习与思考”解答1.基本概念和术语逻辑地址、物理地址、逻辑地址空间、内存空间、重定位、静态重定位、动态重定位、碎片、碎片紧缩、虚拟存储器、快表、页面抖动用户程序经编译之后的每个目标模块都以0为基地址顺序编址,这种地址称为相对地址或逻辑地址。

内存中各物理存储单元的地址是从统一的基地址开始顺序编址的,这种地址称为绝对地址或物理地址。

由程序中逻辑地址组成的地址范围叫做逻辑地址空间,或简称为地址空间。

由内存中一系列存储单元所限定的地址范围称作内存空间,也称物理空间或绝对空间。

程序和数据装入内存时,需对目标程序中的地址进行修改。

这种把逻辑地址转变为内存物理地址的过程称作重定位。

静态重定位是在目标程序装入内存时,由装入程序对目标程序中的指令和数据的地址进行修改,即把程序的逻辑地址都改成实际的内存地址。

动态重定位是在程序执行期间,每次访问内存之前进行重定位。

这种变换是靠硬件地址转换机构实现的。

内存中这种容量太小、无法被利用的小分区称作“碎片”或“零头”。

为解决碎片问题,移动某些已分配区的内容,使所有进程的分区紧挨在一起,而把空闲区留在另一端。

这种技术称为紧缩(或叫拼凑)。

虚拟存储器是用户能作为可编址内存对待的虚拟存储空间,它使用户逻辑存储器与物理存储器分离,是操作系统给用户提供的一个比真实内存空间大得多的地址空间。

为了解决在内存中放置页表带来存取速度下降的矛盾,可以使用专用的、高速小容量的联想存储器,也称作快表。

若采用的置换算法不合适,可能出现这样的现象:刚被换出的页,很快又被访问,为把它调入而换出另一页,之后又访问刚被换出的页,……如此频繁地更换页面,以致系统的大部分时间花费在页面的调度和传输上。

此时,系统好像很忙,但实际效率却很低。

这种现象称为“抖动”。

2.基本原理和技术(1)存储器一般分为哪些层次?各有何特性?存储器一般分为寄存器、高速缓存、内存、磁盘和磁带。

CPU内部寄存器,其速度与CPU一样快,但它的成本高,容量小。

操作系统第四章课后习题解答答案免费范文精选

操作系统第四章课后习题解答答案免费范文精选

P152第四章作业5. 运行时动态链接方式,是装入时链接方式的一种改进,将对某些模块的链接推迟到程序执行时才进行。

亦即,在执行过程中,当发现一个被调用模块尚未装入内存时,立即由 OS 去找到该模块,并将之装入内存,将其链接到调用者模块上。

优点:凡是在执行过程中未被用到的目标模块,都不会被调入内存和被链接到装入模块上,这样不仅能加快程序的装入过程,而且可节省大量的内存空间。

7.程序在运行过程中经常要在内存中移动位置,为了保证这些被移动了的程序还能正常执行,必须对程序和数据的地址加以修改,即重定位。

引入重定位的目的就是为了满足程序的这种需要。

要在不影响指令执行速度的同时实现地址变换,必须有硬件地址变换机构的支持,即须在系统中增设一个重定位寄存器,用它来存放程序在内存中的起始地址。

程序在执行时,真正访问的内存地址是相对地址与重定位寄存器中的地址相加而形成的。

13.在多道环境下,一方面,在内存中的某些进程由于某事件尚未发生而被阻塞,但它却占用了大量的内存空间,甚至有时可能出现在内存中所有进程都被阻塞而迫使 CPU 停止下来等待的情况;另一方面,却又有着许多作业在外存上等待,因无内存而不能进入内存运行的情况。

显然这对系统资源是一种严重的浪费,且使系统吞吐量下降。

为了解决这一问题,在操作系统中引入了对换(也称交换)技术。

可以将整个进程换入、换出,也可以将进程的一部分(页、段)换入、换出。

前者主要用于缓解目前系统中内存的不足,后者主要用于实现虚拟存储。

15.系统应具备三方面功能:对换空间管理,进程换出,进程换入。

24.在段页式系统中,为了便于实现地址变换,须配置一个段表寄存器,其中存放段表始址和段长TL。

进行地址变换时,首先利用段号 S,将它与段长TL 进行比较。

若 STL,表示未越界,利用段表始址和段号来求出该段所对应的段表项在段表中的位置,从中得到该段的页表始址,并利用逻辑地址中的段内页号 P 来获得对应页的页表项位置,从中读出该页所在的物理块号 b,再利用块号 b 和页内地址来构成物理地址。

计算机操作系统(习题集)第四章 答案

计算机操作系统(习题集)第四章 答案

第四章存储器管理一、单项选择题1、存储管理的目的是(C )。

A.方便用户B.提高内存利用率C.方便用户和提高内存利用率D.增加内存实际容量2、在( A)中,不可能产生系统抖动的现象。

A.固定分区管理B.请求页式管理C.段式管理D.机器中不存在病毒时3、当程序经过编译或者汇编以后,形成了一种由机器指令组成的集合,被称为(B )。

A.源程序B.目标程序C.可执行程序D.非执行程序4、可由CPU调用执行的程序所对应的地址空间为(D )。

A.符号名空间B.虚拟地址空间C.相对地址空间D.物理地址空间5、存储分配解决多道作业[1C]划分问题。

为了实现静态和动态存储分配,需采用地址重定位,即把[2C]变成[3D],静态重定位由[4D]实现,动态重定位由[5A]实现。

供选择的答案:[1]:A 地址空间 B 符号名空间 C 主存空间 D 虚存空间[2]、[3]: A 页面地址 B 段地址 C 逻辑地址 D 物理地址 E 外存地址 F 设备地址[4]、[5]: A 硬件地址变换机构 B 执行程序 C 汇编程序D 连接装入程序E 调试程序F 编译程序G 解释程序6、分区管理要求对每一个作业都分配(A )的内存单元。

A.地址连续B.若干地址不连续C.若干连续的帧D.若干不连续的帧7、(C )存储管理支持多道程序设计,算法简单,但存储碎片多。

A.段式B.页式C.固定分区D.段页式8、处理器有32位地址,则它的虚拟地址空间为( B)字节。

A.2GBB.4GBC.100KBD.640KB9、虚拟存储技术是( A)。

A.补充内存物理空间的技术B.补充相对地址空间的技术C.扩充外存空间的技术D.扩充输入输出缓冲区的技术10、虚拟内存的容量只受( D)的限制。

A.物理内存的大小B.磁盘空间的大小C.数据存放的实际地址D.计算机地址字长11、虚拟存储技术与(A )不能配合使用。

A.分区管理B.动态分页管理C.段式管理D.段页式管理12、(B )是指将作业不需要或暂时不需要的部分移到外存,让出内存空间以调入其他所需数据。

《操作系统》习题集参考答案:第4章 文件系统

《操作系统》习题集参考答案:第4章 文件系统

第4章文件系统-习题集参考答案一、选择题1. D2. A3. D4. A5. B6. A //一个文件对应一个文件控制块,所有文件控制块构成目录文件7. A //在文件系统中,为每个文件建立一个文件目录,作为目录文件的一个目录项,包含文件的名称及其属性。

8. C9. C //在设置当前工作目录后,文件查找在默认情况下是查当前目录,从而提高查找速度。

10. D11. C12. B13. C //如UNIX中,采用了把文件名与文件描述信息分开的方法,即使文件描述信息单独形成一个称为索引节点的数据结构,简称i节点(索引节点),这样文件目录中仅由文件名各指向该文件所对应的i节点的指针所构成,这样目录项仅有16个字节,其中14个字节为文件名,2个字节为i节点指针。

在1KB的盘块中可做1KB/16B=64个目录项,这样,为找到一个文件,可以大小减少读入内在的信息量。

14. B //只有索引分配方式中的FCB才包含索引表地址15. B16. B17. D //1K/64=1618. C //本注:每块能存放的目录项=1K/64=16个;3200个目录项占用盘块数=3200/16=200。

因为一级目录平均访问盘次数=1/2盘块数(顺序查找目录表中所有目录项,每个目录项为一个FCB),所以平均访问磁盘次数=200/2=100次。

19. C//本注:1.用的是称做“混合索引”的方式。

2.思路很简单,只是要用些专用概念3.三类地址项:1)直接地址项,每个地址直接管理一个“文件块”,而每个“块”是256字节。

共4个这种地址,所以管理:4*256=1KB2)一级间接地址项,每个地址项管理一个“索引块”,而索引块的大小也是256字节,其中可放置:256/4=64个地址项,而每个地址项管理256字节文件。

所以,2个一级间址可管理文件大小:2*64*256=32KB3)二级间接地址项,地址项→索引块→索引块→文件数据块。

所以可管理文件数据:1*64*64*256=1024KB.4.综合上面可管理的文件大小为:1+32+1024=1057KB20. B21. B22. B //每个盘面物理块=200*4=800块,盘面数=8000/800=10,互盘有两个盘面。

计算机操作系统(第四版)1-8章 课后答案(全)

计算机操作系统(第四版)1-8章 课后答案(全)

第一章操作系统引论1.设计现代OS的主要目标是什么?答:方便性,开放性,有效性,可扩充性2.OS的作用可表现在哪几个方面?答:OS作为用户与计算机硬件系统之间的接口;OS作为计算机系统资的管理者;OS实现了对计算机资源的抽象。

3.为什么说操作系统实现了对计算机资源的抽象?答:OS首先在裸机上覆盖一层1/0设备管理软件,实现了对计算机硬件操作的第一层次抽象;在第一层软件上再覆盖文件管理软件,实现了对硬件资源操作的第二层次抽象。

0s通过在计算机硬件上安装多层系统软件,增强了系统功能,隐藏了对硬件操作的细节,由它们共同实现了对计算机资源的抽象。

4·说明推动分时系统形成和发展的主要动力是什么?答:主要动力是提高资源利用率和系统吞吐里,为了满足用户对人一机交互的需求和共享主机。

5.何谓脱机I/O和联机I/O?答:脱机1/0是指事先将装有用户程序和数据的纸带或卡片装入纸带输入机或卡片机,在外围机的控制下,把纸带或一片上的数据或程序输入到殖带上。

该方式下的输入输出由外围机控制完成,是在脱离主机的情况下进行的。

而耽机1/0方式是指程序和数据的輸入输出都是在主机的直接控制下进行的。

6.试说明推动分时系统形成和发展的主要动力是什么?答:推动分时系统形成和发展的主要动力是更好地满足用户的需要。

主要表现在:CPU的分时使用缩短了作业的平均周转时间;人机交互能力使用户能直接控制自己的作业;主机的共享使多用户能同时使用同一台计算机,独立地处理自己的作业。

7.实现分时系统的关键问题是什么?应如何解决?答:关键问题是当用户在自己的终端上键入命令时,系统应能及寸接收并及时处理该命令,在用户能接受的时采内将结果返回给用户。

解决方法:针对及时接收问题,可以在系统中设路多路卡,健主机能同时接收用户从各个终端上轮入的数据;为每个终端配路缓冲区,暂存用户捷入的命令或教据。

针对反时处理问题,应便所有的用户作业都直接进入内存,并且为每个作业分配一个时间片,允许作业只在自己的时间片内运行,这样在不长的时间内,能使每个作业都运行一次。

第4章 计算机操作系统答案 处理机调度

第4章 计算机操作系统答案 处理机调度

第四章处理机调度一、选择题:1、()调度主要涉及内存管理与扩充。

A、作业B、交换C、进程D、线程2、()调度在作业执行完毕时还负责回收系统资源。

A、作业B、交换C、进程D、线程3、以下哪种调度又称为宏观调度或高级调度()。

A、作业B、交换C、进程D、线程4、()调度又称为微观或低级调度。

A、作业B、交换C、进程D、线程5、下面哪中调度一般不存在于分时系统和实时系统中()。

A、作业B、交换C、进程D、线程6、()调度的主要任务是按照某种策略和方法选取一个处于就绪状态的进程占有处理机。

A、作业B、交换C、进程D、线程7、当作业运行完毕,但它所占有的资源尚未全部被系统回收时,该作业处于()状态。

A、提交B、收容C、执行D、完成8、一个作业在其处于从输入设备进入外部存储设备的过程称为()状态。

A、提交B、收容C、执行D、完成9、当一个作业的全部信息已全部被输入进输入井但还未被调度去执行,此时该作业处于()状态。

A、提交B、收容C、执行D、完成10、()状态也称为后备状态。

A、提交B、收容C、执行D、完成11、一种既有利于短小作业又兼顾到长作业的作业调度算法是()A、先来先服务 B 、轮转C、最高响应比优先D、均衡调度12、作业调度程序是从处于()状态的作业中选取一个作业并把它装入主存。

A、输入B、收容C、执行D、完成13、下列选项中哪一个不属于作业调度算法的评价因素()A、单位时间内运行尽可能多的作业B、使各种I/O设备得以充分利用C 、对所有的作业都是公平合理的 D、使处理机尽可能保持“空闲”。

14、下列选项中哪一项不属于JCB的主要内容()A 作业名B 作业类型C 资源要求D 作业完成时间15、作业调度程序为选中作业建立进程并为这些进程分配的系统资源不包括下列哪一项()A、内存B、外存C、外设D、虚拟内存16、在操作系统中,JCB是指()。

A、作业控制块B、进程控制块C、文件控制块 D 程序控制块17、作业调度算法包括下列选项中的那些种()。

操作系统概念第七版4-6章课后题答案(中文版)

操作系统概念第七版4-6章课后题答案(中文版)

操作系统概念第七版4-6章课后题答案(中⽂版)第四章线程4.1举两个多线程程序设计的例⼦来说明多线程不⽐单线程⽅案提⾼性能答:1)任何形式的顺序程序对线程来说都不是⼀个好的形式。

例如⼀个计算个⼈报酬的程序。

2)另外⼀个例⼦是⼀个“空壳”程序,如C-shell和korn shell。

这种程序必须密切检测其本⾝的⼯作空间。

如打开的⽂件、环境变量和当前⼯作⽬录。

4.2描述⼀下线程库采取⾏动进⾏⽤户级线程上下⽂切换的过程答:⽤户线程之间的上下⽂切换和内核线程之间的相互转换是⾮常相似的。

但它依赖于线程库和怎样把⽤户线程指给内核程序。

⼀般来说,⽤户线程之间的上下⽂切换涉及到⽤⼀个⽤户程序的轻量级进程(LWP)和⽤另外⼀个线程来代替。

这种⾏为通常涉及到寄存器的节约和释放。

4.3在哪些情况下使⽤多内核线程的多线程⽅案⽐单处理器系统的单个线程⽅案提供更好的性能。

答:当⼀个内核线程的页⾯发⽣错误时,另外的内核线程会⽤⼀种有效的⽅法被转换成使⽤交错时间。

另⼀⽅⾯,当页⾯发⽣错误时,⼀个单⼀线程进程将不能够发挥有效性能。

因此,在⼀个程序可能有频繁的页⾯错误或不得不等待其他系统的事件的情况下,多线程⽅案会有⽐单处理器系统更好的性能。

4.4以下程序中的哪些组成部分在多线程程序中是被线程共享的?a.寄存值b.堆内存c.全局变量d.栈内存答:⼀个线程程序的线程共享堆内存和全局变量,但每个线程都有属于⾃⼰的⼀组寄存值和栈内存。

4.5⼀个采⽤多⽤户线程的多线程⽅案在多进程系统中能够取得⽐在单处理器系统中更好的性能吗?答:⼀个包括多⽤户线程的多线程系统⽆法在多处理系统上同时使⽤不同的处理器。

操作系统只能看到⼀个单⼀的进程且不会调度在不同处理器上的不同进程的线程。

因此,多处理器系统执⾏多个⽤户线程是没有性能优势的。

4.6就如4.5.2章节描述的那样,Linux没有区分进程和线程的能⼒。

且Linux线程都是⽤相同的⽅法:允许⼀个任务与⼀组传递给clone()系统调⽤的标志的进程或线程。

(完整版)操作系统第4章答案(上)

(完整版)操作系统第4章答案(上)

赵盈盈2011210593 第四章作业上1.解释名词:程序的顺序执行;程序的并发执行。

答:程序的顺序执行:一个具有独立功能的程序独占 cpu 直到得到最终结果的进程。

程序的并发执行:两个或两个以上程序在计算机系统中同时处于一开始执行且尚未结束的状态。

2.什么是进程?进程与程序的主要区别是什么?答:进程:进程是具有独立功能的程序关于某个数据集合的一次运行活动,进程是系统进行资源分配和调度的独立单元。

进程和程序的区别:●程序是静态的,进程是动态的●进程有程序和数据两部分组成●进程具有生命周期,有诞生和消亡,是短暂的;而程序是相对长久的●进程能更真实的描述并发,而程序不行。

●一个进程可以对应多个程序。

一个程序可以对应多个进程●进程可以创建其他进程,程序不能3.图1 所示,设一誊抄程序,将 f 中记录序列正确誊抄到 g 中,这一程序由get、copy、put 三个程序段组成,它们分别负责获得记录、复制记录、输出记录。

请指出这三个程序段对 f 中的m 个记录进行处理时各种操作的先后次序,并画出誊抄此记录序列的先后次序图(假设f 中有1,2,…,m 个记录,s,t 为设置在主存中的软件缓冲区,每次只能装一个记录)。

图1 改进后的誊抄过程答:PPG4.进程有哪几种基本状态?试画出进程状态变迁图,并标明发生变迁的可能原因。

答:进程基本状态:运行、就绪、等待就绪到运行:调度程序选择一个新的进程运行运行到就绪:运行进程用完了时间片或运行进程被中断,因为一个高优先级的进程处于就绪状态运行到等待:OS 尚未完成服务或对一资源的访问尚不能进行或初始化 I/O 且必须等待结果或等待某一进程提供输入(IPC)等待到就绪:当所有的事件发生时5.什么是进程控制块?它有什么作用?答:PCB:为了便于系统控制和描述进程的活动过程,在操作系统核心中为进程定义的一个专门的数据结构。

作用:系统用 PCB 来控制和管理进程的调用,PCB 也是系统感知进程存在的唯一标志S36. n 个并发进程共用一个公共变量 Q ,写出用信号灯的 p 、v 操作实现 n 个进程互斥时的程序描述,并说明信号灯值的取值范围。

操作系统原理-第四章 处理机调度(有答案)

操作系统原理-第四章  处理机调度(有答案)

第四章处理机调度4.3 习题4.3.1 选择最合适的答案1.某系统采用了银行家算法,则下列叙述正确的是()。

A.系统处于不安全状态时一定会发生死锁B.系统处于不安全状态时可能会发生死锁C.系统处于安全状态时可能会发生死锁D.系统处于安全状态时一定会发生死锁2.银行家算法中的数据结构包括有可利用资源向量Available、最大需求矩阵Max、分配矩阵Allocation、需求矩阵Need,下列选项正确的是()。

A.Max[i,j]=Allocation[i,j]+Need[i,j]B.Need[i,j]= Allocation[i,j]+ Max[i,j]C.Max[i,j]= Available[i,j]+Need[i,j]D.Need[i,j]= Available[i,j]+ Max[i,j]3.下列进程调度算法中,()可能会出现进程长期得不到调度的情况。

A.非抢占式静态优先权法B.抢占式静态优先权法C.时间片轮转调度算法D.非抢占式动态优先权法4.在下列选项中,属于预防死锁的方法是()。

A.剥夺资源法B.资源分配图简化法C.资源随意分配D.银行家算法5.在下列选项中,属于检测死锁的方法是()。

A.银行家算法B.消进程法C.资源静态分配法D.资源分配图简化法6.在下列选项中,属于解除死锁的方法是()。

A.剥夺资源法 B.资源分配图简化法C.银行家算法 D.资源静态分配法7.为了照顾紧迫型作业,应采用()。

A.先来服务调度算法B.短作业优先调度算法C.时间片轮转调度算法D.优先权调度算法8.在采用动态优先权的优先权调度算法中,如果所有进程都具有相同优先权初值,则此时的优先权调度算法实际上和()相同。

A.先来先服务调度算法B.短作业优先调度算法C.时间片轮转调度算法D.长作业优先调度算法9.作业从后备作业到被调度程序选中的时间称为()。

A.周转时间B.响应时间C.等待调度时间D.运行时间10.资源静态分配法可以预防死锁的发生,它们使死锁四个条件中的()不成立。

操作系统第四章习题及答案

操作系统第四章习题及答案

操作系统第四章习题及答案第四章进程管理1、⼀个由3个页⾯每页有2048个字节组成的程序,将它装⼊⼀个8个物理块组成的存储器中,装⼊的情况如下表所⽰:给出下列逻辑地址,请计算出2617对应的物理地址:2、某请求页式存储管理,允许⽤户编程空间为32个页⾯(每页1KB),主存为16KB, 如有⼀个⽤户程序有10页长,且某时刻该⽤户页⾯映射表如表所⽰。

如果程序执⾏时遇到以下的虚地址:0AC5H ,1AC5H 试计算对应的物理地址。

3、假设某分页系统中,主存储器的容量为1MB ,被分为256块,回答:1)主存地址应该⽤位来表⽰。

2)作业每⼀页的长度为;逻辑地址中的页内地址应该为位。

4、在段式管理系统中,段表为求下⾯逻辑地址对应的物理地址。

12 7 1 4 0 块号页号 95 1938 4 590 13503 90 100 220 2350 1 500 210 0 段长内存起始地址段号(1,10);(2,500);(3,400);(5,32)5、在⼀分页存储管理系统中,逻辑地址长度为16位,页⾯⼤⼩为4096字节,分别计算逻辑地址14AAH,235BH,3B4CH,78DDH所对应的物理地址,并指出可能发⽣何种中断?(8分)注:1表⽰可寻址,0表⽰在外存。

6、在⼀个请求分页系统中,假定系统分配给作业的物理块数为3,并且此作业的页⾯⾛向为2、3、2、1、5、2、4、5、3、2、5、2。

试⽤LRU算法计算出程序访问过程所发⽣的缺页次数和被替换的页⾯序列。

答案:1、P=int(2617/2048)=1 d=569物理地址=4*2048+569=87612、0AC5H的页号是2,对应的物理页号是4,所以物理地址应该为12C5H,1AC5H的页号是6,超过了页表的范围,所以该地址⾮法,产⽣越界中断3、假设某分页系统中,主存储器的容量为1MB,被分为256块,回答:1)主存地址应该⽤ 20 位来表⽰。

2)作业每⼀页的长度为 2048 ;逻辑地址中的页内地址应该为 12 位。

操作系统第4章答案(上)

操作系统第4章答案(上)

赵盈盈2011210593 第四章作业上1. 解释名词:程序的顺序执行;程序的并发执行。

答:程序的顺序执行:一个具有独立功能的程序独占cpu直到得到最终结果的进程。

程序的并发执行:两个或两个以上程序在计算机系统中同时处于一开始执行且尚未结束的状态。

2. 什么是进程?进程与程序的主要区别是什么?答:进程:进程是具有独立功能的程序关于某个数据集合的一次运行活动,进程是系统进行资源分配和调度的独立单元。

进程和程序的区别:●程序是静态的,进程是动态的●进程有程序和数据两部分组成●进程具有生命周期,有诞生和消亡,是短暂的;而程序是相对长久的●进程能更真实的描述并发,而程序不行。

●一个进程可以对应多个程序。

一个程序可以对应多个进程●进程可以创建其他进程,程序不能3. 图1所示,设一誊抄程序,将f中记录序列正确誊抄到g中,这一程序由get、copy、put 三个程序段组成,它们分别负责获得记录、复制记录、输出记录。

请指出这三个程序段对f 中的m个记录进行处理时各种操作的先后次序,并画出誊抄此记录序列的先后次序图(假设f中有1,2,…,m个记录,s,t为设置在主存中的软件缓冲区,每次只能装一个记录)。

图1 改进后的誊抄过程答:4. 进程有哪几种基本状态?试画出进程状态变迁图,并标明发生变迁的可能原因。

答:进程基本状态:运行、就绪、等待就绪到运行:调度程序选择一个新的进程运行 运行到就绪:运行进程用完了时间片或运行进程被中断,因为一个高优先级的进程处于就绪状态运行到等待:OS 尚未完成服务或对一资源的访问尚不能进行或初始化I/O 且必须等待结果 或等待某一进程提供输入(IPC )等待到就绪:当所有的事件发生时5. 什么是进程控制块?它有什么作用?答:PCB :为了便于系统控制和描述进程的活动过程,在操作系统核心中为进程定义的一个专门的数据结构。

作用:系统用PCB 来控制和管理进程的调用,PCB 也是系统感知进程存在的唯一标志GCGPCP G… CP6. n 个并发进程共用一个公共变量Q ,写出用信号灯的p 、v 操作实现n 个进程互斥时的程序描述,并说明信号灯值的取值范围。

操作系统第4章答案(上)

操作系统第4章答案(上)

赵盈盈 93 第四章作业上1. 解释名词:程序的顺序执行;程序的并发执行。

答:程序的顺序执行:一个具有独立功能的程序独占cpu直到得到最终结果的进程。

程序的并发执行:两个或两个以上程序在计算机系统中同时处于一开始执行且尚未结束的状态。

2. 什么是进程进程与程序的主要区别是什么答:进程:进程是具有独立功能的程序关于某个数据集合的一次运行活动,进程是系统进行资源分配和调度的独立单元。

进程和程序的区别:●程序是静态的,进程是动态的●进程有程序和数据两部分组成●进程具有生命周期,有诞生和消亡,是短暂的;而程序是相对长久的●进程能更真实的描述并发,而程序不行。

●一个进程可以对应多个程序。

一个程序可以对应多个进程●进程可以创建其他进程,程序不能3. 图1所示,设一誊抄程序,将f中记录序列正确誊抄到g中,这一程序由get、copy、put三个程序段组成,它们分别负责获得记录、复制记录、输出记录。

请指出这三个程序段对f中的m个记录进行处理时各种操作的先后次序,并画出誊抄此记录序列的先后次序图(假设f中有1,2,…,m个记录,s,t为设置在主存中的软件缓冲区,每次只能装一个记录)。

图1 改进后的誊抄过程答:4. 进程有哪几种基本状态试画出进程状态变迁图,并标明发生变迁的可能原因。

答:进程基本状态:运行、就绪、等待状态转换图:就绪到运行:调度程序选择一个新的进程运行 运行到就绪:运行进程用完了时间片或运行进程被中断,因为一个高优先级的进程处于就绪状态运行到等待:OS 尚未完成服务或对一资源的访问尚不能进行或初始化I/O 且必须等待结果 或等待某一进程提供输入(IPC )等待到就绪:当所有的事件发生时GCGPCP G… CP5. 什么是进程控制块它有什么作用答:PCB:为了便于系统控制和描述进程的活动过程,在操作系统核心中为进程定义的一个专门的数据结构。

作用:系统用PCB来控制和管理进程的调用,PCB也是系统感知进程存在的唯一标志6. n个并发进程共用一个公共变量Q,写出用信号灯的p、v操作实现n个进程互斥时的程序描述,并说明信号灯值的取值范围。

操作系统第四章课后题答案

操作系统第四章课后题答案

第四章1.为什么说多级反馈队列调度算法能较好地满足各类用户的需要(来自百度):答案一:多级反馈队列调度算法能较好地满足各种类型用户的需要。

对终端型作业用户而言,由于他们所提交的大多属于交互型作业,作业通常比较短小,系统只要能使这些作业在第1级队列所规定的时间片内完成,便可使终端型作业用户感到满意;对于短批处理作业用户而言,他们的作业开始时像终端型作业一样,如果仅在第1级队列中执行一个时间片即可完成,便可以获得与终端型作业一样的响应时间,对于稍长的作业,通常也只需要在第2级队列和第3级队列中各执行一个时间片即可完成,其周转时间仍然较短;对于长批处理作业用户而言,它们的长作业将依次在第1,2,…,直到第n级队列中运行,然后再按时间片轮转方式运行,用户不必担心其作业长期得不到处理。

答案二:(惠州学院操作系统课后题)与答案一基本相似,可看做精简版。

答:(1)终端型作业用户提交的作业大多属于较小的交互型作业,系统只要使这些作业在第一队列规定的时间片内完成,终端作业用户就会感到满足。

(2)短批处理作业用户,开始时像终端型作业一样,如果在第一队列中执行一个时间片段即可完成,便可获得与终端作业一样的响应时间。

对于稍长作业,通常只需在第二和第三队列各执行一时间片即可完成,其周转时间仍然较短。

(3)长批处理作业,它将依次在第1 ,2 ,…,n个队列中运行,然后再按轮转方式运行,用户不必担心其作业长期得不到处理。

所以,多级反馈队列调度算法能满足多用户需求。

2.分别对以上两个进程集合,计算使用先来先服务(FCFS)、时间片轮转法(时间片q=1)、短进程优先(SPN)、最短剩余时间优先(SRT,时间片q=1)、响应比高者优先(HRRN)及多级反馈队列(MFQ,第1个队列的时间片为1,第i(i<1)个队列的时间片q=2(i-1))算法进行CPU调度,请给出各进程的完成时间、周转时间、带权周转时间,及所有进程的平均周转时间和平均带权周转时间。

操作系统第四章课后答案

操作系统第四章课后答案

操作系统第四章课后答案第四章存储器管理1. 为什么要配置层次式存储器?这是因为:a.设置多个存储器可以使存储器两端的硬件能并行工作。

b.采用多级存储系统,特别是Cache技术,这是一种减轻存储器带宽对系统性能影响的最佳结构方案。

c.在微处理机内部设置各种缓冲存储器,以减轻对存储器存取的压力。

增加CPU中寄存器的数量,也可大大缓解对存储器的压力。

2. 可采用哪几种方式将程序装入内存?它们分别适用于何种场合?将程序装入内存可采用的方式有:绝对装入方式、重定位装入方式、动态运行时装入方式;绝对装入方式适用于单道程序环境中,重定位装入方式和动态运行时装入方式适用于多道程序环境中。

3. 何为静态链接?何谓装入时动态链接和运行时动态链接?a.静态链接是指在程序运行之前,先将各自目标模块及它们所需的库函数,链接成一个完整的装配模块,以后不再拆开的链接方式。

b.装入时动态链接是指将用户源程序编译后所得到的一组目标模块,在装入内存时,采用边装入边链接的一种链接方式,即在装入一个目标模块时,若发生一个外部模块调用事件,将引起装入程序去找相应的外部目标模块,把它装入内存中,并修改目标模块中的相对地址。

c.运行时动态链接是将对某些模块的链接推迟到程序执行时才进行链接,也就是,在执行过程中,当发现一个被调用模块尚未装入内存时,立即由OS去找到该模块并将之装入内存,把它链接到调用者模块上。

4. 在进行程序链接时,应完成哪些工作?a.对相对地址进行修改b.变换外部调用符号6. 为什么要引入动态重定位?如何实现?a.程序在运行过程中经常要在内存中移动位置,为了保证这些被移动了的程序还能正常执行,必须对程序和数据的地址加以修改,即重定位。

引入重定位的目的就是为了满足程序的这种需要。

b.要在不影响指令执行速度的同时实现地址变换,必须有硬件地址变换机构的支持,即须在系统中增设一个重定位寄存器,用它来存放程序在内存中的起始地址。

程序在执行时,真正访问的内存地址是相对地址与重定位寄存器中的地址相加而形成的。

操作系统第4章习题带答案教学教材

操作系统第4章习题带答案教学教材

操作系统第4章习题带答案第四章一、问答题1、同步机制应遵循的准则是什么?2、死锁产生的4个必要条件是什么?它们是彼此独立的吗?3、简述死锁的定义和死锁产生的原因。

4、简述死锁定理和解除死锁的方法。

5、什么是安全状态?怎么判断系统是否处于安全状态?6、同步机制应遵循的准则是什么?7、死锁产生的4个必要条件是什么?它们是彼此独立的吗?二、计算题(共20分)1、当前系统中出现下述资源分配情况:利用银行家算法,试问如果进程P2提出资源请求Request(1,2,2,2)后,系统能否将资源分配给它?答:Request(1,2,2,2)<=(2,3,5,6)申请合法Request(1,2,2,2)<=Available,开始试探性分配,Available=(0,4,0,0)测试系统是否安全:work= Available,finish=1没有进程的need满足<=work系统处于不安全状态,系统拒绝此次资源分配。

2、当前某系统有同类资源7个,进程P,Q所需资源总数分别为5,4。

它们向系统申请资源的次序和数量如表所示。

回答:问:采用死锁避免的方法进行资源分配,请你写出系统完成第3次分配后各进程占有资源量,在以后各次的申请中,哪次的申请要求可先得到满足?答:第1次申请,Q申请资源2,系统安全,分配第2次申请,P申请资源1,系统安全,分配第3次申请,Q申请资源1,系统安全,分配资源剩余3个,P占有1个资源,Q占有3个资源,第4次分配不安全,拒绝,第5分配系统安全,满足。

3、一个计算机系统有6个磁带驱动器和4个进程。

每个进程最多需要n个磁带驱动器。

问当n为什么值时,系统不会发生死锁?并说明理由答:n=2理由同第4题(进程资源最大需求-1)×进程数量+1≤系统资源数量4、若系统有某类资源m×n+1个,允许进程执行过程中动态申请该类资源,但在该系统上运行的每一个进程对该资源的占有量任何时刻都不会超过m+1个。

操作系统课后习题答案(4~6章)

操作系统课后习题答案(4~6章)

操作系统课后习题答案(4~6章)Chapter 41、存储管理主要研究的内容是:内存存储分配;地址再定位;存储保护;存储扩充的⽅法。

2、什么是虚拟存储器?实现虚存的物质基础是什么?虚存实际上是⼀个地址空间,它有OS产⽣的⼀个⽐内存容量⼤的多的“逻辑存储器”。

其物质基础是:⼀定容量的主存;⼤容量的辅存(外存)和地址变化机构(容量受计算机的地址位数限定)。

有3类虚存:分页式、分段式和段页式。

引⼊虚存的必要性:逻辑上扩充内存容量,实现⼩内存运⾏⼤作业的⽬的;可能性:其物质基础保证。

3、某页式管理系统,主存容量为64KB,分成16块,块号为0,1,2,3,4……,15。

设某作业有4页,其页号为0,1,2,3。

被分别装⼊主存的2,4,1,6块。

试问:(1)该作业的总长度是多少字节?(2)计算出该作业每⼀页在主存中的起始地址。

(3)若给出逻辑地址[0,100]、[1,50]、[2,0]、[3,60],请计算出相应的内存地址。

解:(1)每块的长度=64KB/16=4KB;因为块与页⾯⼤⼩相等,每页容量=4KB;故作业的总长度为:4KB*4=16KB。

(2)因为页号为0,1,2,31,6块中,即PMT为:所以,该作业的:第0页在内存中的起始地址为4K*2=8K;第1页在内存中的起始地址为4K*4=16K;第2页在内存中的起始地址为4K*1=4K;第3页在内存中的起始地址为4K*6=24K;(3)对应内存地址:逻辑地址[0,100]的内存地址为4K*2+100=8192+100=8292;逻辑地址[1,50]的内存地址为4K*4+50=16384+50=16434;逻辑地址[2,0]的内存地址为4K*1+0=4096;逻辑地址[3,60]的内存地址为4K*6+60=24K+60=24576+60=24636。

试回答:(1)给定段号和段内地址,完成地址变换过程。

(2)计算[0,430]、[1,10]、[2,500]、[3,400]的内存地址。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

赵盈盈2011210593 第四章作业上1. 解释名词:程序的顺序执行;程序的并发执行。

答:程序的顺序执行:一个具有独立功能的程序独占cpu直到得到最终结果的进程。

程序的并发执行:两个或两个以上程序在计算机系统中同时处于一开始执行且尚未结束的状态。

2. 什么是进程?进程与程序的主要区别是什么?答:进程:进程是具有独立功能的程序关于某个数据集合的一次运行活动,进程是系统进行资源分配和调度的独立单元。

进程和程序的区别:●程序是静态的,进程是动态的●进程有程序和数据两部分组成●进程具有生命周期,有诞生和消亡,是短暂的;而程序是相对长久的●进程能更真实的描述并发,而程序不行。

●一个进程可以对应多个程序。

一个程序可以对应多个进程●进程可以创建其他进程,程序不能3. 图1所示,设一誊抄程序,将f中记录序列正确誊抄到g中,这一程序由get、copy、put三个程序段组成,它们分别负责获得记录、复制记录、输出记录。

请指出这三个程序段对f中的m个记录进行处理时各种操作的先后次序,并画出誊抄此记录序列的先后次序图(假设f中有1,2,…,m个记录,s,t为设置在主存中的软件缓冲区,每次只能装一个记录)。

图1 改进后的誊抄过程答:4. 进程有哪几种基本状态?试画出进程状态变迁图,并标明发生变迁的可能原因。

答:进程基本状态:运行、就绪、等待就绪到运行:调度程序选择一个新的进程运行 运行到就绪:运行进程用完了时间片或运行进程被中断,因为一个高优先级的进程处于就绪状态运行到等待:OS 尚未完成服务或对一资源的访问尚不能进行或初始化I/O 且必须等待结果 或等待某一进程提供输入(IPC )等待到就绪:当所有的事件发生时5. 什么是进程控制块?它有什么作用?答:PCB :为了便于系统控制和描述进程的活动过程,在操作系统核心中为进程定义的一个专门的数据结构。

作用:系统用PCB 来控制和管理进程的调用,PCB 也是系统感知进程存在的唯一标志GCGPCP G… CP6. n 个并发进程共用一个公共变量Q ,写出用信号灯的p 、v 操作实现n 个进程互斥时的程序描述,并说明信号灯值的取值范围。

答:main() pi() { {int mutex=1; p(mutex); cobegin 执行进程Pi; for(i=1;1<=n;i++){ pi();} v(mutex); coend } }对于N 并发进程,互斥子信号灯取值范围为【-(n-1),1】 Mutex = 1,表示没有进程进入缓冲区。

Mutex = 0,表示有一个进程进入缓冲区,没有进程等待 Mutex = -1,表示有一个进程进入缓冲区,一个进程等待 ……Mutex =-(n-1),表示有一个进程进入缓冲区,n-1个进程等待7. 我们用进程流图来描述一组合作进程执行的先后次序。

试用信号灯的p 、v 操作实现如图2(a)、(b)中所示进程之间的同步,并写出程序描述。

图2图3答:PV 操作实现(a )及程序实现 main(){int S2=0,S3=0,S4=0; P1() P2() P3() P4()P P 2(S2)P 3P 4(S4)P 5(S5) P 6(S6)(S57、S67)P 2( (S35、S45)P 4(S4)Cobegin { { { {P1();P2();P3();P4(); 执行P1; P(S2); P(S3); P(S4);Coend V(S2);执行P2;执行P3;执行P4;} V(S3); } } }V(S4);}PV操作实现(b)及程序实现main(){int S5=0,S6=0; P5() P6() P7()int S57=0,S67=0; { { {Cobegin P(S5); P(S6); P(S57);P5();P6();P7(); 执行P5;执行P6; P(S67);Coend V(S57) V(S67);执行P7;} } } }8. 如图3所示的进程流图中,有五个进程合作完成某一任务,试说明这五个进程之间的同步关系,并用p、v操作实现之,并要求写出程序描述。

答:PV操作实现及程序实现Main() P1() P2(){int S1=0,S2=0,S3=0,S4=0;S35=0,S45=0; {执行P1; { P(S2);Cobegin V(S2); 执行S2;P1();P2();P3();P4();P5(); V(S3); }Coend V(S4);} }P3() P4() P5(){P(S3); { P(S4); {P(35);执行P3;执行P4; P(45);V(35); V(45);执行P5;} } }9. 如图4所示,get、copy、put三进程共用两个缓冲区s、t(其大小为每次存放一个记录)。

get进程负责不断地把输入记录送入缓冲区s中,copy进程负责从缓冲区s中取出记录复制到缓冲t中,而put进程负责把记录从缓冲区t中取出打印。

试用p、v操作实现这三个进程之间的同步,并写出程序描述。

图4答:PV操作实现及程序实现Main(){int S1=1,S2=0;//S1表示空缓冲区s个数,S2表示缓冲区是否有内容可以被copyint T1=1,T2=0;// T1表示空缓冲区t个数,T2表示缓冲区是否有内容可以被put CobeginGet();Copy();Put();Coend}Get() Copy{ while(1) { while(1){ P(S1); //检查S是否为空 { P(S2);//检查S是否为满put data to buffer S //补数据放入S copy data from buffer S;// copy数据 V(S2);// S已满 V(S1); //清空S}//while P(T1);//检查T是否为空}//Get put data to buffer T;V(T2);//T已满}Put(){ while(1){P(T2);//检测T是否为满Output data from buffer T;//输出T中数据V(T1);//清空缓冲区T}}10. 什么是进程的互斥与同步?同步和互斥这两个概念有什么联系与区别?答:进程同步:是指进程之间一种直接的协同关系,是一些进程相互合作,共同完成一项任务,进程剪得直接相互作用构成进程的同步。

进程互斥:在系统中,许多进程需要共享资源,而这些资源往往要求排他性的使用,即一次只能为一个进程服务。

因此,个进程间互斥使用这些资源,进程间的这种关系叫做进程互斥。

联系:进程互斥与同步是指在进程推进时的相互制约关系。

在多道程序系统中,由于资源共享与进程合作,这种进程间的制约成为可能。

区别:进程同步主要源于进城合作,是进程间共同完成一项任务时直接发生相互作用,为进城提供直接制约关系。

在多道环境下,这种进程在执行次序上的协调是必不可少的。

而进程互斥,主要源于资源共享,是进程间的间接制约关系。

在多道系统中,每次只允许一个进程访问的资源成为临界资源,进程互斥就是保证每次只有一个进程使用临界资源。

11. 在生产者一消费者问题中,我们设置三个信号灯,一个用于互斥的信号灯mutex,其初值为1;另外两个信号灯是:full(初值为0,用以指示缓冲区内是否有物品)和empty (初值为n,表示可利用的缓冲区数目)。

试写出此时的生产者一消费者问题的描述。

答:该问题描述的是一个多个生产者一个消费者12. 判断正是列同步算法是否有错,请指出错误原因并改正。

(1)三个进程并发活动的进程流图5所示,其同步算法描述如下:main( ) 解(1)答:改正如下:{int s =-1; int S13=0,S23=0;cobeginp1( );p2( );p3( );coend} P1P2p 1( ) → P1() { {┇ ┇ v(s); V(S13); } } p 2( ) → P2() { {p(s); ┇ ┇ V(S23); } } p 3( ) → P3() { { P(S13);p(s); P(S23); ┇ ┇ } }(2)设a 、b 两进程共用一缓冲区t,a 向t 写入信息,b 则从t 读出信息,算法框图如图6所示。

(3)设a 、b 为两个并发进程,它们共享一临介资源。

其执行临界区的算法框图如图7所示。

向tP注:信号灯s注:信号灯s 1、s 2的值均为0图6 图7答:解(2)A 进程与B 进程之间是协同关系。

图5从A B 进程图4.25A进程往缓冲区写入信息之前要先判断缓冲区是否为满。

写入之后看声明缓冲区数据可以被取走B进程从缓冲区取数据之前先检测缓冲区是否已满,从t中读出信息之后要声明缓冲区数据已被取走。

Main(){int S1=1,S2=0;//S1缓冲区是否装满,S0表示缓冲区内容是否陪取走CobeginA();B();Coend;}A() B(){while(1) { while(1){ Input data to buffer T; P(S1);//检验缓冲区是否为满V(S1);//缓冲区是否已满 output data to buffer T;P(S2);//缓冲区数据可以被取走 V(S2);//缓冲区数据被取走}//while }//while}//A() }//B()答:解(3)进程A、B之间为互斥关系,用一个信号灯就够了。

改正如图A、B只需进入临界区之前检测临界区是否为空。

出来之后声明临界区可用即可图可以表现为13. 试说明进程创建的主要功能是什么?答:(1)为新建进程创建PCB。

(2)赋予一个统一进程标识符(3)为进程映像分配空间(4)初始化进程控制块(5)设置相应的链接,将新建进程设置为就绪状态,把PCB排入就绪队列中。

14. 用于进程控制的原语主要有哪几个?答:用于进程控制的原语主要有:创建原语,撤销原语,阻塞原语,唤醒原语15. 什么是线程?线程与进程有什么区别?答:线程是进程中的一个实体,是cpu调度和分派的基本单位。

区别:(1)调度:线程是调度和分配的基本单位,进程是资源拥有的基本单位;在同一个进程中线程的切换不会引起进程的切换,在一个进程中线程切换到另一个进程中是会引起进程的切换。

(2)并发性:引入线程的OS中,不仅进程之间可以并发执行,而且一个进程的多个线程也可以并发执行。

因而是OS有更好的并发性,从而能更有效地使用系统资源提高系统吞吐率。

(3)拥有资源:进城拥有资源的一个独立单位,它拥有自己的资源。

而线程自己不拥有系统资源(也有必不可少的资源)。

但它可以访问隶属进程的资源。

(4)系统开销:创建和撤销进程操作系统要为之分配或收回系统资源,如内存空间,I/O设备等。

而创建和撤销线程不用,因此,系统创建和撤销进程比创建和撤销线程开销更大。

相关文档
最新文档