【发布时间】:2016-01-24 12:28:44
【问题描述】:
在这种情况下,操作系统正在启动一个程序-首先程序从磁盘传输到内存,然后执行,然后部分程序涉及从磁盘读取数据文件到内存,对数据执行一些计算和打印结果。这是非重叠版本,因为当打印机或磁盘正在运行作业时操作系统处于空闲状态 - 重叠版本对我来说很清楚,当正在读取磁盘或打印机忙时,操作系统可以处理其他程序(并发执行)。
现在我卡住的部分是一长串程序的最佳重叠时间与非重叠时间的比率。 间隔为操作系统 1 个单位,磁盘操作 3 个单位,打印 3 个单位和程序 2 个单位。我的方法是(这可能是不清楚的理解的结果)在最好的重叠条件下操作系统永远不会空闲。正确的方法应该是什么?
【问题讨论】:
-
我觉得你有点困惑。如果根本没有进入操作系统内核并且用户线程/进程正在使用所有可用的 CPU 执行,通常认为这是最佳的。显然,这总体上是不现实的,因为这意味着线程无法执行任何 I/O,因此基本上没有用:)
-
@MartinJames 我从一本书(Carl hemacher - 计算机组织和嵌入式系统第 5 版)中得到了这个问题!当其中一个进程正在使用磁盘或打印机或正忙于程序时,我无法想象操作系统会处理其他几个进程(具有相同的要求/性质)!
标签: architecture operating-system cpu-architecture processor