程序的浮动是什么意思?

程序的浮动是什么意思?,第1张

所谓程序浮动,就是在运行过程中采取相对地址的技术来实现。

1.除了一些特定的情况或者在早期的计算机中,程序在MEMORY中的位置是肯定的,比如会有BOOTLOADER把程序读到一个确定的位置。

2.而现在的计算机基本上这种情况比较少见了,除了一些 *** 作系统的引导过程,这就带来了一个问题,就是在程序(特别是用ASM写的程序)中制定的一些数据的位置是不确定的。

3.比如你原来想读一个1500位置上的数据,但是实际上这个1500到底存了什么是不确定的,所以,采用了相对地址的策略,即所有的数据都是假设程序开始(ORG)位置为0的相对地址。

4.所谓程序浮动,就是针对这样一种情况,在运行过程中采取相对地址的技术来实现的,建议去看看LINUX BOOTLOADER的代码,会理解的比较清楚。

采用多道程序设计技术,能充分发挥CPU和计算机系统部件并进行工作的能力。

引入多道程序设计技术的根本目的是为了提高CPU的利用率,充分发挥计算机系统部件的并行性,现代计算机系统都采用了多道程序设计技术。多道程序设计的出现,加快了现在 *** 作系统的诞生。

在多道程序环境下,多个程序共享计算机资源当某个程序等待I/O *** 作时,CPU可以执行其他程序,大大提高CPU的利用率。在多道程序环境下,多个程序共享系统的设备,大大提高系统设备的利用率。在多道程序环境下,减少了程序的等待时间,提高了系统的吞吐量。

扩展资料

多道程序设计技术对 *** 作系统的形成起到的作用: *** 作系统在引入多道程序设计技术后,使得系统具有了多道,宏观上并行,微观上串行的特点。多道程序设计主要使OS能更好地对计算机进行管理。使计算机的硬件资源得到更充分的利用 。

多道程序处理在内存中可同时装入几个程序,当一个程序因等待外部传输而不能工作下去时,中央处理机马上可以执行另一个程序,若第二个程序又因某种原因不能继续执行时,中央处理机便执行第三个程序,如此继续直至第一个程序外部传输完毕后再执行第一个程序。

采用多道程序合理搭配可以提高资源的利用率,增强系统的输入输出能力。多道程序处理以伪并行方式进行的。从一个时间间隔看,各个程序都已开始执行,但都未执行完毕。从某一瞬间看,在中央处理机中只有一个程序在执行,每个程序占有一个时间片,交替地、串行地使用中央处理机。各道程序并不按它们开始的次序结束。

参考资料来源:百度百科-多道程序设计技术

参考资料来源:百度百科-多道程序

内存碎片是一个很棘手的问题。如何分配内存决定着内存碎片是否会、何时会、如何会成为一个问题。 即使在系统中事实上仍然有许多空闲内存时,内存碎片还会最终导致出现内存用完的情况。一个不断产生内存碎片的系统,不管产生的内存碎片多么小,只要时间足够长,就会将内存用完。这种情况在许多嵌入式系统中,特别是在高可用性系统中是不可接受的。有些软件环境,如 OSE 实时 *** 作系统已经备有避免内存碎片的良好工具,但个别程序员做出的选择仍然会对最终结果形成影响。

“碎片的内存”描述一个系统中所有不可用的空闲内存。这些资源之所以仍然未被使用,是因为负责分配内存的分配器使这些内存无法使用。这一问题通常都会发生,原因在于空闲内存以小而不连续方式出现在不同的位置。由于分配方法决定内存碎片是否是一个问题,因此内存分配器在保证空闲资源可用性方面扮演着重要的角色。 编译时间与运行时间


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/7908138.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-11
下一篇 2023-04-11

发表评论

登录后才能评论

评论列表(0条)

保存