操作系统课后题挑选

上传人:tia****nde 文档编号:36871126 上传时间:2018-04-03 格式:DOCX 页数:10 大小:31.89KB
返回 下载 相关 举报
操作系统课后题挑选_第1页
第1页 / 共10页
操作系统课后题挑选_第2页
第2页 / 共10页
操作系统课后题挑选_第3页
第3页 / 共10页
操作系统课后题挑选_第4页
第4页 / 共10页
操作系统课后题挑选_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《操作系统课后题挑选》由会员分享,可在线阅读,更多相关《操作系统课后题挑选(10页珍藏版)》请在金锄头文库上搜索。

1、操作系统课后题挑选整理操作系统课后题挑选整理GLGL1.41.4 在下面举出的三个功能中,哪个功能在下列两种环境下,在下面举出的三个功能中,哪个功能在下列两种环境下,(a)(a)手持装置手持装置(b)(b) 实时系统需要操作系统的支持?实时系统需要操作系统的支持?(a)(a)批处理程序批处理程序(b)(b)虚拟存储器虚拟存储器(c)(c)分时分时 Answer:Answer:对于实时系统来说,操作系统需要以一种公平的方式支持虚拟存储器和 分时系统。对于手持系统,操作系统需要提供虚拟存储器,但是不需要提供分 时系统。批处理程序在两种环境中都是非必需的。 1.101.10 中断(中断(interu

2、ptinterupt)的目的是什么?陷阱()的目的是什么?陷阱(traptrap)与中断的区别是什么?陷)与中断的区别是什么?陷 阱可以被用户程序(阱可以被用户程序(useruser programprogram)有意地的产生吗?如果可以,那目的是什)有意地的产生吗?如果可以,那目的是什 么?么? AnswerAnswer: 中断是一种在系统内硬件产生的流量变化。中断操作装置是用来处理 中断请求;然后返回控制中断的上下文和指令。陷阱是软件产生的中断。中断 可以被用来标志 I/O 的完成,从而排除设备投票站(device polling)的需要。 陷阱可以被用来调用操作系统的程序或者捕捉到算术错

3、误。 1.111.11 内存存储是被用于高速的内存存储是被用于高速的 I/OI/O 设备,其目的是为了避免增加设备,其目的是为了避免增加 CPUCPU 的过度运的过度运 行。行。 (a)(a)设备的设备的 CPUCPU 接口是怎样与转换器(接口是怎样与转换器(transfertransfer)协作的?)协作的? (b)(b)当内存操作完全时,当内存操作完全时,CPUCPU 是怎么知道的?是怎么知道的? (c)(c)当当 DMADMA 控制器正在转换数据时,控制器正在转换数据时,CPUCPU 是被允许运行其它程序的。这种进是被允许运行其它程序的。这种进 程与用户程序的运行冲突吗?如果冲突的话,试

4、描述可能引起哪种冲突?程与用户程序的运行冲突吗?如果冲突的话,试描述可能引起哪种冲突? Answer:Answer: CPU 可以通过写数据到可以被设备独立存储的寄存器中来启动 DMA 操 作。当设备接收到来自 CPU 的命令时,启动响应的操作。当设备完成此操作时, 就中断 CPU 来说明操作已经完成。设备和 CPU 都可以被内存同时访问。内存控 制器对这两个实体以公平的方式给内存总线提供存取。CPU 可能不能同时以很 快的速度配给给内存操作,因为它必须去竞争设备而使得自己存取到内存总线 中去。 1.121.12 一些计算机系统没有在硬件中提供个人模式(一些计算机系统没有在硬件中提供个人模式(

5、privilegedprivileged modemode) 。对于这。对于这 种计算机系统来说,可能构成安全的操作系统吗?对可能和不可能两种情况分种计算机系统来说,可能构成安全的操作系统吗?对可能和不可能两种情况分 别给出理由。别给出理由。 Answer:Answer:一种类型处理器的操作系统需要在任何时候都被控制(或监测模式) 。 有两种方法可以完成这个操作:a.所有用户程序的软件翻译(像一些 BASIC,Java,LISP systems) 。在软件中,软件解释程序能够提供硬件所不能 提供的。b.要求所有程序都用高级语言编写,以便于所以目标代码都被编译出 来。编译器将会产生硬件忽略的防护

6、性检查(in-line 或功能调用) 。 1.151.15 试描述一个机器装置为了阻止一个程序避免修改与其它程序有联系的内存试描述一个机器装置为了阻止一个程序避免修改与其它程序有联系的内存 而执行内存保护。而执行内存保护。 AnswerAnswer:处理器可以追踪哪个位置是与每个进程相联系的以及限制进入一个程序 的范围的外面位置。信息与一个程序的内存范围有关,它可以通过使用库,限 制寄存器和对每个进入内存的信息执行检查来维持其本身。 2.12.1 操作系统提供的服务和功能可以分为两个类别。简单的描述一下这两个类操作系统提供的服务和功能可以分为两个类别。简单的描述一下这两个类 别并讨论他们的不同

7、点。别并讨论他们的不同点。 Answer:Answer:第一种操作系统提供的服务是用来保护在系统中同时运行的不同进程。 进程只被允许获得与它们地址空间有联系的内存位置。同样,进程不允许破坏 和其他用户有关的文件。一个进程同样不允许在没有操作系统的干预下直接进入设备。第二种服务由操作系统提供的服务是提供一种新的功能,而这种功能 并不直接被底层的硬件支持。虚拟存储器和文件系统就是由操作系统提供的这 种新服务的实例。 2.22.2 列出操作系统提供的五项服务。说明每项服务如何给用户提供便利。说明列出操作系统提供的五项服务。说明每项服务如何给用户提供便利。说明 在哪些情况下用户级程序不能够提够这些服务

8、。在哪些情况下用户级程序不能够提够这些服务。 Answer:Answer: a.文件执行.操作系统一个文件的目录(或章节)装入到内存并运行。 一个用户程序不能被信任,妥善分配 CPU 时间。 b.I/O 操作. 磁盘,磁带,串行线,和其他装置必须在一个非常低的水平下进 行通信。用户只需要指定装置和操作执行要求,然后该系统的要求转换成装置 或控制器的具体命令.用户级程序不能被信任只在他们应该获得时获得装置和只 使用那些未被使用的装置。 c.文件系统操作.在文件创建、删除、分配和命名时有许多细节是用户不能执行 的。磁盘空间块被文件所使用并被跟踪。删除一个文件需要清除这个文件的信 息和释放被分派给这

9、个文件的空间。用户程序不仅不能够保证保护方法的有效 实施,也不能够被信任只会分配空闲的空间和在删除文件是清空空间。 d.通信.信息在系统间交换要求信息转换成信息包,送到网络控制器中,通过通 信媒介进行传播,并由目的地系统重新组装。信息包调整和数据修改是一定会 发生的。此外,用户程序也许不能够协调网络装置的取得,或者接收完全不同 的其他进程的信息包。 e.错误检测.错误检测在硬件和软件水平下都会发生。在硬件水平下,所有数据 转移都必须仔细检查以确保数据在运送中不会被破坏。在媒介中的所有数据都 必须被检查以确保他们在写入媒介时没有被改变。在软件水平下,为了数据, 媒介不需不间断的被检查。例如,确保

10、信息存储中被分配和还未被分配的空间 块的数量和装置中所有块的数量的一致。进程独立经常有错误(例如,磁盘中 数据的破坏) ,所以必须有一个统筹的程序(操作系统)来处理各种错误。同样, 错误经过操作系统的处理,在一个系统中程序不再需要包含匹配和改正所遇可 能错误的代码。 2.52.5 操作系统关于文件管理的五个主要活动是什么?操作系统关于文件管理的五个主要活动是什么? Answer:Answer:1.创建和删除文件 2.创建和删除目录 3.提供操作文件和目录的原语的支持 4.将文件映射到二级存储器上 5.在稳定(非易失的)的存储媒介上备份文件。 2.82.8 通信的两种模式是什么?这两种模式的优点

11、和缺点是什么?通信的两种模式是什么?这两种模式的优点和缺点是什么? Answer:Answer:通信的两种模式是 1)共享内存,2)消息传递。这两种模式的最基本 的不同是在它们的性能上。一个内存共享块是通过系统调用创建的。然而,一 旦内存共享块在两个或更多的进程间建立,这些进程可以借助内存共享块来通 信,不再需要内核的协助。另一方面,当 send()和 receive()操作被调用时,信 息传递通常包含系统调用。因此,因为内核是直接的包含在进程间通信的,一 般而言,它的影响比内存共享小。然而,消息传递可以用作同步机制来处理通 信进程间的行动。也就是说,send()和 receive()段可以用

12、来协调两个通信进 程的动作。另一方面,内存共享没有提供这种同步机制的进程。 2.122.12 采用微内核方法来设计系统的主要优点是什么?在微内核中如何使客户程采用微内核方法来设计系统的主要优点是什么?在微内核中如何使客户程 序和系统服务相互作用?微内核方法的缺点是什么?序和系统服务相互作用?微内核方法的缺点是什么?Answer:Answer:优点主要包括以下几点: a)增加一个新的服务不需要修改内核 b) 在用户模式中比在内核模式中更安全、更易操作 c) 一个简单的内核设计和功能一般导致一个更可靠的操作系统 用户程序和系统服务通过使用进程件的通信机制在微内核中相互作用,例如发 送消息。这些消息

13、由操作系统运送。微内核最主要的缺点是与进程间通信的过 度联系和为了保证用户程序和系统服务相互作用而频繁使用操作系统的消息传 递功能。 2.132.13 模块化内核方法的什么方式与分层方法相似?什么方式与分层方法不同?模块化内核方法的什么方式与分层方法相似?什么方式与分层方法不同? Answer:Answer:模块化内核方法要求子系统通过创建的一般而言狭隘(从功能方面来说 是揭露外部模块)的接口来相互作用。分层内核方法在细节上与分层方法相似。 但是,分层内核必须要是有严格排序的子系统,这样的子系统在较低层次中不 允许援引业务相应的上层子系统 。在模块化内核方法中没有太多的限制,模式 在哪方面是随

14、意援引彼此的是没有任何约束的。 3.13.1 论述短期论述短期, ,中期和长期调度之间的区别中期和长期调度之间的区别. . Answer:Answer:a.短期调度:在内存作业中选择就绪执行的作业,并为他们分配 CPU。 b.中期调度:作为一种中等程度的调度程序,尤其被用于分时系统,一个交换方 案的实施,将部分运行程序移出内存,之后,从中断处继续执行。 c.长期调度(作业调度程序):确定哪些作业调入内存以执行. 它们主要的不同之处是它们的执行的频率。短期调度必须经常调用一个新进程, 由于在系统中,长期调度处理移动的作业时,并不频繁被调用,可能在进程离 开系统时才被唤起。 3.23.2 描述一下

15、内核在两个进程间进行上下文功换的动作描述一下内核在两个进程间进行上下文功换的动作. . Answer:Answer:总的来说,操作系统必须保存正在运行的进程的状态,恢复进程的状态。 保存进程的状态主要包括 CPU 寄存器的值以及内存分配,上下文切换还必须执 行一些确切体系结构的操作,包括刷新数据和指令缓存。 (书中答案)进程关联是由进程的 PCB 来表示的,它包括 CPU 寄存器的值和内 存管理信息等。当发生上下文切换时,内核会将旧进程的关联状态保存在其 PCB 中,然后装入经调度要执行的新进程的已保存的关联状态。 4.14.1 举两个多线程程序设计的例子来说明多线程不比单线程方案提高性能举两

16、个多线程程序设计的例子来说明多线程不比单线程方案提高性能 答:1)任何形式的顺序程序对线程来说都不是一个好的形式。例如一个计算个 人报酬的程序。 2)另外一个例子是一个“空壳”程序,如 C-shell 和 korn shell。这种程序 必须密切检测其本身的工作空间。如打开的文件、环境变量和当前工作目录。 4.24.2 描述一下线程库采取行动进行用户级线程上下文切换的过程描述一下线程库采取行动进行用户级线程上下文切换的过程 答:用户线程之间的上下文切换和内核线程之间的相互转换是非常相似的。但 它依赖于线程库和怎样把用户线程指给内核程序。一般来说,用户线程之间的 上下文切换涉及到用一个用户程序的轻量级进程(LWP)和用另外一个线程来代 替。这种行为通常涉及到寄存器的节约和释放。 4.44.4 以下程序中的哪些组成部分在多线程程序中是被线程共享的?以下程序中的哪些组成部分在多线程程序中是被线程共享的? a.a.寄存值寄存值 b.b.堆内存堆内存 c.c.全局变量全局变量 d.d.栈内存栈内存 答:一个线程程序的线程共享堆内存和全局变量,但每个线程都有属于自己的 一组寄存值和

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

最新文档


当前位置:首页 > 中学教育 > 试题/考题

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