《操作系统教程》南邮正式版——习题解答
- 格式:doc
- 大小:190.00 KB
- 文档页数:22
2022年南京邮电大学计算机科学与技术专业《操作系统》科目期末试卷A(有答案)一、选择题1、下面关于目录检索的论述中,正确的是()。
A.由于散列法具有较快的检索速度,因此现代操作系统中都用它来替代传统的顺序检索方法B.在利用顺序检索法时,对树形目录应采用文件的路径名,应从根目录开始逐级检索C.在利用顺序检索法时,只要路径名的一个分量名未找到,便应停止查找D.在顺序检索法的查找完成后,即可得到文件的物理地址,2、下列关厂索引表的叙述中,正确的是()。
A.索引表中每个记录的索引项可以有多个B.对索引文件存取时,必须先查找索引表C.索引表中含有索引文件的数据及其物理地址D.建立索引表的i1的之,是减少存储空间,3、中断扫描机构是()扫描次中断寄存器。
A.每隔一个时间片B.每条指令执行周期内最后时刻C.每当进程释放CPUD.每产生一次中断4、下列进程调度算法中,综合考虑进程等待时间和执行时间的是()A.时间片轮转调度算法B.短进程优先调度算法C.先来先服务调度算法D.高响应比优先调度算法5、下列关于进程和线程的叙述中,正确的是()A.不管系统是否支持线程,进程都是资源分配的基本单位,B.线程是资源分配的基本单位,进程是调度的基本单位C.系统级线程和用户级线程的切换都需要内核的支持D.同一进程中的各个线程拥有各自不同的地址空间6、下列存储管理方式中,会产生内部碎片的是()。
I.请求分段存储管理II.请求分页存储管理III.段页式分区管理IV.[固定式分区管理A.I、II、IIIB.III,IVC.只有IID.II、III、IV7、某系统采用改进型CLOCK置换算法,页表项中字段A为访问位,M为修改位。
A=0表示页最近没有被访问,A=1表示页最近被访问过。
M=0表示页没有被修改过,M=1表示页被修改过。
按(A,M)所有可能的取值,将页分为4类:(0,0)、(1,0)、(0,1)和(1,1),则该算法淘汰页的次序为()。
05-ch3参考答案3.有两个优先级相同的进程P1和P2,各自执行的操作如下,信号量S1和S2初值均为0。
试问P1、P2并发执行后,x、y、z的值各为多少?P1:P2:begin beginy:=1; x:=1;y:=y+3; x:=x+5;V(S1); P(S1);z:=y+1; x:=x+y;P(S2); V(S2);y:=z+y z:=z+x;end. end.答:现对进程语句进行编号,以方便描述。
P1:P2:begin beginy:=1; ①x:=1; ⑤y:=y+3; ②x:=x+5; ⑥V(S1); P(S1);z:=y+1; ③x:=x+y; ⑦P(S2); V(S2);y:=z+y ④z:=z+x; ⑧end. end.①、②、⑤和⑥是不相交语句,可以任何次序交错执行,而结果是唯一的。
接着无论系统如何调度进程并发执行,当执行到语句⑦时,可以得到x=10,y=4。
按Bernstein条件,语句③的执行结果不受语句⑦的影响,故语句③执行后得到z=5。
最后,语句④和⑧并发执行,这时得到了两种结果为:语句④先执行:x=10,y=9,z=15。
语句⑧先执行:x=10,y=19,z=15。
此外,还有第三种情况,语句③被推迟,直至语句⑧后再执行,于是依次执行以下三个语句:z:=z+x;z:=y+1;y:=z+y;这时z的值只可能是y+1=5,故y=z+y=5+4=9,而x=10。
第三种情况为:x=10,y=9,z=5。
5.在一个盒子里,混装了数量相等的黑白围棋子。
现在用自动分拣系统把黑子、白子分开,设分拣系统有二个进程P1和P2,其中P1拣白子;P2拣黑子。
规定每个进程每次拣一子;当一个进程在拣时,不允许另一个进程去拣;当一个进程拣了一子时,必须让另一个进程去拣。
试写出两进程P1和P2能并发正确执行的程序。
答1:实质上是两个进程的同步问题,设信号量S1和S2分别表示可拣白子和黑子,不失一般性,若令先拣白子。
《操作系统教程》习题答案习题11.单项选择题(1)大中小型计算机是以为中心的计算机系统。
A、CPUB、存储器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、并发性是指进程,并行性是指程序(1)B (2)B (3)A (4)B (5)D (6)B2.填空题(1)微机是以总线为纽带构成的计算机系统。
(2)在批处理兼分时系统中,往往把由分时系统控制的作业称为前台作业,把由批处理系统控制的作业称为后台作业。
(3)在分时系统中,若时间片长度一定,则用户数越多,系统响应时间越慢。
(4)分布式操作系统能使系统中若干台计算机协同完成一个共同的任务,分解问题成为子计算并使之在系统中各台计算机上并行执行,以充分利用各计算机的优势。
(5)用户通过网络操作系统可以网络通信、资源共享,从而大大扩展了计算机的应用范围。
3.简答题(1)什么是操作系统?现代操作系统的基本特征是什么?操作系统是直接控制和管理计算机系统中的硬件和软件资源,合理地组织计算机工作流程,便于用户使用的程序集合。
操作系统教程课后习题参考答案习题一习题二习题三习题四习题五习题六习题一1.设计操作系统的主要目的是什么?设计操作系统的目的是:(1)从系统管理人员的观点来看,设计操作系统是为了合理地去组织计算机工作流程,管理和分配计算机系统硬件及软件资源,使之能为多个用户所共享。
因此,操作系统是计算机资源的管理者。
(2)从用户的观点来看,设计操作系统是为了给用户使用计算机提供一个良好的界面,以使用户无需了解许多有关硬件和系统软件的细节,就能方便灵活地使用计算机。
2.操作系统的作用可表现在哪几个方面?(1) 方便用户使用:操作系统通过提供用户与计算机之间的友好界面来方便用户使用。
(2) 扩展机器功能:操作系统通过扩充硬件功能和提供新的服务来扩展机器功能。
(3) 管理系统资源:操作系统有效地管理系统中的所有硬件和软件资源,使之得到充分利用。
(4) 提高系统效率:操作系统合理组织计算机的工作流程,以改进系统性能和提高系统效率。
(5)构筑开放环境:操作系统遵循国际标准来设计和构造一个开放环境。
其含义主要是指:遵循有关国际工业标准和开放系统标准,支持体系结构的可伸缩性和可扩展性;支持应用程序在不同平台上的可移植性和互操作性。
3.试叙述脱机批处理和联机批处理工作过程(1)联机批处理工作过程用户上机前,需向机房的操作员提交程序、数据和一个作业说明书,后者提供了用户标识、用户想使用的编译程序以及所需的系统资源等基本信息。
这些资料必须变成穿孔信息,(例如穿成卡片的形式),操作员把各用户提交的一批作业装到输入设备上(若输入设备是读卡机,则该批作业是一叠卡片),然后由监督程序控制送到磁带上。
之后,监督程序自动输入第一个作业的说明记录,若系统资源能满足其要求,则将该作业的程序、数据调入主存,并从磁带上调入所需要的编译程序。
编译程序将用户源程序翻译成目标代码,然后由连接装配程序把编译后的目标代码及所需的子程序装配成一个可执行的程序,接着启动执行。
操作系统教程课后习题参考答案习题一习题二习题三习题四习题五习题六习题一1.设计操作系统的主要目的是什么?设计操作系统的目的是:(1)从系统管理人员的观点来看,设计操作系统是为了合理地去组织计算机工作流程,管理和分配计算机系统硬件及软件资源,使之能为多个用户所共享。
因此,操作系统是计算机资源的管理者。
(2)从用户的观点来看,设计操作系统是为了给用户使用计算机提供一个良好的界面,以使用户无需了解许多有关硬件和系统软件的细节,就能方便灵活地使用计算机。
2.操作系统的作用可表现在哪几个方面?(1) 方便用户使用:操作系统通过提供用户与计算机之间的友好界面来方便用户使用。
(2) 扩展机器功能:操作系统通过扩充硬件功能和提供新的服务来扩展机器功能。
(3) 管理系统资源:操作系统有效地管理系统中的所有硬件和软件资源,使之得到充分利用。
(4) 提高系统效率:操作系统合理组织计算机的工作流程,以改进系统性能和提高系统效率。
(5)构筑开放环境:操作系统遵循国际标准来设计和构造一个开放环境。
其含义主要是指:遵循有关国际工业标准和开放系统标准,支持体系结构的可伸缩性和可扩展性;支持应用程序在不同平台上的可移植性和互操作性。
3.试叙述脱机批处理和联机批处理工作过程(1)联机批处理工作过程用户上机前,需向机房的操作员提交程序、数据和一个作业说明书,后者提供了用户标识、用户想使用的编译程序以及所需的系统资源等基本信息。
这些资料必须变成穿孔信息,(例如穿成卡片的形式),操作员把各用户提交的一批作业装到输入设备上(若输入设备是读卡机,则该批作业是一叠卡片),然后由监督程序控制送到磁带上。
之后,监督程序自动输入第一个作业的说明记录,若系统资源能满足其要求,则将该作业的程序、数据调入主存,并从磁带上调入所需要的编译程序。
编译程序将用户源程序翻译成目标代码,然后由连接装配程序把编译后的目标代码及所需的子程序装配成一个可执行的程序,接着启动执行。
计算机操作系统试题一填空:2.主存储器与外围设备之间的数据传送控制方式有程序直接控制、中断驱动方式、DMA方式和通道控制方式。
4.当一个进程独占处理器顺序执行时,具有两个特性:封闭性和可再现性。
5.程序经编译或汇编以后形成目标程序,其指令的顺序都是以零作为参考地址,这些地址称为逻辑地址。
7.进程由程度、数据和FCB组成。
8.对信号量S的操作只能通过原语操作进行,对应每一个信号量设置了一个等待队列。
21.操作系统目前有五大类型:批处理操作系统、分时操作系统、实时操作系统、网络操作系统和分布式操作系统。
24、在设备管理中,为了克服独占设备速度较慢、降低设备资源利用率的缺点,引入了虚拟分配技术,即用共享设备模拟独占设备。
25、常用的内存管理方法有分区管理、页式管理、段式管理和段页式管理。
26、动态存储分配时,要靠硬件地址变换机构实现重定位。
27、在存储管理中常用虚拟存储器方式来摆脱主存容量的限制。
35. 在操作系统中,进程是一个资源分配的基本单位,也是一个独立运行和调度的基本单位。
36. 在信号量机制中,信号量S > 0时的值表示可用资源数目;若S < 0,则表示等待该资源的进程数,此时进程应阻塞。
37. 操作系统提供给编程人员的唯一接口是系统调用。
38. 设备从资源分配角度可分为独占设备,共享设备和虚拟设备。
42. 地址变换机构的基本任务是将虚地址空间中的逻辑地址变换为内存中的物理地址。
44.现代操作系统的两个重要特征是并发和共享。
47. 操作系统的基本类型有批处理操作系统,分时操作系统和实时操作系统三种。
58.在分时系统中,当用户数目为100时,为保证响应时间不超过2秒,此时时间片最大应为20ms。
分时系统采用的调度方法是时间片轮转调度算法。
66.使用缓冲区能有效地缓和I/O设备和CPU之间速度不匹配的矛盾。
71.计算机操作系统是方便用户、管理和控制计算机系统资源的系统软件。
90.在一个请求分页系统中,假如系统分配给一个作业的物理块数为3,且此作业的页面走向为2,3,2,1,5,2,4,5,3,2,5,2。
第 1 章操作系统概论(1)试说明什么是操作系统,它具有什么特征?其最基本特征是什么?解:操作系统就是一组管理与控制计算机软硬件资源并对各项任务进行合理化调度,且附加了各种便于用户操作的工具的软件层次。
现代操作系统都具有并发、共享、虚拟和异步特性,其中并发性是操作系统的最基本特征,也是最重要的特征,其它三个特性均基于并发性而存在。
(2)设计现代操作系统的主要目标是什么?解:现代操作系统的设计目标是有效性、方便性、开放性、可扩展性等特性。
其中有效性指的是 OS应能有效地提高系统资源利用率和系统吞吐量。
方便性指的是配置了 OS后的计算机应该更容易使用。
这两个性质是操作系统最重要的设计目标。
开放性指的是 OS应遵循世界标准规范,如开放系统互连 OSI 国际标准。
可扩展性指的是 OS应提供良好的系统结构,使得新设备、新功能和新模块能方便地加载到当前系统中,同时也要提供修改老模块的可能,这种对系统软硬件组成以及功能的扩充保证称为可扩展性。
(3)操作系统的作用体现在哪些方面?解:现代操作系统的主要任务就是维护一个优良的运行环境,以便多道程序能够有序地、高效地获得执行,而在运行的同时,还要尽可能地提高资源利用率和系统响应速度,并保证用户操作的方便性。
因此操作系统的基本功能应包括处理器管理、存储器管理、设备管理和文件管理。
此外,为了给用户提供一个统一、方便、有效的使用系统能力的手段,现代操作系统还需要提供一个友好的人机接口。
在互联网不断发展的今天,操作系统中通常还具备基本的网络服务功能和信息安全防护等方面的支持。
(4)试说明实时操作系统和分时操作系统在交互性、及时性和可靠性方面的异同。
解:交互性:分时系统能够使用户和系统进行人 - 机对话。
实时系统也具有交互性,但人与系统的交互仅限于访问系统中某些特定的专用服务程序。
及时性:分时系统的响应时间是以人能够接受的等待时间为标准,而实时控制系统对响应时间要求比较严格,它是以控制过程或信息处理中所能接受的延迟为标准。
、3、10、15、23、27、353. 什么是操作系统?操作系统在计算机系统中的主要作用是什么?操作系统是管理系统资源、控制程序执行、改善人机界面、提供各种服务, 并合理组织计算机工作流程和为用户有效地使用计算机提供良好运行环境的一种系统软件.主要作用(1)服务用户—操作系统作为用户接口和公共服务程序(2)进程交互—操作系统作为进程执行的控制者和协调者(3)系统实现—操作系统作为扩展机或虚拟机(4)资源管理—操作系统作为资源的管理者和控制者10. 试述系统调用与函数(过程)调用之间的区别。
(1)调用形式和实现方式不同;(2)被调用的代码位置不同;(3)提供方式不同15. 什么是多道程序设计?多道程序设计有什么特点?多道程序设计是指允许多个作业 (程序) 同时进入计算机系统内存并执行交替计算的方法。
从宏观上看是并行的,从微观上看是串行的。
(1)可以提高CPU内存和设备的利用率;(2)可以提高系统的吞吐率,使单位时间内完成的作业数目增加;(3)可以充分发挥系统的并行性,使设备和设备之间,设备和CPU之间均可并行工作。
23. 现代操作系统具有哪些基本功能?请简单叙述之。
( 1 )处理器管理;( 2)存储管理;( 3)设备管理;( 4 )文件管理;( 5 )联网与通信管理。
27. 什么是操作系统的内核?内核是一组程序模块,作为可信软件来提供支持进程并发执行的基本功能和基本操作,通常驻留在内核空间,运行于内核态,具有直接访问计算机系统硬件设备和所有内存空间的权限,是仅有的能够执行特权指令的程序。
35. 简述操作系统资源管理的资源复用技术。
系统中相应地有多个进程竞争使用资源,由于计算机系统的物理资源是宝贵和稀有的,操作系统让众多进程共享物理资源,这种共享称为资源复用。
(1)时分复用共享资源从时间上分割成更小的单位供进程使用;(2)空分复用共享资源从空间上分割成更小的单位供进程使用。
二、2、52、答:画出两道程序并发执行图如下:(1)两道程序运行期间,CPU存在空闲等待,时间为100至150ms之间(见图中有色部分)。
第1 章操作系统概论(1)试说明什么是操作系统,它具有什么特征?其最基本特征是什么?解:操作系统就是一组管理与控制计算机软硬件资源并对各项任务进行合理化调度,且附加了各种便于用户操作的工具的软件层次。
现代操作系统都具有并发、共享、虚拟和异步特性,其中并发性是操作系统的最基本特征,也是最重要的特征,其它三个特性均基于并发性而存在。
(2)设计现代操作系统的主要目标是什么?解:现代操作系统的设计目标是有效性、方便性、开放性、可扩展性等特性。
其中有效性指的是 OS应能有效地提高系统资源利用率和系统吞吐量。
方便性指的是配置了 OS后的计算机应该更容易使用。
这两个性质是操作系统最重要的设计目标。
开放性指的是 OS应遵循世界标准规范,如开放系统互连 OSI 国际标准。
可扩展性指的是 OS应提供良好的系统结构,使得新设备、新功能和新模块能方便地加载到当前系统中,同时也要提供修改老模块的可能,这种对系统软硬件组成以及功能的扩充保证称为可扩展性。
(3)操作系统的作用体现在哪些方面?解:现代操作系统的主要任务就是维护一个优良的运行环境,以便多道程序能够有序地、高效地获得执行,而在运行的同时,还要尽可能地提高资源利用率和系统响应速度,并保证用户操作的方便性。
因此操作系统的基本功能应包括处理器管理、存储器管理、设备管理和文件管理。
此外,为了给用户提供一个统一、方便、有效的使用系统能力的手段,现代操作系统还需要提供一个友好的人机接口。
在互联网不断发展的今天,操作系统中通常还具备基本的网络服务功能和信息安全防护等方面的支持。
(4)试说明实时操作系统和分时操作系统在交互性、及时性和可靠性方面的异同。
解:交互性:分时系统能够使用户和系统进行人 - 机对话。
实时系统也具有交互性,但人与系统的交互仅限于访问系统中某些特定的专用服务程序。
及时性:分时系统的响应时间是以人能够接受的等待时间为标准,而实时控制系统对响应时间要求比较严格,它是以控制过程或信息处理中所能接受的延迟为标准。
第一章操作系统引论1.设计现代OS的主要目标是什么?答:〔1〕有效性〔2〕方便性〔3〕可扩大性〔4〕开放性2.OS的作用可表现在哪几个方面?答:〔1〕OS作为用户及计算机硬件系统之间的接口〔2〕OS作为计算机系统资源的管理者〔3〕OS实现了对计算机资源的抽象3.为什么说OS实现了对计算机资源的抽象?答:OS首先在裸机上覆盖一层I/O设备管理软件,实现了对计算机硬件操作的第一层次抽象;在第一层软件上再覆盖文件管理软件,实现了对硬件资源操作的第二层次抽象。
OS 通过在计算机硬件上安装多层系统软件,增强了系统功能,隐藏了对硬件操作的细节,由它们共同实现了对计算机资源的抽象。
4.试说明推动多道批处理系统形成和开展的主要动力是什么?答:主要动力来源于四个方面的社会需求及技术开展:〔1〕不断提高计算机资源的利用率;〔2〕方便用户;〔3〕器件的不断更新换代;〔4〕计算机体系构造的不断开展。
5.何谓脱机I/O和联机I/O?答:脱机I/O 是指事先将装有用户程序和数据的纸带或卡片装入纸带输入机或卡片机,在外围机的控制下,把纸带或卡片上的数据或程序输入到磁带上。
该方式下的输入输出由外围机控制完成,是在脱离主机的情况下进展的。
而联机I/O方式是指程序和数据的输入输出都是在主机的直接控制下进展的。
6.试说明推动分时系统形成和开展的主要动力是什么?答:推动分时系统形成和开展的主要动力是更好地满足用户的需要。
主要表现在:CPU 的分时使用缩短了作业的平均周转时间;人机交互能力使用户能直接控制自己的作业;主机的共享使多用户能同时使用同一台计算机,独立地处理自己的作业。
7.实现分时系统的关键问题是什么?应如何解决?答:关键问题是当用户在自己的终端上键入命令时,系统应能及时接收并及时处理该命令,在用户能承受的时延内将结果返回给用户。
解决方法:针对及时接收问题,可以在系统中设置多路卡,使主机能同时接收用户从各个终端上输入的数据;为每个终端配置缓冲区,暂存用户键入的命令或数据。
操作系统教程第版部分习题答案第⼀章:⼀、3、10、15、23、27、353.什么是操作系统?操作系统在计算机系统中的主要作⽤是什么?操作系统是管理系统资源、控制程序执⾏、改善⼈机界⾯、提供各种服务,并合理组织计算机⼯作流程和为⽤户有效地使⽤计算机提供良好运⾏环境的⼀种系统软件. 主要作⽤(1) 服务⽤户—操作系统作为⽤户接⼝和公共服务程序 (2) 进程交互—操作系统作为进程执⾏的控制者和协调者 (3) 系统实现—操作系统作为扩展机或虚拟机(4) 资源管理—操作系统作为资源的管理者和控制者 10.试述系统调⽤与函数(过程)调⽤之间的区别。
(1)调⽤形式和实现⽅式不同;(2)被调⽤的代码位置不同;(3)提供⽅式不同15.什么是多道程序设计?多道程序设计有什么特点?多道程序设计是指允许多个作业(程序)同时进⼊计算机系统内存并执⾏交替计算的⽅法。
从宏观上看是并⾏的,从微观上看是串⾏的。
(1)可以提⾼CPU 、内存和设备的利⽤率;(2)可以提⾼系统的吞吐率,使单位时间内完成的作业数⽬增加;(3)可以充分发挥系统的并⾏性,使设备和设备之间,设备和CPU 之间均可并⾏⼯作。
23.现代操作系统具有哪些基本功能?请简单叙述之。
(1)处理器管理;(2)存储管理;(3)设备管理;(4)⽂件管理;(5)联⽹与通信管理。
27.什么是操作系统的内核?内核是⼀组程序模块,作为可信软件来提供⽀持进程并发执⾏的基本功能和基本操作,通常驻留在内核空间,运⾏于内核态,具有直接访问计算机系统硬件设备和所有内存空间的权限,是仅有的能够执⾏特权指令的程序。
35.简述操作系统资源管理的资源复⽤技术。
系统中相应地有多个进程竞争使⽤资源,由于计算机系统的物理资源是宝贵和稀有的,操作系统让众多进程共享物理资源,这种共享称为资源复⽤。
(1)时分复⽤共享资源从时间上分割成更⼩的单位供进程使⽤;(2)空分复⽤共享资源从空间上分割成更⼩的单位供进程使⽤。
《操作系统教程》南邮正式版习题解答第三章进程管理与调度习题1、什么是多道程序设计?多道程序设计利用了系统与外围设备的并行工作能力,从而提高工作效率,具体表现在哪些方面?答:让多个计算问题同时装入一个计算机系统的主存储器并行执行,这种设计技术称“ 多道程序设计”,这种计算机系统称“多道程序设计系统” 或简称“多道系统”。
在多道程序设计的系统中,主存储器中同时存放了多个作业的程序。
为避免相互干扰,必须提供必要的手段使得在主存储器中的各道程序只能访问自己的区域。
提高工作效率,具体表现在:∙提高了处理器的利用率;∙充分利用外围设备资源:计算机系统配置多种外围设备,采用多道程序设计并行工作时,可以将使用不同设备的程序搭配在一起同时装入主存储器,使得系统中各外围设备经常处于忙碌状态,系统资源被充分利用;∙发挥了处理器与外围设备以及外围设备之间的并行工作能力;从总体上说,采用多道程序设计技术后,可以有效地提高系统中资源的利用率,增加单位时间内的算题量,从而提高了吞吐率。
2、请描述进程的定义和属性。
答:进程是具有独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配、调度和保护的独立单位。
进程的属性有:结构性•共享性•动态性•独立性•制约性•并发性3、请描述进程与程序的区别及关系。
答:程序是静止的,进程是动态的。
进程包括程序和程序处理的对象(数据集),进程能得到程序处理的结果。
进程和程序并非一一对应的,一个程序运行在不同的数据集上就构成了不同的进程。
通常把进程分为“系统进程”和“用户进程”两大类,把完成操作系统功能的进程称为系统进程,而完成用户功能的进程则称为用户进程。
4、进程有哪三种基本状态?三种进程状态如何变化?答:通常,根据进程执行过程中不同时刻的状态,可归纳为三种基本状态:·等待态:等待某个事件的完成;·就绪态:等待系统分配处理器以便运行;·运行态:占有处理器正在运行。
进程在执行中状态会不断地改变,每个进程在任何时刻总是处于上述三种基本状态的某一种基本状态,进程状态之间转换关系:运行态→等待态往往是由于等待外设,等待主存等资源分配或等待人工干预而引起的。
等待态→就绪态则是等待的条件已满足,只需分配到处理器后就能运行。
运行态→就绪态不是由于自身原因,而是由外界原因使运行状态的进程让出处理器,这时候就变成就绪态。
例如时间片用完,或有更高优先级的进程来抢占处理器等。
就绪态→运行态系统按某种策略选中就绪队列中的一个进程占用处理器,此时就变成了运行态。
5、进程控制块是什么,有何作用?通常进程控制块包含哪些信息?答:进程控制块(Process Control Block,简称PCB),是操作系统为进程分配的用于标志进程,记录各进程执行情况的。
进程控制块是进程存在的标志,它记录了进程从创建到消亡动态变化的状况,进程队列实际也是进程控制块的链接。
操作系统利用进程控制块对进程进行控制和管理。
·标志信息含唯一的进程名·说明信息有进程状态、等待原因、进程程序存放位置和进程数据存放位置·现场信息包括通用、控制和程序状态字寄存器的内容·管理信息存放程序优先数和队列指针进程控制块的作用有:∙(1)记录进程的有关信息,以便操作系统的进程调度程序对进程进行调度。
这些信息包括标志信息、说明信息、现场信息和管理信息等;∙(2)标志进程的存在,进程控制块是进程存在的唯一标志6、什么是可再入程序?答:(1)什么是可再入程序。
一个能被多个用户同时调用的程序称做" 可再入"的程序。
(2)可再入程序的性质。
∙可再入程序必须是纯代码,在执行时自身不改变;∙一个可再入程序要求调用者提供工作区,以保证程序以同样方式为各用户服务。
编译程序和操作系统程序通常都是"可再入"程序,能同时被不同用户调用而构成不同的进程。
7、阐述进程调度的常用算法:先来先服务、优先数法、轮转法。
答:∙先来先服务调度算法该算法按进程进入就绪队列的先后次序选择可以占用处理器的进程。
∙优先数调度算法对每个进程确定一个优先数,该算法总是让优先数最高的进程先使用处理器。
对具有相同优先数的进程,再采用先来先服务的次序分配处理器。
系统常以任务的紧迫性和系统效率等因素确定进程的优先数。
进程的优先数可以固定的,也可随进程执行过程动态变化。
一个高优先数的进程占用处理器后,系统处理该进程时有两种方法,一是"非抢占式",另一种是"可抢占式"。
前者是此进程占用处理器后一直运行到结束,除非本身主动让出处理器,后者则是严格保证任何时刻总是让优先数最高的进程在处理器上运行。
∙时间片轮转调度法把规定进程一次使用处理器的最长时间称为"时间片"。
时间片轮转调度算法让就绪进程按就绪的先后次序排成队列,每次总选择该队列中第一个进程占用处理器,但规定只能使用一个时间片,如该进程尚未完成,则排入队尾,等待下一个供它使用的时间片。
各个进程就这样轮转运行。
时间片轮转算法经常用于分时操作系统中。
8、程序状态字包含哪些主要内容?答:(1)程序基本状态(2)中断码(3)中断屏蔽位9、比较进程调度与作业调度的不同点。
答:1)作业调度是宏观调度,它决定了哪一个作业能进入主存。
进程调度是微观调度,它决定各作业中的哪一个进程占有中央处理机。
(或)作业调度是高级调度,它位于操作系统的作业管理层次。
进程调度是低级调度,它位于操作系统分层结构的最内层。
(2)作业调度是选符合条件的收容态作业装入内存。
进程调度是从就绪态进程中选一个占用处理机。
10、C程序说明系统调用fork()的应用。
请在①②③④处填入有关父、子进程的正确语句:/* Example to demonstrate the function of System Call fork */main(){int i;①if(i)>0{printf(“②”) ;}else{printf(“③”) ;}printf(“④”) ;}执行本程序时,子进程在标准输出上打印以下结果:It is child process.Exit.父进程在标准输出上打印以下结果:It is Parent process.Exit.11、单道批处理环境下有5个作业,各作业进入系统的时间和估计运行时间如下表所示:(1) 如果应用先来先服务的作业调度算法,试将下面表格填写完整。
(2)如果应用最短作业优先的作业调度算法,试将下面表格填写完整。
答:1. (1)(2)12、有一个具有两道作业的批处理系统,作业调度采用短作业优先的非抢式调度算法,进程调度采用以优先数为基础的抢占式调度算法,在下表所示的作业序列中,作业优先数即为进程优先数,优先数越小优先级越高。
(1)列出所有作业进入内存时间及结束时间。
(2)计算平均周转时间。
答:每个作业运行将经过两个阶段:作业调度(SJF算法)和进程调度(优先数抢占式)。
另外,批处理最多容纳2道作业,更多的作业将在后备队列等待。
(1)10:00,作业A到达并投入运行。
(2)10:20,作业B到达且优先权高于作业A,故作业B投入运行而作业A在就绪队列等待。
(3)10:30,作业C到达,因内存中已有两道作业,故作业C进入作业后备队列等待。
(4)10:50,作业B运行结束,作业D到达,按SJF短作业优先算法,作业D被装入内存进入就绪队列。
而由于作业A的优先级高于作业D,故作业A投入运行。
(5)11:10,作业A运行结束,作业C被调入内存,且作业C的优先级高于作业D,故作业C投入运行。
(6)12:00,作业C运行结束,作业D投入运行。
(7)12:20,作业D运行结束。
各作业周转时间为:作业A 70,作业B 30,作业C 90,作业D 90。
平均作业周转时间为70分钟。
第四章并发进程的同步与互斥1、进程间同步和互斥的含义是什么?答:同步:并发进程之间存在的相互制约和相互依赖的关系。
互斥:若干进程共享一资源时,任何时刻只允许一个进程使用。
2、用文字描述银行家算法的基本思想?答:银行家算法的基本思想是:将系统中的所有资源比做银行家的资金,每进行一次资源的分配,银行家都要从当前的资源分配情况出发,计算这种分配方案的安全性,如果是安全的,则进行分配,否则选择其它可能的分配方案。
这样,每次分配都计算安全性,从而可以避免死锁的发生。
3、简述死锁的防止与死锁的避免的区别。
答:死锁的防止是系统预先确定一些资源分配策略,进程按规定申请资源,系统按预先规定的策略进行分配,从而防止死锁的发生。
而死锁的避免是当进程提出资源申请时系统测试资源分配,仅当能确保系统安全时才把资源分配给进程,使系统一直处于安全状态之中,从而避免死锁。
4、试说明资源的静态分配策略能防止死锁的原因。
答:资源静态分配策略要求每个进程在开始执行前申请所需的全部资源,仅在系统为之分配了所需的全部资源后,该进程才开始执行。
这样,进程在执行过程中不再申请资源,从而破坏了死锁的四个必要条件之一“占有并等待条件”,从而防止死锁的发生。
5、有三个进程P1,P2和P3并发工作。
进程P1需用资源S3和S1;进程P2需用资源S1和S2;进程P3需用资源S2和S3。
回答:(1)若对资源分配不加限制,会发生什么情况?为什么?(2)为保证进程正确工作,应采用怎样的资源分配策略?为什么?答:.(1)可能会发生死锁例如:进程P1,P2和P3分别获得资源S3,S1和S2后再继续申请资源时都要等待(2分),这是循环等待。
(或进程在等待新源时均不释放已占资源)(2)可有几种答案:A.采用静态分配由于执行前已获得所需的全部资源,故不会出现占有资源又等待别的资源的现象(或不会出现循环等待资源现象)。
或B.采用按序分配不会出现循环等待资源现象。
或C.采用银行家算法因为在分配时,保证了系统处于安全状态。
6、某车站售票厅,任何时刻最多可容纳20名购票者进入,当售票厅中少于20名购票者时,则厅外的购票者可立即进入,否则需在外面等待。
若把一个购票者看作一个进程,请回答下列问题:(1)用PV操作管理这些并发进程时,应怎样定义信号量,写出信号量的初值以及信号量各种取值的含义。
(2)根据所定义的信号量,把应执行的PV操作填入适当,以保证进程能够正确地并发执行。
COBEGIN PROCESS PI(I=1,2,……)begin;进入售票厅;购票;退出;end;COEND(3)若欲购票者最多为n个人,写出信号量可能的变化范围(最大值和最小值)。
答:.(1)定义一信号量S,初始值为20。
意义:S>0S的值表示可继续进入售票厅的人数S=0表示售票厅中已有20名顾客(购票者)S<0|S|的值为等待进入售票厅的人数(2)P(S)进入售票厅;购票;退出;V(S)(3)S的最大值为20S的最小值为20-n注:信号量的符号可不同(如写成t),但使用时应一致(即上述的s全应改成t)。