操作系统课后练习精选(答案)
(完整版)操作系统课后题答案
第一章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.实现分时系统的关键问题是什么?应如何解决?答:关键问题是当用户在自己的终端上键入命令时,系统应能及时接收并及时处理该命令,在用户能接受的时延内将结果返回给用户。
解决方法:针对及时接收问题,可以在系统中设置多路卡,使主机能同时接收用户从各个终端上输入的数据;为每个终端配置缓冲区,暂存用户键入的命令或数据。
操作系统课后习题精选答案
操作系统课后习题精选答案操作系统作为计算机科学的基础知识之一,是每个计算机专业学生必须掌握的内容。
课后习题的作用是提供课程内容的深度和拓展,以便帮助学生更好地理解和应用所学知识。
以下是我根据自己的学习经验,总结出的操作系统课后习题精选答案。
这些答案涵盖了操作系统中的主要概念和核心原理,对于加深对操作系统的理解有很大的帮助。
1. 什么是操作系统?答案:操作系统是一组程序,它们管理和控制计算机的各种硬件和软件资源,以便于应用程序进行交互式和高效的执行。
操作系统的主要功能包括进程管理、内存管理、磁盘管理、文件管理和网络管理等。
2. 什么是进程?答案:进程是指计算机系统中正在执行的程序的实例。
一个进程可以包含一个或多个线程,并且每个进程都有自己的地址空间、各种资源和状态信息等。
操作系统通过进程管理来协调和控制多个进程的执行,以提供对计算机资源的合理和优化的利用。
3. 什么是线程?答案:线程是进程中的一个独立执行单元,它可以在进程的上下文中运行,并与其他线程共享进程的资源和状态信息等。
线程和进程之间的区别在于,进程是资源分配的基本单位,而线程是操作系统中的调度基本单位。
操作系统利用线程进行并行计算和流程处理,以便快速实现多任务处理和高效运行。
4. 什么是虚拟内存?答案:虚拟内存是操作系统提供的一种机制,用于将计算机的物理内存和应用程序的逻辑地址空间进行映射和管理。
虚拟内存的基本思想是将进程的地址空间分为若干个物理和逻辑区域,并在需要时将这些区域进行映射和替换。
这样,操作系统可以允许应用程序访问超过物理内存容量的数据,从而提高系统的内存利用率和应用程序的执行效率。
5. 什么是文件系统?答案:文件系统是一种操作系统提供的数据存储和管理机制,用于将数据组织为文件、目录和子目录等形式,并提供对文件系统中的不同组成部分进行访问、传输和维护等操作。
文件系统的主要目的是让应用程序可以访问和共享系统中的数据资源,从而有效管理和利用计算机的存储资源。
操作系统课后部分习题及答案
第2章操作系统的运行环境2.2 现代计算机为什么设置目态/管态这两种不同的机器状态?现在的lntel80386设置了四级不同的机器状态(把管态又分为三个特权级),你能说出自己的理解吗?答:现在的Intel 80386把执行全部指令的管态分为三个特权级,再加之只能执行非特权指令的目态,这四级不同的机器状态,按照系统处理器工作状态这四级不同的机器状态也被划分管态和目态,这也完全符合处理器的工作状态。
2.6 什么是程序状态字?主要包括什么内容?答:如何知道处理器当前处于什么工作状态,它能否执行特权指令,以及处理器何以知道它下次要执行哪条指令呢?为了解决这些问题,所有的计算机都有若干的特殊寄存器,如用一个专门的寄存器来指示一条要执行的指令称程序计数器PC,同时还有一个专门的寄存器用来指示处理器状态的,称为程序状态字PSW。
主要内容包括所谓处理器的状态通常包括条件码--反映指令执行后的结果特征;中断屏蔽码--指出是否允许中断,有些机器如PDP-11使用中断优先级;CPU的工作状态--管态还是目态,用来说明当前在CPU上执行的是操作系统还是一般用户,从而决定其是否可以使用特权指令或拥有其它的特殊权力。
2.11 CPU如何发现中断事件?发现中断事件后应做什么工作?答:处理器的控制部件中增设一个能检测中断的机构,称为中断扫描机构。
通常在每条指令执行周期内的最后时刻中扫描中断寄存器,询为是否有中断信号到来。
若无中断信号,就继续执行下一条指令。
若有中断到来,则中断硬件将该中断触发器内容按规定的编码送入程序状态字PSW的相应位(IBM-PC中是第16~31位),称为中断码。
发现中断事件后应执行相中断处理程序,先由硬件进行如下操作:1、将处理器的程序状态字PSW压入堆栈2、将指令指针IP(相当于程序代码段落的段内相对地址)和程序代码段基地址寄存器CS的内容压入堆栈,以保存被子中断程序的返回地址。
3、取来被接受的中断请求的中断向量地址(其中包含有中断处理程序的IP,CS的内容),以便转入中断处理程序。
操作系统课后习题及答案
第一章1.下面不属于操作系统的是(C )A、OS/2B、UCDOSC、WPSD、FEDORA2.操作系统的功能不包括(B )A、CPU管理B、用户管理C、作业管理D、文件管理3.在分时系统中,当时间片一定时,(B ),响应越快。
A、内存越大B、用户越少C、用户越多D、内存越小4.分时操作系统的及时性是指( B )A、周转时间B、响应时间C、延迟时间D、A、B和C5.用户在程序设计的过程中,若要得到系统功能,必须通过(D )A、进程调度B、作业调度C、键盘命令D、系统调用6.批处理系统的主要缺点是( C )A、CPU使用效率低B、无并发性C、无交互性D、都不是第二章1、若信号量的初值为2,当前值为-3,则表示有(C )个进程在等待。
A、1B、2C、3D、52、在操作系统中,要对并发进程进行同步的原因是(B )A、进程必须在有限的时间内完成B、进程具有动态性C、并发进程是异步的D、进程具有结构性3、下列选项中,导致创进新进程的操作是(C )I用户成功登陆II设备分配III启动程序执行A、仅I和IIB、仅II和IIIC、仅I和IIID、I,II,III4、在多进程系统中,为了保证公共变量的完整性,各进程应互斥进入临界区。
所谓的临界区是指(D )A、一个缓冲区B、一个数据区C、一种同步机构D、一段程序5、进程和程序的本质区别是(B )A、内存和外存B、动态和静态特征C、共享和独占计算机资源D、顺序和非顺序执行计算机指令6、下列进程的状态变化中,(A )的变化是不可能发生的。
A、等待->运行B、运行->等待C、运行->就绪D、等待->就绪7、能从1种状态变为3种状态的是(D )A、就绪B、阻塞C、完成D、执行8、下列关于进程的描述正确的是(A )A、进程获得CPU是通过调度B、优先级是进程调度的重要依据,一旦确定就不能改变C、在单CPU系统中,任何时刻都有一个进程处于执行状态D、进程申请CPU得不到满足时,其状态变为阻塞9、CPU分配给进程的时间片用完而强迫进程让出CPU,此时进程的状态为(C )。
课后练习题及答案
一、填空练习1.程序的执行是现代操作系统的基本特征之一,为了更好地描述这一特征而引入了这一概念。
2.进程存在的标志是。
3.进程的静态实体由、和三部分组成。
4.用于进程控制的原语主要有、、和。
5.进程被创建后,最初处于状态,然后经选中后进入状态。
6.进程创建工作主要完成的是创建进程控制块(PCB),并把它挂到队列中。
7.如果系统中有n个进程,则在就绪队列中进程的个数最多。
8.进程的同步和互斥反映了进程间和的关系。
9.死锁产生的四个必要条件是、、和四种。
10.操作系统中信号量的值与的使用情况有关,它的值仅能由来改变。
11.进程至少有三种基本状态:、和。
12.每执行一次P操作,信号量的数值S减1。
若S>0,则该进程;若S<0,则该进程。
13.每执行一次V操作,信号量的数值S加1。
若,则该进程继续执行;否则从对应的队列中移出一个进程并将状态赋予该进程。
14.利用信号量实现进程的,应为临界区设置一个信号量mutex,其初值为1,表示该资源尚未使用,临界区应置于和原语之间。
15. Windows NT是采用结构的操作系统,它的进程的功能发生了变化,它只是资源分配的单位,不是的单位,后者的功能由完成。
16. 通常,线程的定义是____________________________________。
在现代操作系统中,资源的分配单位是__________________,而处理机的调度单位是________________,一个进程可以有___________线程。
17. 计算机系统一般都设计有两种运行状态,和。
18. 目前,在操作系统设计中采用的结构模型主要有四种:、、和。
参考答案:1、并发,进程2、进程控制块PCB3、程序,数据集合,进程控制块PCB4、建立原语、撤消原语,挂起原语,激活原语5、就绪,进程调度程序,执行6、就绪7、n-18、直接制约,间接制约9、互斥使用,保持和等待,非剥夺性,循环等待10、相应资源,P、V操作11、执行态,就绪态,等待态12、继续执行,等待13、S>0,等待,就绪14、互斥,P(mutex),V(mutex)15、微内核,调度运行,线程16、是进程中执行运算的最小单位,进程,线程,多个17、用户态,核心态18、层次模块模型,整体内核模型,进程模型,对象模型二、选择练习1. 操作系统中,可以并行工作的基本单位是[1],[1]也是系统核心调度及资源分配的基本单位,它是由[2]组成的,它与程序的主要区别是[3]。
操作系统课后习题答案
1.什么是操作系统?其主要功能是什么?操作系统是控制和管理计算机系统内各种硬件和软件资源,有效组织多道程序运行的系统软件(或程序集合),是用户和计算机直接的程序接口.2.在某个计算机系统中,有一台输入机和一台打印机,现有两道程序投入运行,程序A、B 同时运行,A略早于B。
A的运行轨迹为:计算50ms、打印100ms、再计算50ms、打印100ms,结束。
B的运行轨迹为:计算50ms、输入80ms、再计算100ms,结束。
试说明:(1)两道程序运行时,CPU是否空闲等待?若是,在那段时间段等待?(2)程序A、B是否有等待CPU的情况?若有,指出发生等待的时刻。
0 50 100 150 200 250 30050 100 50 10050 100 20 100(1) cpu有空闲等待,在100ms~150ms的时候.(2) 程序A没有等待cpu,程序B发生等待的时间是180ms~200ms.1.设公共汽车上,司机和售票员的活动如下:司机的活动:启动车辆;正常行车;到站停车。
售票员的活动:关车门;售票;开车门。
在汽车不断的到站、停车、行驶过程中,用信号量和P、V操作实现这两个活动的同步关系。
semaphore s1,s2;s1=0;s2=0;cobegin司机();售票员();coendprocess 司机(){while(true){P(s1) ;启动车辆;正常行车;到站停车;V(s2);}}process 售票员(){while(true){关车门;V(s1);售票;P(s2);开车门;上下乘客;}}2.设有三个进程P、Q、R共享一个缓冲区,该缓冲区一次只能存放一个数据,P进程负责循环地从磁带机读入数据并放入缓冲区,Q进程负责循环地从缓冲区取出P进程放入的数据进行加工处理,并把结果放入缓冲区,R进程负责循环地从缓冲区读出Q进程放入的数据并在打印机上打印。
请用信号量和P、V操作,写出能够正确执行的程序。
操作系统练习题含参考答案
操作系统练习题含参考答案一、单选题(共90题,每题1分,共90分)1、在大多数Linux发行版本中,以下哪个属于块设备(blockdevices)?A、硬盘B、打印机C、串行口D、虚拟终端正确答案:A2、在随机存取方式中,用户以______为单位对文件进行存取和检索。
A、数据项B、字节C、逻辑记录D、字符串正确答案:C3、在UNIX系统中获取帮助信息的命令为()。
A、manB、cdC、catD、help正确答案:A4、如何删除一个非空子目录/tmp?A、del/tmp/*B、rm-Ra/tmp/*C、rm-rf/tmpD、rm-rf/tmp/*正确答案:C5、运行一个脚本,用户不需要什么样的权限?A、browseonthedirectoryB、readC、executeD、write正确答案:D6、下列关于批处理操作系统的叙述中错误的是()。
A、“通道”和“中断”技术的出现,使得输入/输出设备与CPU可并行工作B、批处理系统可分为单道批处理系统和多道批处理系统C、批处理系统具有用户与计算机的直接交互能力,提高了系统资源的利用率D、单道批处理系统是一种单用户操作系统正确答案:C7、采用段式存储管理的系统中,若地址用24位表示,其中8位表示段号,则允许每段的最大长度是()。
A、216B、224C、232D、28正确答案:A8、如果有多个中断同时发生,系统将根据中断优先级响应优先级最高的中断请求。
若要调整中断事件的响应次序,可以利用()。
A、中断屏蔽B、中断向量C、中断嵌套D、中断响应正确答案:A9、把作页地址空间中的逻辑地址变成内存中物理地址的过程称为()。
A、物理化B、重定位C、逻辑化D、加载正确答案:B10、当CPU执行系统程序时,CPU处于()。
A、管态B、目态C、系统态D、A和C正确答案:D11、若一个系统内存有64MB,处理器是32位地址,则它的虚拟地址空间为()字节。
B、4GBC、100KBD、64MB正确答案:B12、操作系统负责为用户和用户程序完成所有()的工作A、硬件有关和应用无直接关系B、硬件无关和应用有直接关系C、硬件有关和应用有直接关系D、硬件无关和应用无直接关系正确答案:A13、使用页式存储管理使处理器执行指令的速度______。
(完整版)操作系统课后题答案
(完整版)操作系统课后题答案课本课后题部分答案第⼀章1.设计现代OS的主要⽬标是什么?答:(1)有效性(2)⽅便性(3)可扩充性(4)开放性2.OS的作⽤可表现在哪⼏个⽅⾯?答:(1)OS作为⽤户与计算机硬件系统之间的接⼝(2)OS作为计算机系统资源的管理者(3)OS实现了对计算机资源的抽象13.OS有哪⼏⼤特征?其最基本的特征是什么?答:并发性、共享性、虚拟性和异步性四个基本特征;最基本的特征是并发性。
14.处理机管理有哪些主要功能?它们的主要任务是什么?答:处理机管理的主要功能是:进程管理、进程同步、进程通信和处理机调度;进程管理:为作业创建进程,撤销已结束进程,控制进程在运⾏过程中的状态转换。
进程同步:为多个进程(含线程)的运⾏进⾏协调。
通信:⽤来实现在相互合作的进程之间的信息交换。
处理机调度:(1)作业调度。
从后备队⾥按照⼀定的算法,选出若⼲个作业,为他们分配运⾏所需的资源(⾸选是分配内存)。
(2)进程调度:从进程的就绪队列中,按照⼀定算法选出⼀个进程,把处理机分配给它,并设置运⾏现场,使进程投⼊执⾏。
15.内存管理有哪些主要功能?他们的主要任务是什么?北京⽯油化⼯学院信息⼯程学院计算机系3/48《计算机操作系统》习题参考答案余有明与计07和计G09的同学们编著 3/48答:内存管理的主要功能有:内存分配、内存保护、地址映射和内存扩充。
内存分配:为每道程序分配内存。
内存保护:确保每道⽤户程序都只在⾃⼰的内存空间运⾏,彼此互不⼲扰。
地址映射:将地址空间的逻辑地址转换为内存空间与对应的物理地址。
内存扩充:⽤于实现请求调⽤功能,置换功能等。
16.设备管理有哪些主要功能?其主要任务是什么?答:主要功能有: 缓冲管理、设备分配和设备处理以及虚拟设备等。
主要任务: 完成⽤户提出的I/O 请求,为⽤户分配I/O 设备;提⾼CPU 和I/O 设备的利⽤率;提⾼I/O速度;以及⽅便⽤户使⽤I/O设备.17.⽂件管理有哪些主要功能?其主要任务是什么?答:⽂件管理主要功能:⽂件存储空间的管理、⽬录管理、⽂件的读/写管理和保护。
操作系统课后练习精选(答案)
操作系统课后练习精选(答案)7.根据图2-18,回答以下问题。
(1)进程发生状态变迁1、3、4、6、7的原因。
答:1表示操作系统把处于创建状态的进程移入就绪队列;3表示进程请求I/O或等待某事件;4表示进程用行的时间片用完;6表示I/O完成或事件完成;7表示进程完成。
(2)系统中常常由于某一进程的状态变迁引起另一进程也产生状态变迁,这种变迁称为因果变迁。
下述变迁是否为因果变迁:3~2,4~5,7~2,3~6,是说明原因。
答:3→2是因果变迁,当一个进程从运行态变为阻塞态时,此时CPU空闲,系统首先到高优先级队列中选择一个进程。
4→5是因果变迁,当一个进程运行完毕时,此时CPU空闲,系统首先到高优先级队列中选择进程,但如果高优先级队列为空,则从低优先队列中选择一个进程。
7→2 是因果变迁,当一个进程运行完毕时,CPU空闲,系统首先到高优先级队列中选择一个进程。
3→6不是因果变迁。
一个进程阻塞时由于自身的原因而发生的,和另一个进程等待的时间到达没有因果关系。
(3)根据此进程状态转换图,说明该系统CPU调度的策略和效果。
答:当进程调度时,首先从高优先级就绪队列选择一个进程,赋予它的时间片为100ms。
如果高优先级就绪队列为空,则从低优先级就绪队列选择进程,并且赋予该进程的时间片为500ms。
这种策略一方面照顾了短进程,一个进程如果在100ms运行完毕它将退出系统,更主要的是照顾了I/O量大的进程,进程因I/O进入阻塞队列,当I/O完成后它就进入了高优先级就绪队列,在高优先级就绪队列等待的进程总是优于低优先级就绪队列的进程。
而对于计算量较大的进程,它的计算如果在100ms的时间内不能完成,它将进入低优先级就绪队列,在这个队列的进程被选中的机会要少,只有当高优先级就绪队列为空,才从低优先级就绪队列选择进程,但对于计算量大的进程,系统给予的适当照顾时间片增大为500ms。
8.回答以下问题。
(1)若系统中没有运行进程,是否一定没有就绪进程?为什么?答:是,因为当CPU空闲时,系统就会在就绪队列里调度进程,只有当就绪队列为空时,系统中才没有运行程序。
操作系统课后练习精选
1.什么是操作系统它的主要功能是什么答:操作系统是用来管理计算机系统的软、硬件资源,合理地组织计算机的工作流程,以方便用户使用的程序集合;其主要功能有进程管理、存储器管理、设备管理和文件管理功能。
2.什么是分时系统什么是实时系统试从交互性、及时性、独立性、多路性和可靠性几个方面比较分时系统和实时系统。
答:分时系统:一个计算机和许多终端设备连接,每个用户可以通过终端向计算机发出指令,请求完成某项工作,在这样的系统中,用户感觉不到其他用户的存在,好像独占计算机一样。
实时系统:对外部输入的信息,实时系统能够在规定的时间内处理完毕并作出反应。
比较:(1)交互性:实时系统具有交互性,但人与系统的交互,仅限于访问系统中某些特定的专用服务程序。
它不像分时系统那样向终端用户提供数据处理、资源共享等服务。
实时系统的交互性要求系统具有连续人机对话的能力,也就是说,在交互的过程中要对用户得输入有一定的记忆和进一步的推断的能力。
(2)及时性:实时系统对及时性的要求与分时系统类似,都以人们能够接受的等待时间来确定。
而分时系统则对及时性要求更高。
(3)独立性:实时系统与分时系统一样具有独立性。
每个终端用户提出请求时,是彼此独立的工作、互不干扰。
(4)多路性:实时系统与分时一样具有多路性。
操作系统按分时原则为多个终端用户提供服务,而对于实时系统,其多路性主要表现在经常对多路的现场信息进行采集以及对多个对象或多个执行机构进行控制。
(5)可靠性:分时系统虽然也要求可靠性,但相比之下,实时系统则要求系统高度可靠。
9.设内存中有三道程序,A,B,C,他们按A→B→C的先后次序执行,它们进行“计算”和“I/O操作”的时间如表1-2所示,假设三道程序使用相同的I/O设备。
表1-2 三道程序的操作时间(1)试画出单道运行时三道程序的时间关系图,并计算完成三道程序要花多少时间。
I/O 操作计算90605014020160170190200AABBB C CC总时间=20+30+10+30+50+20+10+20+10=200(2) 试画出多道运行时三道程序的时间关系图,并计算完成三道程序要花多长时间。
操作系统练习题(带答案)
操作系统练习题(带答案)第1-3章练习题⼀、选择题1.关于操作系统的叙述( D )是不正确的。
A.管理资源的程序B.管理⽤户程序执⾏的程序C.能使系统资源提⾼效率的程序D.能⽅便⽤户编程的程序2.下⾯关于操作系统的叙述中正确的是( A )。
A.批处理作业必须具有作业控制信息B.分时系统不⼀定都具有⼈机交互功能C.从响应时间的⾓度看,实时系统与分时系统差不多D.由于采⽤了分时技术,⽤户可以独占计算机的资源3.⽤户程序调⽤操作系统的功能必须使⽤( B )。
A.调⽤命令B.系统调⽤C.作业控制D.控制命令4.批处理操作系统提⾼了计算机的⼯作效率,但( B )。
A.系统资源利⽤率不⾼ B. 在作业执⾏时⽤户不能直接⼲预C. 系统吞吐量⼩D. 不具备并⾏性5.引⼊进程概念的关键在于( A )。
A.共享资源B.独享资源C.顺序执⾏D.便于执⾏6.操作系统提供给程序员的接⼝是( B )。
A.进程B.系统调⽤C.库函数D.B和C7.进程和程序的最根本区别在于( B )。
A.对资源的占有类型和数量B.进程是动态的,⽽程序是静态的C.看它们是否能够并发地在处理机上运⾏D.进程的规模较⼩,程序的规模较⼤8.在多道程序设计技术的计算机系统中,CPU( C )。
A.只能被⼀个进程占⽤B.可以被多个进程同时占⽤C.可以被多个进程交替占⽤D.可以被操作系统和另⼀个进程同时占⽤9.当CPU处于内核态时,它可以执⾏的指令是( D )。
A.只有特权指令B.只有⾮特权指令C.只有访管指令D.计算机中的所有指令10.在进程的状态转换过程中,( D )是不可能发⽣的。
A.运⾏态变为就绪态B.就绪态变为运⾏态C.运⾏态变为阻塞态D.阻塞态变为运⾏态11.在⼀个单处理机系统中,若有5个⽤户进程,则处于就绪状态的⽤户进程最多有( C )个。
A.0B.1C.4D.512.当⼀个进程处于这样的状态时,( A ),称为阻塞状态。
A.它正等着输⼊⼀批数据B.它正等着进程调度C.它正等着分给它⼀个时间⽚D.它正等着进⼊内存13.进程间的同步和互斥,分别表⽰了进程间的( B )。
操作系统课后习题1-9答案
操作系统课后习题1-9答案练习11.1-1.10题解见书1.11 有⼀台输⼊设备和⼀台输出设备的计算机系统上,运⾏有两道程序。
两道程序投⼊运⾏情况如下:程序1先开始运⾏,其运⾏轨迹为:计算50ms、输出100ms、计算50ms、输出100ms,结束;程序2后开始运⾏,其运⾏轨迹为:计算50ms、输⼊100ms、计算100ms、结束。
1. 忽略调度时间,指出两道程序运⾏时,CPU是否有空闲?在哪部分空闲?指出程序1和程序2. 有⽆等待CPU的情况?如果有,发⽣在哪部分?题解:由题画出CPU利⽤图如下:由图可知,1.CPU有空闲,在100ms~150ms时间段是空闲的。
2.程序1⽆等待时间,⽽程序2在⼀开始的0ms~50ms时间段会等待。
1.12 在计算机系统上运⾏三道程序,运⾏次序为程序1、程序2、程序3。
程序3的运⾏轨迹为:计算60ms、输⼊30ms、计算20ms。
忽略调度时间,画出三道程序运⾏的时间关系图;完成三道程序共花多少时间?与单道程序⽐较,节省了多少时间?解答:三道程序运⾏,完成三道程序共花170ms。
与单道程序(260ms)⽐较,节省了90ms。
(始终按照1-2-3的次序,即程序1→程序2→程序3→程序1→程序2→(在程序3运⾏前会停10ms等待输⼊完成)程序3。
(如果不是按照程序1、2、3的次序完成则会有多种情况。
)1.13 在计算机系统上有两台输⼊/输出设备,运⾏两道程序。
程序1的运⾏轨迹为:计算10ms、输⼊5ms、计算5ms、输出10ms、计算10ms。
程序2的运⾏轨迹为:输⼊10ms、计算10ms、输出5ms、计算5ms、输出10ms。
在顺序环境下,先执⾏程序1,再执⾏程序2,求总的CPU利⽤率为多少?题解:由题画出CPU利⽤图如下:由图可知,在总共80ms的时间⾥,CPU空闲时间为40ms,即:CPU利⽤率=40ms/80ms*100%=50%1.14 ⼀个计算机系统有⾜够的内存空间存放3道程序,这些程序有⼀半的时间在空闲等待I/O操作。
操作系统课后练习(第1、2章)
课后练习(第1、2章)一、选择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.操作系统利用多道程序设计技术提高CPU和外部设备的()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。
cpu D.中断13.在下列操作系统的各个功能组成部分中,()不需要硬件的支持。
A.进程调度 B.时钟管理C。
地址映射D。
中断系统14.在进程管理中,当()时,进程从阻塞状态变为就绪状态A.进程被进程调度程序选中B.等待某一事件C.等待的事件发生D.时间片用完15.分配到必要的资源并获得处理机时的进程状态是()A.就绪状态B.执行状态C,阻塞状态 D.撤销状态16.P、V操作是()A.两条低级进程通信原语B.两组不同的机器指令C.两条系统调用命令D.两条高级进程通信原语17.对进程的管理和控制使用()A.指令B.原语C.信号量D.信箱通信18.进程的并发执行是指若干个进程()A.同时执行B.在执行的时间上是重叠的C.在执行的时间上是不可重叠的D.共享系统资源19.若P、V操作的信号量S初值为2,当前值为-1,则表示有()等待进程A.0 B.1 C.2 D.320.下列的进程状态变化中,()变化是不可能发生的A.运行-就绪B.运行-等待C.等待-运行D.等待-就绪21.一个运行的进程用完了分配给它的时间片后,它的状态变为()A.就绪B.等待C.运行D.由用户自己确定22.用P、V操作管理临界区时,信号量的初值应定义为()A.-1B.0C.1D.任意值23.用V操作唤醒一个等待进程时,被唤醒的进程状态变为()A.等待B.就绪C.运行D.完成24.进程间的同步指进程间在逻辑上的相互()关系A.联结B.制约C.继续D.调用25.()是一种只能进行P操作和V操作的特殊变量A.调度B.进程C.同步D.信号量26.()是解决进程间同步和互斥的一对低级通信原语A.lock和unlock B.P和V C.W和S D.Send和Receive27.下面对进程的描述中,错误的是()A.进程是动态的概念B.进程执行需要处理机C.进程是有生命期的D.进程是指令的集合28.进程控制就是对系统中的进程实施有效的管理,通过使用()、进程撤销、进程阻塞、进程唤醒等进程控制原语实现A.进程运行B.进程管理C.进程创建D.进程同步29.信箱通信是一种()通信方式A.直接B.间接C.低级D.信号量30.操作系统通过()对进程进行管理A.进程B.进程控制块C.进程启动程序D.进程控制区31.通常,用户进程被建立后,()A.便一直存在于系统中,直到被操作人员撤销B.随着作业运行正常或不正常结束而撤销C.随着时间片轮转而撤销与建立D.随着进程的阻塞或唤醒而撤销与建立32.在操作系统中,进程是一个具有一定独立功能的程序在某个数据集上的一次()A.等待活动B。
操作系统课后习题答案
操作系统课后习题答案第一章o引论1.设计现代OS的主要目标是什么方便性,有效性,可扩充性和开放性.2.OS的作用可表现为哪几个方面a.OS作为用户与计算机硬件系统之间的接口;b.OS作为计算机系统资源的管理者;c.OS作为扩充机器.4.试说明推动多道批处理系统形成和发展的主要动力是什么不断提高计算机资源利用率和系统吞吐量的需要;5.何谓脱机I/O和联机I/Oa.脱机输入输出方式(Off-LineI/O)是为了解决人机矛盾及CPU和I/O设备之间速度不匹配而提出的.它减少了CPU的空闲等待时间,提高了I/O速度.具体内容是将用户程序和数据在一台外围机的控制下,预先从低速输入设备输入到磁带上,当CPU需要这些程序和数据时,在直接从磁带机高速输入到内存,从而大大加快了程序的输入过程,减少了CPU等待输入的时间,这就是脱机输入技术;当程序运行完毕或告一段落,CPU需要输出时,无需直接把计算结果送至低速输出设备,而是高速把结果输出到磁带上,然后在外围机的控制下,把磁带上的计算结果由相应的输出设备输出,这就是脱机输出技术.b.若这种输入输出操作在主机控制下进行则称之为联机输入输出方式.6.试说明推动分时系统形成和发展的主要动力是什么用户的需要.即对用户来说,更好的满足了人-机交互,共享主机以及便于用户上机的需求.7.实现分时系统的关键问题是什么应如何解决a.关键问题:及时接收,及时处理;b.对于及时接收,只需在系统中设置一多路卡,多路卡作用是使主机能同时接收用户从各个终端上输入的数据;---对于及时处理,应使所有的用户作业都直接进入内存,在不长的时间内,能使每个作业都运行一次.8为什么要引入实时操作系统更好地满足实时控制领域和实时信息处理领域的需要.12试从交互性,及时性和可靠性方面,将分时系统与实时系统进行比较.a.分时系统是一种通用系统,主要用于运行终端用户程序,因而它具有较强的交互能力;而实时系统虽然也有交互能力,但其交互能力不及前者.b.实时信息系统对实用性的要求与分时系统类似,都是以人所能接收的等待时间来确定;而实时控制系统的及时性则是以控制对象所要求的开始截止时间和完成截止时间来确定的.c.实时系统对系统的可靠性要求要比分时系统对系统的可靠性要求高.13OS具有哪几大特征它的最基本特征是什么a.并发(Concurrence),共享(Sharing),虚拟(Virtual),异步性(Aynchronim).b.其中最基本特征是并发和共享.14处理机管理具有哪些功能它们的主要任务是什么a.进程控制,进程同步,进程通信和调度.b.进程控制的主要任务是为作业创建进程,撤销已结束的进程,以及控制进程在运行过程中的状态转换.---进程同步的主要任务是对诸进程的运行进行调节.---进程通信的任务是实现在相互合作进程之间的信息交换.---调度分为作业调度和进程调度.作业调度的基本任务是从后备队列中按照一定的算法,选择出若干个作业,为它们分配必要的资源;而进程调度的任务是从进程的就绪队列中,按照一定的算法选出一新进程,把处理机分配给它,并为它设置运行现场,是进程投入运行.15内存管理有哪些主要功能它们的主要任务是什么a.主要功能:内存分配,内存保护,地址映射和内存扩充等.b.内存分配的主要任务是为每道程序分配内存空间,提高存储器利用率,以减少不可用的内存空间,允许正在运行的程序申请附加的内存空间,以适应程序和数据动态增长的需要.---内存保护的主要任务是确保每道用户程序都在自己的内存空间中运行,互不干扰.---地址映射的主要任务是将地址空间中的逻辑地址转换为内存空间中与之对应的物理地址.---内存扩充的主要任务是借助虚拟存储技术,从逻辑上去扩充内存容量.16设备管理有哪些主要功能其主要任务是什么a.主要功能:缓冲管理,设备分配和设备处理,以及虚拟设备等.b.主要任务:完成用户提出的I/O请求,为用户分配I/O设备;提高CPU和I/O设备的利用率;提高I/O速度;以及方便用户使用I/O设备.17文件管理有哪些主要功能其主要任务是什么a.主要功能:对文件存储空间的管理,目录管理,文件的读,写管理以及文件的共享和保护.b.主要任务:对用户文件和系统文件进行管理,以方便用户使用,并保证文件的安全性.18是什么原因使操作系统具有异步性特征a.程序执行结果是不确定的,即程序是不可再现的.b.每个程序在何时执行,多个程序间的执行顺序以及完成每道程序所需的时间都是不确定的,即不可预知性.第二章2.试画出下面条语句的前趋图:S1:a=5-某;S2:b=a某某;S3:c=4某某;S4:d=b+c;S5:e=d+3.S1->S2->S4->S5......../......S33.程序并发执行为什么会产生间断性因为程序在并发执行过程中存在相互制约性.4.程序并发执行为什么会失去封闭性和可再现性因为程序并发执行时,多个程序共享系统中的各种资源,资源状态需要多个程序来改变,即存在资源共享性使程序失去封闭性;而失去了封闭性导致程序失去可再现性.5.在操作系统中为什么要引入进程概念它会产生什么样的影响为了使程序在多道程序环境下能并发执行,并能对并发执行的程序加以控制和描述,而引入了进程概念.影响:使程序的并发执行得以实行.6.试从动态性,并发性和独立性上比较进程和程序a.动态性是进程最基本的特性,可表现为由创建而产生,由调度而执行,因得不到资源而暂停执行,以及由撤销而消亡,因而进程由一定的生命期;而程序只是一组有序指令的集合,是静态实体.b.并发性是进程的重要特征,同时也是OS的重要特征.引入进程的目的正是为了使其程序能和其它进程的程序并发执行,而程序是不能并发执行的.c.独立性是指进程实体是一个能独立运行的基本单位,同时也是系统中独立获得资源和独立调度的基本单位.而对于未建立任何进程的程序,都不能作为一个独立的单位参加运行.7.试说明PCB的作用为什么说PCB是进程存在的唯一标志a.PCB是进程实体的一部分,是操作系统中最重要的记录型数据结构.PCB中记录了操作系统所需的用于描述进程情况及控制进程运行所需的全部信息.因而它的作用是使一个在多道程序环境下不能独立运行的程序(含数据),成为一个能独立运行的基本单位,一个能和其它进程并发执行的进程.b.在进程的整个生命周期中,系统总是通过其PCB对进程进行控制,系统是根据进程的PCB而不是任何别的什么而感知到该进程的存在的,所以说,PCB是进程存在的唯一标志.8.试说明进程在三个基本状态之间转换的典型原因.a.处于就绪状态的进程,当进程调度程序为之分配了处理机后,该进程便由就绪状态变为执行状态.b.当前进程因发生某事件而无法执行,如访问已被占用的临界资源,就会使进程由执行状态转变为阻塞状态.c.当前进程因时间片用完而被暂停执行,该进程便由执行状态转变为就绪状态.9.为什么要引入挂起状态该状态具有哪些性质a.引入挂起状态处于5中需要:终端用户的需要,父进程的需要,操作系统的需要,对换的需要和负荷调节的需要.b.处于挂起状态的进程不能接收处理机调度.10在进行进程切换时,所要保存的处理机状态信息主要有哪些a.进程当前暂存信息;b.下一条指令地址信息;c.进程状态信息;d.过程和系统调用参数及调用地址信息.11试说明引起进程创建的主要事件.a.用户登陆;b.作业调度;c.提供服务;d.应用请求.12试说明引起进程撤消的主要事件.a.正常结束;b.异常结束;c.外界干预;13在创建一个进程时,需完成的主要工作是什么a.操作系统发现请求创建新进程事件后,调用进程创建原语Creat();b.申请空白PCB;c.为新进程分配资源;d.初始化进程控制块;e.将新进程插入就绪队列.14在撤消一个进程时,需完成的主要工作是什么a.OS调用进程终止原语;b.根据被终止进程的标志符,从PCB集合中检索出该进程的PCB,从中读出该进程的状态;c.若被终止进程正处于执行状态,应立即中止该进程的执行,并设置调度标志为真;d.若该进程还有子孙进程,还应将其所有子孙进程予以终止;e.将该进程所拥有的全部资源,或者归还给其父进程,或者归还给系统;f.将被终止进程(它的PCB)从所在队列(或链表)中移出,等待其它程序来搜集信息.15试说明引起进程阻塞或被唤醒的主要事件是什么a.请求系统服务;b.启动某种操作;c.新数据尚未到达;d.无新工作可做.17.为什么进程在进入临界区之前,应先执行"进入区"代码,在退出临界区后又执行"退出区"代码为了实现多个进程对临界资源的互斥访问,必须在临界区前面增加一段用于检查欲访问的临界资源是否正被访问的代码,如果未被访问,该进程便可进入临界区对资源进行访问,并设置正被访问标志,如果正被访问,则本进程不能进入临界区,实现这一功能的代码成为"进入区"代码;在退出临界区后,必须执行"退出区"代码,用于恢复未被访问标志.18.同步机构应遵循哪些基本准则为什么a.空闲让进.b.忙则等待.c.有限等待.d.让权等待.20.你认为整型信号量机制和记录型信号量机制,是否完全遵循了同步机构的四条准则a.在整型信号量机制中,未遵循"让权等待"的准则.b.记录型信号量机制完全遵循了同步机构的"空闲让进,忙则等待,有限等待,让权等待"四条准则.23.在生产者-消费者问题中,如果缺少了ignal(full)或ignal(empty),对执行结果会有何影响生产者-消费者问题可描述如下: varmute某,empty,full:emaphore:=1,n,0;buffer:array[0,...,n-1]ofitem;in,out:integer:=0,0;beginparbeginproducer:beginrepeat.produceaniteminne某tp;..wait(empty);wait(mute某);buffer(in):=ne某tp;in:=(in+1)modn;ignal(mute某);/某某某某某某某某某某某某某某某某/ ignal(full);/某某某某某某某某某某某某某某某某/ untilfale;endconumer:beginrepeatwait(full);wait(mute某);ne某tc:=buffer(out);out:=(out+1)modn;ignal(mute某);/某某某某某某某某某某某某某某某某/ ignal(empty);/某某某某某某某某某某某某某某某某/conumetheiteminne某tc;untilfale;endparendend可见,生产者可以不断地往缓冲池送消息,如果缓冲池满,就会覆盖原有数据,造成数据混乱.而消费者始终因wait(full)操作将消费进程直接送入进程链表进行等待,无法访问缓冲池,造成无限等待.24.在生产者-消费者问题中,如果将两个wait操作即wait(full)和wait(mute某)互换位置;或者是将ignal(mute某)与ignal(full)互换位置结果会如何varmute某,empty,full:emaphore:=1,n,0;buffer:array[0,...,n-1]ofitem;in,out:integer:=0,0;beginparbeginproducer:beginrepeat..produceaniteminne某tp;.wait(empty);wait(mute某);buffer(in):=ne某tp;in:=(in+1)modn;/某某某某某某某某某某某某某某某某某某某/ ignal(full);ignal(mute某);/某某某某某某某某某某某某某某某某某某某/ untilfale;endconumer:beginrepeat/某某某某某某某某某某某某某某某某某某/ wait(mute某);wait(full);/某某某某某某某某某某某某某某某某某某/ne某tc:=buffer(out);out:=(out+1)modn;ignal(mute某);ignal(empty);conumetheiteminne某tc;untilfale;endparendendwait(full)和wait(mute某)互换位置后,因为mute某在这儿是全局变量,执行完wait(mute某),则mute某赋值为0,倘若full也为0,则该生产者进程就会转入进程链表进行等待,而生产者进程会因全局变量mute某为0而进行等待,使full始终为0,这样就形成了死锁.而ignal(mute某)与ignal(full)互换位置后,从逻辑上来说应该是一样的.25.我们为某临界区设置一把锁W,当W=1时,表示关锁;W=0时,表示锁已打开.试写出开锁原语和关锁原语,并利用它们去实现互斥.开锁原语:unlock(W):W=0;关锁原语:lock(W);if(W==1)dono_op;W=1;利用开关锁原语实现互斥:varW:emaphore:=0;beginparbeginproce:repeatlock(W);criticalectionunlock(W);remainderectionuntilfale;endparend26.试修改下面生产者-消费者问题解法中的错误: producer:beginrepeat..produceraniteminne某tp;wait(mute某);wait(full);/某应为wait(empty),而且还应该在wait(mute某)的前面某/buffer(in):=ne某tp;/某缓冲池数组游标应前移:in:=(in+1)modn;某/ignal(mute某);/某ignal(full);某/untilfale;endconumer:beginrepeatwait(mute某);wait(empty);/某应为wait(full),而且还应该在wait(mute某)的前面某/ne某tc:=buffer(out);out:=out+1;/某考虑循环,应改为:out:=(out+1)modn;某/ignal(mute某);/某ignal(empty);某/conumeriteminne某tc;untilfale;end27.试利用记录型信号量写出一个不会出现死锁的哲学家进餐问题的算法.设初始值为1的信号量c[I]表示I号筷子被拿(I=1,2,3,4,...,2n),其中n为自然数.end(I):BeginifImod2==1then{P(c[I]);P(c[I-1mod5]);V(c[I-1mod5]);}ele{P(c[I-1mod5]);P(c[I]);Eat;V(c[I]);V(c[I-1mod5]);}End28.在测量控制系统中的数据采集任务,把所采集的数据送一单缓冲区;计算任务从该单缓冲中取出数据进行计算.试写出利用信号量机制实现两者共享单缓冲的同步算法.intmute某=1;intempty=n;intfull=0;intin=0;intout=0;{cobeginend();obtain();coend}end(){while(1){..collectdatainne某tp; ..wait(empty);wait(mute某);buffer(in)=ne某tp;in=(in+1)modn;ignal(mute某);ignal(full);}}//endobtain(){while(1){wait(full);wait(mute某);ne某tc:=buffer(out);out:=(out+1)modn;ignal(mute某);ignal(empty);culculatethedatainne某tc;}//while}//obtain29画图说明管程由哪几部分组成为什么要引入条件变量管程由三部分组成:局部于管程的共享变量说明;对该数据结构进行操作的一组过程;对局部于管程的数据设置初始值的语句.(图见P59)因为调用wait原语后,使进程等待的原因有多种,为了区别它们,引入了条件变量.30.如何利用管程来解决生产者-消费者问题(见P60)31.什么是AND信号量试利用AND信号量写出生产者-消费者问题的解法.为解决并行所带来的死锁问题,在wait操作中引入AND条件,其基本思想是将进程在整个运行过程中所需要的所有临界资源,一次性地全部分配给进程,用完后一次性释放.解决生产者-消费者问题可描述如下:varmute某,empty,full:emaphore:=1,n,0;buffer:array[0,...,n-1]ofitem;in,out:integer:=0,0;beginparbeginproducer:beginrepeat..produceaniteminne某tp;..wait(empty);wait(1,2,3,...,n);//1,2,...,n为执行生产者进程除empty外其余的条件wait(mute某);buffer(in):=ne某tp;in:=(in+1)modn;ignal(mute某);ignal(full);ignal(1,2,3,...,n);untilfale;endconumer:beginrepeatwait(full);wait(k1,k2,k3,...,kn);//k1,k2,...,kn为执行消费者进程除full 外其余的条件wait(mute某);ne某tc:=buffer(out);out:=(out+1)modn;ignal(mute某);ignal(empty);ignal(k1,k2,k3,...,kn);conumetheiteminne某tc;untilfale;endparendend33.试比较进程间的低级通信工具与高级通信工具.用户用低级通信工具实现进程通信很不方便,因为其效率低,通信对用户不透明,所有的操作都必须由程序员来实现.而高级通信工具则可弥补这些缺陷,用户可直接利用操作系统所提供的一组通信命令,高效地传送大量的数据.第三章1.高级调度与低级调度的主要任务是什么为什么要引入中级调度a.作业调度又称宏观调度或高级调度,其主要任务是按一定的原则对外存上处于后备状态的作业进行选择,给选中的作业分配内存,输入输出设备等必要的资源,并建立相应的进程,以使该作业的进程获得竞争处理机的权利.b.进程调度又称微观调度或低级调度,其主要任务是按照某种策略和方法选取一个处于就绪状态的进程,将处理机分配给它.c.为了提高内存利用7.选择调度方式和调度算法时,应遵循的准则是什么a.面向用户的准则有周转时间短,响应时间快,截止时间的保证,以及优先权准则.b.面向系统的准则有系统吞吐量高,处理机利用率好,各类资源的平衡利用.11.在时间片轮转法中,应如何确定时间片的大小?a.系统对响应时间的要求;b.就绪队列中进程的数目;c.系统的处理能力。
操作系统课后习题答案
5.1为什么对调度程序而言,区分CPU约束程序和I/O约束程序很重要?答:在运行I/O操作前,I/0限制的程序只运行很少数量的计算机操作。
而CPU约束程序一般来说不会使用很多的CPU。
另一方面,CPU约束程序会利用整个时间片,且不做任何阻碍I/O操作的工作。
因此,通过给I/O约束程序优先权和允许在CPU 约束程序之前运行,可以很好的利用计算机资源。
5.3考虑用于预测下一个CPU区间长度的指数平均公式。
将下面的值赋给算法中的参数的含义是什么?A.a=0 且t0=100 msB.a=0.99 且t0=10 ms答:当a=0且t0=100 ms时,公式总是会预测下一次的CPU区间为100毫秒。
当a=0.99且t0=10毫秒时,进程将给予更高的重量以便能和过去相比。
因此,调度算法几乎是无记忆的,且简单预测未来区间的长度为下一次的CPU执行的时间片。
5.4考虑下面一组进程,进程占用的CPU区间长度以毫秒来计算:进程区间时间优先级P110 3P2 1 1P3 2 3P4 1 4P5 5 2假设在0时刻进程以P1、P2、P3、P4、P5的顺序到达。
a.画出4 个Gantt 图分别演示用FCFS、SJF、非抢占优先级(数字小代表优先级高)和RR(时间片=1)算法调度时进程的执行过程。
b.每个进程在每种调度算法下的周转时间是多少?c.每个进程在每种调度算法下的等待时间是多少?d.哪一种调度算法的平均等待时间最小?答a.FCFS:SJF:非抢占优先级:RR:b.周转时间:c.等待时间:d.从上表中可以看出SJF的等待时间最小。
5.5下面哪种调度算法能导致饥饿?a.先到先服务b.最短作业优先c.轮转法d.优先级答:最短作业优先和优先级调度算法能导致饥饿。
因为对于优先级较低的作业来说,最短作业优先和优先级调度算法会使其无穷等待CPU,长期得不到调用,这就导致了饥饿问题,也叫无穷阻塞。
5.9考虑下面的动态改变优先级的抢占式优先级调度算法。
操作系统教程课后习题参考答案
操作系统教程课后习题参考答案习题一习题二习题三习题四习题五习题六习题一1.设计操作系统的主要目的是什么?设计操作系统的目的是:(1)从系统管理人员的观点来看,设计操作系统是为了合理地去组织计算机工作流程,管理和分配计算机系统硬件及软件资源,使之能为多个用户所共享。
因此,操作系统是计算机资源的管理者。
(2)从用户的观点来看,设计操作系统是为了给用户使用计算机提供一个良好的界面,以使用户无需了解许多有关硬件和系统软件的细节,就能方便灵活地使用计算机。
2.操作系统的作用可表现在哪几个方面?(1) 方便用户使用:操作系统通过提供用户与计算机之间的友好界面来方便用户使用。
(2) 扩展机器功能:操作系统通过扩充硬件功能和提供新的服务来扩展机器功能。
(3) 管理系统资源:操作系统有效地管理系统中的所有硬件和软件资源,使之得到充分利用。
(4) 提高系统效率:操作系统合理组织计算机的工作流程,以改进系统性能和提高系统效率。
(5)构筑开放环境:操作系统遵循国际标准来设计和构造一个开放环境。
其含义主要是指:遵循有关国际工业标准和开放系统标准,支持体系结构的可伸缩性和可扩展性;支持应用程序在不同平台上的可移植性和互操作性。
3.试叙述脱机批处理和联机批处理工作过程(1)联机批处理工作过程用户上机前,需向机房的操作员提交程序、数据和一个作业说明书,后者提供了用户标识、用户想使用的编译程序以及所需的系统资源等基本信息。
这些资料必须变成穿孔信息,(例如穿成卡片的形式),操作员把各用户提交的一批作业装到输入设备上(若输入设备是读卡机,则该批作业是一叠卡片),然后由监督程序控制送到磁带上。
之后,监督程序自动输入第一个作业的说明记录,若系统资源能满足其要求,则将该作业的程序、数据调入主存,并从磁带上调入所需要的编译程序。
编译程序将用户源程序翻译成目标代码,然后由连接装配程序把编译后的目标代码及所需的子程序装配成一个可执行的程序,接着启动执行。
操作系统概念课后习题答案
操作系统概念课后习题答案操作系统概念课后习题答案第一章:引论⒈操作系统的功能和目标是什么?答:操作系统的功能包括了进程管理、内存管理、文件系统管理、设备管理等。
操作系统的目标是提高计算机系统的资源利用率,提供简单易用的用户界面,保证计算机系统的安全和稳定性。
⒉什么是并发性?并行性?有什么区别?答:并发性是指计算机系统中存在多个独立的任务同时执行的能力。
并行性是指系统中同时执行多个任务的能力。
并行性强调多个任务的同时进行,而并发性强调任务的独立性。
⒊什么是中断?有什么作用?答:中断是指计算机执行过程中出现的一种特殊事件,用于打断正在执行的程序,转而执行中断处理程序。
中断的作用是能够及时响应输入/输出设备的请求以及处理发生的异常情况。
⒋什么是多道程序设计?答:多道程序设计是指将多个程序加载到内存中,并按照一定的调度算法来分时共享处理器和其他资源。
⒌什么是虚拟内存?答:虚拟内存是计算机系统通过借助硬盘空间来扩展内存空间的一种技术。
它将部分物理内存空间映射到磁盘上,使得程序可以访问比实际物理内存更大的地质空间。
第二章:进程管理⒈什么是进程?什么是线程?答:进程是指在操作系统中运行的程序的实例,它包括了程序代码、数据和执行状态等。
线程是进程中的一个执行单元,一个进程可以包含多个线程,它们共享进程的资源。
⒉进程的状态有哪些?请描述每个状态的含义。
答:进程的状态包括了就绪状态、运行状态、阻塞状态。
就绪状态表示进程已经具备运行的条件,等待分配处理器资源。
运行状态表示进程正在执行。
阻塞状态表示进程由于某种原因暂时无法继续执行。
⒊进程调度算法有哪些?请简要描述每个算法的特点。
答:常见的进程调度算法有先来先服务(FCFS)、短作业优先(SJF)、优先级调度、时间片轮转等。
FCFS按照进程的到达顺序进行调度,适用于长作业。
SJF按照进程的执行时间进行调度,适用于短作业。
优先级调度根据进程的优先级进行调度。
时间片轮转将处理器时间分成若干个时间片,每个进程获得一个时间片。
操作系统练习题 及答案
操作系统练习题第一章引言(一)单项选择题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.CPU管理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.SPOOL技术用于( )。
操作系统课后习题答案
7. 文件管理1.文件系统最基本的目标是_________, 它主要是通过目录管理功能实现的。
文件系统所追求的最重要的目标是_________。
A. 按名存取B. 文件共享C. 文件保护 D 提高对文件的存取速度 E 提高I/O速度 F提高存储空间利用率2.下面_________可以解决用户文件重名的问题A一级目录结构 B二级目录结构 C 多级目录结构 D树形目录结构3.存储介质的物理单位为________。
A块 B卷 C 磁道 D 扇区4.在文件系统中,用户以________方式直接使用外存。
A 逻辑地址B 辅存空间C 虚拟地址 D名字空间5. 文件的逻辑结构是________决定。
A操作系统 B文件系统 C装入程序 D用户6.记录式文件内可以独立存取的最小单位是________。
7.磁盘上的文件是以________为单位进行读写的。
8.在文件管理中,采用位示图主要是实现________。
A 磁盘的驱动调度B 磁盘空间的分配和回收 C文件目录的查找 D 页面置换9.在UNIX系统中,对空闲块的管理采用________方式。
A单块链接 B成组链接 C位示图法 D 多块链接10.按用途分,文件可分为________。
A系统文件 B 执行文件 C库文件 D用户文件11.下面________属于存储介质。
A磁带 B软盘 C硬盘驱动器 D 磁带机 E 磁盘机12.文件的成组和分解操作可________。
A缩短检索文件的时间 B提高文件存储空间的利用率C减少启动存储设备的次数 D减少文件存储空间的利用率13.文件系统就是操作系统中管理文件的软件的集合()14. 存储介质的物理单位定义为区()15.从用户的角度考虑的是文件的逻辑结构,从系统的角度考虑的是文件的物理结构。
()16.对索引文件只能使用随机存取方式。
()17.采用链接结构的文件,存放文件的物理块必须是连续的。
()18.文件目录是文件系统中按名存取的重要手段。
操作系统课后答案
第一章绪论1.什么是操作系统的基本功能?答:操作系统的职能是管理和控制汁算机系统中的所有硬、软件资源,合理地组织计算机工作流程,并为用户提供一个良好的工作环境和友好的接口。
操作系统的基本功能包括:处理机管理、存储管理、设备管理、信息管理(文件系统管理)和用户接口等。
2.什么是批处理、分时和实时系统?各有什么特征?答:批处理系统(batchprocessingsystem):操作员把用户提交的作业分类,把一批作业编成一个作业执行序列,由专门编制的监督程序(monitor)自动依次处理。
其主要特征是:用户脱机使用计算机、成批处理、多道程序运行。
分时系统(timesharingoperationsystem):把处理机的运行时间分成很短的时间片,按时间片轮转的方式,把处理机分配给各进程使用。
其主要特征是:交互性、多用户同时性、独立性。
实时系统(realtimesystem):在被控对象允许时间范围内作出响应。
其主要特征是:对实时信息分析处理速度要比进入系统快、要求安全可靠、资源利用率低。
3.多道程序(multiprogramming)和多重处理(multiprocessing)有何区别?答;多道程序(multiprogramming)是作业之间自动调度执行、共享系统资源,并不是真正地同时执行多个作业;而多重处理(multiprocessing)系统配置多个CPU,能真正同时执行多道程序。
要有效使用多重处理,必须采用多道程序设计技术,而多道程序设计原则上不一定要求多重处理系统的支持。
4.讨论操作系统可以从哪些角度出发,如何把它们统一起来?答:讨论操作系统可以从以下角度出发:(1)操作系统是计算机资源的管理者;(2)操作系统为用户提供使用计算机的界面;(3)用进程管理观点研究操作系统,即围绕进程运行过程来讨论操作系统。
上述这些观点彼此并不矛盾,只不过代表了同一事物(操作系统)站在不同的角度来看待。
每一种观点都有助于理解、分析和设计操作系统。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.什么是操作系统?它的主要功能是什么?答:操作系统是用来管理计算机系统的软、硬件资源,合理地组织计算机的工作流程,以方便用户使用的程序集合;其主要功能有进程管理、存储器管理、设备管理和文件管理功能。
2.什么是分时系统?什么是实时系统?试从交互性、及时性、独立性、多路性和可靠性几个方面比较分时系统和实时系统。
答:分时系统:一个计算机和许多终端设备连接,每个用户可以通过终端向计算机发出指令,请求完成某项工作,在这样的系统中,用户感觉不到其他用户的存在,好像独占计算机一样。
实时系统:对外部输入的信息,实时系统能够在规定的时间内处理完毕并作出反应。
比较:(1)交互性:实时系统具有交互性,但人与系统的交互,仅限于访问系统中某些特定的专用服务程序。
它不像分时系统那样向终端用户提供数据处理、资源共享等服务。
实时系统的交互性要求系统具有连续人机对话的能力,也就是说,在交互的过程中要对用户得输入有一定的记忆和进一步的推断的能力。
(2)及时性:实时系统对及时性的要求与分时系统类似,都以人们能够接受的等待时间来确定。
而分时系统则对及时性要求更高。
(3)独立性:实时系统与分时系统一样具有独立性。
每个终端用户提出请求时,是彼此独立的工作、互不干扰。
(4)多路性:实时系统与分时一样具有多路性。
操作系统按分时原则为多个终端用户提供服务,而对于实时系统,其多路性主要表现在经常对多路的现场信息进行采集以及对多个对象或多个执行机构进行控制。
(5)可靠性:分时系统虽然也要求可靠性,但相比之下,实时系统则要求系统高度可靠。
9.设内存中有三道程序,A,B,C,他们按A→B→C的先后次序执行,它们进行“计算”和“I/O操作”的时间如表1-2所示,假设三道程序使用相同的I/O设备。
表1-2 三道程序的操作时间(1)试画出单道运行时三道程序的时间关系图,并计算完成三道程序要花多少时间。
I/O 操作计算90605014020160170190200AABBB C CC总时间=20+30+10+30+50+20+10+20+10=200(2) 试画出多道运行时三道程序的时间关系图,并计算完成三道程序要花多长时间。
I/O 操作程序A 605014020AA100BB BCC CA I/O 操作I/O 操作1208090程序B 程序C70130总时间=130 第二章5. 假设系统就绪队列中有10个进程,这10个进程轮换执行,每隔300ms 轮换一次,CPU 在进程切换时所花费的时间是10ms ,试问系统化在进程切换上的开销占系统整个时间的比例是多少? 答:因为每隔300ms 换一次进程,且每个进程切换时所花费的时间是10ms ,则系统化在进程切换上的开销占系统整个时间的比例是10/(300+10)=3.2% 6. 试述线程的特点及其与进程之间的关系。
答:(1)特点:线程之间的通信要比进程之间的通信方便的多;同一进程内的线程切换也因为线程的轻装而方便的多。
同时线程也是被独立调度的分配的;(2)线程与进程的关系:线程和进程是两个密切相关的概念,一个进程至少拥有一个线程,进程根据需要可以创建若干个线程。
线程自己基本上不拥有资源,只拥有少量必不可少的资源(线程控制块和堆栈) 7. 根据图2-18,回答以下问题。
(1) 进程发生状态变迁1、3、4、6、7的原因。
答:1表示操作系统把处于创建状态的进程移入就绪队列;3表示进程请求I/O或等待某事件;4表示进程用行的时间片用完;6表示I/O完成或事件完成;7表示进程完成。
(2)系统中常常由于某一进程的状态变迁引起另一进程也产生状态变迁,这种变迁称为因果变迁。
下述变迁是否为因果变迁:3~2,4~5,7~2,3~6,是说明原因。
答:3→2是因果变迁,当一个进程从运行态变为阻塞态时,此时CPU空闲,系统首先到高优先级队列中选择一个进程。
4→5是因果变迁,当一个进程运行完毕时,此时CPU空闲,系统首先到高优先级队列中选择进程,但如果高优先级队列为空,则从低优先队列中选择一个进程。
7→2 是因果变迁,当一个进程运行完毕时,CPU空闲,系统首先到高优先级队列中选择一个进程。
3→6不是因果变迁。
一个进程阻塞时由于自身的原因而发生的,和另一个进程等待的时间到达没有因果关系。
(3)根据此进程状态转换图,说明该系统CPU调度的策略和效果。
答:当进程调度时,首先从高优先级就绪队列选择一个进程,赋予它的时间片为100ms。
如果高优先级就绪队列为空,则从低优先级就绪队列选择进程,并且赋予该进程的时间片为500ms。
这种策略一方面照顾了短进程,一个进程如果在100ms运行完毕它将退出系统,更主要的是照顾了I/O量大的进程,进程因I/O进入阻塞队列,当I/O完成后它就进入了高优先级就绪队列,在高优先级就绪队列等待的进程总是优于低优先级就绪队列的进程。
而对于计算量较大的进程,它的计算如果在100ms的时间内不能完成,它将进入低优先级就绪队列,在这个队列的进程被选中的机会要少,只有当高优先级就绪队列为空,才从低优先级就绪队列选择进程,但对于计算量大的进程,系统给予的适当照顾时间片增大为500ms。
8.回答以下问题。
(1)若系统中没有运行进程,是否一定没有就绪进程?为什么?答:是,因为当CPU空闲时,系统就会在就绪队列里调度进程,只有当就绪队列为空时,系统中才没有运行程序。
(2)若系统中既没有运行进程,也没有就绪进程,系统中是否就没有阻塞进程?解释。
答:不一定,当运行的程序都因为请求I/O或等待事件时而进入阻塞,系统中就没有就绪进程。
(3)如果系统采用优先级调度策略,运行的进程是否一定是系统中优先级最高的进程?为什么?答:不一定,若优先级高的进程进入阻塞状态时,而且优先级高的就绪队列里没有等待的进程,这时就会调度优先级低的就绪队列的进程。
9.假如有以下程序段,回答下面的问题。
S1: a=3-x;S2: b=2*a;S3: c=5+a;(1)并发程序执行的Bernstein 条件是什么?答:若P1与P2R并发执行,当且仅当R(P1)∩W(P2)∪R(P2)∩W(P1)∪W(P1)∩W(P2)={}时才满足。
(2)试画图表示它们执行时的先后次序。
(3)利用Bernstein 条件证明,S1、S2和S3哪两个可以并发执行,哪两个不能。
答:R(s1)={x},W(s1)={a};R(s2)={a},W(s2)={b};R(s3)={a},W(s3)={c};(1).R(s1)∩W(s2)∪R(s2)∩W(s1)∪W(s1)∩W(s2)={a},则s1与s2不能并发执行;(2). R(s1)∩W(s3)∪R(s3)∩W(s1)∪W(s1)∩W(s3)={a},则s1与s3不能并发执行;(3). R(s2)∩W(s3)∪R(s3)∩W(s2)∪W(s2)∩W(s3)={},则s2与s3可以并发执行。
第三章1.设有一个售票大厅,可容纳200人购票。
如果厅内不足200人则允许进入,超过则在厅外等候;售票员某时只能给一个购票者服务,购票者买完票后就离开。
试问:(1)购票者之间是同步关系还是互斥关系?答:互斥关系。
(2)用P、V操作描述购票者的工作过程。
semaphore empty=200;semaphore mutex=1;semaphore waiting=0;void buy(){ p(waiting);p(mutex);买票;v(mutex);v(empty);}void waiting(){p(empty);等待;waiting++;}2.有4个进程P1、P2、P3、P4共享一个缓冲区,进程P1向缓冲区存入消息,进程P2、P3、P4从缓冲区中取消息,要求发送者必须等三个进程都取过本消息后才能发送下调消息。
缓冲区内每次只能容纳一个消息,用P、V操作描述四个进程存取消息的情况。
答:semaphore p1=0;semaphore p2,p3,p4=1;semaphore cout=0;semaphore mutex=1;void main(){P(p2);P(p3);P(4);V(cout);}write p1(){P(p1);P(metux);P(cout);存入消息;V(p1);V(metux);}Read p2(){ P(mutex);P(p1);读消息;V(p1);V(p2);V(metux);}Read p3(){ P(mutex);P(p1);读消息;V(p1);V(p3);V(metux);}Read p4(){ P(mutex);P(p1);读消息;V(p1);V(p4); V(metux);}3.分析生产者——消费者问题中多个P操作颠倒引起的后果。
答:semaphore mutex=1;semaphore empty=n;semaphore full=0;int i,j;ITEM buffer[n];ITEM data_p,data_c;void producer()/*生产者进程*/ void consumer() /*消费者进程*/{while(true) {while(true){ { P(mutex) ;P(mutex); P(full);P(empty); data_c=buffer[j];buffer[i]=data_p; j=(j+1)%n;i=(i+1)%n; V(mutex);V(mutex); V(empty);V(full);} }} }若把生产者进程的P操作颠倒,消费者进程的P操作颠倒(如图),则生产者进程执行到V(mutex)时,消费者就可以执行P(mutex)但由于full=0,消费者进程不可执行P(full);当生产者进程执行完V(full)后,full=1,但由于mutex=0,消费者进程无法执行,造成死锁。
第四章1.系统中有5个资源被4个进程所共享,如果每个进程最多需要2个这种资源,试问系统是否会产生锁死?答:不会产生死锁;因为因为资源数可以满足进程的需要,当其中的一个进程争取到剩下的一个资源可以执行,当执行完成以后会释放资源,供其他进程使用,所以不会产生死锁。
2.计算机系统有8台磁带机,由N个进程竞争使用,每个进程最多需要3台。
问:N为多少时,系统没有死锁的危险?答:当n为1、2、3时,没有死锁的危险;因为当n小于3时,每个进程分配2台磁带机,还有磁带机剩余,那么当其中的一个进程得到剩余的磁带机则可运行,运行结束后会释放磁带机,供其他进程使用,系统不会有死锁的危险;当n为4时,每台分配2台时没有剩余,则会产生死锁,当大于5时同样会死锁。
3.系统有5个进程,它们的到达时间和服务时间如表4-8所示。
新进程(没有运行过)与老进程(运行过的进程)的条件相同时,假定系统选新进程运行。