操作系统是最重要的软件,也是计算机的心脏,它不仅管理计算机内部的内存和进程,还允许用户运行应用程序软件。 它是一组程序,可以抽象系统的硬件,并向用户提供完整的虚拟机。 除了跟踪文件或目录,控制外围设备,将输出发送到显示屏等基本任务外,该操作系统还具有更高的用途,例如多程序和多任务,以确保并发运行的程序不会相互干扰。 现代操作系统不仅促进并行处理,而且还促进了分时共享,而分时共享只是一种多程序设计的概念。 多任务只是在不同上下文中使用的基本形式的多程序。

操作系统中的多程序和多任务

什么是多程序?

多程序是指一个以上的用户可以使用一个CPU一次使用计算机的能力。 这个想法是有效利用处理器来创建多个准备运行的进程,而每个进程都属于不同的用户。 如果当前进程由于某种原因而停顿,因为它必须等待某个特定事件,则操作系统会将CPU分配给队列中的另一个进程。 通过对操作系统进行多程序编程可以最大程度地提高CPU利用率,从而减少CPU的空闲时间,从而简化了整个操作。 这样做的想法是使CPU尽可能长时间地忙碌。

什么是多任务处理?

多任务处理是指一个用户在使用多个CPU的同一台计算机上同时执行多个进程。例如,在多任务操作系统中,您可以使用一个程序处理Word文档,而同时使用另一程序听音乐。当计算程序需要高度并行性时,多任务处理非常有效。它基于时间共享的概念,因为可以在固定的时间间隔内相应地切换多个过程或任务,以便用户获得可以同时执行的想法。

多程序和多任务之间的区别

1. 多程序和多任务的术语
术语“多程序”是并行处理的基本形式,表示多个进程同时在单个处理器上同时运行。当多个程序或进程在单个处理器上运行时,该术语在现代操作系统中使用,这是OS的工作,以有效且高效地管理所有进程。多任务处理是指OS使用多个CPU一次执行多个任务的能力。它基本上在单个系统中使用两个或多个CPU来分配任务,这些任务共享包括CPU和内存在内的公共资源。

2. 多程序和多任务的概念
多程序基于上下文切换的概念,上下文切换是一种标准过程,它有助于利用单个CPU将CPU从一个线程进程切换到另一个线程进程。它将用于CPU的活动进程的状态存储在进程控制块(PCB)中,以便该进程从相同状态恢复。另一方面,多任务基于时间共享的概念,它是一种用于为每个用户提供一部分时间共享系统的技术,允许用户同时共享相同的资源。这是多程序编程的逻辑扩展。

3. 工作
这两个术语几乎具有相同的含义,并且是现代操作系统中使用的通用术语,但目标不同。多程序的概念仅基于计算机存储程序或指令较长时间以减少CPU空闲时间的能力。通过调度算法完成过程分配。操作系统一次执行一个程序的一部分,然后执行另一程序的一部分,依此类推。在多任务OS中,CPU允许通过时间共享同时运行多个进程,并相应地执行它们。

4. 目的
在多程序操作系统中,此想法是为了在用户之间提供完全透明的,因为多个用户共享同一个CPU,从而可以迅速从一个用户切换到另一个用户,以提高CPU利用率。它允许有效且有效的资源分配,而无需用户与系统进行交互。 OS执行一个程序的一部分,然后执行另一个程序,但是似乎所有程序都同时执行。在多任务操作系统中,用户被程序或进程替换,每个进程占用相当一部分CPU时间。这个过程是如此之快,以至于感觉似乎有多个任务正在同时执行。

总结

简而言之,这两个术语经常相互结合使用以代表现代操作系统,但是具有不同的目标和功能。 虽然多程序操作系统允许使用单个CPU同时运行多个程序,但多任务操作系统允许利用多个CPU同时执行多个进程或任务。 多重编程基于上下文切换,它不允许CPU处于空闲状态从而最大化CPU利用率,而多重任务基于时间共享,因为可以根据优先级在固定的时间间隔内切换多个任务,以最大程度地提高CPU性能。

欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果。
转载请注明:文章转载自 有区别网 [http://www.vsdiffer.com]
本文标题:操作系统中的多程序和多任务
本文链接:https://www.vsdiffer.com/vs/multiprogramming-vs-multitasking-in-operating-system.html
免责声明:以上内容仅是站长个人看法、理解、学习笔记、总结和研究收藏。不保证其正确性,因使用而带来的风险与本站无关!如本网站内容冒犯了您的权益,请联系站长,邮箱: ,我们核实并会尽快处理。