什么是多道程序操作系统?
多道程序操作系统是操作系统的一种能力,它使用单处理器机器执行多个程序。
在一个时间点,主存储器中存在多个任务或程序或作业。
缓冲和假脱机可以重叠I/O和CPU任务以提高系统性能,但它有一些限制,即单个用户不能始终保持CPU或I/O一直忙。
为了提高资源利用率,多道程序方法。
-
-
操作系统可以选择并开始执行内存中的一个作业,每当作业不需要CPU时,这意味着该作业正在处理I/O,而CPU空闲,此时操作系统切换到另一个作业内存和CPU执行其中的一部分,直到作业发出I/O请求,依此类推。
让我们P1和P2是存在于主内存中的两个程序。操作系统选择一个程序并开始执行它。
在执行过程中,如果P1程序需要I/O操作,那么OS将简单地切换到P2程序。如果p2程序需要I/O,则它再次切换到P3,依此类推。
如果在P3之后没有其他程序剩余,则CPU会将其控制权交还给前一个程序。
好处
多道程序操作系统的优点如下-
CPU利用率很高,因为CPU永远不会进入空闲状态。
内存使用效率很高。
CPU吞吐量高,还支持多交互用户终端。
缺点
多道程序操作系统的缺点如下-
CPU调度是强制性的,因为许多作业已准备好同时在CPU上运行。
用户在作业执行时无法与作业进行交互。
程序员也不能修改正在执行的程序。
如果主存中准备了多个作业,并且没有足够的空间容纳所有作业,则系统必须通过决策来选择它们,这个过程称为作业调度。
当操作系统从作业组中选择一个作业并将该作业加载到内存中执行时,它需要内存管理,如果有几个这样的作业准备好了,那么它需要CPU调度。