扩展内存和扩充内存是高版本操作系统中两个重要的概念,人们对它们不应该有两种截然相反的定义。但是,在笔者见到的书籍和报刊中却有两种截然相反的定义,这对学习操作系统的人,尤其是初学者带来了误解和增添了不必要的麻烦,有必要对扩展内存,扩充内存的定义作一些说明,供学习操作系统的读者参考。
①潘金贵等在其编译的《微型计算机最新操作系统ms-dos 5.0实用指南》一书中叙述为:扩展内存(extended memory)是定址在1mb之后的内存并向上延伸,简称xms。扩充内存(expanded memory)是由ems规范(expanded memory specification)定义的内存,简称ems。扩充内存大部分是做成一块卡的方式,另外插在扩充槽上。
②徐涛在《微型计算机》1995年第1期"再谈高版本dos下2.13h读虚盘字库"一文中叙述为:扩展内存(ems)是以16k为一页通过页帧缓存区来访问的超越640k常规内存的内存。扩充内存(xms)是1m以后连续线性扩展的内存,其实地址是与1m连续的。
③《microsoft ms-dos用户使用手册》中叙述为:扩展(expanded)内存是一个分离的内存池,就某种意义来说,就是放在一边但程序在需要时可以利用的内存。扩充(extended)内存起始于1mb处并向上延伸,它们或多或少地积聚在上端内存区的顶部。
从以上三种对扩展内存、扩充内存的定义可以看出:②和③是相同的,①与②、③则截然相反,即①的扩展内存的定义恰好是②、③的扩充内存的定义,而①的扩充内存的定义恰好是②、③的扩展内存的定义。为什么对扩展内存、扩充内存会出现两种截然相反的定义呢?可能是将extended和expanded翻译成汉语时由于不同的理解造成的。
查阅英汉词典后可知,extended和expanded都有扩大的、扩展的意思,因此,“extended memory”既可以翻译成扩展内存也可以翻译成扩充内存,“expanded memory”同样既可以翻译成扩展内存也可以翻译成扩充内存。这样,就导致了对扩展内存、扩充内存有两种截然相反的定义。那么,究竟哪种定义合适呢?①的定义较合适,或者说②、③的扩展内存的定义应改为扩充内存的定义,②、③的扩充内存的定义应改为扩展内存的定义。为什么呢?理由如下:
1.①对扩展内存的定义,其意思与汉语中“扩展”的意思是相同的。《辞海》对扩展的解释为:向外伸展、扩大,对扩充的解释为:扩大充实。
2.extended有延长的、伸出的意思,但expanded却没有。因此,①将“extended memory”翻译成扩展内存,而将“expanded memory”翻译成扩充内存是正确的。 |