1、计算机操作系统期末复习指导(本科)软件与系统教研室 张献忠计算机操作系统课程是常州工学院计算机科学与技术专业的一门必修课。通过学习使学员掌握计算机操作系统的组成及基本设计原理,基本概念和相关的新概念和名词术语;了解计算机操作系统的发展特点、设计技巧和方法,对常用计算机操作系统(如Dos、Windows和UNIX/Linux)会进行基本的操作使用。该课程使用的教材为计算机操作系统(第2版),吴企渊、梁燕编著,清华大学出版社2003年8月出版。主要内容包括:计算机操作系统概述、作业管理、文件管理、存储管理、输入输出设备管理、进程及处理机管理、操作系统结构和程序设计,并附录课程实验。操作系统是计算机
2、系统的基本组成部分,是整个计算机系统的基础和核心。计算机操作系统课程是理论性和实践性都较强的课程,具有概念多、较抽象、涉及面广的特点。为帮助大家复习这门课程,下面按照教学大纲,对各章的重点、难点进行归纳、总结,给出解答问题的指导,最后给出练习及参考解答,供大家复习时参考。一、 各章复习要点第一章 计算机操作系统概述1、操作系统的概念操作系统(Operating System,OS)是方便用户、管理和控制计算机软硬件资源的系统软件(或程序集合)。从用户角度看,操作系统可以看成是对计算机硬件的扩充;从人机交互方式来看,操作系统是用户与机器的接口;从计算机的系统结构看,操作系统是一种层次、模块结构的
3、程序集合,属于有序分层法,是无序模块的有序层次调用。操作系统在设计方面体现了计算机技术和管理技术的结合。2、操作系统的发展形成了五大类型操作系统的五大类型是批处理操作系统、分时操作系统、实时操作系统、网络操作系统、分布式操作系统。l 多通道批处理操作系统多道程序设计:即在系统内(内存)同时存放并运行几道相互独立的程序。多道程序设计的基础:是将运行过程进一步细化成几个小的步骤,从而实现宏观上的并行。但从微观上看,内存中的多道程序轮流地或分时地占用处理机,交替执行。多道批处理系统 = 批处理系统+多道程序设计技术l 分时与实时分时:鉴于CPU运转的高速度,把CPU的时间分成很短的时间片(例如,几十
4、至几百毫秒)进行工作。时间片的大小影响系统的响应时间,并与系统用户的数量、系统时间片的切换速度有关。实时是指计算机对于外来信息能够以足够快的速度进行处理,并在被控对象允许的时间范围内做出快速反应。实时系统对交互能力要求不高,但要求可靠性有保障。l 网络操作系统与分布式操作系统分布式操作系统是网络操作系统的更高级形式,它保持网络系统所拥有的全部功能,同时又有透明性、可靠性、高性能等。网络操作系统与分布式操作系统虽然都属于管理分布在不同地理位置的计算机,但最大的差别是:网络操作系统的工作,用户必须知道网址,而分布式系统用户则不必知道计算机的确切地址。3、操作系统的五大功能l 作业管理:包括任务、界
5、面管理、人机交互、图形界面、语音控制和虚拟现实等;l 文件管理:又称为信息管理;l 存储管理:实质是对存储“空间”的管理,主要指对主存的管理;l 设备管理:实质是对硬件设备的管理,其中包括对输入输出设备的分配、启动、完成和回收;l 进程管理:实质上是对处理机执行“时间”的管理,即如何将CPU真正合理地分配给每个任务。4、表征操作系统的属性主要有:响应系数,并发性,信息的共享、保密与保护,可扩充性、可移植性、可读性、可生成性,安全可靠性,可测试性等。第二章 作业管理1、基本概念作业(Job)是让计算机完成一件事或任务,可大可小,可多可少。作业步(Job steps) :作业顺序执行的工作单元。作
6、业流(Job Stream) :作业步的控制流程。作业类别分为终端型作业和批量型作业。2、三代用户界面l 第一代用户界面:操作命令和系统调用(一维空间)l 第二代用户界面:图形界面(二维空间)l 第三代用户界面:虚拟现实的界面元素(三维空间)3、界面管理的功能l 实现高效的人机通信l 改善计算机的可用性、可学性和有效性l 支持三维及多媒体技术l 为广大用户提供适应不同应用的众多界面构造工具及语言4、作业调度l 作业调度功能(1)采用JCB(作业控制块)表格,记录各作业状况;(2)按选定的算法,从后备作业队列中选出一部分(多道)或一个作业投入运行;(3)为被选中的作业做好运行前的准备工作,例如建
7、立相应的执行进程和分配系统资源;(4)作业运行结束的善后处理工作。l 作业调度算法(1)先来先服务(FCFS)作业平均周转时间=(作业完成时刻i-作业提交时刻i)/n个作业(2)最短作业优先:在作业内容参差很不均衡时有合理性(3)最高响应比优先响应比(系数)作业响应时间(等待运行)/作业运行时间(4)定时轮转法:按时间片分为固定时间片和不固定时间片(5)优先数法:急事先办的原则(6)事件驱动法:MS-Windows采用此算法5、Shell命令解释和控制语言 Shell是用户与操作系统交互作用的界面。作为命令解释程序它接收用户输入的命令,进行分析,创建子进程实现命令的功能,等子进程终止工作后,发
8、出提示符。此外,Shell还是一种高级程序设计语言,有变量、关键字、各种控制语句,支持函数模块,有自己的语法结构。第三章 文件管理1、文件管理的任务与功能任务:把存储、检索、共享和保护文件的手段,提供给操作系统本身和用户,以达到方便用户和提高资源利用率的目的。功能:-分配与管理外存,实现按名存取-提供合适的存储方法-文件共享、保护,解决命名冲突,控制存取权限文件的组织结构:文件、文件元素、文件系统,其中文件系统包含文件管理程序(文件和目录的集合)和所管理的全部文件。2、文件分类(1)按文件性质与用途分:系统文件、库文件、用户文件(2)按操作保护分:只读文件、可读可写文件、可执行文件(3)按使用
9、情况分:临时文件、永久文件、档案文件(4)按用户观点分:普通文件、目录文件、特殊文件(5)按存取的物理结构分:顺序(连续)文件、链接文件、索引文件(6)按文件的逻辑存储结构分:有结构文件、无结构文件(7)按文件中的数据形式分:源文件、目标文件3、文件的逻辑结构和物理结构l 文件的逻辑结构-从用户使用角度确定的文件结构-按文件名及记录号存取文件,是一维、连续的字符序列,方便存储、检索或加工-文件由若干个逻辑记录组成,并加以命名或编号l 文件的物理结构又称文件的存储结构,是指文件在存储介质上的存储组织形式,与存储介质的存储性能有关。空闲空间的管理方法主要有:空闲表法、空闲链表法、成组链接法4、文件
10、目录(1)文件目录分类:一级文件目录、二级文件目录、多级文件目录(2)文件目录的管理l 目录做成文件,文件系统便于内部统一管理,目录文件在使用时调入内存;l 在操作系统中,大量采用“表格”管理。5、文件存取控制l 解决文件保护、保密和共享l 常用的文件存取控制方法有:存取控制矩阵、用户权限表、使用口令、使用密码l Unix/Linux系统的安全性与计算机病毒简介6、文件系统的数据结构和表示UNIX或Linux操作系统中文件系统的主要特点(1)操作系统文件的目录组织是一个树形结构;(2)文件本身是无结构的字符流;(3)把外部设备的特殊文件和普通文件以及目录文件都统一在文件这一概念之下。第四章 存
11、储管理1、存储管理的基本概念l 逻辑地址与物理地址在具有地址变换机构的计算机中,允许程序中编排的地址和信息实际存放在内存中的地址有所不同。前者叫逻辑(相对)地址,后者叫物理(绝对)地址。l 重定位:将逻辑地址转换为物理地址。l 三级存储器结构辅存主存高速缓存为三级存储器结构,从辅存到高速缓存,存储器容量减小,存取时间减少,速度增加,但每位存储器成本增加了。l 虚拟存储管理虚存是由操作系统调度,采用内外存的交换技术,各道程序在必需使用时调入内存,不用的调出内存,这样好像内存容量不受限制。虚存的特点:(1)虚存容量不是无限的,极端情况受内存和外存可利用的总容量限制;(2)虚存容量还受计算机总线地址
12、结构限制;(3)速度和容量的“时空”矛盾,虛存量的“扩大”是以牺牲CPU工作时间以及内外存交换时间为代价的。l 存储管理的任务和功能任务是方便用户,提高内存资源的利用率,实现主存共享。功能主要有主存的分配和回收、地址映射、主存扩充、内存的共享和保护技术2、分区分配存储管理分为固定分区、可变分区、可重定位分区、多重分区。内存“扩充”技术:l 交换:由操作系统做,用户不知道。l 覆盖:由用户控制,操作系统提供覆盖机制。内存保护技术:保护系统工作区和用户作业区,特别是如何防止系统区被破坏。方法有存储保护键、界限寄存器3、请求页式存储管理(1)页式存储管理实现原理基于程序在运行时不需要一开始都装入内存
13、(局部性原理),更不应该把最近较长一段时间内不用的程序装入内存。(2)页表的作用是将逻辑页号转换为物理块号。(3)页面淘汰算法 先进先出算法(FIFO)、循环检测法、最近最少使用页面先淘汰(LRU)、最不经常使用的页面先淘汰(LFU)、最近没有使用页面先淘汰(NUR)、最优淘汰算法(OPT)等。(4)页式存储管理的优、缺点 优点:l 虛存量大,适合多道程序运行,用户不必担心内存不够的调度操作;l 内存利用率高,不常用的页面尽量不留在内存;l 不要求作业连续存放,有效地解决了“碎片”问题。与分区式相比,不需移动作业;与多重分区比,无零星碎片产生。缺点:l 要处理页面中断、缺页中断处理等,系统开销
14、较大;l 有可能产生“抖动”;l 地址变换机构复杂,为提高速度采用硬件实现,增加了机器成本。4、段式、段页式存储管理段式、页式存储管理的对比表参考教材117页。段页式存储管理特点:l 每一段分若干页,再按页式管理,页之间不要求连续;l 用分段方法分配管理作业,用分页方法分配管理内存;l 兼有段式和页式管理的优点,系统复杂和开销增大,一般在大型机器上才使用。第五章 设备管理1、设备管理的任务和功能l 设备管理的任务(1)按用户需求提出的要求接入外部设备,系统按一定算法分配和管理控制,而用户不必关心设备的实际地址和控制指令;(2)尽量提高输入输出设备的利用率,例如发挥主机与外设以及外设与外设之间的
15、真正并行工作能力。l 设备管理的功能(1)分配设备(2)控制和实现真正的输入输出操作(3)对输入输出缓冲区进行管理(4)在一些较大系统中实现虚拟设备技术2、外部设备分类(1)按系统和用户分:系统设备、用户设备(2)按输入输出传送方式分(UNIX或Linux操作系统):字符型设备、块设备(3)按资源特点分:独享设备、共享设备、虚拟设备(4)按设备硬件物理特性分:顺序存取设备、直接存取设备(5)按设备使用分:物理设备、逻辑设备、伪设备l 设备I/O方式:询问、中断、通道l I/O设备分配算法:先来先服务(FCFS)、按优先级进行分配3、外部设备的安装 设备驱动程序的作用、分类、使用。 CPU与外部
16、信息的交换:程序直接控制方式、中断控制方式、DMA方式和通道方式 总线与接口:PC系统总线、标准接口类型、USB接口4、设备管理技术(1)I/O设置缓存理由l 解决信息的到达率和离去率不一致的矛盾;l 缓存起中转站的作用;l 在通道或控制器内设置局部寄存器作为缓冲存储器,可暂存I/O信息,以减少中断CPU的次数。这种情形可进一步推广,使得一次读入的信息可多次重复使用。(2)虚拟设备的技术(SPOOLing)SPOOLing,即外围设备联机并行操作,它是关于慢速字符设备如何与计算机主机交换信息的一种技术,通常也叫做“假脱机技术”。是一种预输入、缓输出和转储的管理技术.SPOOLing系统的特点:
17、l 提高了I/O速度;l 将独享设备改造为共享设备(典型例子是打印机的“共享”);l 实现了虚拟设备功能。5、设备处理程序编制内容l 设备驱动程序的功能(1)将接收到的抽象要求转换为具体要求;(2)检查用户I/O请求的合法性,了解I/O设备的状态,传递I/O有关参数,设置设备的工作方式;(3)发出I/O命令,启动分配到的I/O设备,完成指定的I/O 操作;(4)及时响应由控制器或通道发来的中断请求,并根据其中断类型调用相应的中断处理程序进行处理;(5)对于设置有通道的计算机系统,驱动程序还应能够根据用户的 I/O请求,自动地构成通道程序。l 设备驱动程序的特点(1)驱动程序主要是在请求I/O的
18、进程与设备控制器之间的一个通信程序。(2)驱动程序与I/O设备的特性紧密相关。(3)驱动程序与I/O控制方式紧密相关。(4)由于驱动程序与硬件紧密相关,因而其中的一部分程序用汇编语言书写,目前有很多驱动程序,其基本部分已经固化,放在ROM中。l 设备处理方式将抽象要求转换为具体要求;检查I/O请求的合法性;读出和检查设备的状态;传送必要的参数;方式的设置;I/O设备启动。第六章 处理机管理1、 进程的引入(1)进程调度属于低级处理机管理,即确定系统中哪个进程将获得CPU;而作业调度属于高级处理机管理,即确定系统中哪些作业将获得CPU。(2)进程是一个具有一定独立功能的程序关于某个数据集合的一次
19、运行活动。(3)引入进程的意义是描述多道程序设计系统中程序的动态执行过程。2、进程的定义及特征(1)程序和进程的区别见教材153页的表6-2;(2)进程的五个基本特征:动态性、并发性、独立性、制约性、结构性; (3)进程与线程:线程是由进程进一步派生出来的一组代码(指令组)的执行过程。3、进程调度(1)进程的三个基本状态及转换 三个基本状态是等待、执行和就绪,在一定的条件下,进程的状态将发生转换。见教材158页图6-1。(2)进程调度算法主要有先来先服务(FCFS)、轮转法、多级反馈轮转法、优先数法。 (3)进程控制块(PCB)是进程存在的唯一标志,它描述了进程的动态性。4、进程通信(1)进程
20、的同步与互斥进程的同步与互斥是指进程在推进时的相互制约关系。一般来说同步反映了进程之间的协作性质,往往指有几个进程共同完成一个任务时在时间次序上的某种限制,进程相互之间各自的存在及作用,通过交换信息完成通信。如接力比赛中一组队员使用接力棒等。进程互斥体现了进程之间对资源的竞争关系,这时进程相互之间不一定清楚其它进程情况,往往指多个任务多个进程间的通讯制约,因而使用更广泛。如打篮球时双方挣抢篮板球等。(2)临界区一次仅允许一个进程使用的共享资源称为临界资源,每个进程中访问临界资源的程序段称为临界区。(3)原语原语是不可中断的过程。l 加锁/开锁(LOCK/UNLOCK)原语 优点是实现互斥简单;
21、缺点是效率很低。l 信号量(Semaphore)及PV操作 PV操作能够实现对临界区的管理要求。它由P操作原语和V操作原语组成,对信号量进行操作,具体定义如下: P(S):将信号量S的值减1,即S=S-1; 如果S0,则该进程继续执行;否则该进程置为等待状态,排入等待队列。 V(S):将信号量S的值加1,即S=S+1; 如果S0,则该进程继续执行;否则释放队列中第一个等待信号量的进程。 信号量的数据结构为一个值和一个指针,指针指向等待该信号量的下一个进程。信号量的值与相应资源的使用情况有关。当它的值大于0时,表示当前可用资源的数量;当它的值小于0时,其绝对值表示等待使用该资源的进程个数。注意信
22、号量的值仅能由PV操作来改变。 一般来说,信号量S0时,S表示可用资源的数量。执行一次P操作意味着请求分配一个单位资源,因此S的值减1;当S0时,表示已经没有可用资源,请求者必须等待别的进程释放该类资源,它才能运行下去。而执行一个V操作意味着释放一个单位资源,因此S的值加1;若S0,表示有某些进程正在等待该资源,因此要唤醒一个等待状态的进程,使之运行下去。l 消息缓冲通信原语高级通信原语,用于一组信息发送(Send)与读取(Read)。5、死锁(1)死锁的概念死锁是两个或两个以上的进程中的每一个都在等待其中另一个进程释放资源而被封锁,它们都无法向前推进,称这种现象为死锁现象。产生死锁的原因是共
23、享资源有限,多个进程对共享资源的竞争,而且操作不当。(2)产生死锁的四个必要条件是资源互斥使用、保持和等待、非剥夺性、循环等待。(3)解决死锁的方法一般有死锁的预防,即破坏产生死锁的四个必要条件中的一个或多个,使系统绝不会进入死锁状态;死锁的避免,即在资源动态分配的过程中使用某种办法防止系统进人死锁状态;以及允许系统产生死锁,然后使用检测算法及时地发现并解除它。第七章 操作系统结构和程序设计1、操作系统的设计目标和原则 操作系统的设计目标:正确性、安全可靠性、可扩充性和可移植性、易维护性。 分层原则:步骤、方法、层次间的调用;有序分层法 分块原则:模块接口法2、层次结构设计 操作系统的结构模型
24、:层次模块模型、整体内核模型、进程模型和对象模型。操作系统的结构设计步骤:总体设计、逐步求精、结构码。3、DOS模块结构,Windows编程模式,Linux程序模块举例二、例题解析1、如何理解操作系统在计算机系统中的地位?解:操作系统是软件,而且是系统软件。它在计算机系统中的作用,大致可以从两方面体会:对内,操作系统管理计算机系统的各种资源,扩充硬件的功能;对外,操作系统提供良好的人机界面,方便用户使用计算机。它在整个计算机系统中具有承上启下的地位。2、系统调用与一般过程调用的区别。解:系统调用在本质上是一种过程调用,但它是一种特殊的过程调用,它与一般过程调用的主要区别如下: (1)运行状态不
25、同。一般的过程调用,其调用和被调用过程都是用户程序,它们都运行在同一系统状态下;而系统调用的调用过程是用户程序,它运行在用户态,其被调用过程是系统过程,运行在系统态。 (2)进入方式不同。一般过程调用可以直接通过过程调用语句将控制转移到被调用过程;而执行系统调用时,由于调用和被调用过程处于不同系统状态,必须通过访管中断进入。 (3)代码层次不同。一般过程调用中的被调用程序是用户级程序,而系统调用是操作系统中的代码程序,是系统级程序。3、下表给出作业l,2,3的提交时间和运行时间。采用先来先服务调度算法和短作业优先调度算法,试问平均周转时间各为多少?(时间单位:小时,以十进制进行计算。)作业号提
26、交时间运行时间1230.00.41.08.04.01.0【分析】解答这道题首先需要清楚作业调度算法的含义(先来先服务调度算法和短作业优先调度算法),还要清楚:作业周转时间作业完成时间作业提交时间,作业平均周转时间各作业周转时间之和/作业数,为此我们画下面这样一个表来明确各作业的执行情况。解:采用先来先服务调度策略,则调度顺序为l、2、3。作业号提交时间 运行时间 开始时间 完成时间周转时间1 0.08.00.08.0 8.02 0.44.08.0 12.0 11.63 1.01.0 12.0 13.0 12.0平均周转时间T(811.612)/310.53采用短作业优先调度策略,则调度顺序为l
27、、3、2。作业号提交时间运行时间开始时间完成时间周转时间1 0.0 8.0 0.0 8.0 8.03 1.0 1.08.09.08.02 0.4 4.0 9.0 13.0 12.6平均周转时间T(8812.6)/39.534、试述文件管理系统设置打开文件、关闭文件命令的原因。解:操作系统需要处理大量用户文件,而访问一个文件需要查询目录,有时甚至需要多次查询目录。由于文件目录与文件一起存放在辅存上,当存取文件时,必须先到辅存中读取文件目录信息,从中获得文件的存放地址,然后再去存取文件。这样一来,文件信息的存取将花费很多时间。如果将整个文件目录放入主存,虽然可以提高存取速度,但这需要占用大量主存空
28、间,显然这也是不可取的。 实际上,在一段时间内使用的文件数总是有限的,因此只要将目录中当前要使用的那些文件的目录表目复制到内存中就可以了。这样既不占用太多的主存空间,又可显著提高查询文件目录的速度。为此,大多数操作系统中设置了两个文件操作:打开文件和关闭文件。 打开文件操作完成的功能是将文件的有关目录信息复制到主存活动文件表中,以建立用户和这个文件的联系。关闭文件操作的功能是用户宣布这个文件当前不再使用,系统将其在主存中的相应目录信息删去,因而也就切断了用户同这个文件的联系。5、采用可变分区管理存储空间时,若主存中按地址顺序依次有五个空闲区,大小分别为15K、28K、10K、226K、110K
29、。现有五个作业J1到J5,它们所需的主存空间依次是10K、15K、102K、26K、180K。问如果采用首次适应分配算法,能否把这五个作业按J1到J5的次序全部装入主存。使用哪种分配算法装入这五个作业,可使主存的利用率最高?解:按首次适应分配算法,不能把这五个作业全部依次装入主存。这时J1、J2装入第1、2个空闲区,J3、J4装入第4、5个空闲区,J5有180K,无法装入仅有的10K空闲区。 能使主存利用率最高的是采用最佳适应分配算法。这时,这五个空闲块分别装入作业J2、J4、J1、J5、J3。6、某虚拟存储器的用户编程空间共32个页面,每页为1KB,内存为16KB。假定某时刻一用户页表中已调
30、入内存的页面的页号和物理块号的对照表如下:页号物理块号051102437请计算逻辑地址0A5C(H)所对应的绝对地址。【分析】在分页存储管理方式中,逻辑地址结构为:页内地址d页号p如果给定的逻辑地址是A,页面大小为L,则页号p和页内地址d可按下式求得: p=int A/L d=A mod L 其中,int表示取结果的整数部分,mod表示取结果的余数部分。页号的位数表示地址空间中最多可容纳的页面个数,页内地址的位数表示每页的大小,页表的作用是实现从页号到物理块号的地址映射。在页式存储管理中,逻辑空间页的大小与主存地址空间中块的大小相同。解:页式存储管理的逻辑地址分为两部分:页号和页内地址。由已知
31、条件“用户编程空间共32个页面”,可知页号部分占5位;由“每页为1KB”,1K=210,可知内页地址占10位。由“内存为16KB”,可知有16块,块号为4位。逻辑地址0A5C(H)所对应的二进制表示形式是:000 1010 0101 1100 ,根据上面的分析,下划线部分为页内地址,编码 “000 10” 为页号,表示该逻辑地址对应的页号为2。查页表,得到物理块号是4(十进制),即物理块地址为:01 00 ,拼接块内地址10 0101 1100,得01 0010 0101 1100,即125C(H)。7、某采用页式存储管理的系统,接收了一个共7页的作业,作业执行时依次访问的页为:1、2、3、4
32、、2、1、5、6、2、1、2、3、7。当内存块数量为4时,请分别用先进先出(FIFO)调度算法和最近最少使用(LRU)调度算法,计算作业执行过程中会产生多少次缺页中断?写出依次产生缺页中断后应淘汰的页。(所有内存开始时都是空的,凡第一次用到的页面都产生一次缺页中断。要求写出计算过程) 解:(1)采用先进先出(FIFO)调度算法,页面调度过程如下:页面次序1234215621237主存页面情况1111555533222266667333322224444111【分析】使用FIFO置换算法时,淘汰最先进入内存的页面。例如,当加灰页面5要换入内存时,此时内存中的页面情况是1,2,3和4(加灰的部分)
33、,其中页面4是最近新换入的,页面3比页面2换入的时间晚(参考加框部分的演示),所以按照该置换算法,需淘汰最早进入内存的页面1,换入页面5。所以,共产生10次缺页中断,依次淘汰的页是1、2、3、4、5、6。 (2)采用最近最少使用(LRU)调度算法,页面调度过程如下:页面次序1234215621237主存页面情况11111111222222233553344667【分析】使用LRU置换算法时,淘汰最近最少使用的页面。例如,当加灰页面5要换入内存时,此时内存中的页面情况是1,2,3和4(加灰的部分),我们考查加灰页面5之前的页面序列,分别是1,2,4,3 (参考加框部分的演示),可见在内存中的页面
34、3是最近用得最少的,所以按照该置换算法,需淘汰页面3,换入页面5。因此,共产生8次缺页中断,依次淘汰的页是3、4、5、6。 8、试述分页式存储管理系统和分段式存储管理系统的主要区别。解:分页和分段有许多相似之处,比如两者都不要求作业连续存放。但在概念上两者完全不同,主要表现在以下几个方面: (1)页是信息的物理单位,分页是为了实现非连续分配,以便解决内存碎片问题,或者说分页是由于系统管理的需要。段是信息的逻辑单位,它含有一组意义相对完整的信息,分段的目的是为了更好地实现共享,满足用户的需要。 (2)页的大小固定,由系统确定,将逻辑地址划分为页号和页内地址是由机器硬件实现的。而段的长度却不固定,
35、决定于用户所编写的程序,通常由编译程序在对源程序进行编译时根据信息的性质来划分。 (3)分页的作业地址空间是一维的。分段的地址空间是二维的。9、为什么说有了通道技术和中断技术才真正做到了CPU与外设的并行操作?解:通道是负责外围设备与主存之间进行数据交换,能单独完成输入输出操作的处理机。有了通道,主存和外围设备之间的数据交换就不要CPU干预了,CPU可以做与输入输出无关的其他工作,从而使计算机系统获得了CPU与外围设备之间并行工作的能力。 I/O中断是通道和CPU协调工作的一种手段。如果没有中断技术,CPU就要不断去查询通道以及设备执行的情况,这样一来,CPU还是把大量的时间花在了查询上,不能
36、很好地为其他进程服务。使用中断技术,CPU可以完全不管通道和设备的执行情况,因为无论操作正常结束或操作异常结束,通道都会发出中断,通知CPU来处理。 综上所述,通道技术和中断技术的出现,使得主存可以直接与外设交换数据,而CPU得以并行地工作,大大提高了CPU的使用效率。10、某分时系统的进程出现如下图所示的状态变化。运行等待打印机输出结果等磁盘读文件 就绪进程队列 试问:(1)你认为该系统采用的是何种进程调度算法?(2)把图中所示的六个状态变化的原因写出来。【分析】从图中可以看出在、和“就绪进程队列”之间存在一个环路,有的进程在执行过程中被剥夺处理机,排入就绪队列的尾部,等待下一次调度,同时进
37、程调度程序又去调度当前就绪队列中的第一个进程,这样的进程调度算法为时间片轮转法。解:(1)该分时系统采用的进程调度算法是时间片轮转法。(2)进程被选中,变成运行态;时间片到,运行的进程排入就绪队列尾部;运行的进程启动打印机,等待打印;打印工作结束,等待的进程排入就绪队列尾部;等待磁盘读文件工作;磁盘传输信息结束,等待的进程排入就绪队列尾部。11、怎样理解操作系统的作业调度和进程调度的关系?解:作业调度和进程调度都属于处理机调度。作业调度是处理机管理的高级形式,它的主要功能是审查系统是否能满足用户作业的资源要求以及按照一定的算法来选取作业。进程调度是处理机管理的低级形式,它的主要功能是根据一定的
38、算法将CPU分派给就绪队列中的一个进程。提交 后备 完成 进程调度 执行 就绪 等待 作业调度 执行 作业调度 作业的状态及其转换操作系统中作业的状态主要有:提交、后备、执行、完成,进程的状态主要有等待、就绪、执行。作业调度和进程调度的转换关系见下图。12、用PV操作实现进程间的同步与互斥应该注意什么?解:用PV操作实现进程间的同步与互斥,应该注意以下四方面问题: (1)对每一个共享资源都要设立信号量。互斥时对一个共享资源设立一个信号量;同步时对一个共享资源可能要设立两个或多个信号量,要视由几个进程来使用该共享变量而定。 (2)互斥时信号量的初值一般为1;同步时至少有一个信号量的初值大于等于1
39、。 (3)PV操作一定要成对调用。互斥时在临界区前后对同一信号量作PV操作;同步时则对不同的信号量作PV操作,PV操作的位置一定要正确。 (4)对互斥和同步混合问题,PV操作可能会嵌套,一般同步的PV操作在外,互斥的PV操作在内。三、课程练习及参考解答一、填空1、设备I/O方式有如下三种:_、_和_。2、文件存取方式按存取次序通常分_、_,还有一类 _。3、从用户观点看,UNIX系统将文件分三类:_、_和 _。4、引起死锁的四个必要条件是 、_、 和_。5、进程的三个最基本状态是_、_和_。6、传统操作系统提供编程人员的接口称为_。7、三代人机界面的发展是指:_、_和_。8、常用的进程调度算法
40、有_、_和_。二、选择一个正确答案的序号填入括号中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. 用
41、户地址 B. 相对地址 C. 物理地址 D.绝对地址7、原语是( )。A. 一条机器指令 B. 若干条机器指令组成C. 一条特定指令 D. 中途能打断的指令8、索引式(随机)文件组织的一个主要优点是( )。A. 不需要链接指针 B. 用户存取方便C回收实现比较简单 D能实现物理块的动态分配9、几年前一位芬兰大学生在Internet上公开发布了以下一种免费操作系统核心( ),经过许多人的努力,该操作系统正不断完善,并被推广。 A. Windows NT B. Linux C. UNIX D. OS210文件目录的主要作用是( )。 A. 按名存取 B提高速度 C节省空间 D提高外存利用率11、某进程在运行过程中需要等待从磁盘上读入数据,此时该进程的状态是( )。 A. 从就绪变为运行 B.从运行变为就绪 C. 从运行变为阻塞 D.从阻塞变为就绪12、把逻辑地址转变为内存的物理地址的过程称作( )。A.编译 B.连接 C.运行 D.重定位13、进程和程序的一个本质区别是(