操作系统教材答案陈向群杨芙清
- 格式:doc
- 大小:111.00 KB
- 文档页数:47
计算机操作系统(第四版)1-8章-课后答案(全)第四版计算机操作系统课后答案第一章1. 操作系统的定义操作系统是一种软件,它管理着计算机系统的硬件和软件资源,并为用户和应用程序提供接口,以方便他们的使用。
2. 操作系统的功能操作系统具有以下功能:- 进程管理:负责创建、执行和终止进程,并管理它们的资源分配。
- 存储管理:管理计算机系统的内存资源,包括内存分配、虚拟内存和页面置换等。
- 文件系统管理:管理计算机系统中的文件和文件夹,包括文件的存储、读写和保护等。
- 设备管理:负责管理计算机系统中的各种设备,如打印机、键盘和鼠标等。
- 用户接口:提供用户与计算机系统进行交互的接口,如命令行界面和图形用户界面。
3. 操作系统的类型操作系统可以分为以下类型:- 批处理操作系统:按照一系列预先定义的指令集来运行任务。
- 分时操作系统:多个用户可以同时使用计算机系统。
- 实时操作系统:对任务的响应时间要求非常高,用于控制系统和嵌入式系统。
- 网络操作系统:支持多台计算机之间的通信和资源共享。
- 分布式操作系统:在多台计算机上分布式地管理和调度任务。
第二章1. 进程与线程的区别进程是计算机系统中正在运行的程序实例,而线程是进程内的一个执行单元。
进程拥有独立的地址空间和资源,而线程共享进程的地址空间和资源。
多个线程可以在同一进程内并发执行,从而提高系统的效率和资源利用率。
2. 进程的状态转换进程可以处于以下状态:- 创建状态:进程正在被创建。
- 就绪状态:进程准备好执行,等待分配CPU资源。
- 运行状态:进程占用CPU资源执行。
- 阻塞状态:进程等待某种事件发生。
- 终止状态:进程完成执行或被终止。
3. 进程调度算法操作系统使用进程调度算法来决定哪个进程应该被执行。
常见的调度算法有:- 先来先服务(FCFS)调度算法:按照进程到达的顺序进行调度。
- 最短作业优先(SJF)调度算法:选择运行时间最短的进程进行调度。
《计算机操作系统》课后习题答案注:课本为《计算机操作系统(第四版)》,汤小丹梁红兵哲凤屏汤子瀛编着,西安电子科技大学出版社出版第一章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.产生存储分配问题的背景是什么?何谓静态分配?何谓动态分配?动态分配的原因是什么?答:一个有效的存储分配机制,应对用户提出的需求做出快速响应,为之分配相应的存储空间,在用户作业不需要它时,及时收回,供其他用户使用。
内存分配有两种方式1)静态分配:程序要求的内存空间是在目标模块连接装入内存时确定并分配的,并且在程序运行过程中不允许再申请或在内存中“搬家”,也就是分配工作是在程序运行前一次性完成2)动态分配:程序要求的基本内存空间是在目标模块连接装入内存时确定并且分配的,但是在运行过程中,允许申请附加的内存空间或在内存中“搬家”,也就是分配工作可以在程序运行前及运行过程中逐步完成动态分配的原因:动态分配具有较大的灵活性,对提高内存的利用率,比静态分配更合理些。
2.阐述操作系统中选择存储管理方案的原则。
答:原则:1. 存储管理必须合理地分配内存空间2.为了避免内存中的各个程序相互干扰,还必须实现存储保护3.有效利用内存空间,允许多个作业共享程序和数据4.为了在内存中运行长度为任意大小的程序,必须采用一定的方法“扩充”内存3.可变分区管理方式下,采用移动技术有什么优点?移动一道作业时操作系统要做哪些工作?答:对碎片进行整理,把所有空闲碎片合并成一个连续的大空闲区,供作业使用。
被移动了得程序,需要进行重新定位,可以用动态地址映射实现。
4.用可变分区方式管理主存时,假定主存中按地址顺序依次有5 个空闲区,空闲区的大小依次为 32k,10k,5k,228k,100k。
现有 J1,J2,J3,J4,J5。
它们各需主存1k,10k,108k,28k,1 15k。
若采用最先适应分配法能把这5 个作业按 J1, J5 次序全部装入主存吗?你认为按怎样的次序装入这 5 个作业可使主存空间利用率最高。
答:1) 若采用最先适应分配法,无法将 5 个作业全部装入主存!2)通过对最佳适应分配法和最差适应分配法的分析,其中最差适应分配法的内存空间利用率最高.5.什么是碎片?试述各种多道程序系统存储管理方案中碎片是如何出现的?答:经过一段时间的分配回收后,内存中存在很多很小的空闲块。
操作系统教程第二版课后答案【篇一:《操作系统教程》(第四版)课后答案】目录第一章第二章第三章第四章第五章第六章第七章第八章操作系统概述处理器管理并发进程存储管理设备管理文件管理操作系统的安全与保护网络和分布式操作系统1 7 26 93 103 108113 115【篇二:操作系统教程(第四版)课后习题答案】1、有一台计算机,具有imb 内存,操作系统占用200kb ,每个用户进程各占200kb 。
如果用户进程等待i/o 的时间为80 % ,若增加1mb 内存,则cpu 的利用率提高多少?答:设每个进程等待i/o 的百分比为p ,则n 个进程同时等待刀o的概率是pn ,当n 个进程同时等待i/o 期间cpu 是空闲的,故cpu 的利用率为1-pn。
由题意可知,除去操作系统,内存还能容纳4 个用户进程,由于每个用户进程等待i/o的时间为80 % , 故:cpu利用率=l-(80%)4 = 0.59若再增加1mb 内存,系统中可同时运行9 个用户进程,此时:cpu 利用率=l-(1-80%)9 = 0.87故增加imb 内存使cpu 的利用率提高了47 % :87 %/59 %=147 %147 %-100 % = 47 %2 一个计算机系统,有一台输入机和一台打印机,现有两道程序投入运行,且程序a 先开始做,程序b 后开始运行。
程序a 的运行轨迹为:计算50ms 、打印100ms 、再计算50ms 、打印100ms ,结束。
程序b 的运行轨迹为:计算50ms 、输入80ms 、再计算100ms ,结束。
试说明(1 )两道程序运行时,cpu有无空闲等待?若有,在哪段时间内等待?为什么会等待?( 2 )程序a 、b 有无等待cpu 的情况?若有,指出发生等待的时刻。
答:画出两道程序并发执行图如下:(1)两道程序运行期间,cpu存在空闲等待,时间为100 至150ms 之间(见图中有色部分)(2)程序a 无等待现象,但程序b 有等待。
第一章1.设计现代OS的主要目标是什么方便性,有效性,可扩充性和开放性;的作用可表现在哪几个方面1OS作为用户与计算机硬件系统之间的接口;2OS作为计算机系统资源的管理者;3OS实现了对计算机资源的抽象;4.试说明推动多道批处理系统形成和发展的主要动力是什么主要动力来源于四个方面的社会需求与技术发展1不断提高计算机资源的利用率2方便用户3器件的不断更新换代4计算机体系结构的不断发展;7.实现分时系统的关键问题是什么应如何解决关键问题是当用户在自己的终端上键入命令时,系统应能及时接收并及时处理该命令;在用户能接受的时延内将结果返回给用户;解决方法:针对及时接收问题,可以在系统中设置多路卡,使主机能同时接收用户从各个终端上输入的数据,为每个终端配置缓冲区,暂存用户键入的命令或数据;针对及时处理问题,应使所有的用户作业都直接进入内存,并且为每个作业分配一个时间片,允许作业只在自己的时间片内运行;这样在不长的时间内,能使每个作业都运行一次;12.试从交互性、及时性以及可靠性方面,将分时系统与实时系统进行比较;1及时性;实时信息处理系统对实时性的要求与分时系统类似,都是以人所能接受的等待时间来确定,而实时控制系统的及时性,是以控制对象所要求的开始截止时间或完成截止时间来确定的,一般为秒级到毫秒级,甚至有的要低于100微妙;2交互性;实时信息处理系统具有交互性,但人与系统的交互仅限于访问系统中某些特定的专用服务程序,不像分时系统那样能向终端用户提供数据和资源共享等服务;3可靠性;分时系统也要求系统可靠,但相比之下,实时系统则要求系统具有高度的可靠性;因为任何差错都可能带来巨大的经济损失,甚至是灾难性后果,所以在实时系统中,往往都采取了多级容错措施保障系统的安全性及数据的安全性;有哪几大特征其最基本的特征是什么并发性、共享性、虚拟性和异步性四个基本特征;最基本的特征是并发性;14.处理机管理有哪些主要功能它们的主要任务是什么处理机管理的主要功能是:进程管理、进程同步、进程通信和处理机调度1进程管理:为作业创建进程,撤销已结束进程,控制进程在运行过程中的状态转换2进程同步:为多个进程含线程的运行进行协调3进程通信:用来实现在相互合作的进程之间的信息交换4处理机调度:①作业调度:从后备队里按照一定的算法,选出若干个作业,为他们分配运行所需的资源,首选是分配内存②进程调度:从进程的就绪队列中,按照一定算法选出一个进程把处理机分配给它,并设置运行现场,使进程投入执行;15.内存管理有哪些主要功能他们的主要任务是什么内存管理的主要功能有:内存分配、内存保护、地址映射和内存扩充;内存分配:为每道程序分配内存;内存保护:确保每道用户程序都只在自己的内存空间运行,彼此互不干扰;地址映射:将地址空间的逻辑地址转换为内存空间与对应的物理地址;内存扩充:用于实现请求调用功能、置换功能等;16.设备管理有哪些主要功能其主要任务是什么主要功能有: 缓冲管理、设备分配和设备处理以及虚拟设备等;主要任务: 完成用户提出的I/O请求、为用户分配I/O设备、提高CPU和I/O设备的利用率、提高I/O速度以及方便用户使用I/O设备;17.文件管理有哪些主要功能其主要任务是什么文件管理主要功能:文件存储空间的管理、目录管理、文件的读/写管理和保护;文件管理的主要任务:管理用户文件和系统文件、方便用户使用、保证文件安全性;18.是什么原因使操作系统具有异步性特征操作系统的异步性体现在三个方面:一是进程的异步性,进程以人们不可预知的速度向前推进;二是程序的不可再现性,即程序执行的结果有时是不确定的;三是程序执行时间的不可预知性,即每个程序何时执行,执行顺序以及完成时间是不确定的;23.何谓微内核技术在微内核中通常提供了哪些功能把操作系统中更多的成分和功能放到更高的层次,即用户模式中去运行,而留下一个尽量小的内核,用它来完成操作系统最基本的核心功能,称这种技术为微内核技术;在微内核中通常提供了进程、线程管理、低级存储器管理、中断和陷入处理等功能;第二章5.在操作系统中为什么要引入进程概念它会产生什么样的影响为了使程序在多道程序环境下能并发执行,并对并发执行的程序加以控制和描述,在操作系统中引入了进程概念; 影响: 使程序的并发执行得以实行;6.试从动态性、并发性和独立性上比较进程和程序1动态性是进程最基本的特性,表现为由创建而产生、由调度而执行,因得不到资源而暂停执行,由撤销而消亡;进程有一定的生命期,而程序只是一组有序的指令集合,静态实体;2并发性是进程的重要特征,同时也是OS的重要特征;引入进程的目的正是为了使其程序能和其它进程的程序并发执行,而程序是不能并发执行的;3独立性是指进程实体是一个能独立运行的基本单位,也是系统中独立获得资源和独立调度的基本单位;对于未建立任何进程的程序,不能作为独立单位参加运行;7.试说明PCB 的作用,为什么说PCB 是进程存在的惟一标志PCB是进程实体的一部分,是操作系统中最重要的记录型数据结构;作用是使一个在多道程序环境下不能独立运行的程序,成为一个能独立运行的基本单位,成为能与其它进程并发执行的进程;OS是根据PCB对并发执行的进程进行控制和管理的;8.试说明进程在三个基本状态之间转换的典型原因;1就绪状态→执行状态进程分配到CPU资源2执行状态→就绪状态时间片用完3执行状态→阻塞状态I/O请求4阻塞状态→就绪状态I/O完成13.在创建一个进程时所要完成的主要工作是什么1OS 发现请求创建新进程事件后,调用进程创建原语Creat2申请空白PCB3为新进程分配资源4初始化进程控制块5将新进程插入就绪队列;14.在撤销一个进程时所要完成的主要工作是什么1根据被终止进程标识符,从PCB集中检索出进程PCB读出该进程状态;2若被终止进程处于执行状态,立即终止该进程的执行,置调度标志真指示该进程被终止后重新调度;3若该进程还有子进程,应将所有子孙进程终止,以防它们成为不可控进程;4将被终止进程拥有的全部资源,归还给父进程,或归还给系统;5将被终止进程PCB 从所在队列或列表中移出,等待其它程序搜集信息;15.试说明引起进程阻塞或被唤醒的主要事件是什么16.进程在运行时存在哪两种形式的制约并举例说明之;1间接相互制约关系;举例:有两进程A和B,如果A 提出打印请求,系统已把唯一的一台打印机分配给了进程B,则进程A只能阻塞,一旦B释放打印机,A才由阻塞改为就绪;2直接相互制约关系;举例:有输入进程A通过单缓冲向进程B提供数据;当缓冲空时,计算进程因不能获得所需数据而阻塞,当进程A把数据输入缓冲区后,便唤醒进程B,反之,当缓冲区已满时,进程A因没有缓冲区放数据而阻塞,进程B将缓冲区数据取走后便唤醒A;17.为什么进程在进入临界区之前应先执行“进入区”代码,而在退出前又要执行“退出区”代码为了实现多个进程对临界资源的互斥访问,必须在临界区前面增加一段用于检查欲访问的临界资源是否正被访问的代码;如果未被访问,该进程便可进入临界区对资源进行访问,并设置正被访问标志;如果正被访问,则本进程不能进入临界区,实现这一功能的代码为"进入区"代码,在退出临界区后,必须执行"退出区"代码,用于恢复未被访问标志,使其它进程能再访问此临界资源;18. 同步机构应遵循哪些基本准则为什么同步机构应遵循的基本准则是:空闲让进、忙则等待、有限等待、让权等待原因,为实现进程互斥进入自己的临界区;23.在生产者消费者问题中,如果缺少了signalfull或signalempty,对执行结果有何影响如果缺少signalfull,那么表明从第一个生产者进程开始就没有改变信号量full 值,即使缓冲池产品已满,但full值还是0,这样消费者进程执行waitfull时认为缓冲池是空而取不到产品,消费者进程一直处于等待状态;如果缺少signalempty,在生产者进程向n个缓冲区投满产品后消费者进程才开始从中取产品,这时empty=0full=n,那么每当消费者进程取走一个产品empty值并不改变,直到缓冲池取空了,empty值也是0,即使目前缓冲池有n个空缓冲区,生产者进程要想再往缓冲池中投放产品也会因为申请不到空缓冲区被阻塞;24.在生产消费者问题中,如果将两个wait操作即waitfull和waitmutex互换位置,或者将signalmutex与signalfull互换位置,结果如何将waitfull和waitmutex互换位置后,可能引起死锁;考虑系统中缓冲区全满时,若一生产者进程先执行了waitmutex操作并获得成功,则当再执行waitempty操作时,它将因失败而进入阻塞状态,它期待消费者进程执行signalempty来唤醒自己,在此之前,它不可能执行signalmutex操作,从而使试图通过执行waitmutex操作而进入自己的临界区的其他生产者和所有消费者进程全部进入阻塞状态,这样容易引起系统死锁;若signalmutex和signalfull互换位置后只是影响进程对临界资源的释放次序,而不会引起系统死锁,因此可以互换位置;26.试修改下面生产者消费者问题解法中的错误:producer:beginrepeat...producer an item in nextp;waitmutex;waitfull; / 应为waitempty,而且还应该在waitmutex的前面/bufferin:=nextp;/ 缓冲池数组游标应前移: in:=in+1 mod n; /signalmutex;/ signalfull; /until false;endconsumer:beginrepeatwaitmutex;waitempty; / 应为waitfull,而且还应该在waitmutex的前面/ nextc:=bufferout;out:=out+1; / 考虑循环应改为: out:=out+1 mod n; / signalmutex;/ signalempty; /consumer item in nextc;until false; end27.试利用记录型信号量写出一个不会出现死锁的哲学家进餐问题的算法. Var chopstick:array0,,4 of semaphore;所有信号量均被初始化为1第i 位哲学家的活动可描述为RepeatWaitchopsticki;Wait. chopsticki+1 mod 5;...;...Signalchopsticki;Signalchopsticki+1 mod 5;...Think;Until false;28.在测量控制系统中的数据采集任务时,把所采集的数据送往一单缓冲区;计算任务从该单缓冲区中取出数据进行计算;试写出利用信号量机制实现两任务共享单缓冲区的同步算法;34.当前有哪几种高级通信机制共享存储器系统、消息传递系统以及管道通信系统;36.为什么要在OS 中引入线程在操作系统中引入线程,则是为了减少程序在并发执行时所付出的时空开销,使OS具有更好的并发性,提高CPU的利用率;进程是分配资源的基本单位,而线程则是系统调度的基本单位;38. 试从调度性、并发性、拥有资源及系统开销方面对进程和线程进行比较;1调度性;线程在OS 中作为调度和分派的基本单位,进程只作为资源拥有的基本单位;2并发性;进程可以并发执行,一个进程的多个线程也可并发执行;3拥有资源;进程始终是拥有资源的基本单位,线程只拥有运行时必不可少的资源,本身基本不拥有系统资源,但可以访问隶属进程的资源;4系统开销;操作系统在创建、撤消和切换进程时付出的开销显着大于线程;41.何谓用户级线程和内核支持线程1用户级线程;仅存在于用户空间中的线程,无须内核支持;这种线程的创建、撤销、线程间的同步与通信等功能,都无需利用系统调用实现;用户级线程的切换通常发生在一个应用进程的诸多线程之间,同样无需内核支持;2内核支持线程;在内核支持下运行的线程,无论是用户进程中的线程,还是系统线程中的线程,其创建、撤销和切换等都是依靠内核,在内核空间中实现的;在内核空间里还为每个内核支持线程设置了线程控制块,内核根据该控制块感知某线程的存在并实施控制;第三章1高级调度与低级调度的主要任务是什么为什么要引入中级调度高级调度的主要任务是根据某种算法把外存上处于后备队列中的那些作业调入内存;低级调度是保存处理机的现场信息按某种算法先取进程再把处理器分配给进程;引入中级调度的主要目的是为了提高内存利用率和系统吞吐量;使那些暂时不能运行的进程不再占用内存资源将它们调至外存等待把进程状态改为就绪驻外存状态或挂起状态;5试说明低级调度的主要功能;1保存处理机的现场信息2按某种算法选取进程3把处理机分配给进程;6在抢占调度方式中抢占的原则是什么抢占的原则有时间片原则、优先权原则、短作业优先权原则等;7在选择调度方式和调度算法时应遵循的准则是什么1面向用户的准则周转时间短、响应时间快、截止时间的保证、优先权准则2面向系统的准则系统吞吐量高、处理机利用率好、各类资源的平衡利用;18何谓死锁产生死锁的原因和必要条件是什么死锁是指多个进程在运行过程中因争夺资源而造成的一种僵局当进程处于这种僵持状态时若无外力作用它们都将无法再向前推进; 产生死锁的原因为竞争资源和进程间推进顺序非法;其必要条件是互斥条件、请求和保持条件、不剥夺条件、环路等待条件;19在解决死锁问题的几个方法中哪种方法最易于实现哪种方法使资源利用率最高解决死锁的四种方法即预防、避免、检测和解除死锁中预防死锁最容易实现避免死锁使资源的利用率最高;20请详细说明可通过哪些途径预防死锁;1摈弃“请求和保持”条件就是如果系统有足够资源便一次性把进程需要的所有资源分配给它2摈弃“不剥夺”条件就是已经拥有资源的进程当它提出新资源请求而不能立即满足时必须释放它已保持的所有资源待以后需要时再重新申请3摈弃“环路等待”条件就是将所有资源按类型排序标号所有进程对资源的请求必须严格按序号递增的次序提出;21在银行家算法的例子中如果P0发出请求向量由Request0,2,0改为Request0,1,0问系统可否将资源分配给它此答案有点问题需重新考虑1可以;银行家算法各种资源数量分别为10、5、7在T0时刻的资源分配如图所示2具体分析如下①Requst00,1,0<=Need07,4,3;②Requst00,1,0<=Available2,3,0;系统先假定可为P0分配资源并修改Available0Allocation0和Need0向量由此形成的资源变化情况如下图所示3P0请求资源P0发出请求向量Requst00,1,0,系统按银行家算法进行检查①Requst00,1,0<=Need07,4,3;②Requst00,1,0<=Available2,3,0;③系统暂时先假定可为P0分配资源并修改______________有关数据如下图所示综上所述系统可以将资源分配给它;22银行家算法中出现以下资源分配试问1该状态是否安全2若进程P2 提出Request1,2,2,2后系统能否将资源分配给它1安全因为存在安全序列{P0,P3,P4,P1,P2}2系统能分配资源分析如下;①Request1,2,2,2 <= Need22,3,5,6;②Request1,2,2,2 <= Available21,3,5,4改成Available21,6,2,2③系统先假定可为P2分配资源并修改Available2Allocation2和Need2向量由此形成的资源变化情况如下图所示④再利用安全性算法检查此时系统是否安全;如下图由此进行的安全性检查得知可以找到一个安全序列{P2,P0,P1,P3,P4};第四章2可采用哪几种方式将程序装入内存它们分别适用于何种场合1绝对装入方式只适用于单道程序环境;2可重定位装入方式适用于多道程序环境;3动态运行时装入方式用于多道程序环境,不允许程序运行时在内存中移位置; 5在动态分区分配方式中应如何将各空闲分区链接成空闲分区链在每个分区的起始部分设置一些控制分区分配的信息以及用于链接各分区所用的前向指针在分区尾部设置一个后向指针通过前后向链接指针将所有空闲分区链成一个双向链;当分区分配出去后把状态位由“0”改为“1”;7在采用首次适应算法回收内存时,可能出现哪几种情况应怎样处理这些情况在采用首次适应算法回收内存时可能出现4种情况1回收区前邻空闲区;将回收区与前邻空闲区合并将前邻空闲区大小修改为两者之和;2回收区后邻空闲区;将两区合并改后邻空闲区始址为回收区始址大小为两者之和;3回收区前后均邻空闲区;将三个分区合并修改前邻空闲区大小为三者之和;4回收区前后均不邻空闲区;为回收区设置空闲区表项填入回收区始址和大小并插入空闲区队列;17分段和分页存储管理有何区别1页是信息的物理单位分页是为了实现离散分配方式以消减内存的外部零头提高内存利用率;段则是信息的逻辑单位它含有一组相对完整的信息;2页的大小固定且由系统决定由系统把逻辑地址划分为页号和页内地址两部分是由机械硬件实现的,因而在系统中只能有一种大小的的页面;而段的长度却不固定,决定于用户所编写的程序,通常由编译程序在对原程序进行编译时,根据信息的性质来划分;3分页的作业地址空间是一维的,而分段作业地址空间则是二维的;19虚拟存储器有哪些特征其中最本质的特征是什么答虚拟存储器有多次性、对换性、虚拟性三大特征;最本质的特征是虚拟性;22在请求分页系统中页表应包括哪些数据项每项的作用是什么页表应包括页号、物理块号、状态位P、访问字段A、修改位M和外存地址;其中状态位P 指示该页是否调入内存供程序访问时参考访问字段A 用于记录本页在一段时间内被访问的次数或最近已有多长时间未被访问提供给置换算法选择换出页面时参考修改位M表示该页在调入内存后是否被修改过外存地址用于指出该页在外存上的地址通常是物理块号,供调入该页时使用;26在一个请求分页系统中采用LRU 页面置换算法时假如一个作业的页面走向为4 , 3 , 2 ,1 , 4 , 3 , 5 , 4 ,3 , 2 , 1 ,5 当分配给该作业的物理块数M分别为3和4时试计算访问过程中所发生的缺页次数和缺页率比较所得结果当分配给该作业的物理块数M为3时缺页9次缺页率: 9/12=3/4当分配给该作业的物理块数M为4时缺页10次缺页率: 10/12=5/6第五章3什么是字节多路通道什么是数组选择通道和数组多路通道1字节多路通道;按字节交叉方式工作的通道;通常含有许多非分配型子通道数量从几十到数百个每个子通道连接一台I/O 设备控制其I/O 操作;子通道按时间片轮转方式共享主通道; 2数组选择通道;按数组方式传送数据传输速率很高每次只允许一个设备数据;3数组多路通道;将数组选择通道传输速率高和字节多路通道的各子通道分时并行操作的优点结合而成;含有多个非分配型子通道具有很高的数据传输率和通道利用率;4如何解决因通道不足而产生的瓶颈问题答解决问题的有效方法是增加设备到主机间的通路而不增加通道把一个设备连到多个控制器上控制器又连到多个通道上这种多通路方式解决了“瓶颈”问题提高了系统可靠性个别通道或控制器的故障不会使设备和存储器之间没有通路;7有哪几种I/O控制方式各适用于何种场合共有四种I/O 控制方式;1程序I/O 方式早期计算机无中断机构处理机对I/O设备的控制采用程序I/O 方式或称忙等的方式;2中断驱动I/O 控制方式适用于有中断机构的计算机系统中;3直接存储器访问DMA I/O 控制方式适用于具有DMA控制器的计算机系统中;4I/O 通道控制方式具有通道程序的计算机系统中;9引入缓冲的主要原因是什么引入缓冲的主要原因是1缓和CPU与I/O 设备间速度不匹配的矛盾2减少对CPU的中断频率放宽对中断响应时间的限制3提高CPU与I/O 设备之间的并行性15为何要引入设备独立性如何实现设备独立性现代操作系统为了提高系统的可适应性和可扩展性都实现了设备独立性或设备无关性;基本含义是应用程序独立于具体使用的物理设备应用程序以逻辑设备名请求使用某类设备;实现了设备独立性功能可带来两方面的好处1设备分配时的灵活性2易于实现I/O 重定向;为了实现设备的独立性应引入逻辑设备和物理设备概念;在应用程序中使用逻辑设备名请求使用某类设备系统执行时是使用物理设备名;鉴于驱动程序是与硬件或设备紧密相关的软件必须在驱动程序之上设置一层设备独立性软件执行所有设备的公有操作、完成逻辑设备名到物理设备名的转换为此应设置一张逻辑设备表并向用户层或文件层软件提供统一接口从而实现设备的独立性;17何谓设备虚拟实现设备虚拟时所依赖的关键技术是什么设备虚拟是指把独占设备经过某种技术处理改造成虚拟设备; 可虚拟设备是指一台物理设备在采用虚拟技术后可变成多台逻辑上的虚拟设备则可虚拟设备是可共享的设备将它同时分配给多个进程使用并对这些访问该物理设备的先后次序进行控制; 18试说明SPOOLing 系统的组成;答SPOOLing 系统由输入井和输出井、输入缓冲区和输出缓冲区、输入进程SPi 和输出进程SPo 三部分组成;19在实现后台打印时SPOOLing 系统应为请求I/O 的进程提供哪些服务在实现后台打印时SPOOLing 系统应为请求I/O的进程提供以下服务1由输出进程在输出井中申请一空闲盘块区并将要打印的数据送入其中2输出进程为用户进程申请空白用户打印表填入打印要求将该表挂到请求打印队列; 3一旦打印机空闲输出进程便从请求打印队列的队首取出一张请求打印表根据表中要求将要打印的数据从输出井传送到内存缓冲区再由打印机进行打印;21试说明设备驱动程序应具有哪些功能答设备驱动程序的主要功能包括1将接收到的抽象要求转为具体要求2检查用户I/O 请求合法性了解I/O 设备状态传递有关参数设置设备工作方式3发出I/O 命令启动分配到的I/O设备完成指定I/O 操作4及时响应由控制器或通道发来的中断请求根据中断类型调用相应中断处理程序处理5对于有通道的计算机驱动程序还应该根据用户I/O 请求自动构成通道程序;23.磁盘访问时间由哪几部分组成每部分时间应如何计算磁盘访问时间由寻道时间Ts、旋转延迟时间Tr、传输时间Tt 三部分组成;1Ts 是启动磁臂时间s 与磁头移动n条磁道的时间和即Ts = m ×n + s;2Tr是指定扇区移动到磁头下面所经历的时间;硬盘15000r/min时Tr为2ms;软盘300或600r/min时Tr为50~100ms;3Tt 是指数据从磁盘读出或向磁盘写入经历的时间;Tt 的大小与每次读/写的字节数b和旋转速度有关Tt = b/rN;24.目前常用的磁盘调度算法有哪几种每种算法优先考虑的问题是什么答目前常用的磁盘调度算法有先来先服务、最短寻道时间优先及扫描等算法;。
计算机操作系统课后习题答案第四版在学习计算机操作系统这门课程时,课后习题是巩固知识、检验理解的重要环节。
下面,我们将对第四版教材中的一些典型课后习题进行详细的解答。
首先来看第一章的习题。
其中有一道关于操作系统定义和功能的题目。
操作系统可以被理解为是管理计算机硬件与软件资源的程序,它负责控制和协调计算机系统中各个部件的工作,为用户和应用程序提供一个方便、高效、安全的操作环境。
其主要功能包括处理机管理、存储器管理、设备管理、文件管理以及用户接口管理等。
比如处理机管理,它要合理地分配处理机时间,以提高系统的运行效率;存储器管理则要确保内存的合理分配和有效利用,避免出现内存泄漏等问题。
第二章中,有涉及进程概念和进程状态转换的习题。
进程是操作系统进行资源分配和调度的基本单位。
它具有动态性、并发性、独立性和异步性等特征。
进程在其生命周期中会经历不同的状态,如就绪、运行和阻塞。
当一个进程具备了运行所需的资源和条件,它就处于就绪状态,等待被调度执行;一旦获得处理机,就进入运行状态;而当进程由于等待某个事件的发生而无法继续执行时,就会进入阻塞状态。
在第三章的习题里,有关线程的问题较为常见。
线程是进程中的一个执行单元,它可以共享进程的资源,从而提高系统的并发性能。
与进程相比,线程的创建和切换开销更小,因此在多线程编程中被广泛应用。
例如,在一个网络服务器中,可以为每个连接创建一个线程来处理数据的接收和发送,提高服务器的响应速度。
第四章的存储管理部分,有关于分页存储管理和分段存储管理的习题。
分页存储管理将内存空间划分成固定大小的页,而分段存储管理则是根据程序的逻辑结构将其划分成不同的段。
分页存储管理的优点是便于内存管理和分配,但可能会产生内部碎片;分段存储管理则更符合用户的编程思维,但会存在外部碎片。
在实际应用中,往往会结合两者的优点,形成段页式存储管理。
第五章的设备管理中,涉及到设备驱动程序和I/O 控制方式的问题。
《操作系统教程》课后习题答案第一章操作系统概论1.什么是计算机系统?计算机系统是怎么构成的?了解PC 的组成情况,说明:1)硬件组织的基本结构,画出硬件配置图;2)主要系统软件和应用软件(若有的话)他们的作用。
答:计算机系统就是按照人的要求接收和存储信息,自动进行数据处理和计算,并输出结果信息的系统。
计算机系统由硬件子系统和软件子系统组成。
计算机系统的构成包括:如图1.2计算机硬件系统的构成:如图1.42.从功能以及程序涉设计的角度说明计算机系统中软件系统是如何构成的?答:分为系统软件,支撑软件和应用软件三层。
3.什么是操作系统?请举例说明操作系统在计算机系统中的重要地位。
答:操作系统是计算机系统中的一个系统软件,是一些程序模块的集合。
它们能以尽量有效、合理的方式组织和管理计算机的软硬件资源,合理的组织计算机的工作流程,控制程序的执行并向用户提供各种服务功能,使得用户能够灵活、方便、有效的使用计算机,使整个计算机系统能安全高效地运行4.请举一个实际的例子来说明操作系统的功能。
答:你能用用操作系统管理很多资源5.为什么说“操作系统是控制硬件的软件”的说法不确切?答:操作系统不仅能够控制硬件,也可以控制各种软件资源。
6.操作系统的基本特征是什么?说明他们之间的关系。
答:1.并发性2.共享性3.随机性7.试从独立性,并发性和交互性和实时性四个方面来比较批处理系统,分时系统以及实时系统。
答:分时系统:并发性是指同时有多个用户共同使用一个计算机,宏观上看是多个人同时使用一个CPU,微观上是多个人在不同时刻轮流使用CPU.独占性,是指用户感觉不到计算机为他们服务,就好像整个系统为他所独占。
交互性:是指用户根据系统响应结果进一步提出新要求,用户直接干预每一步。
实时性:是指系统对用户提出的请求及时响应。
8.引入多道程序设计技术的起因和目的是什么?多道程序系统的特征是什么?答:多道程序设计的基本思想在内存中保持多个作业,主机可以交替的方式同时处理多个作业,一般来说任何一道作业的运行总是要交替的使用处理器和外设子案9.多道程序设计的度是指在任一给定时刻,单个CPU 所能支持的进程数目最大值。
讨论要确定一个特定系统的多道程序设计的度必须考虑的因素。
可以假定批处理系统中进程数量与作业数量相同。
答:10.描述批处理系统响应一个执行请求需要的时间(称为响应时间),描述分时系统下的响应时间,什么样的系统可能有较短的响应时间?为什么?答:1)就是将用户的作业组成一批作业,之后输入到计算机中,计算机依次执行每个作业,然后输出,即为响应时间。
2)定义这个响应时间就是:系统对一个输入的反应时间实时系统的反应时间11.什么情况下批处理是比较好的策略?什么情况下分时是比较好的策略?现代的操作系统往往要把两者结合,请举出这样的例子,并说明它们是怎样被结合起来的,并通过这样的结合获得了什么好处。
答:常见的通用操作系统是分时系统与批处理系统结合,其原则是:分时优先,批处理再后,"前台"响应需要频繁交互的作业,如终端的要求。
“后台”处理时间性要求不强的作业。
12.操作系统的技术发展是怎样的?从这一技术演化过程可以得到什么启发?答:操作系统的发展是根据计算机硬件发展,计算机应用软件的发展而发展的,我们发展操作系统的目标就是:充分利用硬件,提供更好的服务。
13.请作一个调查,看看各种计算机的应用领域都在使用什么样的操作系统,他们分别是什么类型的操作系统,调查的内容应该涵概现代操作系统的主要类别.14.现有一下应用计算机的场合,请为其选择适当的操作系统。
1)航天航空,核变研究;2)国家统计局数据处理中心;3)学校学生上机学习编程4)高炉炉温控制;5)民航定票系统,6)发送电子邮件(在两个地区之间)答:1)航天航空,核变研究:嵌入式操作系统2)分布式操作系统3)个人计算机操作系统4)实时操作系统5)批处理操作系统6)网络操作系统。
15.什么是Spooling 技术?他有什么用?你认为未来先进的个人计算机会把假脱机作为一个关键特性吗?答:假脱机(SPOOLing.)技术的全称是同时得外部设备联机操作,这种技术的基本思想是用磁盘设备作为主机的直接输入输出设备,,主机直接从磁盘上选取作业运行,作业的执行结果16.外壳程序(shell)是不是操作系统的一部分,为什么?答:不是,它不属于操作系统内核的一部分,它是一个应用程序。
17.如果你有一个可用得类UNIX 系统,例如Linux,Minix 或者BSD 等,而且你有足够的权限重起或者使得系统崩溃,请编写一个shell 程序作下面的实验,用该shell 程序不停的产生新进程,观察发生的事情,在运行你的shell 之前,请用sync 命令同步硬盘和内存中的磁盘缓存,以免在程序运行过程中访问文件系统,注意,请不要在任何共享的系统中做这件事情?答:进程数不断增多,最后导致系统崩溃了!重要:18.现代操作系统的设计很讲求机制与策略的分离,已经使操作系统的结构和实现能够在一定范围内适应不同的需要。
例如Solaris 的调度器实现了进程调度的基本机制,同时它允许通过动态调整核心参数实现不同负载下的系统性能平衡,这就是一种机制和策略的分离,请给出一个例子,说明怎样根据调度将机制和策略分开。
请构造一种机制,允许父进程控制子进程的调度策略。
19.有兴趣,可以去写一篇,记得写完了,发给我,我把你的文章贴上来!硬件环境第二章操作系统的硬件环境1. 请简述处理器的组成和工作原理。
你认为那些部分和操作系统的密切关系,为什么?答:一般的处理器由运算器,控制器,一系列的寄存器以及高速缓存构成。
运算器实现任何指令中的算术和逻辑运算,是计算机计算的核心;控制器负责控制程序运行的流程,包括取指令,维护CPU 状态,CPU 与内存之间的交互等等。
寄存器是指令在CPU 内部做处理的过程中占存数据,地址一级指令信息的存储设备,在计算机的存储系统中它具有最快的访问速度。
加上高速缓存以及内存管理单元(MMU)2. 为了支持操作系统,现代处理器一般都提供哪两种工作状态,用来隔离操作系统和普通程序?两种状态各有什么特点?答;多数系统将处理器工作状态划分为管态和目态管态:操作系统管理程序运行的状态,较高的特权级别,又称为特权态(特态)、系统态目态:用户程序运行时的状态,较低的特权级别,又称为普通态(普态)、用户态3.什么是分级的存储体系结构?它主要解决什么问题?答:容量、速度和成本三个目标不可能同时达到最优,要作权衡存取速度快,每比特价格高容量大,每比特价格越低,同时存取速度也越慢解决方案:采用层次化的存储体系结构当沿着层次下降时,每比特的价格将下降,容量将增大速度将变慢,处理器的访问频率也将下降4.主存储器通常有哪两种类型?它们各自的特点是什么?用在哪里?答:硬盘存储器,和内存存储器.硬盘存储器:容量大,存储速率慢,断电后,数据信息不丢失内存存储器:容量小,存储速率快,断电后,数据信息丢失。
5.请简述程序局部性原理。
这个原理在分级的存储体系结构中是怎么样起作用的?答:时间局部性,空间局部性。
起的作用是:提高存储系统效能这个目的。
6.什么是存储保护?有哪些方法实现存储保护?答:对主存中的信息加以严格的保护,使操作系统及其它程序不被破坏,是其正确运行的基本条件之一多用户,多任务操作系统:OS 给每个运行进程分配一个存储区域操作系统提供了:1.界限地址寄存器,存储健两个存储保护机构!7。
呵呵,大家去翻资料把!!!8.缓冲技术在计算机系统中起着什么样的作用?它是如何工作的?答:缓冲技术一般有三个用途,一种是用在处理器和主存储器之间的;另一种是用在处理器和其他外部设备之间的;还有一种是用在设备与设备之间的通信上。
9.什么是中断?为什么说中断对现代计算机很重要?答:中断概念:指CPU 对系统中或系统外发生异步事件的响应。
异步事件是指无一定时序关系的随机发生事件,如外部设备完成数据传输,实时设备出现异常等。
中断机制是操作系统得以正常工作的最重要的手段,它使得OS 可以捕获普通程序发出的系统功能调用及时处理设备的中断请求,防止用户程序中破坏性的活动等等10.中断的一般处理过程是怎么样的?多个中断同时发生呢?答:1)如书图2.9(简单的中断处理过程)2)如书图2.12(一个多优先级中断系统中多个中断的处理示例)11.请简述中断和操作体统的关系,操作系统是如何利用中断机制的?答:中断机制是操作系统得以正常工作的最重要的手段,它使得OS 可以捕获普通程序发出的系统功能调用及时处理设备的中断请求防止用户程序中破坏性的活动等等12. 常用的I/O 控制技术有那些?各有什么特点?答:常用的I/O 控制技术有以下几种:程序控制,中断驱动以及直接存储器存取(DMA)以及通道。
程序控制I/O 技术:由处理器提供I/O 相关指令来实现I/O 处理单元处理请求并设置I/O 状态寄存器相关位不中断处理器,也不给处理器警告信息处理器定期轮询I/O 单元的状态,直到处理完毕I/O 软件包含直接操纵I/O 的指令控制指令: 用于激活外设,并告诉它做什么状态指令: 用于测试I/O 控制中的各种状态和条件数据传送指令: 用于在设备和主存之间来回传送数据主要缺陷:处理器必须关注I/O 处理单元的状态,因而耗费大量时间轮询信息,严重地降低了系统性能中断驱动I/O 技术:为了解决程序控制I/O 方法的主要问题应该让处理器从轮询任务中解放出来,使I/O 操作和指令执行并行起来具体作法:当I/O 处理单元准备好与设备交互的时候,通过物理信号通知处理器,即中断处理器DMA 技术:中断的引入大大地提高了处理器处理I/O 的效率当处理器和I/O 间传送数据时,效率仍旧不高解决方法:直接存储器访问(DMA:Direct Memory Access)通过系统总线中一独立控制单元——DMA 控制器自动控制成块数据在内存和I/O 单元间的传送,大大提高处理I/O 的效能通道:独立于中央处理器,专门负责数据I/O 传输的处理机它对外设实现统一管理,代替CPU 对I/O 操作进行控制,使CPU 和外设可以并行工作,通道又称为I/O 处理机,引入通道的目的:为了使CPU 从I/O 事务中解脱出来同时为了提高CPU 与设备、设备与设备之间的并行度13.时钟对操作系统有什么重要作用?时钟为计算机完成以下必不可少的工作:在多道程序运行环境中,为系统发现陷入死循环(编程错误)的作业,防止机时的浪费在分时系统中,间隔时钟实现作业间按时间片轮转在实时系统中,按要求的间隔输出正确时间信号给实时的控制设备(如A/D、D/A 转换设备)定时唤醒要求延迟执行的各外部事件(如定时为各进程计算优先数,银行中定时运行某类结账程序等)记录用户使用设备时间和记录某外部事件发生时间记录用户和系统所需要的绝对时间,即年、月、日第三章用户接口与作业管理1.阐述程序,作业,作业步和进程之间的联系和区别。