《《计算机操作系统》复习题及复习资料.pdf》由会员分享,可在线阅读,更多相关《《计算机操作系统》复习题及复习资料.pdf(19页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、1 / 19 计算机操作系统复习题及答案第一章操作系统概述1.1 什么是操作系统?操作系统与普通的程序工作方式有何不同?至今没有统一的定义,但人们可以从不同的角度对操作系统加以理解:操作系统作为一台“ 虚拟机 ” ;操作系统作为资源管理器。操作系统是管理计算机系统资源的软件,它确保这些资源被高效合理地使用;操作系统作为用户与计算之间的接口。这一接口为用户提供了两种使用操作系统的方式:命令方式和系统调用方式总之, 操作系统实际上是一组计算机程序,与普通的程序工作方式相同。主要区别在于程序的意图和运行模式不同。操作系统控制CPU 和其它系统资源的使用,并调度 CPU 运行普通程序的时间。 OS 的
2、程序在核心态(kernel mode)下运行,硬件保护它免受用户程序的破坏;而应用程序都在用户态(user mode)下运行,它们不受硬件保护。什么是作业?在批处理方式中,一个用户程序及其所需要的数据和操作命令的总和称为一个作业(Job)什么是通道?什么是中断?所谓通道,实质上是一个功能单一、结构简单的I/O 处理器,它独立于CPU 并直接控制外设与内存进行数据传输。所谓中断,指在I/O 正常结束或出现硬件故障时,相应硬件向CPU 发出中断信号,CPU 停止正在执行的操作,转去执行中断处理程序,中断处理完毕后CPU 再回到原来的断点继续进行。什么是多道程序技术的主要思想?在内存中同时放入若干道
3、用户作业,当一个作业需要等待I/O 请求时, CPU 转去执行另一道作业。多道程序系统也称为多任务处理(multitasking)什么是分时系统(Time Sharing) ?在分时系统中使用了多道程序设计技术来处理多个交互的进程。有时也称为多任务分时系统。在分时系统中处理器的时间被多个用户分享。在分时系统中多个用户通过终端(Terminal) 同时访问系统。什么是并发?什么是并行并发是指两个或两个以上事件在同一时间间隔内发生。并行是指两个或两个以上事件在同一时刻发生。操作系统内核的结构有哪三种构建方式?各有何特点?操作系统内核的结构有三种构建方式:整体式系统、层次式系统、客户/服务系统1.整
4、体式系统 (monolithic kernel) : 整体式的内核是指在一大块代码中实际上包含了所有操作系统功能,并作为一个单一进程运行,内核中的所有函数可以访问所有内部数据结构和例程。对内核任何部分的修改都必须重新编译、链接整个内核、重新安装、重新启动。如:Linux 内核2.层次式系统:把系统看作一系列的层,每层完成操作系统功能的相关子集,每一层依赖下一层 ,而下一层完成更原始的功能通过定义层,分解一个问题成更易于处理的子问题3.客户 /服务系统 -微内核结构 (Microkernel) : 只给内核分配一些最基本的功能,包括地址空间、内部进程间通信(IPC) 、基本的调度(Schedul
5、ing) 。其他的操作系统服务都是由运行在用户模式下的进程提供的,这些程序也称为服务程序。微内核结构很适合于构建分布式系统,可能是现代操作系统发展的一种趋势。如:Windows2000 1、操作系统的形成过程经历了哪几个主要阶段?答: 1、人工操作阶段,20 世纪 50 年代前; 2、单道批量处理,第二代计算机,可分早期和脱2 / 19 机批量处理;3、执行系统,20 世纪 50 年代末到60 年代初; 4、多道程序系统。2、操作系统基本类型及主要特性:答: 1、多道批处理,多道、无序、调度;2、分时系统,多路、独立、交到;3、实时系统,多路、独立、及时、交互。3、操作系统基本特征含义及相互关
6、系:答:特征:并发两个以上事件在同一时间间隔发生;共享,硬、软件资源可为多用户同时使用;虚拟,把物理上的一个实体变成逻辑上的多个对应物;异步性,内存中多进程按各自独立、不可预知的速度向前推进。其中并发与共享是最基本的,相辅相成,互为依存条件。第二章用户接口什么是系统调用?所谓系统调用, 指运行在用户态的应用程序请求操作系统为之服务的一种手段。它由运行在核心态的操作系统的一段程序来完成特定功能,属于一种特殊的过程调用。4、作业是计算机按指定步骤,为用户一次上扣解题所完成作业的总和,作业管理是指一用户作业提交系统后,系统对其实施的所有管理和控制工作,包括作业控制和调度。5、作业由源程度、数据和作业
7、处理的说明组成。源程序和数据是用户上机运算的具体内容,后者是用户要求的计算机所做的具体步骤。6、系统为用户提供命令接口(分配与联机,是各种操作命令,组织作业的工作流程和控制作业运行 ),程序接口(是一组系统调用命令,是管理程序提供的服务界面,负责管理和控制正运行程序,帮它请求其他资源和服务),图形接口(为用户提供图形界面支好,有一定智能的用户环境)的接口,用声、色的键盘等驱动命令,控制作业运行。7、作业控制有作业控制卡、作业说明书、键盘命令、命令文件方式。第三章进程管理多道程序并发执行时的三个特征是什么?(1) 程序指令执行间断性。(2) 失去封闭性,资源共享。(3) 运行结果不可再现性。进程
8、 (Process)的定义和特征定义: 进程是一个正在执行的程序。进程是程序在一个数据集合上的运行过程,它是系统进行资源分配和调度的一个独立单位。进程和程序相关联,但是是两个截然不同的概念。进程有五个基本特征:?(1)动态性。有生命期。?(2)并发性。多个进程实体同存于内存,能并发执行。?(3)独立性。具备申请系统资源的独立单位。?(4)异步性。进程以各自独立、不可预知的速度向前推进。?(5)结构特性。为描述进程的运动变化过程,每个进程都由程序段、数据段和一个进程控制块(PCB) 三部分组成图示进程的三种基本状态间的转换?就绪态 (Ready) 运行态 (Running) 阻塞态 (Block
9、ed) 3 / 19 进程控制的主要任务是什么?进程控制的主要任务是对进程生命期控制(创建、 撤销进程 ),以及实现对进程状态的转换(就绪态、运行态、阻塞态)。包含三个内容:执行进程时,采取哪种执行模式(核心态或者用户态)进程怎样创建、怎样撤消何时切换进程:时钟中断时;发生 I/O 中断时 ;管理程序调用或系统调用.什么是原语,举例说明?如:创建进程原语:create(n),撤销进程原语:destroy(n) ,阻塞进程原语:block() ,唤醒进程原语: wakeup(n) 所谓原语,是操作系统内核中,由若干条指令构成、用于完成一个特定的功能的一个过程,该过程在执行时是不可中断的。什么是临
10、界资源?临界区?操作系统中将一次仅允许一个进程访问的资源称为临界资源。对共享资源访问的程序片段称为临界区 (Critical section ) 。什么是进程同步(Process Synchronization) ?所谓进程同步是指多个进程合作完成任务,它们在执行速度上相互协调,即一个进程的执行依赖于另一个进程的消息,当一个进程没有得到另一进程的消息时应等待,直到消息到达被唤醒为止。 进程的互斥实际上是进程同步的一种特例。不同的是, 进程同步的并发进程在使用共享资源时,进程间存在一种必然的依赖关系。进程互斥有时并不能解决进程同步问题。怎样利用信号量机制编程解决生产者-消费者问题?struct
11、semaphore s,empty,full=1,n,0; message buffern; int in,out=0,0; Cobegin /* 用 s 对临界区实行互斥*/ void produce_i(void) void consume_j(void) message x; message y; while(TRUE) while(TRUE) produce a new message into x; P(full); /*递减满槽数*/ P(empty); /* 递减空槽数 */ P(s); /* 进入临界区 */ P(s); /* 进入临界区 */ y=bufferout; out
12、=(out+1) mod n; bufferin=x; in=(in+1) mod n; V(s); /*离开临界区 */ V(s); /* 离开临界区 */ V(empty); /*递增空槽数 */ V(full); /*递增满槽数 */ consume message y; Coend 怎样利用信号量机制编程解决哲学家进餐问题? struct semaphore fork5= 1, 1, 1, 1, 1 ; struct semaphore count = 4; 4 / 19 Cobegin void philosopher( int i ) while(TRUE) think(); /*
13、 哲学家思考 */ P(count); /* 最多同允许4 位哲学家就餐*/ P( forki ); /*哲学家拿起左边的叉子*/ P( fork(i+1) mod 5 ); /*哲学家拿起右边的叉子*/ eat(); /* 哲学家就餐 */ V( fork(i+1) mod 5 ); /*哲学家放下右边叉子*/ V( forki ); /*哲学家放下左边的叉子*/ V( count ); Coend 进程间通信的三种常用类型1.共享存储器系统2.消息传递系统3.管道通信系统线程的定义线程是进程中可独立执行的子任务,一个进程可以有一个或多个线程。现代操作系统都引入了线程的概念。8、程序顺序执行
14、特征为顺序性、封闭性、可再现性,并发执行为间断性、失去封闭性和不可再现性。9、Bernstein 条件:满足此条件,相关程序可并发执行,否则按顺序执行,1966 年 Bernstein首次提出。如 R( P1)nw(P2)R(P2) W (P1) W(P1)W (P2) = 即 P1 的读集与P2 写集的交集,P2 读与 P2 写的交, P1 写与 P2 写的交,均为空集。10、进程最少设置3 个状态,执行、就绪和阻塞态。因:进程实质是程序的一次执行过程,最多一个执行程序占用CPV(就绪),OS 为进程服务期间不能继续执行,放弃CPV 处于阻塞等待态。11、多进程并发执行时存在两种制约关系。间
15、接制约是多个进程间无逻辑关系,仅由于同处系统共享资源而有关。例:分时系统两用户进程编译PASCAL 源程 序,分时占用处理扣编译各自的源程序, 存在间接制约关系。直接制约是多个协作进程间存在的逻辑制约关系,即一进程的执行依赖另一进程的消息,无消息应等待,有消息被唤醒。如共享一缓冲器的读进程和打印进程,须同步才能完成共同任务。12、临界资源: 系统中一次仅允许一个进程访问的资源。临界区指系统每个进程中访问临界资源的那段代码段。13、具体分析读者 写者问题的同步算法,指出哪些语用控制读写互斥,写写互斥。答: 读一写问题指保证一个写者必须与其他写进程或读进程互斥地访问一个共享对象的同步问题。写者进程
16、P(Wrt )操作能实现写写,读写互斥,wrt=1 , 写者调用P( wrt)后信息量值为0,进入写操作,readcount=0 ,读者进程阻塞等待,实现读写互斥。在读者进程中的P(wrt)操作仅能实现读写互斥。第四章死锁及其对策 死锁的定义?死锁(Deadlock) 是指一组进程由于竞争系统资源或互相通信而导致永久阻5 / 19 塞的状况。至今没有完美有效的解决方案。产生死锁的四个必要条件?1)互斥 (Mutual exclusion)在一段时间内某资源只能由一个进程占有。2)占有且等待(Hold and wait)已占有了一些资源的进程可能还要等待申请其他的资源才能继续工作。3)非剥夺 (
17、No preemption)已分配给某进程的资源不可被其他进程剥夺,除非该进程自己释放该资源。4) 循环等待 (Circular wait) 存在一个封闭的进程-资源循环链。什么是鸵鸟算法?解决死锁最简单的方法是像鸵鸟一样对死锁视而不见。怎样考虑死锁预防?事前预防手段:如果能保证死锁的四个条件中至少一个不成立,则死锁不会发生。打破互斥条件:能作到不互斥就最好不互斥.如采用 Spooling 技术 . 打破占有且等待条件:初始时就申请所有的资源.打破非剥夺条件:将资源剥夺.打破环路等待条件:对资源进行统一编号.怎样考虑死锁避免?死锁避免是通过对每一次资源申请,采取边申请、 边进行分析, 来判断本
18、次申请是否是一次安全的分配,即是否达到系统安全状态。是否存在一种能作出正确选择的算法,从而避免死锁呢?回答是肯定的,但条件是 :必须事先获得进程将来的资源请求信息寻找死锁避免算法的思路是:如果启动一个新进程而引发的资源请求可能导致死锁,则暂不启动这个进程。 如果一个进程提出新的资源请求会导致死锁,则暂不允许这个进程提出新的资源请求。怎样考虑死锁的检测和恢复?死锁检测算法(回溯 ):每次资源被申请或释放时,检测系统资源图是否存在环路(此时死锁可能还没有发生 ),如果存在环路,则逐一在环路中选择一进程撤消,直至死锁消除. 缺点 :效率太低,导致系统总体性能太为下降。死锁恢复策略(事后恢复 ):依次
19、流产所有的死锁进程,直至死锁解除;依次剥夺资源直到死锁解除;预先定义检测点,备份每一个死锁的进程,然后重启这些进程。缺点:原来的死锁可能再次出现14、死锁系统并非所有的资源都分配完毕。第五章处理器调度管理处理器调度 (Processor Scheduling) 的类型是什么?1. Long-Term Scheduling长程调度 (作业调度 ):用于决定哪些作业有执行资格。2. Medium-Term Scheduling中程调度 (中级调度 ):用于决定哪些有执行资格的暂时被挂起(在外存)的进程可以进入主存中。实质是将进程在内存和外存之间进行交换。3. Short-Term Scheduli
20、ng 短程调度 (又称为进程调度或CPU 调度 ):用于决定哪个在主存中的进程占用处理器。的两类调度模式是什么? CPU 非剥夺调度模式,简称非剥夺调度模式:进程一直运行,直到结束,除非自己的I/O操作而中止或阻塞。不适合多用户、多任务系统。易于实现。 CPU 可剥夺调度模式,简称可剥夺调度模式:当前正在运行的进程可以被操作系统中断、并转移到就绪态。所有进程提供较好的服务,因为任何进程都不能独占处理器很长的时间。较难6 / 19 实现,较大开销。适合多用户、多任务系统选择调度算法时应考虑什么因素?响应时间 :使交互的用户的响应时间尽可能短。吞吐率 :单位时间内处理的作业数最多。处理器效率 :使
21、 CPU 百分之百忙碌。什么是时间片轮转算法(Round Robin) ?使用基于时针的剥夺调度模式。允许每个进程周期性地使用处理器一个时间片长(通常为10-100 milliseconds) 。以一定的间隔周期性地产生一个时钟中断。当中断发生时,当前正在运行的进程置于就绪队列中。下一就绪进程被选中变为运行态。这种技术也称为时间片轮转技术。,什么是多级反馈算法?思想 :处罚运行时间较长的作业方法:建立多级就绪调度队列,每个就绪队列对应一个调度优先级别,第 1 级队列优先级最高,第 2 级队列优先级次之,依此类推。各级就绪队列具有不同大小的时间片,优先级最高的第1 级队列中进程的时间片最短,其余
22、队列中进程的时间片依次增长。一个新进程首先放到第1 级就绪队列末尾。同级的进程按FCFS 分配处理器,若进程完成全部工作则撤离,否则加入下一级就绪队到末尾。按队列优先级从高到低进行进程调度。15、批处理中, 作业从提交互退出有4 种状态。 提交是程序员把存储有作业实体信息的介质交给机房或用户通过终端键盘向计算机输入其作业实体信息时所处状态。后备是作业实体信息已被输到输入井,建立JCB,等待作业调度态。运行是作业被调度到装入的存、创建相应进程,投入运行态。完成是作业运行结束或因错误而终止时,释放所占全部资源,准备离开态。提交后备操作员启动作业注册过程,涉及脱机输入程序或联机Spooling的输入
23、进程,及作业注册程序;后备运行涉及作业调度程序、内存管理程序和设备管理的功能程序;运行完成在进程调度、进程控制原语及OS 资源管理程序帮助下结束或作业终止程序处理出错工作。16、作业调度功能:选择作业,分配资源,建立作业进程,建有关表格作业善后处理,用于批处理系统。进程调度按某调度算法从就绪态进程选一个互处理机上运行,在OS 中必备。中级调度挂起和解除挂起进程,将程序数据在内外存对换,矩短期调整系统负荷。配置于有挂起功能的系统。17、分时系统不必设作业调度,因用户键盘输入的命令数据,直接入内存,无需配置。18、抢占调度三原则:时间片、优先级、短进程优先原则。19、调度队列模型有三:进程型,用于
24、分时系统,作业和进程型,在纯多道批处理系统,作业进程和中级型,用于多道批处理和分时处理系统。20、 作业周转时间指从用户提交作业的全部实体信息进入输入片到作业完成时刻的间隔。作业平均周转时间T= (n 为被测作业流中的作业数,Ti 是该作业流中第i 个作业的周转时间) ;作业平均带权周转时间W= ( Tri 指作业 i 的实际运行时间)21、响应时间是用户从提交一个请求开始,到屏幕上显示结果的一段时间间隔,分时系统响应时间 35S,实时控制系统秒级、毫秒级乃至低于100US。22、 时间片轮转调度算法,选择时间片因素:系统对响应时间的要求,就绪队列中进程的数目,系统的处理能力。23、短作业优先
25、是对长作业不公平,最短作业优先调度不能用于分时系统。第六章存储器管理什么是计算机存储器层次结构?若干千字节(KB )非常快速、昂贵、易变的高速缓存(cache) 。7 / 19 若干兆字节(MB )的中等速度、中等价格、易变的主存储器(RAM ) ,简称为内存或主存。若干千兆字节(GB)的低速、价廉、不易变的磁盘组成,简称为外存或辅存。什么是内部碎片?外部碎片?在固定式分区存储器管理中,这种由于被装入的数据块小于分区从而使得分区内部有空间浪费的现象称作内部碎片。在可变分区存储器管理中,系统运作一段时间后,导致小分区越来越多,而且越来越小的现象。这种方法最终导致在主存中出现许多空洞,这种现象称作
26、外部碎片。什么叫虚拟存储器?虚拟存储器(简称为虚存)基于“ 分页 ” 技术或结合了“ 分页和分段” 技术,提供给用户(比实际内存容量要大)足够大地址空间,是现代操作系统中普通采用的存储器管理技术。实现虚拟存储器的基本原理是什么?虚存对应用程序透明,使每个进程在处理时好像有无限的主存可用。为实现这一点, 操作系统为每个进程在磁盘上创建一个虚拟地址空间,在需要时,部分虚存被取进主存中。按照这种方法,许多进程可以共享相对较小的主存。一般有专门的硬件机制实现虚拟地址与物理地址之间的地址转换。什么是请求分页存储管理?所谓请求式分页管理,是指在进程开始执行前,不要求把进程一次性全部装入主存,而只把当前需要
27、的一部分页面装入主存,其它部分在进程执行过程中需要时,再从辅存 (硬盘 )上调入主存。优点:?一个进程的大小可以大过主存的全部。?在主存中可以维持更多的进程,对每一个进程仅仅装入了它的部分页。请求分页存储管理当执行一个程序时其过程是什么?1.首先,操作系统仅取程序开始处的几个页放到主存中。2.缺页中断处理阶段:如果处理器处理一个不在主存中的逻辑地址(称为缺页 ),则产生一个中断。操作系统将该进程的运行态置为阻塞态。OS 发出一个磁盘I/O Read 请求;当发生磁盘I/O 时, OS 调度另一进程运行;当OS 收到磁盘I/O 完成的消息时,将刚才由于缺页而阻塞的进程重新放入就绪队列3. 操作系
28、统根据提取页面策略(Fetch Policy) ,把包含引发缺页的逻辑地址的页取进主存。什么是局部性原理?在一个进程中,程序和数据的引用趋向于簇聚性。(表现为空间局部性,即指令和数据的引用通常不会偏离太远);一个短的时间周期内,访问运行仅仅涉及到进程的少数几个块。(表现为时间局部性,即刚刚使用过的指令和数据马上又会被使用)什么是抖动 (Thrashing) ?一个进程的页面刚刚交换到硬盘马上又需要取回来使用的现象称为抖动。抖动情况下,处理器大部分时间花费在交换块,而不是执行指令。页替换算法要尽可能防止抖动发生。分页存储管理的优缺点是什么?优点:?不要求进程的程序段和数据段在主存中连续存放,从而
29、有效地消除了外部碎片问题。?有利于多道程序运行和大程序运行。?分页对程序员是透明的。缺点:?要求有相应硬件支持完成地址变换。?可能造成抖动。段式存储管理的基本思想是什么?把程序按过程(函数)关系分成段,每段有自己的段名,一个用户进程所包含的段对应于一个二维的线性虚拟空间,也就是一个二维虚拟存储器。段式管理以段为单位为用户进程分配主存,然后通过地址映射机构把段式虚拟地址转换成实际的主存物理地址。8 / 19 段式存储管理的优缺点是什么?优点:?便于模块化处理,便于共享分段,便于保护。?分段对程序员是可见的。?分段具有处理不断增长数据结构的能力缺点:?为满足分段的动态增长和减少外部碎片,要采用拼接
30、手段。段页式存储管理的基本思想是什么?用分段方法来分配和管理虚拟存储器。即按程序的自然逻辑关系把进程的地址空间分成若干段,每段有各自的段名;用分页方法来分配和管理主存,即把主存分成大小相等的小块(帧) ;进程的每一段又采用分页方法,按帧的大小把每段分成许多页。每段的分页从0 开始连续编号。则逻辑地址结构为(s, p, d) ,其中 s 表示段号, p 表示段内页号,d 表示页内偏移量。主存以帧为单位分配给每个进程。系统为每个进程建立一个段表,为每个段建立一个页表。系统硬件负责将逻辑地址转换为主存的物理地址。24、存储管理功能:存储分配、地址变换、“ 扩充 ” 主存容量、存储保护。25、静态分配
31、: 装配程序把目标模块进行连接装入时确定它们在主存中的位置动态分配;作业在存储空间的位置在装入时确定,但在执行过程可根据需要申请附加的存储空间。26、 地址的重定位是把作业地址空间中使用的逻辑地址变换成主存中物理地址的过程,也算地址映射。静态重定位是在程序运行前由装配程序完成的,优点是无需加硬件地址变换机构,可在一般计算机上实现。优点是不需分配连续存储空间,动态申请空间和在主存中移动,有利程序段共享;缺点是需附加硬件,软件算法较复杂。27、分页存储管理实现原理:等分主存;用户逻辑地址空间的分页;逻辑地址的表示;主存分配原则;、页表和页表地址寄存器。实现逻辑地址变主存物理地址的机构为每页设一重定
32、位寄存器,一组为页表。28、 段式管理程序以段为单元分配主存,并通过地址映射机构把段式虚拟地址转换成实际的主存物理地址。指令和数据的单元地址包括表段名的段号S 和位量 W 即段内地址。第七章I/O 系统及设备管理什么是 I/O 操作?计算机系统的主存储器与外部设备之间的数据传输操作称为I/O 操作。I/O 操作的四种控制方式是什么?程序直接控制方式程序中断I/O 控制方式 DMA 控制方式 I/O 通道控制方式什么是 SPOOLing 技术?SPOOLing 技术又称为联机同时外围设备操作技术。通常在磁盘上开辟称为“ 井” 的专门存储区域(缓冲区 )来存放作业信息和作业执行结果,设置一个预输入
33、程序把作业流中作业信息传送到“ 输入井 ” 和一个缓输出程序把“ 输出井 ” 中执行结果输出到I/O 设备。事实上,大多数低速I/O 设备都属于独享设备,采用SPOOLing 技术后,把原来的独享设备改造成为了可共享的设备。什么是寻道时间, 旋转延迟 , 传送时间?寻道时间:磁头在移动臂带动下定位到指定柱面/磁道所需要的时间。旋转延迟:指定扇区旋转到达磁头位置的时间。传送时间: 由磁头把扇区中信息读到主存或从主存读信息写到扇区所需的时间。与上两项相比它可忽略不计。9 / 19 什么是 SCAN 扫描算法(电梯算法)?磁头臂仅仅沿一个方向移动,在途中满足所有未完成的请求,直到到达这个方向上的最后
34、一个磁道,或在这个方向上没有别的请求为止。然后倒转服务方向。29、设备管理任务控制I/O 设备操作,完成输入/输出,减轻用户程序负担;按算法把I/O设备分配给请求进程;发挥设备使用率,提高写CPU 并行操作程度。基本功能为进行设备分配;实现真正的I/O 操作;管理缓冲区;使用户程序与实际物理设备无关。30、 (1)按资源分配方式,外设分三类独占。字符设备如打印机。共享。块设备如磁盘。虚拟设备。用Spooling 技术将独占改为共享设备。31、虚拟设备:系统采用Spooling 技术,具备预输入程序,井、媛输出程序进行联机同时外设操作。32、设备分配机制四因素:I/O 设备的固有属性;系统所采用
35、的分配策略;安全性;与设备无关性。第八章文件管理系统文件的定义是什么?文件是被命名的相关联的数据集合体,它通常在外存(如磁盘 )上,可以作为一个独立单位被存放并实施相关操作(如:打开、关闭、读、写等)。文件的逻辑组织可分为哪两种形式?文件的逻辑组织可分为两种形式:记录式文件和无结构(流式 )文件。记录式文件:把文件看作是相关记录的集合。用户文件常采用这种逻辑组织方式。无结构 (流式 )文件:把文件构成看作是字符流的集合。什么是文件分配表(FAT)?在文件分配表(FAT) 中,记录一个文件的块分配情况只需要一个记录项,内容是:开始块和文件长度。33、文件是被命名的相关联的数据集合体,在外存,可作
36、独立单位被存放并设施相应操作。文件系统是系统中负责管理和存取辅助存储器上文件信息的软件和数据,具备功能访问存储介质,完成文件按名存取;创删文件,操作指定文件;文件保护、保密、共享;管理存储空间;转储和恢复。34、文件分类按性质、用途、系统、库、用户;按操作保护:只读、读写不保护;按组织形式:普通、目录、特别文件(输入/输出设备)。35、文件目录使用:实现按名存取文件,是文件说明的有序集合,目录项包括文件名;逻辑结构;在外存的物理位置;存取控制信息;管理信息;文件类型;使用计数。第九章Linux 操作系统Linux 特性是什么?Linux 是一个多用户,多任务系统。它带有丰富的与UNIX 兼容的
37、工具 . 支持多种类型的文件系统(FAT、EXT2 、EXT3) 。完全支持标准的UNIX 网络模型 . 内核可按需定制。支持设备的独立性。支持虚拟内存管理。Linux 系统结构及核心功能是什么?内核 (kernel)负责抽象硬件细节内核代码运行在核心态,它能访问所有的计算机物理资源所有的内核代码和数据结构使用单一的地址空间;系统调用库 (system libraries) 定义了一个标准的函数集合。通过系统调用, 用户应用程序与内核10 / 19 交互,从而达到即使用户应用程序没有内核代码那么大的访问权限,也能完成许多操作系统的功能;系统应用程序(system utilities) 完成独立
38、的、专门的管理任务作业练习一一 , 填空题 (54 )1. 人们可以从不同的角度对操作系统加以理解:操作系统可看作一台“ ( )”; 操作系统又可看作( )管理器;操作系统还是用户与计算之间的( )。它为用户提供了两种使用操作系统的方式:( )方式和 ( )方式。2. 在分时系统中使用了( )技术来处理多个交互的进程。在分时系统中( )的时间被多个用户分享。多个用户通过终端(Terminal) 同时访问系统。3. 系统调用指运行在用户态的应用程序请求( )的一种手段,是一种特殊的过程调用。4. 进程是一个 ( )的程序。进程是程序在一个数据集合上的运行过程,它是系统进行资源分配和调度的一个独立
39、单位。5. 所谓原语,是操作系统内核中,由若干条指令构成、用于完成一个特定的功能的一个过程,该过程在执行时是不可( )的。6. 产生死锁的四个必要条件: ( ),( ),( ),( ). 7. 用于决定哪些作业有执行资格的调度称为( )调度。8. 计算机存储器层次结构中, 若干千字节(KB )非常快速、昂贵、易变的称为( ); 若干兆字节( MB )的中等速度、中等价格、易变的主存储器,简称为( ); 若干千兆字节(GB)的低速、价廉、不易变的磁盘组成,简称为( )。9. 确 I/O 操作的四种控制方式是: ( )控制方式 , ( )控制方式 , ( )控制方式 , ( )控制方式。10. 文
40、件是被命名的相关联的( )集合体,它通常在外存(如磁盘 )上,可以作为一个独立单位被存放并实施相关操作(如:打开、关闭、读、写等)。二 , 问答题 (30 )1. 怎样考虑死锁预防?2. 选择调度算法时应考虑什么因素?3. 实现虚拟存储器的基本原理是什么?三 , 程序题 (16 )仔阅读下列程序, 在 括号内填入程序行: 下面是利用信号量机制(P,V 操作 )解决生产者 -消费者问题的程序struct semaphore s,empty,full=1,n,0; message buffern; int in,out=0,0; Cobegin /* 用 s 对临界区实行互斥*/ void pro
41、duce_i(void) void consume_j(void) message x; message y; while(TRUE) while(TRUE) produce a new message into x; ; ; ; ; y=bufferout; out=(out+1) mod n;bufferin=x; in=(in+1) mod n; ; ; ; ; consume message y; Coend 11 / 19 作业练习二一 , 填空题 (54 )1. 在批处理方式中,一个用户程序及其所需要的数据和操作命令的总和称为一个( ). 2. 所谓 ( ) ,实质上是一个功能单一
42、、结构简单的I/O 处理器,它独立于CPU 并直接控制外设与内存进行数据传输。所谓( ),指在 I/O 正常结束或出现硬件故障时,相应硬件向CPU 发出中断信号, CPU 停止正在执行的操作,转去执行中断处理程序,中断处理完毕后CPU 再回到原来的断点继续进行。3. 所谓系统调用,指运行在用户态的应用程序请求操作系统为之服务的一种手段。它由运行在( )来完成特定功能,属于一种特殊的过程调用。4. 进程是一个正在执行的程序。进程是程序在一个数据集合上的运行过程,它是系统进行资源分配和调度的一个( )单位。5. 操作系统内核中,由若干条指令构成、用于完成一个特定的功能的一个过程、该过程在执行时是不
43、可中断,称为( )。6. 一组进程由于竞争系统资源或互相通信而导致永久阻塞的状况称为( )。7. 用于决定哪些有执行资格的、暂时被挂起的进程可以进入主存中的调度称为( )调度。其实质是将进程在内存和外存之间进行( )。8. 所谓局部性原理是指在一个进程中,程序和数据的引用趋向于簇聚性, 这表现为 ( )局部性,即指令和数据的引用通常不会偏离太远;一个短的时间周期内,访问运行仅仅涉及到进程的少数几个块 , 这表现为 ( )局部性,即刚刚使用过的指令和数据马上又会被使用。9. SPOOLing 技术又称为联机同时外围设备操作技术, 通常是指在 ( )上开辟一块称为“ 缓冲池 ”的专门存储区域来存放
44、进程的执行结果,定义一个( )专门处理缓冲池中的输出内容到I/O 设备。10. 本文件的逻辑组织可分为两种形式:( )文件和 ( )文件。 前者把文件看作是相关记录的集合, 后者把文件构成看作是字符流的集合。二 , 问答题 (30 )1. 怎样考虑死锁避免?2. 什么是时间片轮转算法(Round Robin) ?3. 什么是请求分页存储管理?有何优点? 三 , 程序题 (16 )仔阅读下列程序, 在 括号内填入程序行: 下面是利用信号量机制(P,V 操作 )解决哲学家进餐问题的程序struct semaphore fork5= 1, 1, 1, 1, 1 ; struct semaphore
45、count = 4; Cobegin void philosopher( int i ) while(TRUE) think(); /* 哲学家思考 */ ; ; P( fork(i+1) mod 5 ); /*哲学家拿起右边的叉子*/ eat(); /* 哲学家就餐 */ V( fork(i+1) mod 5 ); /*哲学家放下右边叉子*/ ; ; 12 / 19 Coend 作业练习三一 , 填空题 (54)1. 操作系统实际上是一组计算机( ),与普通的程序工作方式( )。主要区别在于程序的意图和运行模式不同。操作系统控制CPU 和其它系统资源的使用,并调度CPU 运行普通程序的时间。
46、操作系统的程序在( )下运行,硬件保护它免受用户程序的破坏;而应用程序都在( )下运行,它们不受硬件保护。2. 并发是指两个或两个以上事件在( )发生。并行是指两个或两个以上事件在( )发生。3. 所谓系统调用,指运行在用户态的应用程序请求( )的一种手段,属于一种特殊的过程调用。4. 进程的三种基本状态( ),( ),( ). 5. 所谓 ( )是指多个进程合作完成任务,它们在执行速度上相互协调,即一个进程的执行依赖于另一个进程的消息,当一个进程没有得到另一进程的消息时应等待,直到消息到达被唤醒为止。进程的互斥实际上是( )的一种特例。6. 产生死锁的四个必要条件: ( ),( ),( ),
47、( ). 7. 用于决定哪个在主存中的进程占用处理器的调度称为( )调度。8. 一个进程的页面刚刚交换到硬盘马上又需要取回来使用的现象称为( )。在此情况下,处理器大部分时间花费在交换块,而不是执行指令,设计操作系统的( )算法要尽可能防止这种情况发生。9. 磁头臂仅仅沿一个方向移动,在途中满足所有未完成的请求,直到到达这个方向上的最后一个磁道,或在这个方向上没有别的请求为止, 然后倒转服务方向的扫描算法称为( )算法 . 10. Linux 是一个 ( ),( )系统。它带有丰富的与UNIX 兼容的工具 , 支持多种类型的文件系统。二 , 问答题 (30 )1. 怎样考虑死锁的检测和恢复?2
48、. 什么是多级反馈算法?3. 请求分页存储管理模式中, 当执行一个程序时其过程是什么?三 , 程序题 (16 )仔阅读下列程序, 在 括号内填入程序行: 下面是利用信号量机制(P,V 操作 )解决哲学家进餐问题的程序struct semaphore fork5= 1, 1, 1, 1, 1 ; struct semaphore count = 4; Cobegin void philosopher( int i ) while(TRUE) think(); /* 哲学家思考 */ P(count); /* 最多同允许4 位哲学家就餐*/ P( forki ); /*哲学家拿起左边的叉子*/ ;
49、 eat(); /* 哲学家就餐 */ ; V( forki ); /*哲学家放下左边的叉子*/ V( count ); 13 / 19 Coend 注:上述三套作业练习题的答案请参照教材和复习题答案操作系统原理模拟试题A 卷一、填空题 (每空 1 分,共 30 分) 1、 人工操作方式存在问题是资源独占、串行工作、人工干预。2、 多道批处理具有多道性、无序性、调度性。3、特权指令只管态下执行,在用户态执行则是非法指令。4、操作系统功能括用户接口、处理机、存储、设备和文件管理。5、命令接口分脱机和联机命令接口。6、程序顺序执行具有顺序性、封闭性和可再现性。7、进程通信利用的信箱可分为私用、公用
50、和共享信箱。8、解决死锁的方法有死锁的预防、避免、检测与恢复。9、文件存储空间管理常用的技术有空白文件目录、位示图、空闲块链。10、选择调度算法时通常应考虑以下几个主要因素:系统设计目标、均衡地处理系统和用户的要求、系统资源利用率、优先级。11、 通常选择时间片时要考虑以下几个因素:系统对响应时间的要求、就绪队列中进程的数目、系统的处理能力。12、存储管理应实现如下功能:存储分配、地址变换、“ 扩充 ” 主存容量、存储保护。13、实现 SPOOLing 系统时必须在磁盘上辟出称为输入井和输出井的专门区域,以存放作业信息和作业执行结果。14、I/O 操作的控制方式有程序直接、中断、DMA 、通道