《操作系统--精髓与设计原理》第二章复习题

第二章    操作系统概述

复习题

1、 操作系统设计的三个目标:

方便:操作系统使计算机更易于使用。

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

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

2、操作系统的内核

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

3、多道程序设计

多道程序设计是一种处理器操作,允许在两个或多个程序间交错处理每个进程。

4、进程

被操作系统控制和选择的一个正在执行的程序。

5、操作系统使用进程上下文的方式

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

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

上下文包括操作系统管理进程以及处理器正确执行进程所需要的所有信息,包括各种处理器寄存器的内容,如程序计数器和数据寄存器。它还包括操作系统使用的信息,如进程优先级以及进程是否在等待特定I/O事件的完成。

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

进程隔离:操作系统必须保护独立的进程。防止互相干扰各自的存储空间,包括数据和指令。

自动分配和管理:程序应该根据需要在存储层次间动态地分配,分配对程序员是透明的。 因此,程序员无须关心与存储限制有关的问题,操作系统会有效地实现分配问题,可仅在需要时才给作业分配存储空间。

支持模块化程序设计:程序员应该能够定义程序模块,并动态地创建、销毁模块、动态地改变模块的大小。

保护和访问控制:不论在存储层次中的哪一级,存储器的共享都会产生一个程序访问另一个程序存储空间的潜在可能性。当某个特定的应用程序需要共享时,这是可取的。但在其他时候,它可能会威胁到程序的完整性,甚至威胁到操作系统自身。操作系统必须允许一部分内存可以由各种用户以各种方式进行访问。

长期存储:许多应用程序需要在计算机关机后长时间地保存信息。

7、实地址和虚地址的区别

程序通过虚地址访问字,虚地址由页号和页中的偏移量组成。进程的每页都可置于内存中的任何地方,分页系统提供了程序中使用的虚地址和内存中的实地址或物理地址之间的动态映射。

8、描述时间片轮转调度算法

操作系统维护了多个队列,每个队列代表等待某些资源的进程列表。短程列表由在内存中(或至少最基本的部分在内存中)并等待处理器可用时随时准备运行的进程组成。任何一个这样的进程可在下一步使用处理器,但究竟选择哪个进程取决于短期调度器或分派器。时间片轮转调度算法是常用的一种调度策略,这种算法依次给短程队列中的每个进程分配一定的时间,时间片轮转技术使用了一个环形队列。

9、解释单体内核和微内核的区别

单体内核:提供操作系统应提供的大多数功能,包括调度、文件系统、网络、设备驱动器、存储管理等。典型情况下,这个大内核是作为一个进程实现的,所有元素都共享相同的地址空间。

微内核:微内核只给内核分配一些基本的功能,包括地址空间,进程间通信和基本的调度。基本操作系统服务则由运行在用户模式且与其他应用程序类似的进程提供,这些进程可根据特定的应用和环境需求进行定制,有时也成这些进程为服务器。这种方法分离了内核和服务程序的开发,可为特定应用程序或环境要求定制服务程序。微内核方法可使系统结构的设计更加简单、灵活,非常适合于分布式环境。实际上,微内核可以按相同的方式与本地和远程服务进程交互,使分布式系统的构造更为方便。

10、什么是多线程

多线程技术是指把执行一个应用程序的进程划分为可以同时运行的多个线程。多线程对于执行许多本质上独立且不需要串行处理的应用程序很有用,例监听和处理很多客户请求的数据库服务器。在同一个进程中运行多个线程时,在线程间来回切换所涉及的处理器开销要比在不同进程间进行切换的开销少。线程对构造进程也非常有用,进程是操作系统内核的一部分。

11、列出对称多处理(Symmetric MultiProcessing, SMP)操作系统设计时要考虑的关键问题

SMP操作系统管理处理器资源和其他计算机资源,以使用户能以与多道单处理器系统相同的方式看待SMP系统。用户可能会使用多进程和多线程的方式来构建应用,而不关心计算机使用的是单处理器还是多处理器。因此,多处理操作系统不仅要提供多道系统的所有功能,而且必须提供适应多处理器需要的额外功能。关键设计问题如下:

并发进程和线程:内核程序应可重入,以使多个处理器能同时执行同一段内核代码。当多个处理器执行内核的相同或不同部分时,为避免数据损坏和无效操作,需要稳妥管理内核表和数据结构

调度:任何一个处理器都可以执行调度,这既增加了执行调度策略的复杂度,也增加了保证调度相关数据结构不被损坏的复杂度。如果使用的是内核级多线程方式,就存在将同一进程的多个线程同时调度在多个处理器上的可能性。

同步:因为可能会存在多个活跃进程访问共享地址空间或共享I/O资源的情况,因此必须认真考虑如何提高有效的同步机制这一问题。同步用来实现互斥及事件排序。在多处理操作系统中,锁是一种通用的同步机制。

内存管理:多处理器上的内存管理要处理单处理器上内存管理涉及的所有问题,还要充分利用硬件提供的并行性来实现最优性能。不同处理器上的分页机制必须进行调整,以实现多处理器共享页或段时的数据一致性,执行页面置换。物理页的重用是我们关注的最大问题,即必须保证物理页在重新使用前不能访问到它以前的内容。

可靠性和容错性:出现处理器故障时,操作系统应能妥善地降低故障的影响。调度器和操作系统的其他部分必须能识别出发生故障的处理器,并重新组织管理表。


猜你喜欢

转载自blog.csdn.net/qq_36414798/article/details/80586747