《操作系统教程》课后习题答案第一章操作系统概论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:DirectMemoryAccess)通过系统总线中一独立控制单元——DMA控制器自动控制成块数据在内存和I/O单元间的传送大大提高处理I/O的效能通道:独立于中央处理器,专门负责数据I/O传输的处理机它对外设实现统一管理代替CPU对I/O操作进行控制使CPU和外设可以并行工作通道又称为I/O处理机引入通道的目的:为了使CPU从I/O事务中解脱出来同时为了提高CPU与设备、设备与设备之间的并行度13.时钟对操作系统有什么重要作用?时钟为计算机完成以下必不可少的工作:在多道程序运行环境中,为系统发现陷入死循环(编程错误)的作业,防止机时的浪费在分时系统中,间隔时钟实现作业间按时间片轮转在实时系统中,按要求的间隔输出正确时间信号给实时的控制设备(如A/D、D/A转换设备)定时唤醒要求延迟执行的各外部事件(如定时为各进程计算优先数,银行中定时运行某类结账程序等)记录用户使用设备时间和记录某外部事件发生时间记录用户和系统所需要的绝对时间,即年、月、日第三章用户接口与作业管理1.阐述程序,作业,作业步和进程之间的联系和区别。答:(1)作业用户在一次计算过程中,或者一次事务处理过程中,要求计算机系统所做工作的总称(2)作业步一个作业可划分成若干部分,称为一个作业步典型的作业控制过程:“编译”、“连接装配”、“运行”2.一个具有分时兼批处理功能的操作系统应该怎样调度和管理作业?为什么?品3.在一个批处理系统中,一个作业从提交到运行结束并退出系统,通常要经历哪几个阶段和状态?你能说出这些状态转变的原因吗?哪些程序负责这些状态的转变?4.假设有三个作业,他们进入时间和估计运行的时间如下:作业号进入时刻估计运行时间110:0060分钟210:1060分钟310:2515分钟在单道批处理方式下,采用先来先服务算法和最短作业优先算法进行作业调度。请给出他们的调度程序,并分别计算出作业平均周转时间和带权平均周转时间,请对计算结果进行解释。答:先来先服务:作业号进入时间估计运行时间开始时间结束时间周转时间带权周转时间110:006010:0011:00601210:106011:0012:0011011/6310:251512:0012:1511022/3平均周转时间:280/3带权:55/6+6/6=61/6最短作业服务:作业号进入时间估计运行时间开始时间结束时间周转时间带权周转时间110:006010:0011:00601210:106011:1512:151252