采用多道程序设计技术,能充分发挥CPU和计算机系统部件并进行工作的能力。
引入多道程序设计技术的根本目的是为了提高CPU的利用率,充分发挥计算机系统部件的并行性,现代计算机系统都采用了多道程序设计技术。多道程序设计的出现,加快了现在 *** 作系统的诞生。
在多道程序环境下,多个程序共享计算机资源当某个程序等待I/O *** 作时,CPU可以执行其他程序,大大提高CPU的利用率。在多道程序环境下,多个程序共享系统的设备,大大提高系统设备的利用率。在多道程序环境下,减少了程序的等待时间,提高了系统的吞吐量。
扩展资料
多道程序设计技术对 *** 作系统的形成起到的作用: *** 作系统在引入多道程序设计技术后,使得系统具有了多道,宏观上并行,微观上串行的特点。多道程序设计主要使OS能更好地对计算机进行管理。使计算机的硬件资源得到更充分的利用 。
多道程序处理在内存中可同时装入几个程序,当一个程序因等待外部传输而不能工作下去时,中央处理机马上可以执行另一个程序,若第二个程序又因某种原因不能继续执行时,中央处理机便执行第三个程序,如此继续直至第一个程序外部传输完毕后再执行第一个程序。
采用多道程序合理搭配可以提高资源的利用率,增强系统的输入输出能力。多道程序处理以伪并行方式进行的。从一个时间间隔看,各个程序都已开始执行,但都未执行完毕。从某一瞬间看,在中央处理机中只有一个程序在执行,每个程序占有一个时间片,交替地、串行地使用中央处理机。各道程序并不按它们开始的次序结束。
参考资料来源:百度百科-多道程序设计技术
参考资料来源:百度百科-多道程序
所谓程序浮动,就是在运行过程中采取相对地址的技术来实现。
1.除了一些特定的情况或者在早期的计算机中,程序在MEMORY中的位置是肯定的,比如会有BOOTLOADER把程序读到一个确定的位置。
2.而现在的计算机基本上这种情况比较少见了,除了一些 *** 作系统的引导过程,这就带来了一个问题,就是在程序(特别是用ASM写的程序)中制定的一些数据的位置是不确定的。
3.比如你原来想读一个1500位置上的数据,但是实际上这个1500到底存了什么是不确定的,所以,采用了相对地址的策略,即所有的数据都是假设程序开始(ORG)位置为0的相对地址。
4.所谓程序浮动,就是针对这样一种情况,在运行过程中采取相对地址的技术来实现的,建议去看看LINUX BOOTLOADER的代码,会理解的比较清楚。
实现多道程序设计要解决的几个问题:
1、存储保护和地址重定位。(几道程序共享同一主存)
2、处理机的管理和调度。(共享同一处理机)
3、资源的管理与分配。(共享系统资源)
多道程序设计是在计算机内存中同时存放几道相互独立的程序,使它们在管理程序控制之下,相互穿插的运行。 两个或两个以上程序在计算机系统中同处于开始到结束之间的状态。这就称为多道程序设计。
多道程序设计的特征
1、多道:即计算机内存中同时存放几道相互独立的程序。
2、宏观上并行:同时进入系统的几道程序都处于运行过程中,即它们先后开始了各自的运行,但都未运行完毕。
3、微观上串行:从微观上看,内存中的多道程序轮流地或分时地占有CPU。
扩展资料
多道程序设计的利弊
1、提高了CPU的利用率
2、提高了内存和I/O设备的利用率
3、改进了系统的吞吐率
4、充分发挥了系统的并行性
5、主要缺点是延长了作业周转时间
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)