介紹DOS系統(tǒng)的內(nèi)存管理機(jī)制
今天,跟大家主要介紹DOS相關(guān)知識(shí),包括內(nèi)存管理機(jī)制。下面是小編為大家精心整理的關(guān)于介紹DOS系統(tǒng)的內(nèi)存管理機(jī)制,希望能夠幫助到你們。
DOS介紹
DOS操作系統(tǒng)最早設(shè)計(jì)時(shí),PC機(jī)的硬件系統(tǒng)只支持1M字節(jié)的尋址空間,所以DOS只能管理最多1M字節(jié)的連續(xù)內(nèi)存空間。在這1M內(nèi)存中,又只有640K被留給應(yīng)用程序使用,它們被稱為常規(guī)內(nèi)存或基本內(nèi)存,其它384K被稱為高端內(nèi)存,是留給視頻顯示和BIOS等使用的。在1982年,640K內(nèi)存對(duì)微型計(jì)算機(jī)來(lái)說(shuō)顯得綽綽有余,人們甚至認(rèn)為,640K的內(nèi)存可以用來(lái)干任何事?,F(xiàn)在看起來(lái)有些可笑,但在當(dāng)時(shí),情況確實(shí)如此。
現(xiàn)在的情況是,即使你的電腦裝有幾兆或幾十兆內(nèi)存,但如果你使用DOS操作系統(tǒng),那么你也只有640K的內(nèi)存可以直接使用,1M以上的內(nèi)存要通過(guò)一些內(nèi)存管理工具才能使用。值得慶幸的是,Windows 95已經(jīng)不存在常規(guī)內(nèi)存的限制了,你所有的內(nèi)存,不管是8M還是128M,都可以被直接使用。
在DOS下,系統(tǒng)中存在以下四種內(nèi)存:
常規(guī)內(nèi)存(Conventional Memory);
高端內(nèi)存(Upper Memory);
擴(kuò)充內(nèi)存(Expanded Memory);
擴(kuò)展內(nèi)存(Extended Memory)。
下面分別講述四種內(nèi)存知識(shí)。
常規(guī)內(nèi)存
常規(guī)內(nèi)存指的是0-640K的內(nèi)存區(qū)。在DOS下,一般的應(yīng)用程序只能使用系統(tǒng)的常規(guī)內(nèi)存,因而都要受到640KB內(nèi)存的限制。而且由于DOS本身和config.sys文件中的安裝的設(shè)備驅(qū)動(dòng)程序和autoexec.bat文件中執(zhí)行的內(nèi)存駐留程序都要占用一些常規(guī)內(nèi)存,所以應(yīng)用程序能使用的常規(guī)內(nèi)存是不到640K的。有很多時(shí)候,我們都要想方設(shè)法地整理內(nèi)存,好為一些“胃口”比較大的應(yīng)用程序留出足夠的常規(guī)內(nèi)存,這一點(diǎn)想必是許多DOS時(shí)代的電腦愛(ài)好者最熟悉不過(guò)的了。
高端內(nèi)存
高端內(nèi)存是指位于常規(guī)內(nèi)存之上的384K內(nèi)存。程序一般不能使用這個(gè)內(nèi)存區(qū)域,但是EMM386.exe可以激活高端內(nèi)存的一部分,并且它允許用戶將某些設(shè)備驅(qū)動(dòng)程序和用戶程序用Devicehigh或LH(即loadhigh)裝入高端內(nèi)存。dos=high,umb也是把DOS的一部分裝到高端內(nèi)存里。這里的umb是高端內(nèi)存塊(Upper Memory Block)的縮寫(xiě)。
擴(kuò)充內(nèi)存
擴(kuò)充內(nèi)存是一種早期的增加內(nèi)存的標(biāo)準(zhǔn),最多可擴(kuò)充到32M。使用擴(kuò)充內(nèi)存必須在計(jì)算機(jī)中安裝專門(mén)的擴(kuò)充內(nèi)存板,而且還要安裝管理擴(kuò)充內(nèi)存板的管理程序。由于擴(kuò)充內(nèi)存是在擴(kuò)展內(nèi)存之前推出的,所以大多數(shù)程序都被設(shè)計(jì)成能使用擴(kuò)充內(nèi)存,而不能使用擴(kuò)展內(nèi)存。由于擴(kuò)充內(nèi)存使用起來(lái)比較麻煩,所以在擴(kuò)展內(nèi)存出現(xiàn)后不久就被淘汰了。
擴(kuò)展內(nèi)存
擴(kuò)展內(nèi)存只能用在80286或更高檔次的機(jī)器上,目前幾乎所有使用DOS的機(jī)器上超過(guò)1M的內(nèi)存都是擴(kuò)展內(nèi)存。擴(kuò)展內(nèi)存同樣不能被DOS直接使用,DOS5.0以后提供了Himem.sys這個(gè)擴(kuò)展內(nèi)存管理程序,我們可以通過(guò)它來(lái)管理擴(kuò)展內(nèi)存。emm386.exe可以把擴(kuò)展內(nèi)存(XMS)仿真成擴(kuò)充內(nèi)存(EMS),以滿足一些要求使用擴(kuò)充內(nèi)存的程序。
強(qiáng)調(diào)
不管擴(kuò)充內(nèi)存或擴(kuò)展內(nèi)存有多大,DOS的應(yīng)用程序只能在常規(guī)內(nèi)存下運(yùn)行。有的程序可以通過(guò)DOS擴(kuò)展器(比如DOS4GW.exe等程序)使CPU進(jìn)入保護(hù)模式,從而直接訪問(wèn)擴(kuò)展內(nèi)存;但是要注意,進(jìn)入保護(hù)模式以后,計(jì)算機(jī)就脫離了DOS狀態(tài)。
介紹DOS系統(tǒng)的內(nèi)存管理機(jī)制相關(guān)文章:
2.系統(tǒng)基本組成MS-DOS系統(tǒng)文件介紹