操作系统教材答案陈向群杨芙清_第1页
操作系统教材答案陈向群杨芙清_第2页
操作系统教材答案陈向群杨芙清_第3页
操作系统教材答案陈向群杨芙清_第4页
操作系统教材答案陈向群杨芙清_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

本文格式为Word版,下载可任意编辑——操作系统教材答案陈向群杨芙清

《操作系统教程》课后习题答案

第一章操作系统概论

1.什么是计算机系统?计算机系统是怎么构成的?了解PC的组成状况,说明:1)硬件组织的基本结构,画出硬件配置图;2)主要系统软件和应用软件(若有的话)他们的作用。

答:计算机系统就是依照人的要求接收和存储信息,自动进行数据处理和计算,并输出结果信息的系统。

计算机系统由硬件子系统和软件子系统组成。计算机系统的构成包括:如图1.2计算机硬件系统的构成:如图1.4

2.从功能以及程序涉设计的角度说明计算机系统中软件系统是如何构成的?答:分为系统软件,支撑软件和应用软件三层。

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:00601

210:106011:1512:1512525/12310:251511:0011:155010/3

平均周转时间:235/3带权:1+25/12+10/3=77/12

5.有一个两道的批处理操作系统,作业调度采用最短作业优先的调度算法,进程调度采用基于优先数的抢占式调度算法,有如下的作业序列:作业进入时间估计运行时间优先数110:0040分钟5210:2030分钟3310:3050分钟4410:5020分钟6

其中优先数数值越小,优先级越高。

1)列出所有作业进入内存时间及运行终止时间2)计算作业平均周转时间和带权平均周转时间。答:

作业号进入时间估计运行时间开始时间终止时间周转时间带权周转时间110:004010:0011:00603/2210:203010:2010:50301310:305010:3011:20501410:502011:0011:20303/2平均周转时间:2.5带权:5

第四章进程管理

1..一个单CPU的操作系统共有n个进程,不考虑进程状态过渡时的状况,也不考虑空转进

程(1)给出运行进程的个数;(2)给出就绪进程的个数;(3)给出等待进程的个数。解:1.运行进程的个数可能是0,也可能是1;2,就绪的进程的个数可能是0,也可能是n-13.等待进程的个数可能是0,也可能是n

2.多道程序在单CPU上并发运行和多道程序在多CPU上并行执行,这两者在本质是否一致

为什么?请给出以上两者在实现时应考虑什么问题?答:

1)本质上不同,前者是宏观上并发同时运行,微观上是交替顺序执行,后者则是宏观上并行,微观上也并行。

2)在实现多道程序设计时,必需协调好资源使用者和被使用者之间的关系,即对处理机资源

加以管理,以实现处理机在各个可运行程序之间的分派与调度,对内存资源加以管理,将内存分派给各个运行程序,还要解决程序在内存中的定位问题,并防止内存中各个程序之间相互干扰或对操作系统的干扰,对设备资源进行管理,使各个程序在使用设备时,不发

生冲突。

3.用进程概念说明操作系统的并发性和不确定性是怎样表达出来的?答:进程的并发特性和异步特性表达了操作系统的并发性和不确定性。

进程的并发特性:可以同其他进程一道向前推进,即一个进程的第一个动作可以在另一个进程的最终一个动作终止之前开始

进程的异步性:每个进程依照各自独立的,不可预知的速度向前推进。

4.PCB的作用是什么?他是怎么样描述进程的动态本质的?

答:PCB称为进程控制块(ProcessControlBlock),为了便于系统控制和描述进程的活动过程,在操作系统核心中为进程定义一个专门的数据结构,就是PCB。

系统利用PCB来描述进程的基本状况以及进程的运行变化过程。PCB是进程存在的唯一标

志。当系统创立一个进程时,为进程设置一个PCB,再利用PCB对进程进行控制和管理;撤

销进程时,-系统收回它的PCB,进程也随之消亡。5.进程的三个基本状态转换如图(见书),图中1,2,3,4表示某种类型的状态变迁,请分别回复以下问题:

1)什么“事件〞引起某一种类型的状态变迁

答:运行中的进程由于中断的发生,或者需要等待某种事件的发生,变迁到等待状态等待状态的进程,应为所等待的事件发生了,变迁到就绪态CPU为空的时候,就绪态的进程就变迁到运行状态运行的进程由于调度程序,变迁到就绪状态

2)系统中往往由于某一进程的状态变迁引起另一进程也产生状态变迁,试判断在下述情况下,假使有的话,将发生什么因果变迁?3->12.->14->13->4

假使有处于就绪态的进程(3->1)假使有处于就绪态的进程(2->1)CPU为空(4->1)等待事件发生(3->4)

3)在什么状况下,下述变迁中哪些将不马上引起其他变迁?1234

当1发生,并不引起其他变迁

当2发生,假使有进程处于就绪态,引起1发生当3发生,假使有进程处于就绪态,引起1发生当4发生,假使CPU为空,那么引起1发生4)引起进程状态变迁的根本原因是什么?

答:原因:自身的进展状况和外界环境条件的变化。自身的规律,中断和进程调度程序等!

根据进程的动态性,进程在其生命周期内,需要经历一系列离散状态。6.内核寻常完成哪些功能?经过内核扩展后形成的虚拟机有哪些属性?答:内核一般提供如下功能

1)中断处理2)进程调度3)进程控制4)进程同步与互斥;5)进程通信;6)存储管理的基本操作7)设备管理的基本操作8)文件信息管理的基本操作9)时钟管理

虚拟机的属性有:1)没有中断2)为每个进程提供了一台虚拟处理机,每个进程好像在各自的处理机上顺序的运行3)为进程提供了强大的指令系统,即非特权的指令和原语一起组成的指令系统

7.并发进程执行时一定会产生与时间有关的错误吗?为什么?

答:不一定,假使并发进程都占有一些受到保护的私有资源(包括内存,设备等资源),那么执行的结果和进程调度的算法以及中断等外界环境没有关系,所以不一定会产生与时间有关的错误.

8.试举出进程状态转换的典型原因和引起进程调度的因素。

答:进程状态转换的典型原因:1中断或者等待某事件发生,2.所等待事件发生了3,CPU为

引起进程调度的因素为:1)正在执行的进程运行完毕

2)正在执行的进程调用阻塞原语将自己阻塞起来并进入等待状态

3)正在执行的进程调用了P原语操作,从而由于资源不足而被阻塞,或调用了V原语操作

激活了等待资源的进程队列

4)执行中的进程提出了I/O请求后被阻塞5)在分时系统中时间片已经用完

以上都是CPU为不可抢占方式下引起进程调用的原因,当CPU为可抢占时,就绪队列中的进

程比当前运行的进程的优先级高,也引起进程调度9.说明以下活动是属于哪些制约关系?1)若干同学去图书馆借书进程互斥2)两队进行篮球比赛进程互斥

3)流水线生产中的各道工序进程同步4)商品生产和社会消费进程同步

10,是否所有的共享资源都是临界资源,为什么?

答:不是,根据定义,一次只允许一个进程使用得进程才叫临界资源,能同时被多个进程使用得资源不是临界资源

11.设一台计算机,有两条I/O通道,分别接一台卡片输入机和一台打印机。卡片机把一叠卡片逐一输入到缓冲区B1中,加工处理后再搬到缓冲区B2中,并在打印机上印出,问:

1)系统要设几个进程来完成这个任务?各自的工作是什么?2)这些进程间有什么样的相互制约关系3)用P,V操作写出这些进程的同步算法

4)设系统中只有上述几个进程,用图表示出各自状态变迁状况及原因?答:这是一个典型的生产者,消费者问题

1)系统要设三个进程完成任务,第一个进程P1,从卡片输入机中读入数据,并且把数据放入缓冲区B1中,其次个进程从B1缓冲区中取数据,加工处理后放入缓冲区B2中。第三个进

程将缓冲区的内容输入到打印机中打印出来2)这三个进程之间是同步和互斥的关系3)三个进程之间必需协调工作,需设置四个信号量,S1,S2,S3,S4并令S1的初值为1,S2的处置为0,S4的初值为1,则程序为:进程p1进程p2进程p3P(S1)P(S2)P(S3)

从卡片机中读入数据P(S4)将缓冲区B2内容V(S2)将BufferB1中的数据在打印机中输出拷贝道BufferB2中V(S4)V(S1)V(S3)

4)当缓冲区B1为空时,当有输入时,进程p1进入就绪态,假使CPU为空,则为运行态,

入完成后,进入等待态

假使存在进程p2,则为等待态,当S2+1后,处于等待态进程进入就绪态,假使CPU为空

进入运行态,拷贝完成后,进入等待态

假使存在进程p3,则为等待态,当S3+1后,处于等待态进程进入就绪态,假使CPU为空

进入运行态,输出完成后,进入等待态

12.设有无穷多个信息,输入进程把信息逐个写入缓冲区,输入进程逐个地从缓冲区中取出信息。在下述状况下:1)缓冲区是环形的,最多可以容纳n个信息;2)缓冲区是无穷大的。

试分别回复以下问题?

1)输入,输出两进程读,写缓冲区需要什么条件?

2)用P,V操作写出输入,输出两进程的同步算法,并给出信号量含义以及初值3)指出信号量的值的变化范围和其值的含义答:

一:当缓冲区的大小为n时

1)当缓冲区信息为空的时候,输出进程无法读,处于等待状态,当缓冲区信息为满的时候无法写,都某个缓冲区单位进行读写的时候,要互斥2)

1.空的信号量empty初值为n,满的信号量为full初值为0,对缓冲区单元的互斥信号量为mutex,j,k为缓冲区单位地址,初值为0写进程读进程P(empty)P(full)P(mutex)P(mutex)

向Buffer[i]写入信息从Buffer[k]中读信息V(mutex)V(mutex)V(full)V(empty)

j:=(j+1)modnk:=(k+1)modn

4)empty表示还有多少缓冲区单元为空,假使empty=0,表示缓冲区满,系统调用写进程时,写进程处于等待态

full表示缓冲区都多少有信心的单元,假使full=0,表示缓冲区空,系统调用写进程时,读进程处于等待态

mutex表示对于缓冲区单元的互斥信号量,当mutex=1时,开锁,mutex=0时,闭锁二.当缓冲区大小为无穷大时1)同上2)

1.空的信号量empty不用设,满的信号量为full初值为0,对缓冲区单元的互斥信号量为mutex,j,k为缓冲区单位地址,初值为0写进程读进程P(full)

P(mutex)P(mutex)

向Buffer[i]写入信息从Buffer[k]中读信息V(mutex)V(mutex)

V(full)

j:=(j+1)modnk:=(k+1)modn

4)full表示缓冲区都多少有信心的单元,假使full=0,表示缓冲区空,系统调用写进程时,读进程处于等待态

mutex表示对于缓冲区单元的互斥信号量,当mutex=1时,开锁,mutex=0时,闭锁

13.假定一个阅览室最多可以容纳100人,读者进入和离开阅览室都必需在阅览室门口的一个登记表上标志(进入时登记,离开时去掉登记项)而且每次只允许一人登记或者去掉登

记,问:

1)应编写几个进程完成这项工作,程序的主要动作是些什么?应当设置几个进程?进程和程序间的关系如何?

2)用P,V操作写出这些进程的同步通信关系

答:编写两个进程,一个处理读者进入,一个处理读者离开,进程是程序的动态执行设置信号量full为初值为0,空的信号量empty初值为100,互斥信号量mutex初值为1

进入离开

P(empty)P(full)P(mutex)P(mutex)登记取消登记V(mutex)V(mutex)V(full)V(empty)进入离开

14.在生产者和消费者问题中,假使对调生产者(或消费者)进程中的两个P操作和两个V操作的次序,会发生什么状况?请说明!

答:对调P操作,会发生死锁由于P(empty)在p(mutex)和v(mutex)内部,也就是临界区中,当empty≤0,时,P(empty)在临界区中进入到了休眠状态。那么就别的进程都进入不到临界区中,进入死锁状态。而两个V操作无关紧要

15.为什么引入高级通信机构?他有什么优点?说明消息缓冲通信机构的基本工作过程?答:

1)为了解决大量的消息交换,

2)优点:不仅能够保证相互制约的进程之间的相互关系,还同时实现了进程之间的信息交换

3)消息缓冲通信技术的工作过程:

其基本思想是:根据“生产者-消费者〞原理,利用内存中公用消息缓冲区实现进程之间的信息交换。

内存中开拓了若干消息缓存区,用以存放消息,每当一个进程(发送进程)向另一个进程(接收进程)发送消息时,便申请一个消息缓冲区,并把已准备好的消息发送到缓冲区中,然后把该消息缓冲区插入到接受进程的消息队列中,最终通知接受进程,接收进程收到发送进程发送到的通知后,从本进程的消息队列中摘下一消息缓冲区,取出所需的消息,然后把消息缓冲区还给系统。

16.进程间为什么要进行通信?在编写自己的程序时,是否考虑到要和别的用户程序进行通信?各个用户进程间是否存在制约关系?

答;1)各个进程在运行的时候,共享内存,或者共同完成一个特定的功能,都需要进行通信,

2)需要,

3)促在同步和互斥的关系,譬如闲聊程序

17.假定一个系统的磁盘块大小为2KB,一个块的平均访问时间是20毫秒。一个有40KB进程

由于资源请求从运行态变为阻塞态,它必需保持阻塞多长时间?答:40/2*20=400毫秒

保持阻塞态400毫秒

18.假设A,B两个火车站之间是单轨线,大量列车同时到达A站,然后经过A站到达B站;又

列车从A到B的行驶时间是t,列车在B战后的停留时间是t/2,试问在该问题模型中,什么是

临界资源,什么是临界区?

答:临界资源:A到B之间的单轨线,以及B站是临界资源临界区:在A到B之间行驶,以及在B上停留是临界区19.同步机制应当遵循哪些原则?为什么?

答:1.它的描述能力应当足够强,既能解决各种进程间的同步互斥问题;2.其次,应当简单实现并效率高3.第三,使用便利

20.我们为某临界资源设置一把锁W。当W=1时,表示关锁,W=0时,表示开锁,试写出开锁

和关锁原语,并利用它去实现互斥。答:while(1==w);enter临界区

21.进程A1,A2,?,An通过m个缓冲区向进程B1,B2,?,Bn不断发送消息,发送和接收工作遵

循如下规则:

1)每个发送进程每次发送一个消息,写入一个缓冲区,缓冲区大小与消息长度一样2)对每一个消息,B1,B2,..Bn都需要各接收一次,读到各自的数据区中;3)m个缓冲区都满时,发送进程等待,没有可读消息时,接受进程等待试用P,V操作组织正确的发送和接收操作。答:VAR

mutex:Semaphore:{初值为1,实现对缓冲区的互斥}empty:Semaphore:{初值为n,有多少缓冲}

Full:Array[1..n]OFSemaphore:{初值为0,每个接收进程当前可接收的缓冲区}

Count:Array[1..n]OFINTEGER;{初值为0,n个缓冲区被访问的次数}

ReceivePointer:Array[1?n]OFINTEGER{初值为0,该接收进程要取哪个}SendPointer:INTEGER;{初值为0,发送进程下次要放到哪个缓冲区}发送进程(num:INTEGER){num为进程号}RepeatP(empty)P(mutex)

向buff[sendPointer]放消息

sendPointer:=(sendPointer+1)modkcount[sendPointer]:=0V(mutex)

Fori:=1TonDoV(Full[i])UntilFALSE

接收进程(num:INTEGER):{num为接收进程号}Repeat

P(Full[num])P(mutex)

从buff[ReceivePoiner[num]]中取消息V(mutex)

Count[ReceivePoiner[num]]:=Count[ReceivePoiner[num]]+1IF(Count[ReceivePoiner[num]]==n)THENV(empty)

Count[ReceivePoiner[num]]==0

ReceivePoiner[num]]:=(ReceivePoiner[num])+1)modnUntilFALSE

22.有K个进程共享一个临界区,对于下述状况,请说明信号量值的初值,含义,并用P,V

操作写出相关的互斥算法。

1)一次只允许一个进程进入临界区2)一次只允许m个进程进入临界区答:1)设置互斥信号量mutex,初值为1P(mutex)Enter_regionV(mutex)

2)设置同步信号量mutex,初值为m;P(mutex)Enter_regionV(mutex)

23.爱睡觉的理发师问题,一个理发店有两间相连的屋子,一间是私室,里面有一把理发椅,另一个是等候室,有一个滑动门和N把椅子。理发师忙的时候,通向私室的门被关闭,新来的顾客找一把空椅子坐下,假使椅子都被占用了,则顾客只好离去,假使没有顾客,则理发师在理发椅上睡觉。并开启通向私室的门。理发师睡觉时,顾客可以叫醒他理发,请编写

理发师和顾客的程序,正确实现同步和互斥问题!答:

解:VAR:

S1,S2:Semaphore;{初值为0,实现理发师与顾客的同步}Mutex:Semaphore:{初值为1,实现对waiting的互斥}waiting:INTEGER:{初值为0,等待的顾客数}理发师进程REPEAT

P(S1){若无顾客,则睡觉}P(mutex)

Waiting:=waiting-1

V(S2);(唤醒一个等待的客户)V(mutex)理发

UntilFALSE顾客进程P(mutex)

IF(waitingT,3)ST时,CPU的利用率=T/(T+S)*100%(当进程运行完后,就切换,也就相当于时间片=T

)

3)当S

P(mutex)

if(count2[k]==0)P(S[k])count[k]++

过第k+1个船闸P(mutex)count[k]--

if(count[k]==0)V(S[k])V(mutex)}

35.某银行有人民币储蓄业务,由n个柜员负责,每个顾客进入银行后,先取一个号,并且等着叫号,当一个柜员人员空闲下来,就叫上一个号,使用P,V操作正确编写柜台人员和顾客进程的程序!

解;取号的互斥信号量mutex,叫号的互斥信号量mutex1柜台人员和顾客进程的同步信号量为S1,S2,初值分别为n,0柜台人员进程:

P(S2)(无顾客则等待)P(mutex1)叫号

V(mutex1)服务V(S1)顾客进程P(mutex)取号V(mutex)P(S1)享受服务V(S2)

36,设A,B,C三个进程共享一个存储资源F,A对F只读不写,B对F只写不读,C对F先读后写。

(当一个进程写F时,其他进程既不能读F,也不能写F,但多个进程同时读F是允许的)试

利用管程的方法或者P,V操作,写出A,B,C三个进程的框架,要求:(1)执行正确(2)正常运行时不产生死锁;(3)使用F的并发度高37,某系统如此定义P,V操作P(S)S=S-1

若S

2)40,65,203)20,50,604)130,60k,205)140,70,70

14.页式存储管理系统中作业的地址空间是一维的还是二维的?请说明理由答:二维的,有一维是:页号,和其次维是:页内地址!

15.页式存储管理需要哪些硬件支持?如何实现规律地址到物理地址的映射?答:系统提供了一对寄放器:页表始址寄放器和页表长度寄放器。1)具体步骤说明如下

1)地址映射机制把CPU给出的规律地址分为两部分:页号P和页内地址

2)将规律页号P与页表长度寄放器内容比较,假使P大于等于页表长度L,则为越届,发生

地址越界中断

3)根据页表始址寄放器的内容D得到页表在内存的首地址,并根据规律页号P在页表中找到对应的内存块号P'

4)把物理页号与规律地址中的页内地址D拼在一起,形成访问内存的物理地址

16.假定一个存储管理程序已经把它的页面淘汰决定缩小到两页之一,假定其中一页由几个进程共享,另一页仅由一个进程使用,最终应当淘汰哪一页?请解释!答:当然是后一页,这样就能避免频繁的调度页面!

17.在多道程序系统中,程序和数据共享可以大大的节省内存空间,分别说明页式,段式和段页式存储管理系统中是如何实现共享的?答:

页式:页式存储管理使每个程序能利用内存空间中一些不连续的存储块,这种灵活性就允许两个或多个程序共享程序中的代码或公共数据段。

段式:假使多个用户进程或作业需要共享某段程序或数据,可以使用不同的段名,在各自的段表中填入已在内存中的共享段的起始地址,并设置适当的读写控制权,就可以做到共享一个内存段的信息。段页式:?

18.在页式存储管理系统中,对数据,过程的共享有什么限制,为什么?

答:对于数据页面的共享,实现起来比较简单,由于这个共享的数据页面,可以安排在程序

地址空间的任何一个页面上,而代码的共享则不然,它必需把共享的代码安排到所有共享它

的程序地址空间中一致页号的页面中,即共享代码所在地址空间必需重叠。19.为什么期望大多数程序具有局部性?

答:利用虚拟存储技术,可以为程序提供较少的物理页面,就可以完成执行程序的任务。20.设计一个页表应考虑哪些因素?

答:系统为每个用户程序建立一张页表,用于记录用户程序的规律页面与内存物理页面之间

的对应关系,包括两项内容:规律页面号,该规律页面在内存中分派的物理页面号(内存块号),用户程序的地址空间有多少页,该页表里登记多少行,且按规律页的顺序排列。页表存放在内存系统区。

21.操作系统的存储管理目标是什么?段页式管理是如何实现这些目标的?答:

1)充分利用内存,对多道程序并发执行。

22.为什么说段页式管理时的虚拟地址依旧是二维的?答:段号,段内地址。

23.假定磁盘空闲空间表说明有以下存储块空闲块:13,11,18,9和20块。有一个要求为某文件分派10个连续的磁盘块。

1)假使采用首次适应分派策略,那么将分派哪个块?

31.有一台计算机含有四个页面,每一页的装入时间,最终一次修改时间以及R与M位的值

如下(时间为时间周期):

页装入时间最终访问时间RM012627900123026010212027211316028011

1)NRU应当淘汰哪一页?2)FIFO应当淘汰哪一页?3)LRU应当淘汰哪一页?

4)其次次机遇应当淘汰哪一页?答:?

32.请求页式存储管理中,页面置换算法所花的时间属于系统开销,这种说法对吗?答:额外开销。

33.何谓系统的“抖动〞现象?当系统发生“抖动〞时,你认为应当采取什么措施加以克服?

答:在虚存中,页面在内存和外存之间频繁的调度,以至于调度页面所需时间比进程实际运行的时间还多,此时系统效率急剧下降,甚至导致系统崩溃,这种现象称为颠簸(抖动)

产生的原因:页面置换算法不合理,分派给进程的物理页面数太少。解决方法:调整算法,多分派物理页面数。

34.在虚拟页式存储管理中,进程在内外存中的存放有以下两种方法:1)一部分页面放在内存,其余页面放在外存2)一部分页面放在内存,全部页面放在外存

试从系统开销的角度分析两种方法各自的优缺点,并说明页表的区别。答:?

35,36,37其次次复习的时候做!!

第六章文件管理

1.举一个文件访问的例子,所举的领域在某些状况下,信息必需随机访问,而在其他时间必需顺序访问.

答:进行视频文件播放时。

2.为什么支持索引文件的文件系统无法获得顺序访问文件系统一致的效率?

答:由于:索引结构的缺点就是:较多的寻道次数和寻道时间,以及索引表本身增加了存储空间的开销。

连续结构的优点就是:文件存取十分简单迅速。

3.假设一个活动头磁盘有200道,编号1-199,当前磁头正在143道上服务,并且刚刚完成了

125道的请求,现有如下访盘请求序列(磁道号)86,147,91,177,94,150,102,175,130

试给出采用以下算法后磁头移动的顺序和移动总量(总磁道数)1)最短寻道时间优先(SSTF)磁盘调度算法

2)扫描法(SCAN)磁盘调度算法(假设沿磁头移动方向不再有访问请求,磁头沿相反方向移动)

答:1)1431471501301029491861751772)143130102949186147150175177

4.假定一个文件系统用索引文件结构管理存储块。每个文件都有一个目录项,存放文件名,第一个索引块,以及文件长度。第一个索引块指向248各文件块和下一个索引块。假使一个文件当前放在第2023各规律块,而下一个操作是访问第306个规律块,那么必需从磁盘上读多少个物理块?答:

5.假定一个UNIX的磁盘块能够存放1048个磁盘地址。用直接盘块指针的文件的最大尺寸是

多少?一重间接块指针呢?二重间接块指针呢?三重呢?

6.早期MS-DOS版本的文件系统最大能够管理32M的磁盘空间,根据本章所讲的有关目录和

文件的知识,推测由于该限制可能导致的一些后果。

7.假定一个文件系统的组织方式与MS-DOS文件系统类似,在FAT中有64K个指针,请说明该

文件系统是否能够用这64K个指针来引用一个512M磁盘上一个512字节块。

8.文件系统检测程序经常利用位图。基本的想法就是把该图拷贝到检测程序的地址空间去,把图中每一个项放大,使它能够包含更多的状态信息(例如已分派,未分派,已检测,坏块),请设计一个算法,用增加内容位示图来检测一个磁盘的上述状态信息,并作出具体统计。

答:1)为位图增加一个内容位示图,已分派,未分派,已检测,坏块分别用0,1,2,3来代替

2)检测磁盘,遇到0,:count0++,遇到1:count1++,遇到2,count2++,遇到3,count3++,(初值都为0)

3)得出相应的块的个数。

9.假定需要一种机制,是的一个文件能被任何用户读,但只能被一个用户写。譬如全国高考成绩,可被高考学生读,但只能被有关办公室修改成绩,请设计该文件的存取控制机制。

答:1)审定用户权限

2)比较用户权限的本次存取要求是否和用户的存取权限一致

3)将用户的存取要求和被访问文件的存取控制表进行比较,看是否冲突,假使没有

冲突,允许用户对有关文件进行访问,假使有冲突,处理冲突。

10.请描述一种机制,硬件的或软件的,它根据用户的指纹进行身份识别。

答:第一步要对用户的身份进行验证,其次步,采用一组称为存取控制模块的程序,对用户

的存取权限进行控制。

11.文件目录的作用是什么?一个目录表目应包含哪些信息?

答:文件目录就是文件控制块的有序集合,即把所有文件控制块有机地组织起来,就构成了文件目录。

文件控制块应当包括以下内容:文件名,文件号,用户名,文件地址,文件长度,文件类型,文件属性,共享计数,文件的建立日期,保存期限,最终修改日期等!12.多级目录结构的特点有哪些?有什么好处?答:优点:

层次结构明了,便于管理和保护;有利于文件分类;解决重名问题;提高文件检索速度;能进行存取权限的控制缺点:

查找一个文件按路径名逐层检查,由于每个文件都放在外存,屡屡访盘影响速度13.可通过什么方法来实现用户之间共享某个文件?答:1)绕道法2)I节点法3)符号链接法

14.在设计文件系统时,对文件的数据结构应做何考虑?答:顺序结构,链接结构,索引结构以及I节点.

15.请设计一个文件系统的FCB,并说明为何要安排FCB的每一项内容。

答:文件控制块PCB为系统管理文件而设置的一个数据结构。FCB是文件存在的标志,它记

录了系统管理文件所需要的全部信息。见图6.2文件控制块16.在文件系统中,使用Create和Open命令的目的是什么?他们的具体功能是什么?能不能只用一个命令,完成文件的建立和开启操作?

答:create和open命令是建立一个和开启一个文件。

create建立一个文件,open开启一个已存在的文件,或者先创立然后开启一个文件能用一个命令open来完成文件的建立和开启操作.

17.对以下每个问题,试说明它由文件系统中哪一个

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论