当前位置:文档之家› 北大操作系统习题答案完整版

北大操作系统习题答案完整版

北大操作系统习题答案完整版
北大操作系统习题答案完整版

操作系统

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:Direct Memory Access)

通过系统总线中一独立控制单元——DMA控制器

自动控制成块数据在内存和I/O单元间的传送

大大提高处理I/O的效能

通道:独立于中央处理器,专门负责数据I/O传输的处理机

它对外设实现统一管理

代替CPU对I/O操作进行控制

使CPU和外设可以并行工作

通道又称为I/O处理机

引入通道的目的:

为了使CPU从I/O事务中解脱出来

同时为了提高CPU与设备、设备与设备之间的并行度

13.时钟对操作系统有什么重要作用?

时钟为计算机完成以下必不可少的工作:

在多道程序运行环境中,为系统发现陷入死循环(编程错误)的作业,防止机时的浪费

在分时系统中,间隔时钟实现作业间按时间片轮转

在实时系统中,按要求的间隔输出正确时间信号给实时的控制设备(如A/D、D/A转换设备)

定时唤醒要求延迟执行的各外部事件(如定时为各进程计算优先数,银行中定时运行某类结账程序等)

记录用户使用设备时间和记录某外部事件发生时间

记录用户和系统所需要的绝对时间,即年、月、日

进程

1..一个单CPU的操作系统共有n个进程,不考虑进程状态过渡时的情况,也不考虑空转进程1。给出运行进程的个数;2。给出就绪进程的个数;3。给出等待进程的个数。

解:1.运行进程的个数可能是0,也可能是1;

2,就绪的进程的个数可能是0,也可能是n-1

3.等待进程的个数可能是0,也可能是n

2.多道程序在单CPU上并发运行和多道程序在多CPU上并行执行,这两者在本质是否相同为什么?请给出以上两者在实现时应考虑什么问题?

答:

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

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

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

3.用进程概念说明操作系统的并发性和不确定性是怎样体现出来的?

答:进程的并发特性和异步特性体现了操作系统的并发性和不确定性。

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

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

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

答:PCB称为进程控制块(Process Control Block),为了便于系统控制和描述进程的活动

过程,在操作系统核心中为进程定义一个专门的数据结构,就是PCB。

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

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

销进程时,-系统收回它的PCB,进程也随之消亡。

5.进程的三个基本状态转换如图(见书),图中1,2,3,4表示某种类型的状态变迁,请分别回答下列问题:

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

答:运行中的进程因为中断的发生,或者需要等待某种事件的发生,变迁到等待状态

等待状态的进程,应为所等待的事件发生了,变迁到就绪态

CPU为空的时候,就绪态的进程就变迁到运行状态

运行的进程因为调度程序,变迁到就绪状态

2)系统中常常由于某一进程的状态变迁引起另一进程也产生状态变迁,试判断在下述情况下,如果有的话,将发生什么因果变迁?

3 ->1 2. ->1 4->1 3->4

如果有处于就绪态的进程(3->1)

如果有处于就绪态的进程(2->1)

CPU为空(4->1)

等待事件发生(3->4)

3)在什么情况下,下述变迁中哪些将不立即引起其他变迁?

1 2 3 4

当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 进程p3

P(S1) P(S2) P(S3)

从卡片机中读入数据P(S4) 将缓冲区B2内容

V(S2) 将Buffer B1中的数据在打印机中输出

拷贝道Buffer B2中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写入信息从Buffer[k]中读信息

V(mutex) V(mutex)

V(full) V(empty)

j:=(j+1)mod n k:=(k+1)mod n

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写入信息从Buffer[k]中读信息

V(mutex) V(mutex)

V(full)

j:=(j+1)mod n k:=(k+1)mod n

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操作组织正确的发送和接收操作。

答:

V AR

mutex:Semaphore:{初值为1,实现对缓冲区的互斥}

empty:Semaphore:{初值为n,有多少缓冲}

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

}

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

ReceivePointer:Array[1…n] OF INTEGER{初值为0,该接收进程要取哪个}

SendPointer:INTEGER;{初值为0,发送进程下次要放到哪个缓冲区}

发送进程(num:INTEGER) {num为进程号}

Repeat

P(empty)

P(mutex)

向buff[sendPointer]放消息

sendPointer:=(sendPointer+1)mod k

count[sendPointer]:=0

V(mutex)

For i:=1 To n Do

V(Full)

Until FALSE

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

Repeat

P(Full[num])

P(mutex)

从buff[ReceivePoiner[num]]中取消息

V(mutex)

Count[ReceivePoiner[num]]:= Count[ReceivePoiner[num]]+1

IF(Count[ReceivePoiner[num]]==n)

THEN V(empty)

Count[ReceivePoiner[num]]==0

ReceivePoiner[num]]:=(ReceivePoiner[num])+1)mod n

Until FALSE

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

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

1)一次只允许一个进程进入临界区

2)一次只允许m个进程进入临界区

答:1)设置互斥信号量mutex,初值为1

P(mutex)

Enter_region

V(mutex)

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

P(mutex)

Enter_region

V(mutex)

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

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

答:

解:V AR:

S1,S2 :Semaphore;{初值为0,实现理发师与顾客的同步}

Mutex:Semaphore:{初值为1,实现对waiting的互斥}

waiting:INTEGER:{初值为0,等待的顾客数}

理发师进程

REPEAT

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

P(mutex)

Waiting:=waiting-1

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

V(mutex)

理发

Until FALSE

顾客进程

P(mutex)

IF(waiting

THEN BEGIN

Waiting:=-waiting+1 ;(等待顾客数加1)

V(mutex);

V(S1) {通知理发师}

P(S2) {若无理发师,挂起}

坐下理发

END

ELSE V(mutex)

24.进程之间的通信方式有几种?在单机环境下,常用的哪几种通信方式?

答:三种:共享内存,消息机制,以及管道通信

在单机环境下:常采用共享内存以及管道通信。

25. 一个快餐店有四类雇员:1)领班,他们接受顾客点的菜单;2)厨师,准备饭菜;3)打包工,将饭菜装在袋子里;4)收银元,将食品袋交给顾客并收钱,每个雇员都可以看作一个进行通信的顺序进程,他们采用的进程间通信方式是什么?

答:通信方式为消息传递。

26.抢占式进程调度是指系统能够强制性的使执行进程放弃处理机,试问分时系统采用的是抢占式还是非抢占式进程调度?实时系统?

答:分时系统采用的是非抢占式进程调度

实时系统采用的是抢占式进程调度

27.试述进程调度得主要任务,为什么说它把一台物理机变成了多台逻辑上的处理机

答:处理机调度的任务是控制协调进程对CPU的竞争即按一定的调度算法从就绪队列中选中一个进程,把CPU的使用权交给被选中的进程

多个进程虽然在微观上仍然是顺序执行,但是在宏观上,仿佛是并发执行

28.在CPU按优先级调度的系统中

1),没有运行的进程是否一定没有就绪进程

2)没有运行进程,没有就绪进程或两者都没有是否可能?各是什么情况?

3)运行进程是否一定是自由进程中优先数最高的?

答:1)一定没有

2) 没有运行进程,一定没有就绪进程;没有就绪进程可能有等待进程,也可能有运行进程;两者都没有,可能有等待进程

3)不一定,可能出现等待进程中优先级更高

29.对某系统进行监测后表明平均每个进程在I/O阻塞之前的运行时间为T,一次进程切换的需要的时间是S,实际上就是开销,对于采用的时间片长度为Q的时间片轮转法,请给出1)Q=无穷,2)Q>T , 3)S

片=T)

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

)

3)当S

4)当Q=S时=S/S+S

5)当Q趋于0,CPU的利用率=T/T+nS=0 (n趋于无穷)

30,大多数时间片轮转调度程序使用一个固定大小的时间片,请给出选择小时间片的理由,然后再给出选择大时间片的理由

答:选择小时间片:I/O密集型,可以缩短响应时间,满足短的交互需求

选择大时间片:CPU密集型,可以防止过多的进程切换,提高CPU效率

31.有5个批处理作业A到E几乎同时到达一计算中心。他们估计运行时间分别为10,6,2,4和

8分钟,其优先数(由外部设定)分别为3,5,2,1,4其中5级为最高优先级,对于下列每种调度算法,计算其平均周转时间,可忽略进程切换的开销。

1)时间片轮转法

2)优先级调度法

3)先来先服务法(按照次序10,6,2,4,8运行)

4)最短作业优先

对1),假设系统具有多道处理能力,每个作业均获得公平的CPU时间,对(2) 和(4)假设任一时刻只有一个作业运行,直到结束,所有作业都是CPU密集型作业!

答:1) 和时间片的长短有关,比较繁琐!

2)运行顺序是(6,8,10,2,4) (6+14+24+26+30)/4=100/4=25

3)(10+16+18+22+30)/4=96/4=24

4) (2+(2+4)+(2+4+6)+(2+4+6+8)+( 2+4+6+8+10))/4=17.5

32:有5个待运行的作业,他们的估计运行时间分别是9,6,3,5,采用哪中次序运行各个

作业将得到最短的平均响应时间?答案依赖于X

答:由于5个作业同时到达,所以按最短作业优先调度会得到最短的响应时间:9≤x 3 5 6 9 x

6≤x≤9 3 5 6 x 9

5≤x≤6 3 5 x 8 9

3≤x≤5 3 x 5 8 9

x≤3 x 3 5 8 9

33,在一间酒吧里有三个音乐爱好者队列,第一列音乐爱好者只有随身听,第二列只

有音乐

磁带,第三列只有电池,而要听音乐就必须有随身听,音乐磁带和电池这三中物品

。酒吧老板一次出售这三种物品中的任意两种,当一名音乐爱好者得到这三种物品

并听完乐曲后,酒吧老板才能再一次出售这三种物品中任意两种,于是第二名音乐

爱好者得到这三种物品。并开始听乐曲,全部买卖九这样进行下去。

使用P,V操作正确解决这一买卖。

解:买方有三个进程,卖方有1个进程

卖方,和买方的同步信号量S1,S2 ,初值为0,1.

听音乐时的互斥信号量;mutex

卖方进程

P(S1) (没有音乐爱好者,等待)

卖物品

P(mutex)

放音乐

V(mutex)

V(S2)

买方进程

P(S2)

买物品

V(S1) {老板可以卖东西}

34.巴拿马运河建在太平洋和大西洋之间,由于太平洋和大西洋水面高度不同,有巨大落差,所以运河中建有T(T≥2)级船闸,并且只能允许单向通行,船闸依次编号为1,2,…,T ,由大西洋来的船需要经过船闸T,T-1.,,,2,1通过运河到达太平洋,由太平洋来的船需要经由船闸1,2,…,T-1,T通过运河到达大西洋。

使用P,V操作正确解决大西洋和太平洋的船只通航问题。

答:答:Array: S1[T] of Semaphore {为每个船闸设置的信号量初值都为1} Array: count1[T] of INTEGER {为每个船闸设置通往大西洋的船的计数值,初值都为0}

Array: count2[T] of INTEGER {为每个船闸设置通往太平洋的船的计数值,初值都为0}

对count设置互斥信号量mutex

去大西洋的进程:

int j

for(j=0;j

P(mutex)

if(count1[j]==0)

P(S[j])

count[j]++

过第j+1个船闸

P(mutex)

count[j]--

if(count[j]==0)

V(S[j])

V(mutex)

}

去太平洋的进程:

int k

for(k=T-1;k≥T,k++){

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<1本进程进入等待队列末尾,否则继续进行

V(S)

S=S+1

若S≤0,释放等待队列中末尾的进程,否则继续运行。

现有四个进程P1,P2,P3,P4竞争使用某一需要互斥使用的资源(每个进程可能反复使用多次),使用这样的P,V操作来正确的实现互斥。

解:

S:ARRAY[0,,,3] OF Semaphore{初值为s=i,i=0,1,2,3 }

访问进程

for i:=3 downto 1 do

P(s)

临界区操作

for i:=1 To N-1 Do

V(S)

38,请用进程通信的办法解决生产者,消费者问题

39,请用管程实现哲学家就餐问题

进程管理(笔记)

1).多道程序设计和并发

内存允许多个程序进入,操作系统能够同时执行这些程序

CPU在多个进程之间调度,切换

系统有时有进程,有线程

对CPU的管理:

每个实体都有一个环境,多个实体间存在一个切换

从顺序执行开始,到并发执行,会产生许多特征

顺序执行----并发执行(不可再现性)------与时间有关的错误

并发执行的结果,不可再现,由于每个程序执行的速度不同,会带来不一致性。

与时间有关的错误,即包括互斥(飞机订票系统,一张票卖给两个顾客,竞争条件),这是由于并发执行,且资源共享引起的。

2).进程模型

进程:正在执行的程序,系统中同时会有许多程序在执行

进程有创建,有撤销

从以下几个方面考虑进程模型:

2.1 进程的组成,进程有动态,有静态,从动态的角度讲叫做进程映像。

一个系统中与进程有关的实体和空间

1.程序的地址

2.进程所需的数据

3.进程运行过程中所遗留的痕迹(栈)

栈是进程运行过程中临时性的信息存放的地方。

栈分为系统栈和用户栈

用户空间和系统空间时分开的。

用户地址空间包括:程序,数据和栈

PCB(进程控制块)是由系统来管理的,进程所需的信息都放在此数据结构中。

上下文环境,PCB,数据结构是进程存在的痕迹。

地址越界:用户只能在用户的地址空间活动,不能进入其他用户地址空间和系统空间

2.2进程状态以及状态转换

2.2.1进程控制块PCB,系统管理进程时,修改PCB

进程在运行时,通用寄存器要保存现场信息,不运行的时候,这些信息都要保存下来

比如,指针等,现场要保存在自己的空间中,文件系统中。

现场信息包括很多内容。

进程控制块PCB时贯穿始终的

2.2.2状态的设置与进程的控制有关系,什么时候创建进程,什么时候中止进程,完全由

原语来将进程从一个状态转变为另一个状态

最主要的就是了解进程的控制

3.进程的同步和互斥

这部分与"与时间有关的错误"有关

同步是开发人员有意识安排的:在完成一个特定功能的软件中,由多个进程协作,这些进程间有时序关系,互相配合完成,而这些时序是事先安排好的,OS不知道这些关系,用

户通过OS提供的原语来维持这种时序。

同步:第一个进程执行道某一点后能否继续执行取决于另一个进程能够给它发消息。

进程的互斥:各个进程间要求共享资源,竞争使用资源。

书上讲解了“竞争条件”这一概念。

4.临界区:只允许一个进程使用的资源叫临界资源

竞争使用同一个资源的

不是一个进程的,而是以上进程

对于临界区的要求

1)任何两个进程不能同时处于临界区,即两段程序是不能交叉的

临界区的程序是可以中断执行的

2)如果想进入临界区,又进不去,则阻塞“有空让进,无空等待,有限等待”

3)不应对进程的速度和进程的数目作假设

解决互斥的问题:

*1 用户关闭中断会出现问题(忘了开中断,怎么办?)

*2 锁变量在解决互斥问题时,也可以引入新得互斥

*3 严格轮换法

以上三种方法都不能解决互斥。

以下两个都不考:

#1 Peterson Delker 知道算法,但不考

#2 用硬件法解决互斥也不考

重点:5. 掌握信号量以及PV操作

5.1 信号量和PV操作

down --up (首选)

P---V (也对)

wait--signal(错误)

原理:在执行过程中,不可分割.

down操作:对信号量:-1,若小于1,则阻塞,送到等待队列

up 操作:+1,若小于等于0,相应的信号量等于等待队列上的进程。

重点中重点:必有P V操作的题:

解题的要素:1)设置好每个信号量(每道题的分数由若干部分组成)

列出所有的信号量及其初值就给分

2)写PV,操作时,PV操作部分不能用自然语言,其余的部分

可用伪码,自然语言均可

begin ---end , repeat --until(搞清楚2分)

读者---写者(循环) 生产---消费(不循环)

6.几个典型模型(考试不会超过此类模型)

6.1 生产者---消费者类型

思想:由一些buffer,一些进程向Buffer 中写,另一些向Buffer中读

回家总结:

*1 一个生产者,一个消费者,一个buffer

*2 一个生产者,一个消费者,一些buffer

*3 一个生产者,多个消费者,一个或者多个buffer

*4 多个生产者,多个消费者,一个或者多个buffer(最复杂,不考!0)

6.2 哲学家进餐问题(认真读书上的每句话)

对于多个竞争进程互斥访问资源是非常有用的!

6.3 读者---写者问题(P42)

对共享资源的操作

读有许多读者,但写时只有一个写。

若是两组读者问题,第二个读者将第一个得拷贝过来,变量改变一下

2003年的考研题,运河问题均是读者---写者问题

2003年考研题思路:

如何限制只有3个过,第四个不能过。

关键在于问题如何分解

树上这种读者,写者会出现饥饿,但本题要求不出现饥饿

大船方向:写者,小船方向:写者

把原来程序的框架写出,将细节只允许3个船过(不允许出现饥饿)补充进去6.4 理发师问题(P43)

6.5 吸烟者模型

小的问题:eg:银行叫号, 阅览室问题,(来一个申请一个资源,若干个进程对资源的使用问题),考场问题(同步关系,比较简单)

做题套路:1)先写出程序2)找出进程间的关系(分解开找,先找互斥,再找同步,一个关系设置一个信号量) 3)P,V嵌入到相应的位置,信号量是在找关系的时候定好的!一个一个关系找,不要嫌麻烦4)赋好初值5)注意细节(是否需要循环)

PV匹配,但存在if--else 语局时会有问题,信号量的操作,只能出现在P V中,而不会出现在P,V语句之外,且不要写出有死锁的程序。

五. 进程通信

进程通信包括同步,互斥,本部分是高级的进程通信,P,V是简单进程通信!

linux中,信号量,共享内存,消息队列,Socket,管道均是通信机制

Windows中,互斥队列,信号量对象等均是通信机制。

分为如下几类:

1. 共享内存

与读--写者问题是同一模型,若P个进程互相通信(重点),要了解实现和设计细节

1.1 设置共享内存存取方式

读者如何互斥,写者如何互斥

1.2消息传递方式(OS 中用的多)

设计要点:

1)两个进程间收发消息模型send-receive的操作来完成

消息的传递会产生如下问题:发送的消息会不会丢失,解决方案:作一个回答;

应答会不会丢!

重发一条消息,接受道两个同一信息所带来的问题!

消息本身会不会有差错!

2)给谁发消息,进程的命名会不会产生二义性!

3)

以上问题会在多机系统中出现

如何知道所发的消息是正确的,合法的(安全性)

4)有几种可能性来实现消息的传递

有阻塞,无阻塞,有无缓冲

a:消息传递是最常用的

系统中会开辟出缓冲区,系统把消息从A地址空间复制到buffer

然后从buffer中放到消息队列中,挂到B地址空间(接受进程的地址空间)

这个buffer是有缓冲的。

消息缓冲是:生产----消费者模型

b:信箱模型

建一个信箱,把消息放在信箱中

一套操作:建信箱,信箱满如何办

c:有/无阻塞

d:管道:建立两个进程通信的通路,实现时利用了文件系统,在文件系统中支持

通过读/写文件实现! write---read!

六:进程调度

处理机调度:在有些书上分为两个层次1):CPU调度,2)中级调度:两极调度

在这里狭义的说法就是选择哪些进程上CPU,考虑以下问题

1)什么原则(what) 2)什么时候(when) 3)如何进行(How)

1.what 什么算法:FIFO,时间片轮转法,优先级调度,搞清调度问题的区别

*FIFO:一个进程上CPU后,除非由于它自身的原因,否则没有进程能够打断它,(#基于优先级的不可剥夺算法)

时间片轮转法,时间片用完就切换下来

基于优先级:1):抢占:一旦有了高优先级就可以切换原来运行的进程!

2):不可抢占

可变的一定是动态的,固定的一定是静态的。

2机制和策略问题在此部分有所体现

策略是用户可选的

机制是定好的

最新版本的OS要求抢占

多级排列:几种策略的结合(时间片,优先级,抢占)

2)时机(WHEN) 什么时候做什么工作

什么时候进行进程调度:一个进程运行完毕,进程出错,时间片到,基于优先级的可抢占式

调度,自己用阻塞原语将自己阻塞

3)如何进行上下文切换(HOW)

一个进程让出来,另一个进程上去。

如何保存被换下来的现场,以及如何将要换上去的现场换上去,

是用汇编来做的

线程和进程之间的关系问题:

如果同一系统中线程和进程都存在,他们的关系:

原来进程:资源分配和CPU调度的单位;

接着:进程粒度变小,进程只管分配资源,线程是CPU调度单位,

线程的引入:从资源系统开销的角度,系统使用的角度。

《操作系统》练习题及参考答案

《操作系统》练习题及参考答案 一、单项选择题(每小题1分,共15分) 1.操作系统是一种() A.系统软件 B.系统硬件 C.应用软件 D.支援软件 2.MS—DOS的存贮管理采用了() A.段式存贮管理 B.段页式存贮管理 C.单用户连续存贮管理 D.固定式分区存贮管理 3.用户程序在目态下使用特权指令将引起的中断是属于() A.硬件故障中断 B.程序中断 C.外部中断 D.访管中断 4.MS—DOS中用于软盘整盘复制的命令是() https://www.doczj.com/doc/3215299318.html,P B.DISKCOPY C.SYS D.BACKUP 5.位示图方法可用于() A.盘空间的管理 B.盘的驱动调度 C.文件目录的查找 D.页式虚拟存贮管理中的页面调度 6.下列算法中用于磁盘移臂调度的是() A.时间片轮转法 B.LRU算法 C.最短寻找时间优先算法 D.优先级高者优先算法 7.在以下存贮管理方案中,不适用于多道程序设计系统的是() A.单用户连续分配 B.固定式分区分配 C.可变式分区分配 D.页式存贮管理 8.已知,作业的周转时间=作业完成时间-作业的到达时间。现有三个同时到达的作业J1,J2和J3,它们的执行时间分别是T1,T2和T3,且T1 A.T1+T2+T3 B.(T1+T2+T3) C.T1+T2+T3 D. T1+T2+T3 9.任何两个并发进程之间() A.一定存在互斥关系 B.一定存在同步关系 C.一定彼此独立无关 D.可能存在同步或互斥关系 10.进程从运行状态进入就绪状态的原因可能是() A.被选中占有处理机 B.等待某一事件 C.等待的事件已发生 D.时间片用完

11.用磁带作为文件存贮介质时,文件只能组织成() A.顺序文件 B.链接文件 C.索引文件 D.目录文件 12.一作业8:00到达系统,估计运行时间为1小时,若10:00开始执行该作业,其响应比是() A.2 B.1 C.3 D.0.5 13.多道程序设计是指() A.在实时系统中并发运行多个程序 B.在分布系统中同一时刻运行多个程序 C.在一台处理机上同一时刻运行多个程序 D.在一台处理机上并发运行多个程序 14.文件系统采用多级目录结构后,对于不同用户的文件,其文件名() A.应该相同 B.应该不同 C.可以相同,也可以不同 D.受系统约束 15.在可变式分区分配方案中,某一作业完成后,系统收回其主存空间,并与相邻空闲区合并,为此需修改空闲区表,造成空闲区数减1的情况是() A.无上邻空闲区,也无下邻空闲区 B.有上邻空闲区,但无下邻空闲区 C.有下邻空闲区,但无上邻空闲区 D.有上邻空闲区,也有下邻空闲区 二、双项选择题(每小题2分,共16分) 1.能影响中断响应次序的技术是()和()。 A.时间片 B.中断 C.中断优先级 D.中断屏蔽 E.特权指令 2.文件的二级目录结构由()和()组成。 A.根目录 B.子目录 C.主文件目录 D.用户文件目录 E.当前目录 3.驱动调度算法中()和()算法可能会随时改变移动臂的运动方向。 A.电梯调度 B.先来先服务 C.扫描 D.单向扫描 E.最短寻找时间优先 4.有关设备管理概念的下列叙述中,()和()是不正确的。 A.通道是处理输入、输出的软件 B.所有外围设备的启动工作都由系统统一来做 C.来自通道的I/O中断事件由设备管理负责处理 D.编制好的通道程序是存放在主存贮器中的 E.由用户给出的设备编号是设备的绝对号

操作系统 习题答案(中文版)

操作系统概第七版中文版习题答案(全) 1.1在多道程序和分时环境中,多个用户同时共享一个系统,这种情况导致多种安全问题。a. 列出此类的问题 b.在一个分时机器中,能否确保像在专用机器上一样的安全度?并解释之。 答:a.窃取或者复制某用户的程序或数据;没有合理的预算来使用资源(CPU,内存,磁盘空间,外围设备)b.应该不行,因为人类设计的任何保护机制都会不可避免的被另外的人所破译,而且很自信的认为程序本身的实现是正确的是一件困难的事。 1.2资源的利用问题在各种各样的操作系统中出现。试例举在下列的环境中哪种资源必须被严格的管理。(a)大型电脑或迷你电脑系统(b)与服务器相联的工作站(c)手持电脑 答:(a)大型电脑或迷你电脑系统:内存和CPU资源,外存,网络带宽(b)与服务器相联的工作站:内存和CPU资源(c)手持电脑:功率消耗,内存资源 1.3在什么情况下一个用户使用一个分时系统比使用一台个人计算机或单用户工作站更好? 答:当另外使用分时系统的用户较少时,任务十分巨大,硬件速度很快,分时系统有意义。充分利用该系统可以对用户的问题产生影响。比起个人电脑,问题可以被更快的解决。还有一种可能发生的情况是在同一时间有许多另外的用户在同一时间使用资源。当作业足够小,且能在个人计算机上合理的运行时,以及当个人计算机的性能能够充分的运行程序来达到用户的满意时,个人计算机是最好的,。 1.4在下面举出的三个功能中,哪个功能在下列两种环境下,(a)手持装置(b)实时系统需要操作系统的支持?(a)批处理程序(b)虚拟存储器(c)分时 答:对于实时系统来说,操作系统需要以一种公平的方式支持虚拟存储器和分时系统。对于手持系统,操作系统需要提供虚拟存储器,但是不需要提供分时系统。批处理程序在两种环境中都是非必需的。 1.5描述对称多处理(SMP)和非对称多处理之间的区别。多处理系统的三个优点和一个缺点? 答:SMP意味着所以处理器都对等,而且I/O可以在任何处理器上运行。非对称多处理有一个主处理器控制系统,与剩下的处理器是随从关系。主处理器为从处理器安排工作,而且I/O也只在主处理器上运行。多处理器系统能比单处理器系统节省资金,这是因为他们能共享外设,大容量存储和电源供给。它们可以更快速的运行程序和增加可靠性。多处理器系统能比单处理器系统在软、硬件上也更复杂(增加计算量、规模经济、增加可靠性) 1.6集群系统与多道程序系统的区别是什么?两台机器属于一个集群来协作提供一个高可靠性的服务器的要求是什么? 答:集群系统是由多个计算机耦合成单一系统并分布于整个集群来完成计算任务。另一方面,多道程序系统可以被看做是一个有多个CPU组成的单一的物理实体。集群系统的耦合度比多道程序系统的要低。集群系统通过消息进行通信,而多道程序系统是通过共享的存储空间。为了两台处理器提供较高的可靠性服务,两台机器上的状态必须被复制,并且要持续的更新。当一台处理器出现故障时,另一台处理器能够接管故障处理的功能。 1.7试区分分布式系统(distribute system)的客户机-服务器(client-server)模型与对等系统(peer-to-peer)模型 答:客户机-服务器(client-server)模型可以由客户机和服务器的角色被区分。在这种模型下,客户机向服务器发出请求,然后服务器满足这种请求。对等系统(peer-to-peer)模

现代操作系统(第三版)答案

MODERN OPERATING SYSTEMS SECOND EDITION PROBLEM SOLUTIONS ANDREW S.TANENBAUM Vrije Universiteit Amsterdam,The Netherlands PRENTICE HALL UPPER SADDLE RIVER,NJ 07458课后答案网 w w w .k h d a w .c o m

SOLUTIONS TO CHAPTER 1PROBLEMS 1.An operating system must provide the users with an extended (i.e.,virtual)machine,and it must manage the I/O devices and other system resources. 2.Multiprogramming is the rapid switching of the CPU between multiple processes in memory.It is commonly used to keep the CPU busy while one or more processes are doing I/O. 3.Input spooling is the technique of reading in jobs,for example,from cards,onto the disk,so that when the currently executing processes are ?nished,there will be work waiting for the CPU.Output spooling consists of ?rst copying printable ?les to disk before printing them,rather than printing directly as the output is generated.Input spooling on a personal computer is not very likely,but output spooling is. 4.The prime reason for multiprogramming is to give the CPU something to do while waiting for I/O to complete.If there is no DMA,the CPU is fully occu-pied doing I/O,so there is nothing to be gained (at least in terms of CPU utili-zation)by multiprogramming.No matter how much I/O a program does,the CPU will be 100percent busy.This of course assumes the major delay is the wait while data are copied.A CPU could do other work if the I/O were slow for other reasons (arriving on a serial line,for instance). 5.Second generation computers did not have the necessary hardware to protect the operating system from malicious user programs. 6.It is still alive.For example,Intel makes Pentium I,II,and III,and 4CPUs with a variety of different properties including speed and power consumption.All of these machines are architecturally compatible.They differ only in price and performance,which is the essence of the family idea. 7.A 25×80character monochrome text screen requires a 2000-byte buffer.The 1024×768pixel 24-bit color bitmap requires 2,359,296bytes.In 1980these two options would have cost $10and $11,520,respectively.For current prices,check on how much RAM currently costs,probably less than $1/MB. 8.Choices (a),(c),and (d)should be restricted to kernel mode. 9.Personal computer systems are always interactive,often with only a single user.Mainframe systems nearly always emphasize batch or timesharing with many users.Protection is much more of an issue on mainframe systems,as is ef?cient use of all resources. 10.Every nanosecond one instruction emerges from the pipeline.This means the machine is executing 1billion instructions per second.It does not matter at all how many stages the pipeline has.A 10-stage pipeline with 1nsec per 课后答案网 w w w .k h d a w .c o m

操作系统习题及答案一

习题一操作系统概论 选择题 1. 计算机的操作系统是一种() ■ A. 应用软件 B.系统软件 C.工其软件D 字表处理软件 2. 批处理系统的主要缺点是( ). A. CPU 的利用率不高 B.失去了交互性 C.不具备并行性 D.以上都不是 3. 计算机操作系统的功能是( ). A. 把源程序代码转换为标准代码 B. 实现计算机用户之间的相互交流 C. 完成计算机硬件与软件之间的转换 D. 控制、管理计算机系统的资源和程序的执行 4. 在分时系统中,时间片一定时, (),响应时间越长. A. 内存越多 B.用户数越多 C.内存越少 D 用户数 越少 5. 操作系统的( )管理部分负责对进程进行调度 . A?主存储器 B.控制器 C.运算器 D 处理机 6. 从用户的观点看,操作系统是( ). A. 用户与计算机之间的接口 B. 控制和管理计算机资源的软件 C. 合理地组织计算机工作流程的软件 D. 由若干层次的程序按一定的结构组成的有机体 7. 操作系统的功能是进行处理机管理、 ()管理、设备管理及信息管理 9. 操作系统是现代计算机系统不可缺少的组成部分,是 为了提咼计算机的( 户使用计算机而配备的一种系统软件 . 10. 所谓()是指将一个以上的作业放入主存,并且同时处于运行状态,这些作业共享处 和外围设备等其他资源. A.多重处理 B.多道程序设计 C.实时处理 D?并行执行 11. ()操作系统允许在一台主机上同时连接多台终端,多个用户可以通过各自的终端同 A. CPU 的利用率不高 C.不具备并行性 B.资源利用率 D.以上都不是 A.进程 B.存储器 C.硬件 D.软件 8.操作系统中采用多道程序设计技术提高 CPU 和外部设备的() A.利用率 B.效率 C.稳定性 D.兼容性 )和方便用 理机的时间

操作系统习题答案整理

内存 1通常情况下,在下列存储管理方式中,()支持多道程序设计、管理最简单,但存储碎片多;()使内存碎片尽可能少,而且使内存利用率最高。 Ⅰ.段式;Ⅱ.页式;Ⅲ.段页式;Ⅳ.固定分区;Ⅴ.可变分区 正确答案:Ⅳ;Ⅰ 2为使虚存系统有效地发挥其预期的作用,所运行的程序应具有的特性是()。 正确答案:该程序应具有较好的局部性(Locality) 3提高内存利用率主要是通过内存分配功能实现的,内存分配的基本任务是为每道程序()。使每道程序能在不受干扰的环境下运行,主要是通过()功能实现的。 Ⅰ.分配内存;Ⅱ.内存保护;Ⅲ.地址映射;Ⅳ.对换;Ⅴ.内存扩充;Ⅵ.逻辑地址到物理地址的变换;Ⅶ.内存到外存间交换;Ⅷ.允许用户程序的地址空间大于内存空间。 正确答案:Ⅰ;Ⅱ 4适合多道程序运行的存储管理中,存储保护是 正确答案:为了防止各道作业相互干扰 5下面哪种内存管理方法有利于程序的动态链接() 正确答案:分段存储管理 6在请求分页系统的页表增加了若干项,其中状态位供()参考。 正确答案:程序访问 7从下面关于请求分段存储管理的叙述中,选出一条正确的叙述()。 正确答案:分段的尺寸受内存空间的限制,但作业总的尺寸不受内存空间的限制 8虚拟存储器的特征是基于()。 正确答案:局部性原理 9实现虚拟存储器最关键的技术是()。 正确答案:请求调页(段) 10“抖动”现象的发生是由()引起的。 正确答案:置换算法选择不当 11 在请求分页系统的页表增加了若干项,其中修改位供()参考。 正确答案:换出页面 12 虚拟存储器是正确答案:程序访问比内存更大的地址空间 13测得某个请求调页的计算机系统部分状态数据为:CPU利用率20%,用于对换空间的硬盘的利用率%,其他设备的利用率5%。由此断定系统出现异常。此种情况下()能提高CPU的利用率。 正确答案:减少运行的进程数 14在请求调页系统中,若逻辑地址中的页号超过页表控制寄存器中的页表长度,则会引起()。 正确答案:越界中断 15 测得某个请求调页的计算机系统部分状态数据为:CPU利用率20%,用于对换空间的硬盘的利用率%,其他设备的利用率5%。由此断定系统出现异常。此种情况下()能提高CPU的利用率。 正确答案:加内存条,增加物理空间容量 16 对外存对换区的管理应以()为主要目标,对外存文件区的管理应以()为主要目标。 Ⅰ.提高系统吞吐量;Ⅱ.提高存储空间的利用率;Ⅲ.降低存储费用;Ⅳ.提高换入换出速度。 正确答案:Ⅳ;Ⅱ 17 在请求调页系统中,若所需的页不在内存中,则会引起()。 正确答案:缺页中断 18 虚拟存储器一般都引入关联存储器技术,关联存储器是 正确答案:按内容寻址 19 在请求分页系统的页表增加了若干项,其中访问位供()参考。 正确答案:置换算法 20 在动态分区式内存管理中,倾向于优先使用低址部分空闲区的算法是();能使内存空间中空闲区分布得较均匀的算法是();每次分配时,把既能满足要求,又是最小的空闲区分配给进程的算法是()。 Ⅰ.最佳适应算法;Ⅱ.最坏适应算法;Ⅲ.首次适应算法;Ⅳ.循环首次适应算法(即Next fit)。 正确答案:Ⅲ;Ⅳ;Ⅰ

操作系统习题答案

内存1通常情况下,在下列存储管理方式中,()支持多道程序设计、管理最简单,但存储碎片多;()使内存碎片尽可能少,而且使内存利用率最高。 Ⅰ.段式;Ⅱ.页式;Ⅲ.段页式;Ⅳ.固定分区;Ⅴ.可变分区 正确答案:Ⅳ;Ⅰ 2为使虚存系统有效地发挥其预期的作用,所运行的程序应具有的特性是()。 正确答案:该程序应具有较好的局部性(Locality) 3提高内存利用率主要是通过内存分配功能实现的,内存分配的基本任务是为每道程序()。使每道程序能在不受干扰的环境下运行,主要是通过()功能实现的。Ⅰ.分配内存;Ⅱ.内存保护;Ⅲ.地址映射;Ⅳ.对换;Ⅴ.内存扩充;Ⅵ.逻辑地址到物理地址的变换;Ⅶ.内存到外存间交换;Ⅷ.允许用户程序的地址空间大于内存空间。 正确答案:Ⅰ;Ⅱ 4适合多道程序运行的存储管理中,存储保护是 正确答案:为了防止各道作业相互干扰 5下面哪种内存管理方法有利于程序的动态链接()? 正确答案:分段存储管理

6在请求分页系统的页表增加了若干项,其中状态位供()参考。 正确答案:程序访问 7从下面关于请求分段存储管理的叙述中,选出一条正确的叙述()。 正确答案:分段的尺寸受内存空间的限制,但作业总的尺寸不受内存空间的限制8虚拟存储器的特征是基于()。 正确答案:局部性原理 9实现虚拟存储器最关键的技术是()。 正确答案:请求调页(段) 10“抖动”现象的发生是由()引起的。 正确答案:置换算法选择不当 11 在请求分页系统的页表增加了若干项,其中修改位供()参考。 正确答案:换出页面 12 虚拟存储器是正确答案:程序访问比内存更大的地址空间 13测得某个请求调页的计算机系统部分状态数据为:CPU利用率20%,用于对换空间的硬盘的利用率97.7%,其他设备的利用率5%。由此断定系统出现异常。此种情况下()能提高CPU的利用率。

《现代操作系统第四版》第三章答案

第三章内存管理习题 1.IBM360有一个设计,为了对2KB大小的块进行加锁,会对每个块分配一个4bit的密钥,这个密钥存在PSW(程序状态字)中,每次内存引用时,CPU都会进行密钥比较。但该设计有诸多缺陷,除了描述中所言,请另外提出至少两条缺点。 A:密钥只有四位,故内存只能同时容纳最多十六个进程;需要用特殊硬件进行比较,同时保证操作迅速。 2.在图3-3中基址和界限寄存器含有相同的值16384,这是巧合,还是它们总是相等?如果这只是巧合,为什么在这个例子里它们是相等的? A:巧合。基地址寄存器的值是进程在内存上加载的地址;界限寄存器指示存储区的长度。 3.交换系统通过紧缩来消除空闲区。假设有很多空闲区和数据段随机分布,并且读或写32位长的字需要10ns的时间,紧缩128MB大概需要多长时间?为了简单起见,假设空闲区中含有字0,内存中最高地址处含有有效数据。 A:32bit=4Byte===>每字节10/4=2.5ns 128MB=1282^20=2^27Byte 对每个字节既要读又要写,22.5*2^27=671ms 4.在一个交换系统中,按内存地址排列的空闲区大小是10MB,4MB,20MB,18MB,7MB,9MB,12MB,和15MB。对于连续的段请求: (a) 12MB (b) 10MB (c) 9MB

使用首次适配算法,将找出哪个空闲区?使用最佳适配、最差适配、下次适配算法呢? A:首次适配算法:20MB,10MB,18MB;最佳适配算法:12MB,10MB,9MB;最差适配算法:20MB;18MB;15MB;下次适配算法:20MB;18MB;9MB; 5.物理地址和虚拟地址有什么区别? A:实际内存使用物理地址。这些是存储器芯片在总线上反应的数字。虚拟地址是指一个进程的地址空间的逻辑地址。因此,具有32位字的机器可以生成高达4GB的虚拟地址,而不管机器的内存是否多于或少于4GB。 6.对下面的每个十进制虚拟地址,分別使用4KB页面和8KB页面计算虚拟页号和偏移量:20000,32768,60000。 A:转换为二进制分别为:0100111000100000 虚拟地址应该是16位1000000000000000 1110101001100000 4KB页面偏移量范围0~4027,需要12位来存储偏移量,剩下4位作为页号;同理8KB页面需要13位来存储偏移量,剩下3位作为页号;所以,4KB | 8KB 页号| 偏移量| 页号| 偏移量20000 | 0100 111000100000 | 010 0111000100000 32768 | 1000 000000000000 | 100 0000000000000 60000 | 1110 101001100000 | 111 0101001100000 7. 使用图3-9的页表,给出下面每个虚拟地址对应的物理地址:

操作系统例题讲解

操作系统例题讲解 一、调度算法 对如下表所示的5个进程: 采用可剥夺的静态最高优先数算法进行调度(不考虑系统开销)。 问 题: ⑴ 画出对上述5个进程调度结果的Gantt 图; ⑵ 计算5个进程的平均周转时间、平均带权周转时间。 解: ⑴ 调度结果的Gantt 图如下: 0 2 4 5 7 9 10 12 14 (2) 时间计算: 二、存储管理 某系统采用虚拟页式存储管理方式,页面大小为2KB ,每个进程分配的页框数固定为4页。采用局部置换策略,置换算法采用改进的时钟算法,当有页面新装入内存时,页表的时钟指针指向新装入页面的下一个在内存的表项。设当前进程P 的页表如下(“时钟”指针指向逻辑页面3的表项): 逻辑页号 0 1 2 3 4 5 问 题: ⑴ 当进程P 依次对逻辑地址执行下述操作: ① 引用 4C7H ; ② 修改 19B4H ; ③ 修改 0C9AH ; 写出进程P 的页表内容; ⑵ 在 ⑴ 的基础上,当P 对逻辑地址27A8H 进行访问, 该逻辑地址对应的物理地址是多少?

解:页面大小为2KB,2KB=2×210=211, 即逻辑地址和物理地址的地址编码的低11位为页内偏移; ⑴①逻辑地址4C7H=0100 1100 0111B,高于11位为0,所以该地址访问逻辑页面0; 引用4C7H,页表表项0:r=1; ②逻辑地址19B4H=0001 1001 1011 0100B,高于11位为3,所以该地址访问逻辑页面3; 修改19B4H,页表表项3:r=1, m=1; ③逻辑地址0C9AH=0000 1100 1001 1010B,高于11位为1,所以该地址访问逻辑页面1; 逻辑页1不在内存,发生缺页中断; ①、②两操作后,P的页表如下: 逻辑页号 1 2 3 4 5 按改进的时钟算法,且时钟指针指向表项3,应淘汰0页面, 即把P的逻辑页面1读到内存页框101H,页表时钟指针指向表项2。 并执行操作:修改0C9AH。 经上述3个操作后,P的页表如下: 逻辑页号 1 2 3 4 5 ⑵逻辑地址27A8H=0010 0111 1010 1000B,高于11位为4,所以该地址访问逻辑页面4; 页面4不在内存,发生缺页中断;按改进的时钟算法,淘汰页面2,页面4读到110H页框, 所以,逻辑地址27A8H对应的物理地址为: 0001 0001 0000 111 1010 1000B=887A8H。 三、设备与I/O管理 设系统磁盘只有一个移动磁头,磁道由外向内编号为:0、1、2、……、199;磁头移动一个磁道所需时间为1毫秒;每个磁道有32 个扇区;磁盘转速R=7500r/min. 系统对磁盘设备的I/O请求采用N-Step Look (即N-Step Scan,但不必移动到磁道尽头),N=5。设当前磁头在60号磁道,向内移动;每个I/O请求访问磁道上的1个扇区。现系统依次接收到对磁道的I/O请求序列如下: 50, 20, 60, 30, 75, 30, 10, 65, 20, 80,15, 70 问题: ⑴写出对上述I/O请求序列的调度序列,并计算磁头引臂的移动量; ⑵计算:总寻道时间(启动时间忽略)、总旋转延迟时间、总传输时间和总访问处理时间。 解:⑴考虑序列中有重复磁道的I/O请求,调度序列为: 60→75→50→30→20→15→10→65→70→80 磁头移动量=(75-60)+(75-50)+(50-30)+(30-20)+ (20-15)+(15-10)+(65-10)+(70-65)+(80-70) =15+25+20+10+5+5+55+5+10=155(磁道)

计算机操作系统(第三版-汤小丹等)课后习题答案(全)整理后

第一章操作系统引论 1.设计现代OS的主要目标是什么 答:(1)有效性(2)方便性(3)可扩充性(4)开放性 2.OS的作用可表现在哪几个方面 答:(1)OS作为用户与计算机硬件系统之间的接口;(2)OS作为计算机系统资源的管理者;(3)OS实现了对计算机资源的抽象。 3.为什么说OS实现了对计算机资源的抽象 答:OS首先在裸机上覆盖一层I/O设备管理软件,实现了对计算机硬件操作的第一层次抽象;在第一层软件上再覆盖文件管理软件,实现了对硬件资源操作的第二层次抽象。OS 通过在计算机硬件上安装多层系统软件,增强了系统功能,隐藏了对硬件操作的细节,由它们共同实现了对计算机资源的抽象。 4.试说明推动多道批处理系统形成和发展的主要动力是什么 答:主要动力来源于四个方面的社会需求与技术发展:(1)不断提高计算机资源的利用率;(2)方便用户;(3)器件的不断更新换代;(4)计算机体系结构的不断发展。 5.何谓脱机I/O和联机I/O 答:脱机I/O 是指事先将装有用户程序和数据的纸带或卡片装入纸带输入机或卡片机,在外围机的控制下,把纸带或卡片上的数据或程序输入到磁带上。该方式下的输入输出由外围机控制完成,是在脱离主机的情况下进行的。而联机I/O方式是指程序和数据的输入输出都是在主机的直接控制下进行的。 6.试说明推动分时系统形成和发展的主要动力是什么 答:推动分时系统形成和发展的主要动力是更好地满足用户的需要。主要表现在:CPU 的分时使用缩短了作业的平均周转时间;人机交互能力使用户能直接控制自己的作业;主机的共享使多用户能同时使用同一台计算机,独立地处理自己的作业。 7.实现分时系统的关键问题是什么应如何解决 答:关键问题是当用户在自己的终端上键入命令时,系统应能及时接收并及时处理该命令,在用户能接受的时延内将结果返回给用户。解决方法:针对及时接收问题,可以在系统中设置多路卡,使主机能同时接收用户从各个终端上输入的数据;为每个终端配置缓冲区,暂存用户键入的命令或数据。针对及时处理问题,应使所有的用户作业都直接进入内存,并且为每个作业分配一个时间片,允许作业只在自己的时间片内运行,这样在不长的时间内,能使每个作业都运行一次。

《现代操作系统第四版》 第六章 答案

第四章文件系统习题 Q1: 给出文件/etc/passwd的五种不同的路径名。(提示:考虑目录项”.”和”…”。) A: /etc/passwd /./etc/passwd /././etc/passwd /./././etc/passwd /etc/…/etc/passwd /etc/…/etc/…/etc/passwd /etc/…/etc/…/etc/…/etc/passwd /etc/…/etc/…/etc/…/etc/…/etc/passwd Q2:在Windows中,当用户双击资源管理器中列出的一个文件时,就会运行一个程序,并以这个文件作为参数。操作系统要知道运行的是哪个程序,请给出两种不同的方法。 A:Windows使用文件扩展名。每种文件扩展名对应一种文件类型和某些能处理这种类型的程序。另一种方式时记住哪个程序创建了该文件,并运行那个程序。Macintosh以这种方式工作。

Q3:在早期的UNIX系统中,可执行文件(a.out)以一个非常特別的魔数开始,这个数不是随机选择的。这些文件都有文件头,后面是正文段和数据段。为什么要为可执行文件挑选一个非常特别的魔数,而其他类型文件的第一个字反而有一个或多或少是随机选择的魔数? A:这些系统直接把程序载入内存,并且从word0(魔数)开始执行。为了避免将header作为代码执行,魔数是一条branch指令,其目标地址正好在header之上。按这种方法,就可能把二进制文件直接读取到新的进程地址空间,并且从0 开始运行。 Q4: 在UNIX中open系统调用绝对需要吗?如果没有会产生什么结果? A: open调用的目的是:把文件属性和磁盘地址表装入内存,便与后续调用的快速访问。 首先,如果没有open系统调用,每次读取文件都需要指定要打开的文件的名称。系统将必须获取其i节点,虽然可以缓存它,但面临一个问题是何时将i节点写回磁盘。可以在超时后写回磁盘,虽然这有点笨拙,但它可能起作用。 Q5:在支持顺序文件的系统中总有一个文件回绕操作,支持随机存取

操作系统例题汇总

1.2例题精选 例如何理解虚拟机的概念? 解:一台仅靠由硬件组成的计算机一般被称为裸机,不易使用。操作系统为用户使用计算机提供了许多服务,从而把一台难于使用的裸机改造成了功能更强大、使用更方便的计算机系统,这种计算机系统称为虚拟机。所谓虚拟,是指把一个物理上的实体变为若干个逻辑上的对应物。前者是实际存在的,而后者是虚的,只是用户的一种感觉。在单CPU的计算机系统中能同时运行多道程序,好像每个程序都独享一个CPU,这就是虚拟。在构造操作系统时,把操作系统分成若干层,每层完成特定的功能,从而形成一个虚拟机。下层的虚拟机为上层的虚拟机提供服务,这样逐次扩充以完成操作系统的功能。 讨论“虚拟”的概念体现在操作系统的方方面面。例如,虚拟存储器,使一台只有4MB内存的计算机可以运行总容量远远超过4 MB的程序;虚拟外设,能够使多个用户同时访问该外设等。 例什么是多道程序设计,它的主要优点是什么? 解: 所谓多道程序设计是指把一个以上的程序存放在内存中,并且同时处于运行状态,这些程序共享CPU和其他计算机资源。其主要优点是: (1)CPU的利用率高:在单道程序环境下,程序独占计算机资源,当程序等待I/O操作时CPU空闲,造成CPU资源的浪费。在多道程序环境下,多个程序共享计算机资源,当某个程序等待 I/O操作时,CPU可以执行其他程序,这大大地提高了CPU的利用率。 (2)设备利用率高:在多道程序环境下,内存和外设也由多个程序共享,无疑也会提高内存和外设的利用率。 (3)系统吞吐量大:在多道程序环境下,资源的利用率大幅度提高,减少了程序的等待时间,提高了系统的吞吐量。 讨论多道程序在计算机中并发地运行是现代计算机系统的重要特征。早期的单道批处理系统与人工操作相比自动化程度大大提高,但系统中仍有较多的空闲资源,系统的性能较差。多遭批处理系统虽有很多优点,但这种系统交互能力差,作业的平均周转时间长。多道程序处理系统要解决的主要问题是,如何使多个程序合理、有序地共事处理机、内存、外设等资源。 例1.3 A, B两个程序,程序 A按顺序使用CPU 10 S,使用设备甲 5 S,使用 CPU 5 S,使用设备乙 10 S,最后使用 CPU 10 S。程序 B按顺序使用设备甲 10 S,使用 CPU 10 S,使用设备乙5S,使用CPU 5S,使用设备乙 10S。(忽略调度程序执行时间)试问: (1)在顺序环境下执行程序A和程序B,CPU的利用率是多少? (2)在多道程序环境下, CPU的利用率是多少? 解(1)程序A和程序B顺序执行时,程序A执行完毕,程序B才开始执行。两个程序共耗时80S,其中占用CPU时间为40S,顺序执行时CPU的利用率为50%。 (2)在多道程序环境下,两个程序并发执行,其执行情况如图所示。可以看出,两个程序共耗时45S,其中占用CPU时间为40S,故此时CPU的利用率为40/45=%。 讨论 (1)在单道程序环境下,程序顺序执行,CPU被一道程序独占,即使CPU空闲,其他程序也不能使用,所以 CPU的利用率低。 (2)在多道程序环境下,若干个程序宏观上同时执行,微观上交替执行。当其中一个程序由于某种原因(例如进行1/O操作)而不能占用CPU时,其他程序就可以占用CPU,提高了CPU的利用率。

操作系统(第二版)习题答案

第1章 一、填空 1.计算机由硬件系统和软件系统两个部分组成,它们构成了一个完整的计算机系统。 2.按功能划分,软件可分为系统软件和应用软件两种。 3.操作系统是在裸机上加载的第一层软件,是对计算机硬件系统功能的首次扩充。 4.操作系统的基本功能是处理机(包含作业)管理、存储管理、设备管理和文件管理。 5.在分时和批处理系统结合的操作系统中引入“前台”和“后台”作业的概念,其目的是改善系统功能,提高处理能力。 6.分时系统的主要特征为多路性、交互性、独立性和及时性。 7.实时系统与分时以及批处理系统的主要区别是高及时性和高可靠性。 8.若一个操作系统具有很强的交互性,可同时供多个用户使用,则是分时操作系统。 9.如果一个操作系统在用户提交作业后,不提供交互能力,只追求计算机资源的利用率、大吞吐量和作业流程的自动化,则属于批处理操作系统。 10.采用多道程序设计技术,能充分发挥CPU 和外部设备并行工作的能力。 二、选择 1.操作系统是一种 B 。 A.通用软件B.系统软件C.应用软件D.软件包2.操作系统是对 C 进行管理的软件。 A系统软件B.系统硬件C.计算机资源D.应用程序3.操作系统中采用多道程序设计技术,以提高CPU和外部设备的A。 A.利用率B.可靠性C.稳定性D.兼容性4.计算机系统中配置操作系统的目的是提高计算机的 B 和方便用户使用。 A.速度B.利用率C.灵活性D.兼容性5. C 操作系统允许多个用户在其终端上同时交互地使用计算机。 A.批处理B.实时C.分时D.多道批处理6.如果分时系统的时间片一定,那么 D ,响应时间越长。 A.用户数越少B.内存越少C.内存越多D.用户数越多 三、问答 1.什么是“多道程序设计”技术?它对操作系统的形成起到什么作用? 答:所谓“多道程序设计”技术,即是通过软件的手段,允许在计算机内存中同时存放几道相互独立的作业程序,让它们对系统中的资源进行“共享”和“竞争”,以使系统中

操作系统教程习题答案

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

习题1 1.单项选择题 (1)大中小型计算机是以为中心的计算机系统。 A、CPU 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、并发性是指两个及多个事件在同一时刻发生 B、并发性是指两个及多个事件在同一时间间隔内发生 C、并行性是指两个及多个事件在同一时间间隔内发生 D、并发性是指进程,并行性是指程序 (1)B (2)B (3)A (4)B (5)D (6)B 2.填空题 (1)微机是以总线为纽带构成的计算机系统。 (2)在批处理兼分时系统中,往往把由分时系统控制的作业称为前台作业,把由批处理系统控制的作业称为后台作业。 (3)在分时系统中,若时间片长度一定,则用户数越多,系统响应时间越慢。 (4)分布式操作系统能使系统中若干台计算机协同完成一个共同的任务,分解问题成为子计算并使之在系统中各台计算机上并行执行,以充分利用各计算机的优势。 (5)用户通过网络操作系统可以网络通信、资源共享,从而大大扩展了计算机的应用范围。 3.简答题 (1)什么是操作系统?现代操作系统的基本特征是什么?并发性 (2)什么是批处理系统,衡量批处理系统好坏的主要指标是什么?及时性 (3)试述分时系统的原理及其特性。时间片原则交互性同时性独立性及时性

计算机操作系统习题及答案()

第3章处理机调度1)选择题 (1)在分时操作系统中,进程调度经常采用_D_ 算法。 A. 先来先服务 B. 最高优先权 C. 随机 D. 时间片轮转 (2)_B__ 优先权是在创建进程时确定的,确定之后在整个进程运行期间不再改变。 A. 作业 B. 静态 C. 动态 D. 资源 (3)__A___ 是作业存在的惟一标志。 A. 作业控制块 B. 作业名 C. 进程控制块 D. 进程名 (4)设有四个作业同时到达,每个作业的执行时间均为2小时,它们在一台处理器上按单道方式运行,则平均周转时间为_ B_ 。 A. l小时 B. 5小时 C. 2.5小时 D. 8小时 (5)现有3个同时到达的作业J1、J2和J3,它们的执行时间分别是T1、T2和T3,且T1<T2<T3。系统按单道方式运行且采用短作业优先算法,则平均周转时间是_C_ 。 A. T1+T2+T3 B. (T1+T2+T3)/3 C. (3T1+2T2+T3)/3 D. (T1+2T2+3T3)/3 (6)__D__ 是指从作业提交给系统到作业完成的时间间隔。 A. 运行时间 B. 响应时间 C. 等待时间 D. 周转时间 (7)下述作业调度算法中,_ C_调度算法与作业的估计运行时间有关。 A. 先来先服务 B. 多级队列 C. 短作业优先 D. 时间片轮转 2)填空题 (1)进程的调度方式有两种,一种是抢占(剥夺)式,另一种是非抢占(非剥夺)式。 (2)在_FCFS_ 调度算法中,按照进程进入就绪队列的先后次序来分配处理机。 (3)采用时间片轮转法时,时间片过大,就会使轮转法转化为FCFS_ 调度算法。 (4)一个作业可以分成若干顺序处理的加工步骤,每个加工步骤称为一个_作业步_ 。 (5)作业生存期共经历四个状态,它们是提交、后备、运行和完成。 (6)既考虑作业等待时间,又考虑作业执行时间的调度算法是_高响应比优先____ 。 3)解答题 (1)单道批处理系统中有4个作业,其有关情况如表3-9所示。在采用响应比高者优先调度算法时分别计算其平均周转时间T和平均带权周转时间W。(运行时间为小时,按十进制计算) 表3-9 作业的提交时间和运行时间

操作系统习题答案整理

存 1通常情况下,在下列存储管理方式中,()支持多道程序设计、管理最简单,但存储碎片多;()使存碎片尽可能少,而且使存利用率最高。 Ⅰ.段式;Ⅱ.页式;Ⅲ.段页式;Ⅳ.固定分区;Ⅴ.可变分区 正确答案:Ⅳ;Ⅰ 2为使虚存系统有效地发挥其预期的作用,所运行的程序应具有的特性是()。 正确答案:该程序应具有较好的局部性(Locality) 3提高存利用率主要是通过存分配功能实现的,存分配的基本任务是为每道程序()。使每道程序能在不受干扰的环境下运行,主要是通过()功能实现的。 Ⅰ.分配存;Ⅱ.存保护;Ⅲ.地址映射;Ⅳ.对换;Ⅴ.存扩充;Ⅵ.逻辑地址到物理地址的变换;Ⅶ.存到外存间交换;Ⅷ.允许用户程序的地址空间大于存空间。 正确答案:Ⅰ;Ⅱ 4适合多道程序运行的存储管理中,存储保护是 正确答案:为了防止各道作业相互干扰 5下面哪种存管理方法有利于程序的动态()? 正确答案:分段存储管理 6在请求分页系统的页表增加了若干项,其中状态位供()参考。 正确答案:程序访问 7从下面关于请求分段存储管理的叙述中,选出一条正确的叙述()。 正确答案:分段的尺寸受存空间的限制,但作业总的尺寸不受存空间的限制 8虚拟存储器的特征是基于()。 正确答案:局部性原理 9实现虚拟存储器最关键的技术是()。 正确答案:请求调页(段) 10“抖动”现象的发生是由()引起的。 正确答案:置换算法选择不当 11 在请求分页系统的页表增加了若干项,其中修改位供()参考。 正确答案:换出页面 12 虚拟存储器是正确答案:程序访问比存更大的地址空间 13测得某个请求调页的计算机系统部分状态数据为:CPU利用率20%,用于对换空间的硬盘的利用率97.7%,其他设备的利用率5%。由此断定系统出现异常。此种情况下()能提高CPU的利用率。 正确答案:减少运行的进程数 14在请求调页系统中,若逻辑地址中的页号超过页表控制寄存器中的页表长度,则会引起()。 正确答案:越界中断 15 测得某个请求调页的计算机系统部分状态数据为:CPU利用率20%,用于对换空间的硬盘的利用率97.7%,其他设备的利用率5%。由此断定系统出现异常。此种情况下()能提高CPU的利用率。 正确答案:加存条,增加物理空间容量 16 对外存对换区的管理应以()为主要目标,对外存文件区的管理应以()为主要目标。 Ⅰ.提高系统吞吐量;Ⅱ.提高存储空间的利用率;Ⅲ.降低存储费用;Ⅳ.提高换入换出速度。 正确答案:Ⅳ;Ⅱ 17 在请求调页系统中,若所需的页不在存中,则会引起()。 正确答案:缺页中断 18 虚拟存储器一般都引入关联存储器技术,关联存储器是 正确答案:按容寻址 19 在请求分页系统的页表增加了若干项,其中访问位供()参考。 正确答案:置换算法 20 在动态分区式存管理中,倾向于优先使用低址部分空闲区的算法是();能使存空间中空闲区分布得较均匀的算法是();每次分配时,把既能满足要求,又是最小的空闲区分配给进程的算法是()。 Ⅰ.最佳适应算法;Ⅱ.最坏适应算法;Ⅲ.首次适应算法;Ⅳ.循环首次适应算法(即Next fit)。 正确答案:Ⅲ;Ⅳ;Ⅰ

相关主题
文本预览
相关文档 最新文档