计算机操作系统 陆丽娜版 课后答案.doc
第一章 操作系统概述1. 操作系统的两个主要目标是什么? 答:方便性和有效性2. 试说明操作系统与硬件、其他系统软件以及用户之间的关系。 答:操作系统是覆盖在硬件上的第一层软件,它管理计算机的硬件和软件资源,并向用户提供良好的界面。操作系统与硬件紧密相关,它直接管理着硬件资源,为用户完成所有与硬件相关的操作,从而极大的方便了用户对硬件资源的使用,并提高了硬件资源的利用率。操作系统是一种特殊的系统软件,其它系统软件运行在操作系统的基础之上,可获得操作系统提供的大量服务。也就是说,操作系统是其它系统软件和硬件之间的接口。而一般用户使用计算机除了需要操作系统支持以外,还需要用到大量的其它软件,以完成各种复杂的任务。三者之间存在着明确的层次支持关系。3. 试论述操作系统是建立在计算机硬件平台上的虚拟计算机系统。 答:操作系统将物理计算机的功能加以扩展,使之成为接口好、功能强、效率高、易使用的计算机系统,而这只是概念和逻辑上的,不是真实的、物理上的,称为虚拟机,每个应用程序运行在自己的虚拟机上。操作系统通过共享硬件资源的方式来实现虚拟机抽象,所利用的资源管理技术有资源复用、资源虚化、资源抽象、组合使用抽象和虚化技术。 操作系统的主要特性:并发性、共享性、异步性。4. 什么是操作系统?它有哪些基本功能与基本特征?答:操作系统是一个软件系统,它控制和管理计算机系统内各种硬件和软件资源,提供用户与计算机系统之间的接口。 操作系统的功能有:(1)提供用户接口 (2)管理计算机资源 操作系统的特性有:(1)并发 (2)共享 (3)异步 (4)虚拟5. 请叙述并发和并行两个概念的区别。答:并行是指两个或多个事件在同一时刻发生,并发是指两个或多个事件在同一时间间隔内发生。6. 什么是多道程序设计?在操作系统中使用这种技术有什么好处?答:多道程序设计师指在内存中同时存放多道程序,这些程序在管理程序的控制下交替进行,共享处理机及系统中的其他资源。(1) 提高CPU的利用率当内存中仅存放一道程序时,每逢该程序运行中发出I/0请求后,CPU空闲,必须在其I/0完成后才继续运行;尤其是I/0设备的低速性,更使CPU的利用率显著降低。在引入多道程序设计技术后,由于可同时把若干道程序装入内存,并可使它们交替地执行,这样,当正在运行的程序因I/0而暂停执行时,系统可调度另一道程序运行,从而可保持CPU处于忙碌状态。(2) 可提高内存和I/0设备利用手为了能运行较大作业,通常内存都具有较大容量,但由于80%以上的作业都属于中小型,因此在单道程序环境下也必定造成内存的浪费。类似地,系统中所配置的多种类型的I/0设备,在单道程序环境下,也不能充分利用。如果允许在内存中装入多道程序,并允许它们并发执行,则无疑会大大提高内存利用率和I/0设备的利用率。(3) 增加系统吞吐量在保持CPU、I/0设备不断忙碌的同时,也必然会大幅度地提高 系统的吞吐量,从而降低作业加工所需费用。7. 什么是批处理、实时、分时系统?它们各有什么特征?各适用哪些场合?8. 在分时系统中响应时间与哪些因素有关?答:影响分时操作系统响应时间的因素有很多,与CPU的处理速度、联机终端的数目,所用的时间片的长短,系统调度开销和对话信息量的多少有关。9. 网络操作系统最基本的功能是什么?它最使你感兴趣的是什么?答:实现网络通信和网络资源管理功能。10. 分布式操作系统与网络操作系统有什么不同之处?答:分布式操作系统管理多处理器和同种类的多计算机。网络操作系统连接不同的、独立的计算机,这些计算机有自己的操作系统以便用户可以容易地使用每台计算机所提供的服务。11. 操作系统发展的动力是什么?你对21世纪的操作系统有什么见解?答:(1)不断提高计算机资源利用率的需要。(2)方便用户的需要。(3)器件不断更新换代的需要。(4)计算机体系结构不断发展的需要。12. 计算机系统中“引导程序”的主要功能是什么?完成装入操作系统并开始执行系统,1.把标准设备的驱动程序从BIOS读入内存的固定位置,让所有的标准设备都能够开始工作。 2.运行自动检测程序,检测各种设备能否正常工作。 3.读入256个中断服务程序。13. 简述主存储器与辅助存储器的作用和特点。答:主存储器的作用是存储指令和数据。特点:能由中央处理器直接访问的唯一存储空间,任何程序和数据都必须装入主存后才能运行,断电信息丢失。辅助存储器的作用是作为内存的扩充。特点:能永久性地存储大量的数据。14. 双重工作模式的思想是什么?为什么要这样设计?答:为保护操作系统和所有用户程序不受错误用户程序的影响,许多计算机系统提供用户模式和系统模式两种运行模式,并将指令系统分为特权指令和非特权指令。只有操作系统才能执行全部指令,而一般用户只能执行非特权指令,否则会导致非法执行特权指令而产生保护中断。特权指令的规定既保障了系统的安全,也使操作系统拥有了对计算机系统中所有软、硬件资源的控制权和管理特权。15. 陷入与中断之间的区别是什么?它与过程调用的主要区别是什么?答:陷入是因为程序错误或用户程序执行非法操作引起的,它属于软件生成中断。中断是在程序运行过程中,出现了某种紧急事件,必须中止当前正在运行的程序,转去处理此事件,然后再恢复原来运行的程序。调用形式不同,被调用代码的位置不同,提供方式不同,调用的实现不同。16. 系统调用的用途是什么?它与过程调用的主要区别是什么?答:系统调用是操作系统为了扩充机器功能、增强系统能力、方便用户使用而建立的。调用形式不同,被调用代码的位置不同,提供方式不同,调用的实现不同。17. 采用层次式结构设计操作系统的主要优点是什么?答:使系统结构清晰,适应性强,易于扩充和移植,而且不会构成循环调用。18. 采用微内核的方法设计操作系统的主要优点是什么?答:提高了系统的可扩展性,增强了系统的可靠性,可移植性,提供了对分布式系统的支持。第二章 进程与线程1. 什么是进程,为什么要引入进程概念,进程都有哪些特征?a) 进程是一个可并发执行的,具有独立功能的程序关于某个数据集合的一次执行过程,也是操作系统进行资源分配和调度的独立单位。b) 为增强计算机系统的处理能力和提高各种资源的利用率,现代计算机普遍采用多道程序设计技术,使得系统中运行的程序处于走走停停的状态之中,基于“程序”这个静态概念已经不能完整,有效的描述并发程序在内存中的运行状态,为了实现程序在多道程序环境下的并发执行,引入进程概念,从动态角度研究程序的执行。c) 进程的特征:动态性,并发性,独立性,异步性,结构性。2. 叙述进程和程序的关系。a) 联系:i. 进程包括一个程序;ii. 进程存在的目的就是执行这个程序;b) 区别:i. 进程是动态的概念,程序是静态的概念。程序是指令代码的有序集合;进程是程序的一次执行过程,它能动态地被创建,调度执行,执行后消亡。ii. 进程是暂时的,程序是永久的。进程是一个程序执行状态变化的过程,程序是可以长久保存的。iii. 进程由程序,数据和进程控制块组成,程序由若干行代码组成。iv. 通过多次执行,一个程序可以对应多个进程;通过调用关系,一个进程可包括多个程序。v. 进程能够独立运行,可以为其独立分配资源,独立接受调度的单位,而进程不能在多道程序环境下运行。3. 叙述进程的并发性和制约性。a) 程序的并发性是为了增强计算机系统的处理能力华为提高各种资源的利用率所采用的一种同时操作技术,使得系统中的资源不再为单个用户程序独占,而是由几道,程序共同使用,打破了一道程序封闭于一个系统中的执行局面。b) 由于程序的并发执行和资源共享,使得并发程序之间存在直接或间接的相互制约关系,系统的工作情况变得更加复杂。4. 进程最少应设置几个状态,为什么?至少3个状态:就绪,运行,阻塞。这三种状态可以刻画一个完整的进程,每个进程在执行过程中,任何时刻都处于上述三种状态之一。5. 进程控制块的作用是什么,它是如何描述进程动态性质的?a) PCB是系统感知进程存在的唯一标志,是进程动态特性的集中反映,和进程一一对应,操作系统通过管理PCB来管理进程。b) 进程控制块包含进程描述信息,控制信息,和资源管理信息三类。这些信息的变化反映进程的动态性质。6. 用户进程能否修改或访问自己的进程控制块内容?为什么?7. 什么是原语操作?一般进程控制原语都有哪些?原语是由若干条机器指令构成的,在管态下执行和完成系统特定功能的程序段。它在执行过程中不允许被中断,它的执行是顺序的而不可能是并发的。进程控制块原语有进程创建原语,撤消原语,阻塞原语,唤醒原语,挂起原语,激活原语。8. 试说明引起创建一个进程,撤销一个进程的主要事件。引起进程创建的主要事件:用户登录,作业调度,提供服务。引起进程撤销的主要事件:正常结束,异常结束,外界干预。9. 请画出流程图说明创建一个进程的步骤。从PCB链表中申请一个空闲的PCBà为新进程分配资源à初始化新进程的PCB内容à将新进程的PCB插入到就绪队列à返回一个进程的标识号n10. 操作系统内核都包括哪些内容?一是支撑功能,包括中断处理,时钟管理和原语操作等,二是资源管理功能,包括进程管理,存储器管理和设备管理等。11. 模式切换和进程切换有什么区别?模式切换不同于进程切换,它不引起进程状态的变化。12. 操作系统引入进程概念后为什么又引入线程概念?进程在创建,撤销以及状态转换中,系统要为之付出较大的时间和空间开销,所以系统中所设置的进程数目不宜过多,且换频率不宜太高,限制了进程并发成都的进一步提高,于是操作系统学者们提出了把进程的两个属性分开来考虑,即作为调度和分派的基本单位,不能同时作为独立分配资源的单位,在这样的思想下产生了线程的概念。13. 试从资源分配单位和调度的基本单位两方面对进程和线程进行比较。a) 资源分配:进程是资源分配的基本单位,线程自己不拥有系统资源,但它可以反问其隶属进程的资源b) 调度:线程是调度和分派的基本单位。在一个进程中,线程的切换不会引起进程的切换,只有当从一个进程中的线程切换到另一个进程中的线程时,才会引起进程的切换。14. 请指出用户级线程和内核级线程的不同点。用户级线程只存在于用户层,与内核无关,它的管理工作由应用程序完成,线程切换不需要系统状态的转换,在同一进程中多个线程不能并行执行。内核级线程的管理工作由内核来完成,同一进程内的多个线程可以并行执行,但是内核级线程的切换需要内核的状态转换。第三章 处理机调度1. 处理器调度分哪几类型?简述各调度的主要任务。处理器调度分为:高级调度,中级调度,低级调度高级调度主要任务:在多道批处理操作系统中,从输入系统的一批作业中按照预订的调度策略挑选若干作业进入主存,为其分配所需资源,并创建作业的响应用户进程后便完成高级调度任务。中级调度:根据主存资源决定主存中所能容纳的进程数目,并根据进程的当前状态来决定辅助存储器和主存中进程的对换。低级调度:根据某种原则决定就绪队列中的哪个进程或者内核级线程获得处理器,并将处理器出让给它使用。2. 叙述衡量一个处理器调度算法好坏的主要标准。根据调度机制 的三个逻辑功能程序模块组成来评判:(1)队列管理程序(2)上下文切换程序(3)分派程序3. 简述作业状态及其转换过程。作业从进入系统到运行结束,一般要经历四个阶段,也即有四种状态变化。 录入状态是指作业正在从输入设备上预输入到输入井中;当作业的全部信息都已输入到输入井中,就 称之处于后备状态;处于后备状态的作业被作业调度程序调入内存执行,则称之处于执行状态;当作业正 常结束或因发生错误而非正常终止时,作业就进入完成状态。4. 简述作业,进程和程序三者的关系。作业是程序流程里的某个单独的环节,所以,一个程序可能由多个作业构成;一个作业可能需要CPU的多个进程才能完成,所以,一个作业可能由多个进程构成.5. 何谓响应比最高优先算法?他有何主要特点?是既要考虑作业的等待时间,又要考虑作业的运行时间,是介于上述两种算法之间的一种这种策略。是综合了先来先服务和最短作业优先两种算法的特点。 6.何谓进程调度种“可抢占”和“非抢占”方式?哪一种系统的开销最大?为什么?因为“可抢占”的进程调度方式是一个进程能把处理机资源从正在运行的进程哪里抢占过来。它的优点是能保证系统当前运行的进程是所有进程中优先级最高的进程。但由于在处理机调度过程中,处理机资源的交换比较频繁,所以引起的系统开销比较大。这也是可抢占调度方法的一大缺点。7. 进程调度有哪些功能?进程调度的时机有哪几种?功能:(1)记录系统中所有进程的执行情况(2)选择占有处理机的进程进行进程上下文切换时机:8.试比较进程调度和作业调度的不同点。作业调度属于高级调度,是把硬盘上的后被队列中作业通过调度算法调入内存,创建进程,作业调度只是选择参加CPU竞争的作业,他并不是分配CPU京城调度属于低级调度,通过进程调度算法把内存中多个用户中一个进程负责分配CPU进程调度是在作业完成选择的基础上把CPU真正分配给某一个具体的进程使9. 假定有一个支持实时,分时和批处理的操作系统,对该系统应如何设计进程调度策略?10. 在多级反馈队列系统中设置不同大小的时间片有什么优点?第四章 进程同步与死锁1. 试说明进程的互斥和同步两个概念之间的异同。进程的互斥是解决进程间竞争关系间接制约关系的手段。进程互斥是指若干个进程要使用同一资源时任何时刻最多允许一个进程去使用其它要使用该资源的进程必须等待直到占有资源的进程释放该资源。进程的同步是解决进程间协作关系直接制约关系的手段。进程同步指两个以上进程基于某个条件来协调它们的活动。一个进程的执行依赖于另一个协作进程的消息或信号当一个进程没有得到来自于另一个进程的消息或信号时则需等待直到消息或信号到达才被唤醒。2. 进程之间存在哪几种相互制约关系?各是什么原因引起的?下列活动分别属于哪种制约关系(1)若干同学去图书馆借书(2)两队举行篮球比赛(3)流水线生产的各道工序(4)商品生产和社会消费解:进程间存在着2种相互制约的关系:直接制约关系(即同步问题)和间接制约关系(即互斥问题)。同步问题是存在逻辑系的进程之间相互等待所产生的制约关系,互斥问题是相互无逻辑关系的进程间竞争使用相同资源所发生的制约关系。 (1)属于互斥关系,因为书的个数是有限的,一本书只能借给一个同学; (2)属于互斥关系,篮球只有一个,两队都要争夺; (3)属于同步关系,各道工序的开始都依赖前道工序的完成; (4)属于同步关系,商品没生产出来,消费无法进行,商品未消费完,生产也无须进行。3.什么是临界区和临界资源?对临界区管理的基本原则是什么?临界区对临界资源实施操作的程序代码段临界资源一次只允许一个进程使用的资源对临界资源的管理原则:(1) 互斥。如果某个进程在临界区内执行,则其他进程不能进入临界区(2) 空闲让进。如果没有进程在其临界区内执行,则执行一进程(如有)进入临界区。(3) 有限等待。党有若干个进程同时要求进入临界区时,应在有限时间内使一个进程进入。4.什么是信号量?在信号量S上作P、V操作时,S的值发生变化,当S>0、S=0、S<0时,他们的物理意义是什么?信号量是用于表示资源树木或请求使用某一资源的进程个数的整型变量。S>0:其值表示系统中当前可用的某类资源数目。S=0: 表示系统中当前已无某类资源可用。S<0:其绝对值表示系统中因请求该类资源而被阻塞的进程数量或登记排列在该信号量S队列之中等待的进程个数。5.请说明P、V操作的定义和作用。为什么它们均为不可分割的原语操作?6.已经有信号量和P、V操作可用作进行进程间的通信,为什么还要引入管程?P、V操作主要缺点:(1)同步操作分散。在信号量机制中,同步操作分散在各个进程中,使用不当就可能导致进程死锁。(2)易读性差。要了解对于一组共享变量及信号量的操作是否正确,必须通读整个系统或者并发程序。(3)正确性难以保证。操作系统或并发程序通常很大,很难保证这样一个复杂的系统没有逻辑错误。7.叙述产生死锁的必要条件。(1)互斥条件:进程应互斥使用资源,任一时刻一个资源仅为一个进程独占,若另一个进程请求一个已被占用的资源时,它被置成等待状态,直到占用者释放了该资源。(2)占有和等待条件:一个进程请求资源得不到满足而等待时,不释放已占有的资源。(3)不剥夺条件:任何一个进程请求不能强队其他进程占用的资源,即已被占用的资源只能由占用资源的进程自己来释放。(4)循环等待条件:存在一个循环等待链,链中每一个进程已获得资源,同时分别等待它前一个进程所持有的资源,造成永远等待。8.叙述死锁的防止和死锁的避免的区别死锁的预防就是在运行之前,预先防止死锁的产生,这主要通过破坏产生死锁的4个必要条件中任何一个来实现的。所以系统预先确定一些资源分配策略,进程按规定申请资源,系统按预先规定的策略进行分配,从而防止死锁的发生。死锁的避免实在系统运行过程中注意避免死锁的发生,这就要求系统对每一个进程资源申请,都根据一定的算法进行判断,仅当系统处于安全状态时才把资源分配给进程,是系统一直处于安全状态之中,从而避免死锁。死锁的 避免策略比起死锁的预防策略对系统资源的利用率更高一些。9.列举死锁的各种预防策略1.静态分配策略2.按序分配资源策略10.何谓银行家算法?叙述其基本思想?银行家算法是资源分配时的保守算法,系统掌握资源动态申请和使用情况每次资源申请时用某种分配算法测试安全性,以避免死锁发生。银行家算法进行计算时必须知道要管理的全部资源,包括多少种资源,每种资源的数量,当前有多少个进程,每个进程需要资源的最大数量,要求每个进程获取最大的资源后应该在有限时间内释放掉所占有的资源。每次资源分配时,新的状态要求必须是安全的,也就是能够找到一个安全序列使所有的进程能获取其申请的最大资源数量,这是此次分配是可行的,如果不能找到一个安全序列则拒绝此次分配。这就是银行家算法的基本原理。11. 一个操作系统有20个进程,竞争使用65个同类资源,申请方式是逐个进行的,一旦某进程获得它所需要的全部数量,立即归还所有资源。每个进程最多使用3个资源。若仅考虑这类资源,该系统有无可能全部死锁,为什么?解答若仅考虑这一类资源的分配,则不会产生死锁。因为产生死锁的原因有两点:系统资源不足或进程推进顺序不当。而本题的系统中,进程所需最大资源数为20×3=60,但系统却有该类资源65个,所以资源数完全满足需要,故不会出现死锁。12. 设有n 个进程共享一个互斥段,如果:( 1 )每次只允许一个进程进入互斥段;( 2 )每次最多允许m 个进程同时进入互斥采用的信号量初值是否相同?信号量值的变化范围如何?(1)互斥信号量初值为1 ,变化范围为-nl , 1 。当没有进程进入互斥段时,信号量值为1 ;当有1 个进程进入互斥段但没有进程等待进入互斥段时,信号量值为0 ;当有1 个进程进入互斥段且有一个进程等待进入互斥段时,信号量值为-1 ;最多可能有n -1 个进程等待进入互斥段,故此时信号量的值应为-(n -1) 也就是-n+1 。(2)互斥信号量初值为m,变化范围为-nm , m 。当没有进程进入互斥段时,信号量值为m ;当有1 个进程进入互斥段但没有进程等待进入互斥段时,信号量值为m -1 :当有m 个进程进入互斥段且没有一个进程等待进入互斥段时,信号量值为0 :当有m 个进程进入互斥段且有一个进程等待进入互斥段时,信号量值为-1 ;最多可能有n -m 个进程等待进入互斥段,故此时信号量的值应为-(n-m)也就是-n+m.13.(1)x =10 , y =9 , z= 150(2)x =10 , y =19 , z =15(3)x = 10, Y=9 , Z = 5 14.第五章 存储管理1. 存储管理的主要功能是什么?、内存区域的分配和管理:通过建表、查表、改表和回收登录内存使用情况,系统或用户申请内存时按选定的分配算法确定分区等,保证分配和回收;、内存的扩充技术:使用虚拟存储或自动覆盖技术提供比实际内存更大的空间;、内存的保护技术:各道作业、任务或进程在自己所属区域中运行,不破坏别的作业或不被“别人”破坏,更不要破坏整个系统工作。2.指出逻辑地址和物理地址的不同点。逻辑地址是指由程序产生的与段相关的偏移地址部分。物理地址是指出现在cpu外部地址总线上寻址物理内址的地址信息,是地址变换的最终结果地址。3.何谓地址转换(重定位)?有哪些方法可以实现地址转换?将逻辑地址转换为物理地址。重定位有两种方式:静态重定位和动态重定位。4.简述什么是覆盖?什么是交换?覆盖和交换的区别是什么?覆盖技术主要是指同一主存区可以被不同的程序重复使用。交换是系统根据需要把主存中暂时不运行的某个(某些)作业部分或全部移到外存,而把外存中的某个(某些)作业移到相应的主存区,并使其投入运行。区别:交换是由系统完成,覆盖是由用户控制,操作系统提供覆盖机制。5.简述固定分区存储管理和可辨识分区存储管理的区别。固定式分区中可采用哪几种办法使贮存空间的利用率得到改善?固定式分区存储管理由系统管理员或操作系统实现分区的划分工作,一旦划分完成,在系统运行期间不再重新划分。可变式分区存储管理是在作业要求装入主存时,根据作业的大小来动态地划分分区,使分区的大小正好适应作业的要求,但分区划分的时间,大小和位置都是动态的。一,所有等待处理的作业排成一个队列,当调度其中一个进入分区运行时,选择可容纳它的最小可用分区,以充分利用主存。二,每个作业被调度程序选中时就排到一个能够装入它的最小分区号的等待队列中6.试述可变式分区管理中的FF,BF,WF的原理,并比较其优缺点。FF是将未分配分区表按地址递增的顺序排序,每次分配时,从空闲分区表的第一个表目开始顺序超找空闲分区表,找到第一个能满足作业长度要求的空闲区,分割这个空闲区,把能够满足要求的空闲区分配给作业。优缺点:该算法简单,尽可能地利用了低地址空间,把较大的空闲分区保留在内存高端,有利于大作业的分配,但随着低端分区不断的划分导致产生过多的小地址碎片,每次分配时查找时间开销会增大,同时降低了主存空间的利用率。BF是将未分配区表按照分区的大小从小到大进行排列,每次分配时,自表头顺序开始查找第一个满足要求的空闲分区。优缺点:该算法的有点是可以解决大作业的分配问题,但容易产生不可利用的小空闲区,降低了主存的利用率。WF是将未分配分区表展昭分区的大小从大到小进行排列,每次分配时,只要看第一个分区能否满足作业要求,若可以,将该分区分配给作业使用,否则作业不能执行。优缺点:该算法的优点是超找效率很高,可使剩下的空闲区不至于太小,队中,小作业有利,对于大作业不利。7请比较分页式存储管理和分段式存储管理。1、页是信息的物理单位,分页是为实现离散分配方式,以消减内存的外零头,提高内存的利用率;或者说,分页仅仅是由于系统管理的需要,而不是用户的需要。段是信息的逻辑单位,它含有一组其意义相对完整的信息。分段的目的是为了能更好的满足用户的需要。2、页的大小固定且由系统确定,把逻辑地址划分为页号和页内地址两部分,是由机器硬件实现的,因而一个系统只能有一种大小的页面。段的长度却不固定,决定于用户所编写的程序,通常由编辑程序在对源程序进行编辑时,根据信息的性质来划分。3、分页的作业地址空间是维一的,即单一的线性空间,程序员只须利用一个记忆符,即可表示一地址。分段的作业地址空间是二维的,程序员在标识一个地址时,既需给出段名,又需给出段内地址。8.分页式存储管理中,决定页面大小的主要因素是什么?试分析大页面与小页面各自的优点。主要因素是系统,大页面能够满足各种作业的需求,但是容易产生较多的碎片,导致对主存空间利用率下降。小页面能大幅提高主存空间的利用率,减少碎片,增加作业吞吐量,但是有些大作业无法正常运行。9比较内存管理中FIFO,LRU,OPT三种页面淘汰算法的优缺点。FIFO设计简单,实现容易,但遇到常用的页效率低。LRU这种算法其实是照顾循环多的程序,其它则不能提高效率,且实现时不太容易。OPT它保证有最少的缺页率,但它实现困难,只能通过理论分析用来衡量其它算法的优劣。10为什么要采用虚拟存储器管理?其工作原理和理论依据是什么?实现虚拟存储器必须有哪些硬件、软件设施支撑?为了扩展主存储器的存储空间,并能进行自动管理和调度。根据局部性原理,一个作业在运行之前,没有必要把全部作业装入内存,而仅将哪些当前要运行的那部分页面或段装入内存,便可启动运行其余部分可暂时留在磁盘上。通常采用请求分页和请求分段的方式实现。11什么事请求页式管理?把内存和用户逻辑地址空间都分成同样大小的块分别称为实页和虚页,利用页表建立起虚页和实页的联系,通过地址变换将虚页的逻辑地址转换成实页的物理地址。页式系统的逻辑地址分为页号和页内位移量。页表包括页号和块号数据项,它们一一对应。根据逻辑空间的页号,查找页表对应项找到对应的块号,块号乘以块长,加上位移量就形成存储空间的物理地址。每个作业的逻辑地址空间是连续的,重定位到内存空间后就不一定连续了。此外,页表中还包括特征位(指示该页面是否在内存中)、外存地址、修改位(该页的内容在内存中是否修改过)等。12请求页式管理中有哪几种常用的页面置换算法?比较他们的优缺点。.答:有4种常用的页面淘汰算法:、先进先出法(FIFO):先进入内存的页先被换出内存。它设计简单,实现容易,但遇到常用的页效率低。、最近最少使用页面先淘汰(LRU):离当前时间最近一段时间内最久没有使用过的页面先淘汰。这种算法其实是照顾循环多的程序,其它则不能提高效率,且实现时不太容易。、最近没有使用页面先淘汰(NUR):是LRU的一种简化算法,“0”“1”分别表示某页没被访问或被访问。它较易于实现,开销也较少。、最优淘汰算法(OPT):系统预测作业今后要访问的页面,淘汰页是将来不被访问的页面或者在最长时间后才被访问的页面。它保证有最少的缺页率,但它实现困难,只能通过理论分析用来衡量其它算法的优劣。13什么是段式管理?它与页式管理有何区别?段式管理(segmentation),是指把一个程序分成若干个段(segment)进行存储,每个段都是一个逻辑实体(logical entity),程序员需要知道并使用它。它的产生是与程序的模块化直接有关的。段式管理是通过段表进行的,它包括段号或段名、段起点、装入位、段的长度等。此外还需要主存占用区域表、主存可用区域表。 分页式是将线性地址空间直接分成大小相同的页进行存储,段式则是根据用户有逻辑意义的程序模块划分地址空间。14列出存储管理中使用的存储保护方法,并说明每种存储管理都使用哪种存储保护法?地址越界保护,存取控制保护。都有15在段式存储管理中实现程序共享时,共享段的段号是否一定要相同?为什么?不用,因为在共享时,是由AST映射来实现的,不需要相同。16叙述段页式存储器的主要优缺点既照顾了用户共享和使用方便的需求,又考虑了主存的利用率,提高了系统系能。段页式存储分配方式的空间浪费要比页式管理的多。作业隔断的最后一页都有可能浪费一部分空间。另外段表和页表占用空间都比页式和段式的多,这样就增加了系统开销。17在请求分页虚拟存储系统中,若已测得时间利用率为:cpu 20%,分页磁盘 97.7%,其他外设50%,试问哪些措施可以改善cpu的利用率?改用段页式18如果主存中某页正在与外围设备交换信息,那么发生缺页中断时,可以将该页淘汰吗?为什么?出现这种情况你能提出什么样的处理方法?不能,容易造成程序出错,系统崩溃。找是否有空闲页匡,调入缺页,若不存在,执行页面置换算法。19说明内外碎片的区别内部碎片就是已经被分配出去(能明确指出属于哪个进程)却不能被利用的内存空间;外部碎片指的是还没有被分配出去(不属于任何进程),但由于太小了无法分配给申请内存空间的新进程的内存空闲区域。20为什么页面大小总是2的幂因为计算机采用二进制算法工作第六章 文件系统1、 什么是文件、文件系统?文件系统有哪些功能?文件是具有符号名的一组相关联元素的有序集合,比如源程序、数据、目标程序等。计算机系统中的文件是受操作系统管理和控制的,而管理这些文件有关的软件和程序数据称为文件系统。功能:1.文件管理 2.目录管理 3.文件存储空间的管理 4.文件的共享和保护 5.提供方便的接口。2、 什么是文件的逻辑结构和物理结构?文件的逻辑结构就是用户所观察到的文件的组织形式,是用户可以直接处理的数据及其结构,它独立于物理特性。文件的物理结构式逻辑文件在存储介质上的存储结构,是指文件在存储介质上的存储组织形式,它与存储介质的特性有关,直接影响文件系统的性能。3、 什么是文件目录?文件目录中包含哪些信息?文件目录即文件名址录。它是一张记录所有文件的名字及其存放地址的目录表。表中还应包括 关于文件的说明和控制方面的信息。文件目录一般包含:文件名、文件逻辑结构(说明该文件的记录是否定长,记录长度及 记录个数等)、文件在存储器中的物理位置、存取控制信息(登记文件主本人及其他用户具有的存取权限)、管理信息(如建立日期等)、文件类型。 4、 请叙述采用多级文件目录的好处是什么?多级目录很好地解决了重名问题:在多级目录中存取一个文件需要用文件全名,这就允许用户在自己的目录中使用与其他用户文件相同的文件名;由于各用户使用不同的目录,虽两者使用了相同的文件名,但它们的文件全名仍不相同,这就有效地解决了重名问题。5、 文件存取控制方式有哪些?试比较它们各自的优缺点。文件存取控制方式有四种:存取控制矩阵:建立一个二维访问控制矩阵用以列出系统中所有用户和文件。其中,一维列出系统全部用户,另一维列出计算机系统的全部文件。矩阵元素“1”表示允许访问,“0”不允许。优点:一目了然。缺点:矩阵往往过于庞大。为快速存取而将其放到内存中,则要占据大量的内存空间。、用户权限表:把一个用户(或用户组)所要存取的文件名集中存放在一张表中,其中每个表目指明相应文件的存取权限。优点:便于查找权限。缺点:如果用户数或文件数多则过于庞大,不便查找。、使用口令:用户为自己的每个文件规定一个口令,并附在用户文件目录中。存取文件时必须提供口令,只有当提供的口令与目录中口令一致时才允许存取。优点:占存储空间少,方便。缺点:保护能力弱。、使用密码:存储时用“密码”对文件进行编码,取用文件时进行译码。优点:保密性强。在这个方案中,发方提供的代码键不存入系统。只有当用户要存取文件时,才需将代码送进系统。这样别人无法偷看或篡改别人的文件。缺点:必须花费大量编码和译码时间,增加了系统的开销。6、 “磁盘中只存放数据和文件,因此,只有文件系统存在”这种说法正确吗?为什么?不正确。文件系统只包含文件管理程序(文件与目录的集合)和所管理的全部文件。7、 文件系统采用多重索引结构搜索文件内容。设块长为512B,每个块号占3B,如果不考虑逻辑块号在物理块所占的位置,分别求二级索引和三级索引时可寻址的文件最大长度。已知块长为512B,块号占3B,所以一个索引块可存放170个盘块号。二级索引时,最多可包含存放文件的盘块总数为170×170=28900块,即二级索引可寻找文件的最大长度为28900×512B1450KB。三级索引时,最多可包含存放文件的盘块总数为170×170×170=491300块,即三级索引可寻址文件的最大长度为491300×512B2456500KB。8、 某些操作系统提供系统调用rename给文件重命名,同样也可以通过把文件复制到新文件并删除原文件来实现文件重命名。请问这两种方法有何不同?Rename调用不会改变文件的创建时间和最后的修改时间,但是创建一个新的文件,其创建时间和最后的修改时间都会改为当前的系统时间。另外,如果磁盘满了,复制可能会失败。第七章 设备管理1、请问设备分配策略与哪些因素有关?设备分配策略与下列因素有关:(1)I/O设备的固有属性,对于独占设备,共享设备、虚拟设备等具有不同属性的设备,通常采用相应的分配算法。(2)设备分配算法,常见的有先来先服务算法、优先级高者优先算法(3)设备分配的安全性,即避免死锁的产生。(4)设备独立性,设备独立性指应用程序独立于具体使用的物理设备2、请说明设备驱动程序的主要功能是什么?设备驱动程序是直接控制设备进行运转的程序。设备驱动程序接收来自上层的与设备无关软件的抽象请求,将这些请求转换成设备控制器可以接收的具体命令,再将这些命令发送给设备控制器,并监督这些命令是否正确执行。3、为什么要设置内存I/O缓冲区?有哪几类缓冲区形式?设置内存I/O缓冲区的主要原因如下:(1)缓和CPU与I/O设备速度不匹配的矛盾。(2)将少中断CPU的次数。(3)提高CPU与I/O设备之间的并行性。通常有四类缓冲区:单缓冲、双缓冲、循环缓冲和缓冲池。4、实现虚拟设备的主要条件是什么?实现虚拟设备的主要条件是计算机系统有足够的功能和大容量的磁盘5、以下各项工作是在四个I/O软件层的哪一层完成的?1.为一个磁盘读操作计算磁道、扇区、磁头。设备驱动程序2.向设备寄存器写命令。中断处理程序3.检查用户是否允许使用设备。设备无关软件4.将二进制整数转换成ASCII码以便打印。硬件6、为什么打印机的输出文件在打印前通常都假脱机输出在磁盘上?假脱机是多道程序系统中处理专用I/O设备的一种方法。它创建一个特殊的进程,称为守护进程,以及一个特殊目录,称为假脱机目录。为了打印一个文件,一个进程首先要生成需要打印的整个文件并把它放在假脱机目录里。由守护进程打印该目录下的文件,该进程是允许使用打印机设备文件的唯一进程。通过保护设备文件来防止用户直接使用,可以解决某些进程不必要地长期空占打印机的问题。7、I/O控制可用哪几种方式实现?各有何优缺点?IO控制过程可用三种方式实现:作为请求IO操作的进程实现;作为当前进程的一部分 实现;由专门的系统进程IO进程完成。 第一种方式请求对应IO操作的进程能很快占据处理机,但要求系统和IO操作的进程应具有良好的实时性。 第二种方式不要求系统具有高的实时性,但IO控制过程要由当前进程负责。 第三种方式增加了一个额外的进程开销,但用户不用关心IO控制过程8、为什么叫“与设备无关性”?如何做到“与设备无关性”?为实现用户程序与物