{{noteTA

|G1=IT }}

上端内存区(upper memory area)中的扩展内存块

扩展记忆体({{lang-en|Expanded Memory}})是1985年4月24日,由Lotus英特尔微软联合发布的一项DOS内存技术,可以提供MS-DOS程式更多的记忆体。

八十年代的个人计算机(IBM PC/AT)多半使用真实模式,只有1MB的定址空间,且640KB以上的定址空间不可被应用程序读写使用。

扩展记忆体的原理是使用1MB扣除640KB后剩下的384KB,称作上端内存区(upper memory area), 这本来是用来跟外设沟通的空间, 给程序使用。把内存的定址窗口插入到上端内存区的外设定址空间,引入了bank switching (存储体转换)的技巧。 同一时间只有一部分的额外记忆体可以被存取。 使用64KB的memory windows做为bank switching 的单位。

Emulex Persyst 4 MiB ISA扩展内存卡

早期可以购买记忆体扩充卡来插在ISA bus插槽上. 之后,一些Intel 80286的主机版的芯片组实现了 expanded memory scheme, 就不用再买扩充卡,而用软件设置就可以决定多少记忆体被用做扩展记忆体,多少记忆体被用做延伸记忆体

1987年开始,内建记忆体管理功能的Intel 80386 处理器让在传统真实模式下的程式,可以有不受限的 定址空间,硬件解决方案就变得没有必要。这时扩展记忆体只能用软件来模拟了.

在80286与之后的处理器,一个更有效率的方法存取640KB以后的记忆体, 就是用DOS Proteced Mode Interface.DOS extenders 是一个使程式可以在保护模式下执行的驱动程式. 与其用banking技巧存取更多记忆体,这个驱动程式可以让应用程序在保护模式与真实模式间切换, (在需要MS-DOS服务时回到真实模式)这样就使用应用程序可以直接存取延伸记忆体.

相关连结

编辑

Category:X86内存管理 Category:DOS内存管理 Category:内存扩展

{{Compu-stub}}