首页 > 代码库 > 【操作系统】多道程序的理解

【操作系统】多道程序的理解

今天的题目是关于多道程序设计的理解,看到就一次性掌握它!

(图片是操作系统层次的结构)

 

 

 

技术分享

 

1什么是多道程序设计? 它的主要优点是什么?
【分析与解答】所谓多道程序设计, 是指把一个以上的程序存放在内存中, 并且同时处于运行状态, 这些程序共享 CPU 和其他计算机资源。其主要优点如下。( 1 ) CPU 的利用率高。在单道程序环境下, 程序独占计算机资源, 当程序等待 I / O 操作时, CPU 空闲, 造成 CPU 资源的浪费。在多道程序环境下, 多个程序共享计算机资源,当某个程序等待 I / O 操作时, CPU 可以执行其他程序, 这大大地提高了 CPU 的利用率。 ( 2 ) 设备利用率高。在多道程序环境下, 内存和外设也由多个程序共享, 无疑也会提高内存和外设的利用率。( 3 ) 系统吞吐量大。在多道程序环境下, 资源的利用率大幅度提高。减少了程序的等待时间, 提高了系统的吞吐量。
【扩展】根据上面的分析,采用多道程序设计,可以有很多的优点,主要是效率的提高。这个主要是理解上的问题,希望大家可以一次性掌握80%的理解,后面接触多了理解自然会加深。
那么如何提高效率的呢?

  1. 进程休息的时候马山切换到其他进程接着执行,提高CPU的利用率;

  2. 充分利用外围设备资源。采用多道程序并行工作时, 只要把使用不同外围设备的 程序搭配在一起, 并同时装入主存储器, 那么系统中的各种外围设备经常会处于忙碌状态, 使系统中的设备资源被充分利用;

  3. 发挥了处理器与外围设备, 以及外围设备之间的并行工作能力。多道程序设计实 际上是利用了硬件的并行工作能力, 但也只有多道程序设计才能发挥它们的并行工作能力;

主要就是这几个方面。

另外一个问题,多道程序设计一定是改善资源使用情况,提高了系统效率吗?

( 1 ) 可能延长程序执行时间。多道程序设计提高了系统的吞吐量, 但延长了某些程序 的执行时间。 

( 2 ) 并行工作道数与系统效率不成正比。实际上并行工作的道数与系统的效率是不成 正比的, 并行的道数要根据系统配置的资源和用户对资源的要求而定。首先, 主存储空间的 大小限制了可同时装入的程序数量; 其次, 外围设备的数量也是一个制约条件; 再次, 多个 程序同时要求同一资源的情况也会经常发生。因此人们希望主存中的多道程序在使用设备时 不发生冲突。这就要求操作系统选择程序装入主存储空间时进行合理搭配, 由于用户向系统 提交程序在时间上的随机性和程序性及执行速度的不确定性, 使得达到上述的理想状态是很 困难的。

 总之, 多道程序的设计能提高资源使用效率, 增加单位时间的计算量。但是对每个计算 问题来说, 从计算开始到全部完成所需要的时间可能要延长。另外, 在确定并行工作道数 时, 应综合系统的资源配置和用户对资源的要求。

而且,多道程序之间来回切换也是相当花费CPU时间的,所以设计系统的时候一般要考虑很多的因素。设计一个合理的阈值,多道的确会使得系统更加的高效~

2下面关于计算机系统和操作系统的叙述中错误的是 ( ) 。A. 操作系统是独立于计算机系统的, 它不属于计算机系统B. 计算机系统是一个资源集合体, 包括软件资源和硬件资源C. 操作系统是一种软件D. 计算机硬件是操作系统赖以工作的实体, 操作系统的运行离不开计算机硬件的支持【分析】操作系统是计算机系统的一种系统软件, 由它统一管理计算机系统的资源和控制程序的执行, 计算机硬件是操作系统赖以工作的实体, 操作系统的运行离不开计算机硬件的支持。 【答案】 A。

技术分享

 

与你一起成长!

技术分享

 

【操作系统】多道程序的理解