《操作系统精髓与设计原理·第六版》中文版标准答案

合集下载

《操作系统概念》第六版作业解答

《操作系统概念》第六版作业解答
place processes of 212K; 417K; 112K; and 426K in order? Which algorithm
makes the most efficient use of memory?
First fit





->500288
->600183
->288
->none
initially empty:
a. for int j = 0; j < 100; j++
for int i = 0; i < 100; i++
Aij = 0;

b. for int i = 0; i < 100; i++
for int j = 0; j < 100; j++
Aij = 0;
a. 100x50
of I/O; the process table and page table are updated and
the instruction is restarted.
10-cont.

10.6 Consider the following page-replacement algorithms. Rank
schemes could be used successfully with this hardware?













a. Bare machine
b. Single-user system
c. Multiprogramming with a fixed number of processes

操作系统操作精髓与设计原理习题解答

操作系统操作精髓与设计原理习题解答






ww
-2-
w.
kh
da
w.
co m
NOTICE
co m
This manual contains solutions to all of the review questions and homework problems in Operating Systems, Fifth Edition . If you spot an error in a solution or in the wording of a problem, I would greatly appreciate it if you would forward the information via email to me at ws@. An errata sheet for this manual, if needed, is available at ftp:///members/w/s/ws/S/ W.S.
SOLUTIONS MANUAL
OPERATING SYSTEMS: INTERNALS AND DESIGN PRINCIPLES
ww
Copyright 2004: William Stallings



WILLIAM STALLINGS


w.
kh
da
FIFTH EDITION
w.
co m
© 2004 by William Stallings All rights reserved. No part of this document may be reproduced, in any form or by any means, or posted on the Internet, without permission in writing from the author.

操作系统-精髓与设计原理 WILLIAM STALLINGS 课后答案

操作系统-精髓与设计原理 WILLIAM STALLINGS 课后答案

……………………………
0x0000EC00 0x00000016 ; (a=22=0x16)
0x0000EC04 0x0000009E ; (b=158=0x9E)
0x0000EC08 0x00000000 ; (c=0=0x00, or it can be anything)
Instruction Contents
b. if CPU-bound process is denied access to the processor ==> the CPU-bound process won't use the processor in the recent past. ==> the CPU-bound process won't be permanently denied access.
b. $0.60/hour. 2.3 The countermeasure taken was to cancel any job request that had been waiting for
PC → MAR
0x0000B128
M → MBR
0x0200EC00
MBR → IR
0x0200EC00
IR → MAR
0x0000EC00
M → MBR
0x00000016
MBR → AC
0x00000016
PC → MAR M → MBR MBR → IR IR → MAR M → MBR MBR + AC → AC
-6-
www.khd课后a答w案.网com
CHAPTER 2 OPERATING SYSTEM OVERVIEW
2.1 a. I/O-bound processes use little processor time; thus, the algorithm will favor I/O-bound processes.

操作系统课后答案详细讲解

操作系统课后答案详细讲解

操作系统课后答案详细讲解第一章操作系统引论思量与练习题1.什么是操作系统?它的主要功能是什么?2.什么是多道程序设计技术?多道程序设计技术的主要特点是什么?3.批处理系统是怎样的一种操作系统?它的特点是什么?4.什么是分时系统?什么是实时系统?试从交互性,准时性,自立性,多路性,牢靠性等几个方面比较分时系统和实施系统。

5.实时系统分为哪俩种类型?6.操作系统主要特征是什么?7.操作系统也用户的接口有几种?它们各自用在什么场合?8.“操作系统是控制硬件的软件”这一说法确切吗?为什么?9.设存中有三道程序,A,B,C,它们按A~B~C的先后挨次执行,它们举行“计算”和“I/o操作”的时光如表1-2所示,假设三道程序使用相同的I/O设备。

(1)试画出单道运行时三道程序的时光关系图,并计算完成三道程序要花多少时光。

(2)试画出多道运行时三道程序的时光关系图,并计算完成三道程序要花多少时光。

10.将下列左右两列词衔接起来形成意义最恰当的5对。

DOS 网络操作系统OS/2 自由软件UNIX 多任务Linux 单任务Windows NT 为开发操作系统而设计C语言11.挑选一个现代操作系统,查找和阅读相关的技术资料,写一篇关于操作系统如何举行存管理、存储管理、设备管理和文件管理的文章。

答案1.答:操作系统是控制和管理计算机的软、硬件资源,合理地组织计算机的工作流程,以便利用户使用的程序集合。

2.答:把多个自立的程序同时放入存,使她们分享系统中的资源。

1)多道,即计算机存中同时放多道互相自立的程序。

2)宏观上并行,是指共识进入系统的多道程序都处于运行过程。

3)微观上串行,是指在单道处理机环境下,存中的多道程序轮番地占有CPU,交替执行。

3.答:批处理操作系统是一种基本的操作系统类型。

在该系统中用户的作业被成批地输入到计算机中,然后在操作系统的控制下,用户的作业自动的执行。

特点是:资源利用率高。

系统吞吐量大。

平均周转时光长。

操作系统精髓与设计原理课后复习题答案

操作系统精髓与设计原理课后复习题答案

操作系统精髓与设计原理课后复习题答案第1章计算机系统概述1.1 列出并简要地定义计算机的四个主要组成部分。

主存储器,存储数据和程序;算术逻辑单元,能处理⼆进制数据;控制单元,解读存储器中的指令并且使他们得到执⾏;输⼊/输出设备,由控制单元管理。

1.2 定义处理器寄存器的两种主要类别。

⽤户可见寄存器:优先使⽤这些寄存器,可以使机器语⾔或者汇编语⾔的程序员减少对主存储器的访问次数。

对⾼级语⾔⽽⾔,由优化编译器负责决定把哪些变量应该分配给主存储器。

⼀些⾼级语⾔,如C语⾔,允许程序⾔建议编译器把哪些变量保存在寄存器中。

控制和状态寄存器:⽤以控制处理器的操作,且主要被具有特权的操作系统例程使⽤,以控制程序的执⾏。

1.3 ⼀般⽽⾔,⼀条机器指令能指定的四种不同操作是什么?处理器-寄存器:数据可以从处理器传送到存储器,或者从存储器传送到处理器。

处理器-I/O:通过处理器和I/O模块间的数据传送,数据可以输出到外部设备,或者从外部设备输⼊数据。

数据处理:处理器可以执⾏很多关于数据的算术操作或逻辑操作。

控制:某些指令可以改变执⾏顺序。

1.4 什么是中断?中断:其他模块(I/O,存储器)中断处理器正常处理过程的机制。

1.5 多中断的处理⽅式是什么?处理多中断有两种⽅法。

第⼀种⽅法是当正在处理⼀个中断时,禁⽌再发⽣中断。

第⼆种⽅法是定义中断优先级,允许⾼优先级的中断打断低优先级的中断处理器的运⾏。

1.6 内存层次的各个元素间的特征是什么?存储器的三个重要特性是:价格,容量和访问时间。

1.7 什么是⾼速缓冲存储器?⾼速缓冲存储器是⽐主存⼩⽽快的存储器,⽤以协调主存跟处理器,作为最近储存地址的缓冲区。

1.8 列出并简要地定义I/O操作的三种技术。

可编程I/O:当处理器正在执⾏程序并遇到与I/O相关的指令时,它给相应的I/O模块发布命令(⽤以执⾏这个指令);在进⼀步的动作之前,处理器处于繁忙的等待中,直到该操作已经完成。

中断驱动I/O:当处理器正在执⾏程序并遇到与I/O相关的指令时,它给相应的I/O模块发布命令,并继续执⾏后续指令,直到后者完成,它将被I/O模块中断。

操作系统精髓与设计原理英汉对照th

操作系统精髓与设计原理英汉对照th

操作系统精髓与设计原理英汉对照Introduction操作系统是计算机系统的重要组成部分,它管理计算机硬件资源并提供了一种资源的抽象化与共享机制,从而方便应用程序的运行。

本文是一个操作系统精髓与设计原理的英汉对照,旨在帮助读者更好地理解操作系统的基本概念,系统结构,进程管理和调度,内存管理,文件系统,和设备管理等核心概念。

Operating System操作系统(Operating System)是一种多任务处理程序,它负责管理计算机硬件和资源,为用户和其他软件提供服务。

它是一个核心控制程序,用于控制计算机中所有其他程序的执行和交互。

Kernel内核(Kernel)是操作系统的核心,它是运行硬件和其他软件之间的接口。

内核是操作系统的关键组件,负责管理系统所有的资源和进程。

Process Management进程管理(Process Management)是操作系统中的关键部分,负责管理和控制系统中运行的所有进程。

进程是指正在执行的程序实例。

它们是计算机中最基本的执行单元。

Scheduling调度(Scheduling)是管理操作系统中所有进程的过程。

调度程序通过决定何时执行进程以及何时将进程转移到等待状态来协调进程之间的执行。

Memory Management内存管理(Memory Management)是操作系统中的另一个核心任务,负责管理机器的内存。

操作系统通过内存管理来确保每个程序都具有所需的内存,以便正常运行。

File Systems文件系统(File Systems)是操作系统中的一个组成部分,负责管理和组织机器上存储器的访问。

操作系统会将磁盘上的文件逻辑地分成若干段,称为“文件”,以使它们易于查找和管理。

Device Management设备管理(Device Management)是操作系统中最后一个重要的组成部分,它负责管理计算机硬件,识别和管理所有外部设备,如打印机,键盘,扫描仪和鼠标等。

操作系统-精髓与设计原理 WILLIAM STALLINGS 课后答案

操作系统-精髓与设计原理 WILLIAM STALLINGS 课后答案

www.khd课a后答w案.网com
-2-
www.khd课后a答w案.网com
TABLE OF CONTENTS Chapter 1 Computer System Overview...............................................................4 Chapter 2 Operating System Overview...............................................................7 Chapter 3 Process Description and Control........................................................8 Chapter 5 Concurrency: Mutual Exclusion and Synchronization .................10 Chapter 6 Concurrency: Deadlock and Starvation ..........................................17 Chapter 7 Memory Management .......................................................................20 Chapter 8 Virtual Memory ..................................................................................22 Chapter 9 Uniprocessor Scheduling...................................................................28 Chapter 11 I/O Management and Disk Scheduling ........................................32 Chapter 12 File Management ..............................................................................34

操作系统——精髓与设计原理(第五章答案)

操作系统——精髓与设计原理(第五章答案)
hut(); • signal(returnreindeer)//释放驯鹿返回互斥信号量} • } • Kids i:{making toys; • wait(needhelp);//获得需要帮助信号量 • Kidscount++; • if elvescount==3 • signal(wakesanta);//释放唤醒圣诞 //老人信号量 • else signal(needhelp);//释放需要帮助互 //斥信号量 • }
• 5.9 • 错误情形:假设有2个进程都调用Wait且s的 初值为0。在第一个进程执行完 SignalB(mutex)且尚未执行WaitB(delay)时, 第二个进程开始调用Wait,也停在同一点 (即SignalB(mutex)和WaitB(delay)之间)。 这时,s的值为-2,而mutex是打开的。假如 有另外2个进程在这时相继调用了Signal, 那么他们每个都会做SignalB(delay)操作, 但程序中后一个SignalB将没有意义。
总述: • 当一个进程希望进入其临界区,它将得到 一张票,票的号码将是所有等待进入临界 区或已在临界区的进程所得到票的号码中 最大者加1。拥有最小票号的进程将率先进 入临界区。如果有多个进程得到的票具有 相同的号码,则进程号更小的进程将更占 优势。当一个进程离开其临界区,它将重 置其中票号为0。
• b.解释此算法如何避免死锁 • 死锁时的情形:每个人都拿到了顺序号,但 都拿不到面包。 • 在本算法中即使顺序号相同,但数组下标是 不同的。所以进程总可推进不会发生死锁。 • c.解释此算法如何加强互斥; • (1)对临界资源面包是按照顺序号互斥的使用 • (2)对number数组的操作通过写操作前置true 保证其它进程此时不能对其读,从而保证读 写互斥。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《操作系统精髓与设计原理·第六版》中文版答案————————————————————————————————作者:————————————————————————————————日期:2复习题答案第1章计算机系统概述1.1 列出并简要地定义计算机的四个主要组成部分。

主存储器,存储数据和程序;算术逻辑单元,能处理二进制数据;控制单元,解读存储器中的指令并且使他们得到执行;输入/输出设备,由控制单元管理。

1.2 定义处理器寄存器的两种主要类别。

用户可见寄存器:优先使用这些寄存器,可以使机器语言或者汇编语言的程序员减少对主存储器的访问次数。

对高级语言而言,由优化编译器负责决定把哪些变量应该分配给主存储器。

一些高级语言,如C语言,允许程序言建议编译器把哪些变量保存在寄存器中。

控制和状态寄存器:用以控制处理器的操作,且主要被具有特权的操作系统例程使用,以控制程序的执行。

1.3 一般而言,一条机器指令能指定的四种不同操作是什么?处理器-寄存器:数据可以从处理器传送到存储器,或者从存储器传送到处理器。

处理器-I/O:通过处理器和I/O模块间的数据传送,数据可以输出到外部设备,或者从外部设备输入数据。

数据处理:处理器可以执行很多关于数据的算术操作或逻辑操作。

控制:某些指令可以改变执行顺序。

1.4 什么是中断?中断:其他模块(I/O,存储器)中断处理器正常处理过程的机制。

1.5 多中断的处理方式是什么?处理多中断有两种方法。

第一种方法是当正在处理一个中断时,禁止再发生中断。

第二种方法是定义中断优先级,允许高优先级的中断打断低优先级的中断处理器的运行。

1.6 内存层次的各个元素间的特征是什么?存储器的三个重要特性是:价格,容量和访问时间。

1.7 什么是高速缓冲存储器?高速缓冲存储器是比主存小而快的存储器,用以协调主存跟处理器,作为最近储存地址的缓冲区。

1.8 列出并简要地定义I/O操作的三种技术。

可编程I/O:当处理器正在执行程序并遇到与I/O相关的指令时,它给相应的I/O模块发布命令(用以执行这个指令);在进一步的动作之前,处理器处于繁忙的等待中,直到该操作已经完成。

中断驱动I/O:当处理器正在执行程序并遇到与I/O相关的指令时,它给相应的I/O模块发布命令,并继续执行后续指令,直到后者完成,它将被I/O模块中断。

如果它对于进程等待I/O的完成来说是不必要的,可能是由于后续指令处于相同的进程中。

否则,此进程在中断之前将被挂起,其他工作将被执行。

直接存储访问:DMA模块控制主存与I/O模块间的数据交换。

处理器向DMA模块发送一个传送数据块的请求,(处理器)只有当整个数据块传送完毕后才会被中断。

1.9 空间局部性和临时局部性间的区别是什么?空间局部性是指最近被访问的元素的周围的元素在不久的将来可能会被访问。

临时局部性(即时间局部性)是指最近被访问的元素在不久的将来可能会被再次访问。

1.10 开发空间局部性和时间局部性的策略是什么?空间局部性的开发是利用更大的缓冲块并且在存储器控制逻辑中加入预处理机制。

时间局部性的开发是利用在高速缓冲存储器中保留最近使用的指令及数据,并且定义缓冲存储的优先级。

第2章操作系统概述2.1 操作系统设计的三个目标是什么?方便:操作系统使计算机更易于使用。

有效:操作系统允许以更有效的方式使用计算机系统资源。

扩展的能力:在构造操作系统时,应该允许在不妨碍服务的前提下有效地开发、测试和引进新的系统功能。

2.2 什么是操作系统的内核?内核是操作系统最常使用的部分,它存在于主存中并在特权模式下运行,响应进程调度和设备中断。

2.3 什么是多道程序设计?多道程序设计是一种处理操作,它在两个或多个程序间交错处理每个进程。

2.4 什么是进程?进程是一个正在执行的程序,它被操作系统控制和选择。

2.5 操作系统是怎么使用进程上下文的?执行上下文又称为进程状态,是操作系统用来管理和控制所需的内部数据。

这种内部信息和进程是分开的,因为操作系统信息不允许被进程直接访问。

上下文包括操作系统管理进程以及处理器正确执行进程所需要的所有信息,包括各种处理器寄存器的内容,如程序计数器和数据寄存器。

它还包括操作系统使用的信息,如进程优先级以及进程是否在等待特定I/O事件的完成。

2.6 列出并简要介绍操作系统的五种典型存储管理职责。

进程隔离:操作系统必须保护独立的进程,防止互相干涉数据和存储空间。

自动分配和管理:程序应该根据需要在存储层次间动态的分配,分配对程序员是透明的。

因此,程序员无需关心与存储限制有关的问题,操作系统有效的实现分配问题,可以仅在需要时才给作业分配存储空间。

2.7 解释实地址和虚地址的区别。

虚地址指的是存在于虚拟内存中的地址,它有时候在磁盘中有时候在主存中。

实地址指的是主存中的地址。

2.8 描述轮循调度技术。

轮循调度是一种调度算法,所有的进程存放在一个环形队列中并按固定循序依次激活。

因为等待一些事件(例如:等待一个子进程或一个I/O操作)的发生而不能被处理的进程将控制权交给调度器。

2.9 解释单体内核和微内核的区别。

单体内核是一个提供操作系统应该提供的功能的大内核,包括调度、文件系统、网络、设备驱动程序、存储管理等。

内核的所有功能成分都能够访问它的内部数据结构和程序。

典型情况下,这个大内核是作为一个进程实现的,所有元素都共享相同的地址空间。

微内核是一个小的有特权的操作系统内核,只提供包括进程调度、内存管理、和进程间通信等基本功能,要依靠其他进程担当起和操作系统内核联系作用。

2.10 什么是多线程?多线程技术是指把执行一个应用程序的进程划分成可以同时运行的多个线程。

第3章进程描述和控制3.1 什么是指令跟踪?指令跟踪是指为该进程而执行的指令序列。

3.2 通常那些事件会导致创建一个进程?新的批处理作业;交互登录;操作系统因为提供一项服务而创建;由现有的进程派生。

(表3.1)3.3 对于图3.6中的进程模型,请简单定义每个状态。

运行态:该进程正在执行。

就绪态:进程做好了准备,只要有机会就开始执行。

阻塞态:进程在某些事件发生前不能执行,如I/O操作完成。

新建态:刚刚创建的进程,操作系统还没有把它加入到可执行进程组中。

退出态:操作系统从可执行进程组中释放出的进程,或者是因为它自身停止了,或者是因为某种原因被取消。

3.4 抢占一个进程是什么意思?处理器为了执行另外的进程而终止当前正在执行的进程,这就叫进程抢占。

3.5 什么是交换,其目的是什么?交换是指把主存中某个进程的一部分或者全部内容转移到磁盘。

当主存中没有处于就绪态的进程时,操作系统就把一个阻塞的进程换出到磁盘中的挂起队列,从而使另一个进程可以进入主存执行。

3.6 为什么图3.9(b)中有两个阻塞态?有两个独立的概念:进程是否在等待一个事件(阻塞与否)以及进程是否已经被换出主存(挂起与否)。

为适应这种2*2的组合,需要两个阻塞态和两个挂起态。

3.7 列出挂起态进程的4个特点。

1.进程不能立即执行。

2.进程可能是或不是正在等待一个事件。

如果是,阻塞条件不依赖于挂起条件,阻塞事件的发生不会使进程立即被执行。

3.为了阻止进程执行,可以通过代理把这个进程置于挂起态,代理可以是进程自己,也可以是父进程或操作系统。

4.除非代理显式地命令系统进行状态转换,否则进程无法从这个状态中转移。

3.8 对于哪类实体,操作系统为了管理它而维护其信息表?内存、I/O、文件和进程。

3.9 列出进程控制块中的三类信息。

进程标识,处理器状态信息,进程控制信息。

3.10 为什么需要两种模式(用户模式和内核模式)?用户模式下可以执行的指令和访问的内存区域都受到限制。

这是为了防止操作系统受到破坏或者修改。

而在内核模式下则没有这些限制,从而使它能够完成其功能。

3.11 操作系统创建一个新进程所执行的步骤是什么?1.给新进程分配一个唯一的进程标识号。

2.给进程分配空间。

3.初始化进程控制块。

4.设置正确的连接。

5.创建或扩充其他的数据结构。

3.12 中断和陷阱有什么区别?中断与当前正在运行的进程无关的某些类型的外部事件相关,如完成一次I/O操作。

陷阱与当前正在运行的进程所产生的错误或异常条件相关,如非法的文件访问。

3.13 举出中断的三个例子。

时钟终端,I/O终端,内存失效。

3.14 模式切换和进程切换有什么区别?发生模式切换可以不改变当前正处于运行态的进程的状态。

发生进程切换时,一个正在执行的进程被中断,操作系统指定另一个进程为运行态。

进程切换需要保存更多的状态信息。

第4章线程、对称多处理和微内核4.1 表3.5列出了在一个没有线程的操作系统中进程控制块的基本元素。

对于多线程系统,这些元素中那些可能属于线程控制块,那些可能属于进程控制块?这对于不同的系统来说通常是不同的,但一般来说,进程是资源的所有者,而每个线程都有它自己的执行状态。

关于表3.5中的每一项的一些结论如下:进程标识:进程必须被标识,而进程中的每一个线程也必须有自己的ID。

处理器状态信息:这些信息通常只与进程有关。

进程控制信息:调度和状态信息主要处于线程级;数据结构在两级都可出现;进程间通信和线程间通信都可以得到支持;特权在两级都可以存在;存储管理通常在进程级;资源信息通常也在进程级。

4.2 请列出线程间的模式切换比进程间的模式切换开销更低的原因。

包含的状态信息更少。

4.3 在进程概念中体现出的两个独立且无关的特点是什么?资源所有权和调度/执行。

4.4 给出在单用户多处理系统中使用线程的四个例子。

前台和后台操作,异步处理,加速执行和模块化程序结构。

4.5 哪些资源通常被一个进程中的所有线程共享?例如地址空间,文件资源,执行特权等。

4.6 列出用户级线程优于内核级线程的三个优点。

1.由于所有线程管理数据结构都在一个进程的用户地址空间中,线程切换不需要内核模式的特权,因此,进程不需要为了线程管理而切换到内核模式,这节省了在两种模式间进行切换(从用户模式到内核模式;从内核模式返回用户模式)的开销。

2.调用可以是应用程序专用的。

一个应用程序可能倾向于简单的轮询调度算法,而另一个应用程序可能倾向于基于优先级的调度算法。

调度算法可以去适应应用程序,而不会扰乱底层的操作系统调度器。

3.用户级线程可以在任何操作系统中运行,不需要对底层内核进行修改以支持用户级线程。

线程库是一组供所有应用程序共享的应用级软件包。

4.7 列出用户级线程相对于内核级线程的两个缺点。

1.在典型的操作系统中,许多系统调用都会引起阻塞。

因此,当用户级线程执行一个系统调用时,不仅这个线程会被阻塞,进程中的所有线程都会被阻塞。

2.在纯粹的用户级进程策略中,一个多线程应用程序不能利用多处理技术。

内核一次只把一个进程分配给一个处理器,因此一次进程中只能有一个线程可以执行。

相关文档
最新文档