实用操作系统教程【第2版】课后习题参考答案

上传人:小** 文档编号:92325167 上传时间:2019-07-09 格式:PDF 页数:29 大小:727.45KB
返回 下载 相关 举报
实用操作系统教程【第2版】课后习题参考答案_第1页
第1页 / 共29页
实用操作系统教程【第2版】课后习题参考答案_第2页
第2页 / 共29页
实用操作系统教程【第2版】课后习题参考答案_第3页
第3页 / 共29页
实用操作系统教程【第2版】课后习题参考答案_第4页
第4页 / 共29页
实用操作系统教程【第2版】课后习题参考答案_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《实用操作系统教程【第2版】课后习题参考答案》由会员分享,可在线阅读,更多相关《实用操作系统教程【第2版】课后习题参考答案(29页珍藏版)》请在金锄头文库上搜索。

1、 实用操作系统教程(第 2 版)课后习题参考答案 1 习题 1 操作系统概述 一、选择题 题号 1 2 3 4 5 6 7 8 9 10 答案 B D C D C D A C D D 题号 11 12 13 14 15 16 17 18 19 20 答案 B C C C B D B B B A 二、综合题 1、 答: 并发性和并行性是既相似又有区别的两个概念。 并行性是指两个或多个事件在同一时刻 发生;而并发性是指两个或多个事件在同一时间间隔内发生。 、 在单处理器系统中只有一条指令流水线, 一个多功能的操作部件, 某时刻处理机只能执行 一个进程, 进程与进程之间不能并行执行, 只能并发执行。

2、 但在各种 I/O 控制技术的帮助下, 处理机、通道和设备之间都能进行并发。 (1)处理机和设备之间的并行,能够发生。 (2)处理机和通道之间的并行,能够发生。 (3)通道和通道之间的并行,能够发生。 (4)设备和设备之间的并行,能够发生。 2、答: 以多道程序技术为基础的现代操作系统具有 4 个基本特征: (1)并发性:多个程序并发执行,宏观并行,微观串行。 (2)共享性:多个程序共享系统中的所有资源 (3)虚拟性:操作系统为每个进程都虚拟出了一整套其所需的软硬件资源,让进程所属的 用户感觉到自己独占整个系统。 操作系统通过进程状态转换实现虚拟性。 当进程被切换出去 运行态时, 它的运行环境

3、被操作系统保存, 当把再次被调度程序选中切换到运行态时恢复其 运行环境继续上次运行状态继续运行。 (4)异步性:并发执行的各个进程之间运行时间、运行顺序具有不确定性,即异步性,程 序执行已经失去的封闭性和可再现性。操作系统通过同步机制保证多个进程能够正确的执 行。 3、答: 多道程序设计技术是指同时把多个程序放入内存并允许交替执行和共享系统中的各类 资源,当一个程序因某种原因(如 I/O 请求)而暂停执行时,CPU 立即转去执行另一个程序。 操作系统在引入多道程序设计技术后,使得系统内有了多个程序(进程) ,它们宏观上看同 时执行,微观上看仍然是串行。 多道程序设计技术的优点:多道程序交替穿插

4、执行,提高了 CPU、内存和 I/O 设备的利 用率;在保持 CPU、I/O 设备不断工作的同时,导致系统吞吐量的上升。 4、答: 推动批处理系统形成和发展的主要动力是“不断提高系统资源利用率”和“提高系统吞 吐量” 。这主要表现在:脱机输入/输出技术的应用和作业的自动过渡大大地提高了 I/O 的速 实用操作系统教程(第 2 版)课后习题参考答案 2 度及 I/O 设备与 CPU 并行工作的程度, 减少了主机 CPU 的空闲时间;多道程序设计技术的应 用更进一步提高了 CPU、内存和 I/O 设备的利用率及系统的吞吐率。 推动分时系统形成和发展的主要动力是“为了更好地满足用户的需要” 。这主要

5、表现在: CPU 的分时使用缩短了作业的平均周转时间;人机交互能力的提高使用户能方便地直接控制 自己的作业;主机的共享使多个用户(包括远程用户)能同时使用同一台计算机独立地、互 补干扰地处理自己的作业。 5、答: 不确定性指在多道程序设计环境下,系统中每道程序的推进时间、顺序以及完成时间由 于受其运行环境的影响是不确定的、 不可预知的。 程序的执行是以 “走走停停” 的方式运行。 不确定性增加了操作系统的设计与实现难度,操作系统设计者必须采取一定的措施保证 系统不出现结果随机性。 6、答: 按层次结构的原则从内到外排列为:裸机、CPU 调度,进程同步操作,内存管理,作业 管理,设备管理,文件管

6、理、命令管理和用户。 7、答: (1)批处理系统的特点:用户脱机使用计算机,作业成批处理,系统内多道程序并发执行, 交互能力差。 (2)分时系统的特点:多个用户同时使用计算机,人机交互性强,具有每个用户独立使用 计算机的独占性,以及系统响应的及时性。 (3)实时系统的特点:实时性、可靠性,但系统资源利用率较低。 8、答: 顺序执行时,CPU 运行时间为(10+5+10)+(10+5)=40s,两个程序运行总时间为: 40+40=80s,故利用率是 40/80=50% 多道程序环境下,如下图所示,CPU 的运行时间为 40s,两个程序运行总时间为 45s,故 利用率是 40/45=88.9% 9

7、、答:进程运行情况如下图所示: 程序 A 5 50 10 程序 B 15 20 35 30 25 40 45 甲 乙 乙 乙 甲 CPU CPU CPU CPU CPU 实用操作系统教程(第 2 版)课后习题参考答案 3 (1)CPU 在 100-150ms 时间段内空闲,利用率为 250/300=83.3% (2)进程 A 无等待现象。 (3)进程 B 有等待现象,0-50ms 和 180-200ms。 10、答:便于设计安全可靠的操作系统。核心态和用户态是计算机硬件为保护操作系统免 受用户程序的干扰和破坏而设置的两种状态。 通常操作系统在核心态下运行, 可以执行所有 机器指令;而用户程序在

8、用户态下运行,只能执行非特权指令。如果用户程序企图在核心态 下运行,只能执行非特权指令。如果用户程序企图在核心态下执行特权指令,将会引起保护 性中断, 由操作系统终止该程序的执行, 从而保护了操作系统。 如果允许用户执行特权指令, 就有可能干扰操作系统的正常运行,甚至有可能使整个系统崩溃。 11、答:库函数是语言或应用程序的一部分,可以运行在用户空间中。而系统调用是操作系 统的一部分,是内核提供给用户的程序接口,运行在内核空间中,而且许多库函数都会使用 系统调用来实现其功能。没有使用系统调用的库函数,执行效率通常比系统调用高,因为使 用系统调用时,需要上下文的切换以及状态的转换(从用户态转为核

9、心态) 。 12、答:从操作系统结构设计观点看,早期的操作系统主要是单处理机操作系统,在结构设 计方法上主要采用整体结构设计模式和层次式结构设计模式。 传统的整体式、层次式结构设计法对计算机系统(如网络系统、分布式系统及多处理机 系统)而言则有较大缺陷,不能满足需求。后来出现了虚拟机结构操作系统、微内核结构操 作系统,对称多处理系统操作系统等。 13、答: 微内核结构操作系统的内核尽量简单,仅存放最基本、最主要的核心功能模块;其他服 务和应用建立在内核之上, 作为系统进程或用户进程运行。 微内核结构操作系统有以下三个 主要优点。 良好扩充性。只需添加支持新功能的服务进程即可增加新功能。 可靠性

10、高。调用关系明确,执行转移不易混乱。 便于网络服务和分布式处理。 程序 A 250 50 程序 B 150 200 100 300 CPU CPU CPU 打印 打印 CPU 输入 实用操作系统教程(第 2 版)课后习题参考答案 4 习题 2 进程、线程管理 一、选择题 题号 1 2 3 4 5 6 7 8 9 10 答案 B B D C D C A B D C 题号 11 12 答案 A A 二、综合题 2、 答:在多道程序环境下,允许多个程序并发执行,这就导致了在操作系统中引入了“进 程” 。进程是随着操作系统中分时思想的提出而引出的。进程是一个可并发执行的具有 独立功能的程序在某个数据集

11、合的一次执行过程,它是操作系统进行资源分配和保护的 基本单位。 进程和程序的最大区别就是进程是程序的一次执行过程,它是一个动态概念。程序 是以文件形式存放在磁盘上的代码序列,它是一个静态概念。 进程能够并发执行。在同一段时间内,并发执行的若干进程共享一个处理机,各个 进程按照不同的推进速度运行。进程状态及其转换可以很好地描述并发执行进程的执行过 程。 进程是计算机系统资源分配的基本单位,程序不能作为一个独立单位运行和申请系 统资源。 进程由含有代码和数据的用户地址空间、进程控制块和执行栈区等部分组成,而程 序只由静态代码组成。 进程和程序之间是多对多的关系。一个程序可被多个进程共用,一个进程在

12、其活动 中又可调用若干个程序。 2、答: 原语是由若干条机器指令组成的、用于完成一定功能的一个过程。原语不可分割,其执 行期间不充许被中断,要么从头到尾执行一遍,要么全不执行。原语的特征保证其在执行过 程中不受外界因素的影响。 原语的一般实现方法是以系统调用的方式提供原语接口, 原语在执行过程中采用屏蔽中断的 方式来保证其不能被中断。原语常驻内存,只在核心态下运行。通常情况下,原语只提供给 系统进程或系统服务器使用。 3、答: 传统操作系统通过进程的并发执行提高了系统资源利用率和作业吞吐量,但进程模型 存在如下局限性。 每个进程都有一个进程控制块和一个私有的用户地址空间,如果按进程进行并发控

13、制, 那么在同一个地址空间中只允许单个执行序列运行。 显然, 在不进行地址变换的情况下, 只允许一个执行序列运行,处理机资源仍然不能得到充分利用。 一个进程内部只有一个执行序列,不能满足用户让一个进程内部并发执行多个任务 的要求。 进程在处理机上的频繁切换给系统 造成大量时空开销, 这限制了系统中并发执行进 程的数目,降低了系统并发执行程序。 实用操作系统教程(第 2 版)课后习题参考答案 5 进程通信代价大。进程间传递信息时,要把消息从一个进程的工作区传送到另一个 进程的工作区,这需要操作系统提供进程通信机制并且给编程者带来负担。 不适合并行计算和分布并行计算的要求。对于多处理机和分布式的计

14、算环境来说, 进程之间大量频繁的通信和切换,会大大降低并行度。 线程是进程内部一个相对独立的、 具有可调度特性的执行单元。 一个进程可包含多个线 程。 4、答:内核支持线程(Kernel Supported Threads, KST)是由内核负责管理线程的创建、 撤消和切换等,在内核空间为每一个内核支持线程设置一个线程控制块。 内核支持线程实现方式主要有以下优点: 多处理器系统中,可以调度使一进程中的多个线程同时执行。 提高了线程的并发执行程度,如果进程中的一个线程被阻塞了,内核可调度该进程 中的其它线程或其它进程中的线程运行。 内核支持线程具有很小的数据结构和堆栈,线程切换开销小,切换速度快

15、。 内核本身也可采用多线程技术,提高系统并发执行程度。 内核支持线程实现方式的主要缺点是系统需频繁进行用户态和核心态的转换, 模式切换 开销较大。这是因为用户线程在用户态下运行,但线程的调度和管理由系统内核实现,系统 内核负担较大。 用户级线程(User Level Threads, ULT)仅存在于用户空间中,与内核无关。这种线程 的创建、撤消、线程间切换、同步和通信等功能,都无需利用系统调用来实现,不需要内核 支持。就内核而言,它只是管理常规进程,而感知不到用户级线程的存在。 用户级线程实现的主要优点: 不需要得到内核的支持,因此线程开销小,速度快。 用户线程和系统线程的调度算法可分开设计

16、,线程库对用户线程的调度算法与操作 系统的调度算法无关,线程库可提供多种调度算法供应用程序选择使用。 平台无关性好,用户级线程的实现与系统平台无关。 用户级线程实现的主要缺点: 在基于进程机制的操作系统中,内核以进程为单位进行调度,这样如果进程中某一 个线程阻塞可能导致整个进程阻塞。 在单纯的用户级线程实现方式中,内核每次分派给一个进程仅有一个 CPU,因此无法让 同一进程的多个线程在多个处理机上同时运行。 5、答: (1)调度 传统操作系统中, 拥有资源的基本单位和独立调度的基本单位都是进程。 引入线程的操作系 统中,线程作为 CPU 调度的基本单位,真正在处理机上运行的是线程,进程仍作为拥有资源 的基本单位。 同一进程中的线程切换不会引起进程切换; 但一个进程中的线程切换到另外一 个进程中的线程时,仍将会引起进程切换。 (2)并发性 引入线程的操作系统中, 一个进程可有多个线程, 并且线程只能在该进程的地址空间内活动。 进程之间的并发执行转变为更多个线程的并发执行,操作系统具有更好的并发性

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号