操作系統(tǒng)內(nèi)存管理:總的來(lái)說(shuō),操作系統(tǒng)內(nèi)存管理包括物理內(nèi)存管理和虛擬內(nèi)存管理。這里給大家分享一些關(guān)于操作系統(tǒng)內(nèi)存管理,希望對(duì)大家能有所幫助。
計(jì)算機(jī)的存儲(chǔ)體系
在介紹內(nèi)存管理的細(xì)節(jié)前,先要了解一下分層存儲(chǔ)器體系:
大部分的計(jì)算機(jī)都有一個(gè)存儲(chǔ)器層次結(jié)構(gòu),即少量的非常快速、昂貴、易變的高速緩存(cache);若干兆字節(jié)的中等速度、中等價(jià)格、易變的主存儲(chǔ)器(RAM);數(shù)百兆或數(shù)千兆的低速、廉價(jià)、不易變的磁盤(pán)。這些資源的合理使用與否直接關(guān)系著系統(tǒng)的效率。
CPU緩存(Cache Memory):是位于CPU與內(nèi)存之間的臨時(shí)存儲(chǔ)器,它的容量比內(nèi)存小的多但是交換速度卻比內(nèi)存要快得多。緩存的出現(xiàn)主要是為了解決CPU運(yùn)算速度與內(nèi)存 讀寫(xiě)速度不匹配的矛盾,因?yàn)镃PU運(yùn)算速度要比內(nèi)存讀寫(xiě)速度快很多,這樣會(huì)使CPU花費(fèi)很長(zhǎng)時(shí)間等待數(shù)據(jù)到來(lái)或把數(shù)據(jù)寫(xiě)入內(nèi)存。
計(jì)算機(jī)是一種數(shù)據(jù)處理設(shè)備,它由CPU和內(nèi)存以及外部設(shè)備組成。CPU負(fù)責(zé)數(shù)據(jù)處理,內(nèi)存負(fù)責(zé)存儲(chǔ),外部設(shè)備負(fù)責(zé)數(shù)據(jù)的輸入和輸出,它們之間通過(guò)總線(xiàn)連接在一起。CPU內(nèi)部主要由控制器、運(yùn)算器和寄存器組成。控制器負(fù)責(zé)指令的讀取和調(diào)度,運(yùn)算器負(fù)責(zé)指令的運(yùn)算執(zhí)行,寄存器負(fù)責(zé)數(shù)據(jù)的存儲(chǔ),它們之間通過(guò)CPU內(nèi)的總線(xiàn)連接在一起。每個(gè)外部設(shè)備(例如:顯示器、硬盤(pán)、鍵盤(pán)、鼠標(biāo)、網(wǎng)卡等等)則是由外設(shè)控制器、I/O端口、和輸入輸出硬件組成。外設(shè)控制器負(fù)責(zé)設(shè)備的控制和操作,I/O端口負(fù)責(zé)數(shù)據(jù)的臨時(shí)存儲(chǔ),輸入輸出硬件則負(fù)責(zé)具體的輸入輸出,它們間也通過(guò)外部設(shè)備內(nèi)的總線(xiàn)連接在一起。
計(jì)算存儲(chǔ)的層次結(jié)構(gòu)
當(dāng)前技術(shù)沒(méi)有能夠提供這樣的存儲(chǔ)器,因此大部分的計(jì)算機(jī)都有一個(gè)存儲(chǔ)器層次結(jié)構(gòu):
高速緩存(cache): 少量的非常快速、昂貴、易變的高速緩存(cache);
主存儲(chǔ)器(RAM): 若干兆字節(jié)的中等速度、中等價(jià)格、易變的主存儲(chǔ)器(RAM);
磁盤(pán): 數(shù)百兆或數(shù)千兆的低速、廉價(jià)、不易變的磁盤(pán)。
這些資源的合理使用與否直接關(guān)系著系統(tǒng)的效率。
物理內(nèi)存:連續(xù)分配存儲(chǔ)管理方式
連續(xù)分配是指為一個(gè)用戶(hù)程序分配連續(xù)的內(nèi)存空間。連續(xù)分配有單一連續(xù)存儲(chǔ)管理和分區(qū)式儲(chǔ)管理兩種方式。
3.1 單一連續(xù)存儲(chǔ)管理
在這種管理方式中,內(nèi)存被分為兩個(gè)區(qū)域:系統(tǒng)區(qū)和用戶(hù)區(qū)。應(yīng)用程序裝入到用戶(hù)區(qū),可使用用戶(hù)區(qū)全部空間。其特點(diǎn)是,最簡(jiǎn)單,適用于單用戶(hù)、單任務(wù)的操作系統(tǒng)。CP/M和 DOS 2.0以下就是采用此種方式。這種方式的最大優(yōu)點(diǎn)就是易于管理。但也存在著一些問(wèn)題和不足之處,例如對(duì)要求內(nèi)存空間少的程序,造成內(nèi)存浪費(fèi);程序全部裝入,使得很少使用的程序部分也占用—定數(shù)量的內(nèi)存。
3.2 分區(qū)式存儲(chǔ)管理
為了支持多道程序系統(tǒng)和分時(shí)系統(tǒng),支持多個(gè)程序并發(fā)執(zhí)行,引入了分區(qū)式存儲(chǔ)管理。分區(qū)式存儲(chǔ)管理是把內(nèi)存分為一些大小相等或不等的分區(qū),操作系統(tǒng)占用其中一個(gè)分區(qū),其余的分區(qū)由應(yīng)用程序使用,每個(gè)應(yīng)用程序占用一個(gè)或幾個(gè)分區(qū)。分區(qū)式存儲(chǔ)管理雖然可以支持并發(fā),但難以進(jìn)行內(nèi)存分區(qū)的共享。
分區(qū)式存儲(chǔ)管理引人了兩個(gè)新的問(wèn)題:內(nèi)碎片和外碎片。
內(nèi)碎片是占用分區(qū)內(nèi)未被利用的空間,外碎片是占用分區(qū)之間難以利用的空閑分區(qū)(通常是小空閑分區(qū))。
為實(shí)現(xiàn)分區(qū)式存儲(chǔ)管理,操作系統(tǒng)應(yīng)維護(hù)的數(shù)據(jù)結(jié)構(gòu)為分區(qū)表或分區(qū)鏈表。表中各表項(xiàng)一般包括每個(gè)分區(qū)的起始地址、大小及狀態(tài)(是否已分配)。
分區(qū)式存儲(chǔ)管理常采用的一項(xiàng)技術(shù)就是內(nèi)存緊縮(compaction)。
操作系統(tǒng)內(nèi)存管理相關(guān)文章:
★ 如何合理設(shè)置電腦虛擬內(nèi)存,提高電腦運(yùn)行速度
★ 電腦學(xué)習(xí)
★ c語(yǔ)言學(xué)習(xí)心得
★ 介紹幾個(gè)妙招加快內(nèi)存運(yùn)行速度
★ BIOS常見(jiàn)字母對(duì)照表附帶解釋
★ 硬盤(pán)的日常維護(hù)和使用時(shí)的注意事項(xiàng)
★ 全國(guó)統(tǒng)考計(jì)算機(jī)真題及答案解答
★ 電腦技巧
★ 延長(zhǎng)筆記本電腦硬盤(pán)和電池的使用壽命解讀
★ 關(guān)于畢業(yè)軟件專(zhuān)業(yè)實(shí)習(xí)報(bào)告范文大全
上一篇:全面解析虛擬內(nèi)存