操作系统引论 Q&A

1. 设计现代 OS 的主要目标是什么

方便性,有效性,可扩展性,开放性

2. OS 的作用可表现在哪几个方面

  • 硬件系统和用户之间的接口
  • 计算机系统资源的管理者(CPU、存储器、IO、文件)
  • 实现了对计算资源的抽象

3. 为什么说操作系统实现了对计算机资源的抽象

  1. IO设备管理软件实现了对计算机硬件操作的第一个层次的抽象;
  2. 文件管理软件实现了对硬件资源操作的第二个层次的抽象;
  3. 依此类推,如果在文件管理软件上再覆盖一层面向用户的窗口软件,则用户便可再窗口环境下方便地使用计算机,从而形成一台功能更强的虚拟机;
  4. OS 是铺设再计算机硬件上的多层软件的集合,它们不仅增强了系统的功能,还隐藏了对硬件操作的具体细节,实现了对计算机硬件操作的多个层次的抽象模型;

4.试说明推动多道批处理系统形成和发展的主要动力是什么

  1. 不断提高资源利用率
  2. 方便用户
  3. 器件的不断更新换代
  4. 计算机体系结构的不断发展
  5. 不断提出新的应用需求
  6. 提高系统吞吐量

5. 何谓脱机I/O和联机I/O?

脱机IO:事先将装有用户程序和数据的纸带装入纸带输入机,在一台外围机的控制下,把纸带上的数据输入到磁带上。当CPU需要这些程序和数据时,再从磁带上高速地调入内存

联机IO:在主机的直接控制下进行输入/输出的方式,称为联机输入/输出(On-Line I/O)方式

6. 试说明推动分时系统形成和发展的主要动力是什么。

  1. 满足用户的需要,主要表现在CPU的分时使用缩短了作业的使用周期;
  2. 人机交互能力使用户能直接的控制自己的作业;
  3. 主机的共享使多个用户能同时使用同一台计算机,独立处理自己的作业

7. 实现分时系统的关键问题是什么?应如何解决?

分时系统的关键问题是使用户能与自己的作业进行交互,或者说,它追求的主要目标是系统能及时响应用户的终端命令。为此,作业提交时应直接进入内存,并且系统中必须采用按时间片轮转运行的分时技术。

8. 为什么要引入实时操作系统?

实时操作系统是指系统能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。 弓|入实时OS是为了满足应用的需求,更好地满足实时控制领域和实时信息处理领域的需要。

9. 什么是硬实时任务和软实时任务?试举例说明。

  • 硬实时任务(Hard Real-time Task):系统必须满足任务对截止时间的要求,否则可能出现难以预测的后果。 如:工业和武器控制系统中

  • 软实时任务(Soft Real-time Task):偶尔错过了任务的截止时间,对系统产生的影响也不会太大。 如:信息查询和多媒体系统中

10. 试从交互性、及时性以及可靠性方面将分时系统与实时系统进行比较。

  1. 及时性:实时信息处理系统对实时性的要求与分时系统类似,都是以人所能接受的:等待时间来确定;而实时控制系统的及时性,是以控制对象所要求的开始截止时间或完成截止时间来确定的,一般为秒级到毫秒级,甚至有的要低于100微妙。
  2. 交互性:实时信息处理系统具有交互性,但人与系统的交互仅限于访问系统中某些特定的专用服务程序。不像分时系统那样能向终端用户提供数据和资源共享等服务。
  3. 可靠性:分时系统也要求系统可靠,但相比之下,实时系统则要求系统具有高度的可靠性。因为任何差错都可能带来巨大的经济损失,甚至是灾难性后果,所以在实时系统中,往往都采取了多级容错措施保障系统的安全性及数据的安全性。

11. OS有哪几大特征?其最基本的特征是什么?

四大特征:并发,异步,共享,虚拟;

基本特征:并发,共享;

12. 在多道程序技术的OS环境下的资源共享与一般情况下的资源共享有何不同?对独占资源应采取何种共享方式?

一般情况下的资源共享只是说明某种资源能被大家使用,只要经过适当的安排,用户之间并不会产生对资源的竞争,因此资源管理是比较简单的。而OS环境下的资源共享是指系统中的资源可供内存中多个并发执行的进程共同使用,这里在宏观上既限定了时间,也限定了地点,其管理要复杂的多,因为系统中的资源远少于多道程序需求的总和,会形成对共享资源的争夺。 对独占资源应该采取互斥共享方式。

13. 什么是时分复用技术?举例说明它能提高资源利用率的根本原因是什么。

时分复用技术是将不同的信号相互交织在不同的时间段内, 沿着同一个信道传输;在接收端再用某种方法, 将各个时间段内的信号提取出来还原成原始信号的通信技术。 这种技术可以在同一个信道上传输多路信号。 时分复用技术能提高资源利用率的根本原因在于,它利用某设备为一用户服务的空闲时间, 又转去为其他用户服务使设备得到最充分的利用。

14. 是什么原因使操作系统具有异步性特征?

在多道程序环境下允许多个进程并发执行, 但由于资源等因素的限制, 进程的执行通常并非一气呵成, 而是以走走停停的方式运行。内存中的每个进程在何时执行, 何时暂停,以怎样的速度向前推进, 每道程序总共需要多少时间才能完成, 都是不可预知的, 因此导致作业完成的先后次序与进入内存的次序并不完全一致。 或者说, 进程是以异步方式运行的。但在有关进程控制及同步机制等的支持下, 只要运行环境相同, 作业经多次运行, 都会获得完全相同的结果, 因而进程以异步的方式执行是系统所允许的。

15. 处理机管理有哪些主要功能?其主要任务是什么?

进程控制 进程同步 进程通信 进程调度

16. 内存管理有哪些主要功能?其主要任务是什么?

主要功能:内存分配、内存保护、地址映射、内存扩充

主要任务:为多道程序的运行提供良好的环境,提高存储器的利用率,方便用户使用,并能从逻辑上扩充内存

17. 内存管理有哪些主要功能?其主要任务是什么?

设备管理的主要任务是完成用户的I/O请求,方便用户使用各种设备,并提高设备的利用率,主要包括缓冲管理,设备分配,设备处理和虚拟设备等

18. 文件管理有哪些主要功能?其主要任务是什么?

主要功能:文件存储空间管理、目录管理、文件的读/写管理和保护

主要任务:对用户文件和系统文件进行管理以方便用户使用,并保证文件的安全性

19. 试说明推动传统OS演变为现代OS的主要因素是什么?

  1. 不断提高计算机资源利用率
  2. 方便用户
  3. 器件的不断更新换代
  4. 计算机体系结构的不断发展
  5. 不断提出新的应用需求

20. 微内核操作系统具有哪些优点?它为何能有这些优点?

  1. 提高了系统的可扩展性

  2. 增强了系统的可靠性

  3. 可移植性强

  4. 提供了对分布式系统的支持

  5. 融入了面向对象技术

原因:微内核os结构是建立在模块化,层次化结构基础上的,并且采用了客户/服务器模式和面对对象的程序设计技术。

21. 什么是微内核os

微内核操作系统就是将操作系统划分为两大部分,微内核和多个服务器。在操作系统内核中只留下一些最基本的功能。而将其他服务尽可能的从内核中分离出去。用若干个运行的用户态下的服务器进程来实现形成客户服务器模式。

微内核操作系统有四个特点,一是足够小的内核,二是基于客户服务器模式,三是应用机制和策略分离原理,四是采用面向对象技术。

22. 现代操作系统较之传统操作系统又增加了哪些功能和特征?

  1. 进程(线程)管理
  2. 低级存储器管理
  3. 中断和陷入处理

23. 在微内核OS中,为什么要采用客户/服务器模式?

C/S模式具有独特的优点:

  1. 数据的分布处理和存储。
  2. 便于集中管理。
  3. 灵活性和可扩充性。
  4. 易于改编应用软件。

24. 在基于微内核结构的OS中,应用了哪些新技术?

面向对象的程序设汁技术。

25. 何谓微内核技术?在微内核中通常提供了哪些功能?

把操作系统中更多的成分和功能放到更高的层次(即用户模式)中去运行,而留下一个尽量小的内核,用它来完成操作系统最基本的核心功能,称这种技术为微内核技术。在微内核中通常提供了进程(线程)管理、低级存储器管理、中断和陷入处理等功能。

26. 批处理系统、分时系统和实时系统各有什么特点?

  1. 批处理系统的用户脱机使用计算机, 作业是成批处理的,系统内多道程序并发执行,交互能力差。

  2. 分时系统多个用户可以同时使用计算机,是具有强交互性和及时性。采用的技术是引入时间片,多个用户请求分时共享系统资源。

  3. 实时系统的特点是具有高可靠性和高及时性。采用多级容错技术保证高可靠性,基于任务的截止时间或优先级来分配CPU。

27. 处理机为什么要区分核心态和用户态两种操作方式?什么情况下进行两种方式的转换?

在CPU中运行的操作系统程序和用户程序对应的机器指令集是不同的。操作系统程序使用所有指令,但用户程序只能使用部分指令。从 资源 管理和程序控制执行的角度出发,将指令系统分为两大部分:特权指令和非特权指令。在程序执行时候,根据执行程序对资源和机器指令的使用权限,把机器设置为两个状态:核心态和用户态。

也就是说,当系统处于核心态时,就可以使用所有指令、资源,并具备改变CPU状态的能力;而当CPU在用户态时,只能使用非特权指令。

如果CPU执行用户程序时(用户态),出现了中断,系统将自行转到中断处理程序,CPU就由用户态转到核心态,中断处理结束后,返回继续执行用户程序,此时,CPU又由核心态转到用户态中。

28. 为什么说直到出现中断和通道技术后,多道程序概念才变为有用的?

多道程序并发执行是指有的程序正在CPU上执行,而另一些程序正在I/O设备上进 行传输,即通过CPU操作与外设传输在时间上的重叠必须有中断和通道技术支持,其原因如下:

  1. 通道是一种控制一台或多台外部设备的硬件机构,它一旦被启动就独立于CPU运行,因而做到了输入/输出操作与CPU并行工作。但早期CPU与通道的联络方法是由CPU向通 道发出询问指令来了解通道工作是否完成的。若未完成,则主机就循环询问直到通道工作结 束为止。因此,这种询问方式是无法真正做到CPU与I/O设备并行工作的。

  2. 在硬件上引入了中断技术。所谓中断,就是在输入/输出结束时,或硬件发生某种故 障时,由相应的硬件(即中断机构)向CPU发出信号,这时CPU立即停下工作而转向处理中断请求,待处理完中断后再继续原来的工作。

因此,通道技术和中断技术结合起来就可以实现CPU与I/O设备并行工作,即CPU启 动通道传输数据后便去执行其他程序的计算工作,而通道则进行输入/输出操作;当通道工作结束时,再通过中断机构向CPU发出中断请求,CPU则暂停正在执行的操作,对出巧的 中断进行处理,处理完后再继续原来的工作。这样,就真正做到了 CPU与I/O设备并行工作。此时,多道程序的概念才变为现实。