




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、會(huì)計(jì)學(xué)1操作系統(tǒng)講稿內(nèi)存管理操作系統(tǒng)講稿內(nèi)存管理第一頁(yè),編輯于星期日:十五點(diǎn) 三十二分。第1頁(yè)/共100頁(yè)第二頁(yè),編輯于星期日:十五點(diǎn) 三十二分。實(shí)用系統(tǒng)中的存儲(chǔ)管理方法實(shí)用系統(tǒng)中的存儲(chǔ)管理方法第2頁(yè)/共100頁(yè)第三頁(yè),編輯于星期日:十五點(diǎn) 三十二分。 主存儲(chǔ)器被限制為主存儲(chǔ)器被限制為1MB的內(nèi)存空間。的內(nèi)存空間。 低端的低端的640KB的基的基本內(nèi)存。本內(nèi)存。高端的擴(kuò)展內(nèi)存。高端的擴(kuò)展內(nèi)存。 系統(tǒng)啟動(dòng)后將操作系系統(tǒng)啟動(dòng)后將操作系統(tǒng)調(diào)入基本內(nèi)存的低端統(tǒng)調(diào)入基本內(nèi)存的低端位置,大概占幾十位置,大概占幾十KB的的空間。空間。 基本內(nèi)存的剩余部分便基本內(nèi)存的剩余部分便是用來(lái)存放用戶(hù)程序的是用來(lái)存放用
2、戶(hù)程序的用戶(hù)區(qū)。用戶(hù)區(qū)。在在DOS發(fā)展的后期,已發(fā)展的后期,已經(jīng)可以利用擴(kuò)展內(nèi)存來(lái)經(jīng)可以利用擴(kuò)展內(nèi)存來(lái)存放系統(tǒng)的數(shù)據(jù)結(jié)構(gòu)、存放系統(tǒng)的數(shù)據(jù)結(jié)構(gòu)、驅(qū)動(dòng)程序以及某些庫(kù)文驅(qū)動(dòng)程序以及某些庫(kù)文件等內(nèi)容,但用戶(hù)不能件等內(nèi)容,但用戶(hù)不能對(duì)擴(kuò)展存儲(chǔ)器中的內(nèi)容對(duì)擴(kuò)展存儲(chǔ)器中的內(nèi)容進(jìn)行修改。進(jìn)行修改。 程序和數(shù)據(jù)不能突程序和數(shù)據(jù)不能突破基本內(nèi)存的限制,因破基本內(nèi)存的限制,因此,用戶(hù)程序的大小必此,用戶(hù)程序的大小必須低于須低于640KB。 用戶(hù)區(qū)內(nèi)只能存放用戶(hù)區(qū)內(nèi)只能存放一個(gè)用戶(hù)程序,因此,一個(gè)用戶(hù)程序,因此,DOS系統(tǒng)只支持單道程系統(tǒng)只支持單道程序。序。 第3頁(yè)/共100頁(yè)第四頁(yè),編輯于星期日:十五點(diǎn) 三十二分。
3、Windows xp要求存儲(chǔ)器最低為要求存儲(chǔ)器最低為64MB。內(nèi)存被劃分為大小為內(nèi)存被劃分為大小為4KB的頁(yè)面。內(nèi)存中可以存放多個(gè)用戶(hù)的頁(yè)面。內(nèi)存中可以存放多個(gè)用戶(hù)任務(wù)的頁(yè)面,因此,任務(wù)的頁(yè)面,因此,Windows支持多任務(wù)同時(shí)運(yùn)行。支持多任務(wù)同時(shí)運(yùn)行。用戶(hù)在編制程序時(shí),其大小最高可達(dá)用戶(hù)在編制程序時(shí),其大小最高可達(dá)4GB,但在程序運(yùn)行時(shí),并不,但在程序運(yùn)行時(shí),并不是全部程序都裝入內(nèi)存,而是只裝入程序的部分頁(yè)面來(lái)運(yùn)行。是全部程序都裝入內(nèi)存,而是只裝入程序的部分頁(yè)面來(lái)運(yùn)行。當(dāng)需要裝入新的程序頁(yè)面而內(nèi)存中又沒(méi)有足夠的空閑區(qū)域時(shí),當(dāng)需要裝入新的程序頁(yè)面而內(nèi)存中又沒(méi)有足夠的空閑區(qū)域時(shí),操作系統(tǒng)將內(nèi)存中
4、長(zhǎng)期未使用的頁(yè)面換出到輔助存儲(chǔ)器上早已安操作系統(tǒng)將內(nèi)存中長(zhǎng)期未使用的頁(yè)面換出到輔助存儲(chǔ)器上早已安排的頁(yè)面(排的頁(yè)面(paging file)文件中,騰出空間后再將需要換進(jìn)的)文件中,騰出空間后再將需要換進(jìn)的頁(yè)面調(diào)入。頁(yè)面調(diào)入。Windows 支持虛擬存儲(chǔ)器。支持虛擬存儲(chǔ)器。 第4頁(yè)/共100頁(yè)第五頁(yè),編輯于星期日:十五點(diǎn) 三十二分。頁(yè)頁(yè)面面在在內(nèi)內(nèi)存存中中換換出出換換進(jìn)進(jìn) Page Faults/sec 是每秒鐘是每秒鐘發(fā)生頁(yè)面缺失的平均數(shù)量發(fā)生頁(yè)面缺失的平均數(shù)量。頁(yè)面缺失將直接導(dǎo)致頁(yè)。頁(yè)面缺失將直接導(dǎo)致頁(yè)面換進(jìn)。面換進(jìn)。 Pages Input/sec 是從磁盤(pán)是從磁盤(pán)換進(jìn)頁(yè)面的速度。換進(jìn)頁(yè)
5、面的速度。當(dāng)一個(gè)進(jìn)程引用一個(gè)虛當(dāng)一個(gè)進(jìn)程引用一個(gè)虛擬內(nèi)存的頁(yè)面,而此頁(yè)擬內(nèi)存的頁(yè)面,而此頁(yè)面不存在于內(nèi)存,就會(huì)面不存在于內(nèi)存,就會(huì)發(fā)生頁(yè)面缺失。發(fā)生頁(yè)面缺失。 Pages Output/sec 是指為了是指為了釋放物理內(nèi)存空間而將頁(yè)釋放物理內(nèi)存空間而將頁(yè)面寫(xiě)入磁盤(pán)的速度。面寫(xiě)入磁盤(pán)的速度。當(dāng) 物 理 內(nèi) 存 不 足 時(shí) ,當(dāng) 物 理 內(nèi) 存 不 足 時(shí) ,Windows 會(huì)將頁(yè)面寫(xiě)回會(huì)將頁(yè)面寫(xiě)回到磁盤(pán)以便釋放空間。到磁盤(pán)以便釋放空間。 出頁(yè)的峰值往往與進(jìn)頁(yè)峰值出頁(yè)的峰值往往與進(jìn)頁(yè)峰值接近。接近。說(shuō)明出頁(yè)多是因?yàn)橛羞M(jìn)說(shuō)明出頁(yè)多是因?yàn)橛羞M(jìn)頁(yè)需求,即只有當(dāng)內(nèi)存頁(yè)需求,即只有當(dāng)內(nèi)存中沒(méi)有可分配空間,同
6、中沒(méi)有可分配空間,同時(shí)又必須調(diào)入內(nèi)存新的時(shí)又必須調(diào)入內(nèi)存新的頁(yè)面時(shí),才需要換出頁(yè)頁(yè)面時(shí),才需要換出頁(yè)面。面。 第5頁(yè)/共100頁(yè)第六頁(yè),編輯于星期日:十五點(diǎn) 三十二分??煽捎糜梦镂锢砝韮?nèi)內(nèi)存存Available MBytes 是計(jì)算機(jī)是計(jì)算機(jī)上運(yùn)行的進(jìn)程的可用物上運(yùn)行的進(jìn)程的可用物理內(nèi)存大小。它是將零理內(nèi)存大小。它是將零的、空閑的和備用內(nèi)存的、空閑的和備用內(nèi)存列表的空間添加在一起列表的空間添加在一起來(lái)計(jì)算的。來(lái)計(jì)算的。 第6頁(yè)/共100頁(yè)第七頁(yè),編輯于星期日:十五點(diǎn) 三十二分。 Linux系統(tǒng)也是將存儲(chǔ)器空間劃分成頁(yè)面,根系統(tǒng)也是將存儲(chǔ)器空間劃分成頁(yè)面,根據(jù)進(jìn)程運(yùn)行時(shí)的需要來(lái)對(duì)頁(yè)面進(jìn)行換進(jìn)、換
7、出的。據(jù)進(jìn)程運(yùn)行時(shí)的需要來(lái)對(duì)頁(yè)面進(jìn)行換進(jìn)、換出的。 同樣在磁盤(pán)上也安排了交換區(qū)來(lái)與內(nèi)存同樣在磁盤(pán)上也安排了交換區(qū)來(lái)與內(nèi)存協(xié)調(diào)工作,以達(dá)到擴(kuò)大內(nèi)存的目的。協(xié)調(diào)工作,以達(dá)到擴(kuò)大內(nèi)存的目的。 但是但是Linux系統(tǒng)的交換區(qū)多采用在硬盤(pán)上劃系統(tǒng)的交換區(qū)多采用在硬盤(pán)上劃分出一個(gè)指定區(qū)域來(lái)作為交換區(qū),因此,交換區(qū)分出一個(gè)指定區(qū)域來(lái)作為交換區(qū),因此,交換區(qū)的大小不可變化。的大小不可變化。第7頁(yè)/共100頁(yè)第八頁(yè),編輯于星期日:十五點(diǎn) 三十二分。第8頁(yè)/共100頁(yè)第九頁(yè),編輯于星期日:十五點(diǎn) 三十二分。n任務(wù)任務(wù)在被激活之前在被激活之前存放在輔助存儲(chǔ)器存放在輔助存儲(chǔ)器上。上。n當(dāng)任務(wù)被激活時(shí),它成為當(dāng)任務(wù)被激
8、活時(shí),它成為進(jìn)程進(jìn)入主存儲(chǔ)器進(jìn)程進(jìn)入主存儲(chǔ)器。n進(jìn)程的描述進(jìn)程的描述部分部分及主程序及主程序部分始終存放于部分始終存放于主存儲(chǔ)器主存儲(chǔ)器,其他其他程序和數(shù)據(jù)部分視需要由操作系統(tǒng)程序和數(shù)據(jù)部分視需要由操作系統(tǒng)在內(nèi)存與外存之間交換在內(nèi)存與外存之間交換。n當(dāng)用戶(hù)向計(jì)算機(jī)當(dāng)用戶(hù)向計(jì)算機(jī)提交提交自己的自己的任務(wù)任務(wù)時(shí),存儲(chǔ)管理是以一種時(shí),存儲(chǔ)管理是以一種邏輯形式邏輯形式來(lái)進(jìn)行描述。來(lái)進(jìn)行描述。n而當(dāng)操作系統(tǒng)而當(dāng)操作系統(tǒng)處理處理用戶(hù)的用戶(hù)的任務(wù)任務(wù)時(shí),是對(duì)具體的時(shí),是對(duì)具體的存儲(chǔ)器存儲(chǔ)器地址進(jìn)地址進(jìn)行操作。行操作。n存儲(chǔ)管理存儲(chǔ)管理的工作就是圓滿(mǎn)地處理發(fā)生在的工作就是圓滿(mǎn)地處理發(fā)生在銜接邏輯和物理存銜接邏
9、輯和物理存儲(chǔ)儲(chǔ)時(shí)所產(chǎn)生的各種問(wèn)題。時(shí)所產(chǎn)生的各種問(wèn)題。第9頁(yè)/共100頁(yè)第十頁(yè),編輯于星期日:十五點(diǎn) 三十二分。用戶(hù)的每一條程序指令要訪問(wèn)的數(shù)據(jù)用戶(hù)的每一條程序指令要訪問(wèn)的數(shù)據(jù)都有一個(gè)對(duì)應(yīng)的地址,這個(gè)地址被稱(chēng)為都有一個(gè)對(duì)應(yīng)的地址,這個(gè)地址被稱(chēng)為邏輯地址邏輯地址。由于它是相對(duì)于由于它是相對(duì)于0的地址,因此又被稱(chēng)的地址,因此又被稱(chēng)為為相對(duì)地址相對(duì)地址。當(dāng)用戶(hù)程序被編譯為當(dāng)用戶(hù)程序被編譯為目標(biāo)代碼目標(biāo)代碼時(shí)也使時(shí)也使用的是相對(duì)地址。用的是相對(duì)地址。原則上講,因此用戶(hù)可以無(wú)限制地加原則上講,因此用戶(hù)可以無(wú)限制地加長(zhǎng)自己的程序。長(zhǎng)自己的程序。在具體應(yīng)用中在具體應(yīng)用中相對(duì)地址的大小受相對(duì)相對(duì)地址的大小受相
10、對(duì)地址寄存器位數(shù)的限制地址寄存器位數(shù)的限制,如在,如在Windows 中相對(duì)地址寄存器為中相對(duì)地址寄存器為32位,表示相對(duì)地位,表示相對(duì)地址最大可達(dá)址最大可達(dá)4GB。邏輯地址空間可以邏輯地址空間可以定義定義為:實(shí)體(用為:實(shí)體(用戶(hù)、作業(yè)、任務(wù)、進(jìn)程或程序)所用的戶(hù)、作業(yè)、任務(wù)、進(jìn)程或程序)所用的所有所有邏輯地址的集合邏輯地址的集合。不同的操作系統(tǒng)賦予邏輯地址空間不不同的操作系統(tǒng)賦予邏輯地址空間不同的表現(xiàn)形式,它的大小也是可以確定同的表現(xiàn)形式,它的大小也是可以確定的。的。用戶(hù)可以直接對(duì)邏輯地址和邏輯地址用戶(hù)可以直接對(duì)邏輯地址和邏輯地址空間進(jìn)行訪問(wèn)和操作空間進(jìn)行訪問(wèn)和操作。邏輯地址空間又稱(chēng)為邏輯
11、地址空間又稱(chēng)為相對(duì)地址空間相對(duì)地址空間,有時(shí)候也被簡(jiǎn)稱(chēng)為用戶(hù)空間或者作業(yè)空有時(shí)候也被簡(jiǎn)稱(chēng)為用戶(hù)空間或者作業(yè)空間。邏輯地址空間的大小被限制在間。邏輯地址空間的大小被限制在0到到相對(duì)地址最大值之間。相對(duì)地址最大值之間。內(nèi)存中的實(shí)際地址被稱(chēng)為物理地址內(nèi)存中的實(shí)際地址被稱(chēng)為物理地址。由于它并不和任何相對(duì)地址相關(guān),由于它并不和任何相對(duì)地址相關(guān),因此,物理地址又稱(chēng)為絕對(duì)地址。因此,物理地址又稱(chēng)為絕對(duì)地址。物理地址的最小值為物理地址的最小值為0,最大值取決,最大值取決于內(nèi)存的大小和內(nèi)存地址寄存器的所于內(nèi)存的大小和內(nèi)存地址寄存器的所能表現(xiàn)的最大值,二者中較小的那一能表現(xiàn)的最大值,二者中較小的那一個(gè)值為物理地址
12、的最大值。個(gè)值為物理地址的最大值。 物理地址空間可以定義為:當(dāng)邏輯物理地址空間可以定義為:當(dāng)邏輯地址空間地址空間被映射到內(nèi)存被映射到內(nèi)存時(shí)所對(duì)應(yīng)的物時(shí)所對(duì)應(yīng)的物理地址的集合。理地址的集合。物理地址空間又稱(chēng)為物理地址空間又稱(chēng)為絕對(duì)地址空間絕對(duì)地址空間。物理地址空間并不是指物理內(nèi)存,物理地址空間并不是指物理內(nèi)存,只有當(dāng)邏輯地址空間存在時(shí),才會(huì)有只有當(dāng)邏輯地址空間存在時(shí),才會(huì)有物理地址空間。物理地址空間。物理地址空間受存儲(chǔ)器大小的限制物理地址空間受存儲(chǔ)器大小的限制,也就是說(shuō)物理地址空間最大只能達(dá),也就是說(shuō)物理地址空間最大只能達(dá)到內(nèi)存的大小。到內(nèi)存的大小。第10頁(yè)/共100頁(yè)第十一頁(yè),編輯于星期日:十
13、五點(diǎn) 三十二分。裝入后的作業(yè)并不能立即運(yùn)行,因?yàn)檠b入后的作業(yè)并不能立即運(yùn)行,因?yàn)樽鳂I(yè)中每一個(gè)指令要訪問(wèn)的地址依然作業(yè)中每一個(gè)指令要訪問(wèn)的地址依然是是相對(duì)地址相對(duì)地址,相對(duì)地址是邏輯地址空,相對(duì)地址是邏輯地址空間中的地址,并不是內(nèi)存中的實(shí)際地間中的地址,并不是內(nèi)存中的實(shí)際地址,因此不能夠訪問(wèn)。址,因此不能夠訪問(wèn)。 裝入是指將邏輯地址空間裝入是指將邏輯地址空間安排到內(nèi)存中具體的物理位安排到內(nèi)存中具體的物理位置上。置上。 裝入針對(duì)的是整個(gè)邏輯地址裝入針對(duì)的是整個(gè)邏輯地址空間??臻g。1.裝入裝入2.地址映射地址映射對(duì)于指令要訪問(wèn)的地址進(jìn)行相對(duì)對(duì)于指令要訪問(wèn)的地址進(jìn)行相對(duì)地址到絕對(duì)地址的變換,就是地地址
14、到絕對(duì)地址的變換,就是地址映射。址映射。地址映射就是將邏輯地址空間中地址映射就是將邏輯地址空間中的地址映射到物理地址空間中去的地址映射到物理地址空間中去。采用的辦法為重定位。采用的辦法為重定位。 1.裝入程裝入程序序 在裝入過(guò)程完成后,根據(jù)裝入的起始在裝入過(guò)程完成后,根據(jù)裝入的起始位置來(lái)修改程序中指令要訪問(wèn)的地址位置來(lái)修改程序中指令要訪問(wèn)的地址,將相對(duì)地址改為絕對(duì)地址就是重定,將相對(duì)地址改為絕對(duì)地址就是重定位。位。絕對(duì)地址絕對(duì)地址 (BR)相對(duì)地址)相對(duì)地址 根據(jù)不同的根據(jù)不同的地址修改時(shí)間地址修改時(shí)間可將可將重定位劃分為重定位劃分為靜態(tài)靜態(tài)重定位和重定位和動(dòng)動(dòng)態(tài)態(tài)重定位。重定位。第11頁(yè)/共
15、100頁(yè)第十二頁(yè),編輯于星期日:十五點(diǎn) 三十二分。2.重定位:重定位:靜態(tài)重定位靜態(tài)重定位動(dòng)態(tài)重定位動(dòng)態(tài)重定位 mov AL, nn mov AL, nn+m 邏輯空間 0 內(nèi)存 m nn L nn+m L+m 靜態(tài)重定位是在裝入過(guò)程完成后在靜態(tài)重定位是在裝入過(guò)程完成后在程序運(yùn)行程序運(yùn)行前前,一次一次將所有的指令要訪問(wèn)的地址全部修改將所有的指令要訪問(wèn)的地址全部修改為絕對(duì)地址,在程序運(yùn)行過(guò)程中不再修改。為絕對(duì)地址,在程序運(yùn)行過(guò)程中不再修改。靜態(tài)重定位要求程序一旦裝入其靜態(tài)重定位要求程序一旦裝入其絕對(duì)地址空間絕對(duì)地址空間就就不能發(fā)生變化不能發(fā)生變化了。了。 mov AL, nn m nn+m nn
16、 + mov AL, nn m L+m 0 L nn 邏輯空間 L 基址寄存器 L 地址寄存器 內(nèi)存 L 動(dòng)態(tài)重定位是在程序的動(dòng)態(tài)重定位是在程序的運(yùn)行過(guò)程運(yùn)行過(guò)程中,當(dāng)指令中,當(dāng)指令需要執(zhí)行時(shí)對(duì)將要訪問(wèn)的需要執(zhí)行時(shí)對(duì)將要訪問(wèn)的地址地址進(jìn)行進(jìn)行修改修改。 動(dòng)態(tài)重定位動(dòng)態(tài)重定位允許允許在在程序運(yùn)行過(guò)程程序運(yùn)行過(guò)程中,其中,其絕對(duì)絕對(duì)地址地址空間發(fā)生變化或被分割為不同的區(qū)域,空間發(fā)生變化或被分割為不同的區(qū)域,變變化化后只需要將基地址寄存器中的內(nèi)容作對(duì)應(yīng)修后只需要將基地址寄存器中的內(nèi)容作對(duì)應(yīng)修改。改。 采用靜態(tài)重定位方式的采用靜態(tài)重定位方式的主要優(yōu)點(diǎn)主要優(yōu)點(diǎn)是:是:(1)可以在一般機(jī)器上全部用)可以在
17、一般機(jī)器上全部用。(2)裝入程序可以實(shí)現(xiàn))裝入程序可以實(shí)現(xiàn)。靜態(tài)重定位方式靜態(tài)重定位方式主要缺點(diǎn)主要缺點(diǎn)是:是:(1)執(zhí)行期間程序)執(zhí)行期間程序在主存儲(chǔ)器中在主存儲(chǔ)器中,所,所以對(duì)提高主存儲(chǔ)器的利用率不利。以對(duì)提高主存儲(chǔ)器的利用率不利。(2)若程序空間大于被分配的物理空間,由)若程序空間大于被分配的物理空間,由程序員自行采取某種手段來(lái)程序員自行采取某種手段來(lái)問(wèn)題,問(wèn)題,如采用覆蓋結(jié)構(gòu)。如采用覆蓋結(jié)構(gòu)。(3)用戶(hù))用戶(hù)已經(jīng)存放在主存中的同一個(gè)程已經(jīng)存放在主存中的同一個(gè)程序,如果幾個(gè)用戶(hù)要使用同一個(gè)程序,則每個(gè)用戶(hù)必序,如果幾個(gè)用戶(hù)要使用同一個(gè)程序,則每個(gè)用戶(hù)必須在各自的主存空間中存放一個(gè)程序副本
18、。須在各自的主存空間中存放一個(gè)程序副本。 采用動(dòng)態(tài)重定位方式的采用動(dòng)態(tài)重定位方式的主要優(yōu)點(diǎn)主要優(yōu)點(diǎn)有:有:(1)在程序開(kāi)始執(zhí)行之前,)在程序開(kāi)始執(zhí)行之前,不不一定要一定要把整個(gè)程把整個(gè)程序序都都調(diào)入調(diào)入到主存中。一個(gè)程序可以被分配在多個(gè)到主存中。一個(gè)程序可以被分配在多個(gè)不連續(xù)不連續(xù)的主存物理空間內(nèi),以提高主存儲(chǔ)器的的主存物理空間內(nèi),以提高主存儲(chǔ)器的利用率。利用率。(2)幾個(gè)程序)幾個(gè)程序可以共享可以共享存放在主存中的同一個(gè)存放在主存中的同一個(gè)程序段。程序段。(3)支持)支持虛擬虛擬存儲(chǔ)器。存儲(chǔ)器。動(dòng)態(tài)重定位方式的動(dòng)態(tài)重定位方式的主要缺點(diǎn)主要缺點(diǎn)有:有:(1)需要有)需要有硬件支持硬件支持。(2
19、)實(shí)現(xiàn)存儲(chǔ)管理的軟件算法)實(shí)現(xiàn)存儲(chǔ)管理的軟件算法比較復(fù)雜比較復(fù)雜。第12頁(yè)/共100頁(yè)第十三頁(yè),編輯于星期日:十五點(diǎn) 三十二分。1.存儲(chǔ)分配存儲(chǔ)分配 2.存儲(chǔ)釋放存儲(chǔ)釋放 3.分配原則分配原則 在設(shè)計(jì)分配程序時(shí)需要考慮諸多因素:(1)內(nèi)存空間的劃分(2)數(shù)據(jù)結(jié)構(gòu)的確定 (3)作業(yè)空間的劃分(4)淘汰算法 (5)分配算法 存儲(chǔ)分配實(shí)際上是將作業(yè)的存儲(chǔ)分配實(shí)際上是將作業(yè)的邏輯地址空間映射成為內(nèi)存中邏輯地址空間映射成為內(nèi)存中的物理地址空間。的物理地址空間。 內(nèi)存中有許多尚未使用內(nèi)存中有許多尚未使用的區(qū)域即自由區(qū)都可以被的區(qū)域即自由區(qū)都可以被分配,但到底選擇哪一自分配,但到底選擇哪一自由區(qū)必須依據(jù)分配
20、算法來(lái)由區(qū)必須依據(jù)分配算法來(lái)確定。確定。 存儲(chǔ)釋放實(shí)際上是解除存儲(chǔ)釋放實(shí)際上是解除邏輯地址空間與物理地址邏輯地址空間與物理地址空間的聯(lián)系,并釋放物理空間的聯(lián)系,并釋放物理空間。空間。 存儲(chǔ)釋放程序?qū)⒒厥盏膬?nèi)存存儲(chǔ)釋放程序?qū)⒒厥盏膬?nèi)存區(qū)域重新設(shè)定為自由區(qū),并將區(qū)域重新設(shè)定為自由區(qū),并將其安排進(jìn)入自由區(qū)隊(duì)列。進(jìn)入其安排進(jìn)入自由區(qū)隊(duì)列。進(jìn)入自由區(qū)隊(duì)列的具體位置也必須自由區(qū)隊(duì)列的具體位置也必須依據(jù)分配算法。依據(jù)分配算法。 第13頁(yè)/共100頁(yè)第十四頁(yè),編輯于星期日:十五點(diǎn) 三十二分。第14頁(yè)/共100頁(yè)第十五頁(yè),編輯于星期日:十五點(diǎn) 三十二分。 當(dāng)進(jìn)程之間需要共當(dāng)進(jìn)程之間需要共享某些數(shù)據(jù)時(shí),使用界享某
21、些數(shù)據(jù)時(shí),使用界地址寄存器就表現(xiàn)得無(wú)地址寄存器就表現(xiàn)得無(wú)能為力。能為力。 第15頁(yè)/共100頁(yè)第十六頁(yè),編輯于星期日:十五點(diǎn) 三十二分。當(dāng)進(jìn)程訪問(wèn)某個(gè)區(qū)域時(shí),若進(jìn)程的當(dāng)進(jìn)程訪問(wèn)某個(gè)區(qū)域時(shí),若進(jìn)程的訪問(wèn)權(quán)限大于等于訪問(wèn)權(quán)限大于等于被訪問(wèn)區(qū)域的權(quán)限值被訪問(wèn)區(qū)域的權(quán)限值,訪問(wèn)可以進(jìn)行,否則視為非,訪問(wèn)可以進(jìn)行,否則視為非法。法。系統(tǒng)為每一個(gè)系統(tǒng)為每一個(gè)存儲(chǔ)區(qū)域存儲(chǔ)區(qū)域都給都給定一個(gè)定一個(gè)訪問(wèn)權(quán)限值。訪問(wèn)權(quán)限值。同時(shí)也為每一個(gè)同時(shí)也為每一個(gè)進(jìn)程進(jìn)程賦予一個(gè)賦予一個(gè)訪問(wèn)權(quán)限值訪問(wèn)權(quán)限值。 一個(gè)進(jìn)程可以對(duì)不同存儲(chǔ)區(qū)域一個(gè)進(jìn)程可以對(duì)不同存儲(chǔ)區(qū)域有不同的訪問(wèn)權(quán)限;有不同的訪問(wèn)權(quán)限; 一個(gè)存儲(chǔ)區(qū)域也可以被多個(gè)具
22、一個(gè)存儲(chǔ)區(qū)域也可以被多個(gè)具有不同訪問(wèn)權(quán)限的進(jìn)程按權(quán)限級(jí)別有不同訪問(wèn)權(quán)限的進(jìn)程按權(quán)限級(jí)別進(jìn)行訪問(wèn)。進(jìn)行訪問(wèn)。 訪問(wèn)授權(quán)保護(hù)還有一個(gè)好處是訪問(wèn)授權(quán)保護(hù)還有一個(gè)好處是它允許存儲(chǔ)區(qū)域的共享。它允許存儲(chǔ)區(qū)域的共享。 第16頁(yè)/共100頁(yè)第十七頁(yè),編輯于星期日:十五點(diǎn) 三十二分。(1)實(shí)際內(nèi)存空間實(shí)際內(nèi)存空間 (2)輔助存儲(chǔ)器上的內(nèi)存交換區(qū)輔助存儲(chǔ)器上的內(nèi)存交換區(qū) (3)虛擬地址虛擬地址 (4)換進(jìn)、換出機(jī)制換進(jìn)、換出機(jī)制 目前的操作目前的操作系統(tǒng)幾乎系統(tǒng)幾乎全部全部具具備虛擬存儲(chǔ)器功備虛擬存儲(chǔ)器功能,雖然不同的能,雖然不同的系統(tǒng)其實(shí)現(xiàn)虛擬系統(tǒng)其實(shí)現(xiàn)虛擬存儲(chǔ)器的存儲(chǔ)器的基本條基本條件都相似件都相似,但在,
23、但在數(shù)據(jù)的換進(jìn)、換出數(shù)據(jù)的換進(jìn)、換出策略上是可以不策略上是可以不同同的。的。 第17頁(yè)/共100頁(yè)第十八頁(yè),編輯于星期日:十五點(diǎn) 三十二分。第18頁(yè)/共100頁(yè)第十九頁(yè),編輯于星期日:十五點(diǎn) 三十二分。第19頁(yè)/共100頁(yè)第二十頁(yè),編輯于星期日:十五點(diǎn) 三十二分。第20頁(yè)/共100頁(yè)第二十一頁(yè),編輯于星期日:十五點(diǎn) 三十二分。第21頁(yè)/共100頁(yè)第二十二頁(yè),編輯于星期日:十五點(diǎn) 三十二分。第22頁(yè)/共100頁(yè)第二十三頁(yè),編輯于星期日:十五點(diǎn) 三十二分。 采用采用靜態(tài)重定位靜態(tài)重定位的方式在作業(yè)裝入時(shí)一的方式在作業(yè)裝入時(shí)一次性對(duì)所有指令將要訪問(wèn)的地址進(jìn)行修改次性對(duì)所有指令將要訪問(wèn)的地址進(jìn)行修改。
24、 由于作業(yè)的物理地址空間由于作業(yè)的物理地址空間不不會(huì)發(fā)生會(huì)發(fā)生變化變化,因此,單一連續(xù)分區(qū)因此,單一連續(xù)分區(qū)不適合不適合使用使用動(dòng)態(tài)重動(dòng)態(tài)重定位定位。 第23頁(yè)/共100頁(yè)第二十四頁(yè),編輯于星期日:十五點(diǎn) 三十二分。 使用界地址寄存器保護(hù)法界地址寄存器保護(hù)法。其中,基址寄存器的內(nèi)容是操作系統(tǒng)常駐內(nèi)存部分以后的首地址,長(zhǎng)度寄存器的內(nèi)容便是用戶(hù)可用區(qū)域的長(zhǎng)度。 由于操作系統(tǒng)不會(huì)發(fā)生變化,甚至可甚至可以不使用界地址寄存器以不使用界地址寄存器,而將基址和長(zhǎng)度用兩個(gè)常量來(lái)代替 。第24頁(yè)/共100頁(yè)第二十五頁(yè),編輯于星期日:十五點(diǎn) 三十二分。(1)管理簡(jiǎn)單。管理簡(jiǎn)單。(2)使用安全。)使用安全。(3)不
25、需要任何附加的硬件設(shè)備。)不需要任何附加的硬件設(shè)備。(1)作業(yè)的大小受用戶(hù)區(qū)大小的限制。作業(yè)的大小受用戶(hù)區(qū)大小的限制。(2)不支持多用戶(hù)。)不支持多用戶(hù)。(3)容易造成系統(tǒng)資源的浪費(fèi)。)容易造成系統(tǒng)資源的浪費(fèi)。第25頁(yè)/共100頁(yè)第二十六頁(yè),編輯于星期日:十五點(diǎn) 三十二分。 將內(nèi)存空間由小到大劃分將內(nèi)存空間由小到大劃分為若干個(gè)為若干個(gè)位置固定大小不等位置固定大小不等的區(qū)域,每個(gè)區(qū)域可以存放的區(qū)域,每個(gè)區(qū)域可以存放一個(gè)作業(yè),存放于不同區(qū)域一個(gè)作業(yè),存放于不同區(qū)域的的作業(yè)可以并行作業(yè)可以并行。 用戶(hù)邏輯地址空間依然是用戶(hù)邏輯地址空間依然是一個(gè)連續(xù)的整體,在作業(yè)申請(qǐng)一個(gè)連續(xù)的整體,在作業(yè)申請(qǐng)進(jìn)入內(nèi)存
26、時(shí)進(jìn)入內(nèi)存時(shí)一次性裝入一次性裝入。 描述內(nèi)存中每一個(gè)區(qū)描述內(nèi)存中每一個(gè)區(qū)域的情況域的情況描述存放于區(qū)域中的作描述存放于區(qū)域中的作業(yè)業(yè) 第26頁(yè)/共100頁(yè)第二十七頁(yè),編輯于星期日:十五點(diǎn) 三十二分。地址映射地址映射 由于作業(yè)被分配進(jìn)入內(nèi)存后位置不再發(fā)生變化,因此,地址映由于作業(yè)被分配進(jìn)入內(nèi)存后位置不再發(fā)生變化,因此,地址映射可以采用射可以采用靜態(tài)重定位靜態(tài)重定位方法。不過(guò)我們要注意到每一個(gè)作業(yè)方法。不過(guò)我們要注意到每一個(gè)作業(yè)的物理地址空間的起始位置是不相同的,因此,對(duì)每一個(gè)作的物理地址空間的起始位置是不相同的,因此,對(duì)每一個(gè)作業(yè)進(jìn)行重定位時(shí)要修正基址寄存器的值。業(yè)進(jìn)行重定位時(shí)要修正基址寄存器的
27、值。存儲(chǔ)保護(hù)存儲(chǔ)保護(hù) 存儲(chǔ)保護(hù)可以采取存儲(chǔ)保護(hù)可以采取界地址寄存器界地址寄存器的方法和的方法和訪問(wèn)授權(quán)保訪問(wèn)授權(quán)保護(hù)護(hù),由于作業(yè)在內(nèi)存中的位置保持不變,可以用兩個(gè)常量替,由于作業(yè)在內(nèi)存中的位置保持不變,可以用兩個(gè)常量替代界地址寄存代界地址寄存。 第27頁(yè)/共100頁(yè)第二十八頁(yè),編輯于星期日:十五點(diǎn) 三十二分。優(yōu)缺點(diǎn):優(yōu)缺點(diǎn):(1)提高了)提高了CPU的的利用率利用率。(2)作業(yè)大小受到最大分區(qū))作業(yè)大小受到最大分區(qū)大小的大小的限制限制。(3)空間)空間浪費(fèi)浪費(fèi)。(4)碎片碎片問(wèn)題。問(wèn)題。第28頁(yè)/共100頁(yè)第二十九頁(yè),編輯于星期日:十五點(diǎn) 三十二分。根據(jù)作業(yè)對(duì)內(nèi)存空間的根據(jù)作業(yè)對(duì)內(nèi)存空間的申請(qǐng)
28、來(lái)劃分主存區(qū)域,申請(qǐng)來(lái)劃分主存區(qū)域,區(qū)域的區(qū)域的大小可變大小可變、位位置可變置可變、數(shù)量也可變數(shù)量也可變 描述已被分配的區(qū)域描述已被分配的區(qū)域 描述內(nèi)存中的自由區(qū)域描述內(nèi)存中的自由區(qū)域 為每一個(gè)為每一個(gè)自由分區(qū)自由分區(qū)設(shè)置一設(shè)置一個(gè)個(gè)鏈接鏈接指針來(lái)指向下一個(gè)自指針來(lái)指向下一個(gè)自由分區(qū),使所有的自由分區(qū)由分區(qū),使所有的自由分區(qū)形成一個(gè)鏈表形成一個(gè)鏈表 第29頁(yè)/共100頁(yè)第三十頁(yè),編輯于星期日:十五點(diǎn) 三十二分。多重分區(qū)分配與釋放多重分區(qū)分配與釋放 將作業(yè)分配到內(nèi)存中將作業(yè)分配到內(nèi)存中第一第一個(gè)碰到個(gè)碰到的大于或等于作業(yè)申請(qǐng)的大于或等于作業(yè)申請(qǐng)空間的未分配區(qū)??臻g的未分配區(qū)。將作業(yè)申請(qǐng)大小與內(nèi)存
29、將作業(yè)申請(qǐng)大小與內(nèi)存中所有未分配區(qū)的大小中所有未分配區(qū)的大小進(jìn)行比較,直到找到進(jìn)行比較,直到找到最小最小的的大于或等于作業(yè)空間大于或等于作業(yè)空間的區(qū)分配給作業(yè)。的區(qū)分配給作業(yè)。 將作業(yè)申請(qǐng)大小與內(nèi)存中所將作業(yè)申請(qǐng)大小與內(nèi)存中所有未分配區(qū)的大小進(jìn)行比較有未分配區(qū)的大小進(jìn)行比較,直到找到,直到找到最大的最大的大于或等大于或等于作業(yè)空間的區(qū)分配給作業(yè)于作業(yè)空間的區(qū)分配給作業(yè)。算法簡(jiǎn)單但分配比較盲目,可能算法簡(jiǎn)單但分配比較盲目,可能造成較小的作業(yè)分割了較大的空造成較小的作業(yè)分割了較大的空間,使大作業(yè)無(wú)法被分配。間,使大作業(yè)無(wú)法被分配。 優(yōu)先使用小的自由空間,但每?jī)?yōu)先使用小的自由空間,但每次分配以后的剩
30、余空間可能變次分配以后的剩余空間可能變得過(guò)小而成為碎片。得過(guò)小而成為碎片。 使用大的自由空間,在進(jìn)行使用大的自由空間,在進(jìn)行分割后剩余空間還可以被使分割后剩余空間還可以被使用,但也使大的自由空間無(wú)用,但也使大的自由空間無(wú)法保留給需要大空間的作業(yè)法保留給需要大空間的作業(yè)。 另外可以有:另外可以有:最佳適應(yīng)算法也是最先適應(yīng)最佳適應(yīng)算法也是最先適應(yīng)算法算法最壞適應(yīng)算法也是最先適應(yīng)最壞適應(yīng)算法也是最先適應(yīng)算法算法如何實(shí)現(xiàn)?如何實(shí)現(xiàn)?幾種方法比較幾種方法比較第30頁(yè)/共100頁(yè)第三十一頁(yè),編輯于星期日:十五點(diǎn) 三十二分。4.4.地址映射地址映射 動(dòng)態(tài)分區(qū)采用動(dòng)態(tài)分區(qū)采用動(dòng)態(tài)重定位動(dòng)態(tài)重定位方式來(lái)實(shí)現(xiàn)地址
31、映射,這方式來(lái)實(shí)現(xiàn)地址映射,這樣作業(yè)的基地址發(fā)生變化也不會(huì)影響執(zhí)行。樣作業(yè)的基地址發(fā)生變化也不會(huì)影響執(zhí)行。 當(dāng)作業(yè)被選擇當(dāng)作業(yè)被選擇運(yùn)行時(shí)運(yùn)行時(shí),其物理空間,其物理空間起始地址起始地址被裝入基被裝入基地址寄存器中,地址寄存器中,CPUCPU每執(zhí)行一條指令之前每執(zhí)行一條指令之前重定位硬件對(duì)指令要重定位硬件對(duì)指令要訪問(wèn)的地址進(jìn)行修改。訪問(wèn)的地址進(jìn)行修改。5.5.存儲(chǔ)保護(hù)存儲(chǔ)保護(hù) 存儲(chǔ)保護(hù)可以采用存儲(chǔ)保護(hù)可以采用界地址寄存器界地址寄存器的方法和訪問(wèn)授權(quán)保護(hù),的方法和訪問(wèn)授權(quán)保護(hù),不過(guò)由于作業(yè)被分配于內(nèi)存一個(gè)連續(xù)的區(qū)域中,不過(guò)由于作業(yè)被分配于內(nèi)存一個(gè)連續(xù)的區(qū)域中,訪問(wèn)授權(quán)保訪問(wèn)授權(quán)保護(hù)護(hù)的的作用作用似
32、乎似乎并不大并不大,因?yàn)樽鳂I(yè)并沒(méi)有對(duì)其他作業(yè)空間的,因?yàn)樽鳂I(yè)并沒(méi)有對(duì)其他作業(yè)空間的訪問(wèn)權(quán)力。訪問(wèn)權(quán)力。第31頁(yè)/共100頁(yè)第三十二頁(yè),編輯于星期日:十五點(diǎn) 三十二分。6.6.存儲(chǔ)區(qū)整理存儲(chǔ)區(qū)整理經(jīng)過(guò)不斷地分配和釋放后,內(nèi)存中自由分區(qū)會(huì)變得越來(lái)越經(jīng)過(guò)不斷地分配和釋放后,內(nèi)存中自由分區(qū)會(huì)變得越來(lái)越多和越來(lái)越小,這就使很多小自由分區(qū)成為多和越來(lái)越小,這就使很多小自由分區(qū)成為碎片碎片??梢杂每梢杂镁o縮緊縮的方法來(lái)解決碎片。的方法來(lái)解決碎片。緊縮是緊縮是將內(nèi)存中已使將內(nèi)存中已使用區(qū)域經(jīng)過(guò)移動(dòng)沉淀到低地址部分,從而使碎片用區(qū)域經(jīng)過(guò)移動(dòng)沉淀到低地址部分,從而使碎片浮動(dòng)浮動(dòng)到內(nèi)到內(nèi)存的高地址部分合并成較大的可
33、使用空間。存的高地址部分合并成較大的可使用空間。用緊縮方法來(lái)消除碎片需要占用大量的用緊縮方法來(lái)消除碎片需要占用大量的CPUCPU時(shí)間,并時(shí)間,并且在移動(dòng)過(guò)程中稍有且在移動(dòng)過(guò)程中稍有不慎不慎就有可能就有可能破壞破壞全部數(shù)據(jù)。全部數(shù)據(jù)。第32頁(yè)/共100頁(yè)第三十三頁(yè),編輯于星期日:十五點(diǎn) 三十二分。7.7.多重動(dòng)態(tài)分區(qū)的優(yōu)缺點(diǎn)多重動(dòng)態(tài)分區(qū)的優(yōu)缺點(diǎn)(1 1)多道程度得以提高。)多道程度得以提高。(2 2)提高了內(nèi)存的利用率。)提高了內(nèi)存的利用率。(3 3)作業(yè)大小依然受內(nèi)存容量的限制。)作業(yè)大小依然受內(nèi)存容量的限制。(4 4)對(duì)碎片問(wèn)題的解決需要以增加系統(tǒng)開(kāi)銷(xiāo)為代價(jià)。)對(duì)碎片問(wèn)題的解決需要以增加系統(tǒng)
34、開(kāi)銷(xiāo)為代價(jià)。(5 5)不便共享。)不便共享。第33頁(yè)/共100頁(yè)第三十四頁(yè),編輯于星期日:十五點(diǎn) 三十二分。舉例:舉例: 作業(yè)作業(yè)A要求要求18KB;作業(yè);作業(yè)B要求要求25KB;作業(yè);作業(yè)C要求要求30KB。用。用首次適應(yīng)算法、最佳適應(yīng)算法來(lái)處理該作業(yè)序列,看哪種算法合首次適應(yīng)算法、最佳適應(yīng)算法來(lái)處理該作業(yè)序列,看哪種算法合適。適。 os在使用在使用在使用在使用在使用在使用30KB5KB46KB0KB20KB100KB20KB160KB210KB256KB- -1第34頁(yè)/共100頁(yè)第三十五頁(yè),編輯于星期日:十五點(diǎn) 三十二分。 (1) 首次適應(yīng)算法中的自由主存隊(duì)列首次適應(yīng)算法中的自由主存隊(duì)列
35、 (a) 首次適應(yīng)算法中的自由主存隊(duì)首次適應(yīng)算法中的自由主存隊(duì)列列 20KB 0 30KB 100KB 0 20KB 160KB 0 5KB 210KB 0 46KB os在使用在使用在使用在使用在使用在使用30KB5KB46KB0KB20KB100KB20KB160KB210KB256KB- -1第35頁(yè)/共100頁(yè)第三十六頁(yè),編輯于星期日:十五點(diǎn) 三十二分。 (2) 最佳適應(yīng)算法中的自由主存隊(duì)列最佳適應(yīng)算法中的自由主存隊(duì)列 (b) 最佳適應(yīng)算法中的自由主存隊(duì)最佳適應(yīng)算法中的自由主存隊(duì)列列 160KB 0 5KB 100KB 0 20KB 20KB 0 30KB 210KB 0 46KB o
36、s在使用在使用在使用在使用在使用在使用30KB5KB46KB0KB20KB100KB20KB160KB210KB256KB- -1第36頁(yè)/共100頁(yè)第三十七頁(yè),編輯于星期日:十五點(diǎn) 三十二分。(a) 首次適應(yīng)算法中的自由主存隊(duì)首次適應(yīng)算法中的自由主存隊(duì)列列 20KB 0 30KB 100KB 0 20KB 160KB 0 5KB 210KB 0 46KB (b) 最佳適應(yīng)算法中的自由主存隊(duì)最佳適應(yīng)算法中的自由主存隊(duì)列列 160KB 0 5KB 100KB 0 20KB 20KB 0 30KB 210KB 0 46KB 作業(yè)作業(yè)A要求要求18KB作業(yè)作業(yè)B要求要求25KB作業(yè)作業(yè)C要求要求30
37、KB第37頁(yè)/共100頁(yè)第三十八頁(yè),編輯于星期日:十五點(diǎn) 三十二分。 分頁(yè)存儲(chǔ)管理方式分頁(yè)存儲(chǔ)管理方式 頁(yè)式系統(tǒng)應(yīng)解決的問(wèn)題頁(yè)式系統(tǒng)應(yīng)解決的問(wèn)題 分區(qū)存儲(chǔ)管理的主要問(wèn)題是碎片問(wèn)題。分區(qū)存儲(chǔ)管理的主要問(wèn)題是碎片問(wèn)題。 在采用分區(qū)存儲(chǔ)管理的系統(tǒng)中,會(huì)形成在采用分區(qū)存儲(chǔ)管理的系統(tǒng)中,會(huì)形成一些非常小的分區(qū),最終這些非常小的分區(qū)一些非常小的分區(qū),最終這些非常小的分區(qū)不能被系統(tǒng)中的任何用戶(hù)(程序)利用而浪不能被系統(tǒng)中的任何用戶(hù)(程序)利用而浪費(fèi)。費(fèi)。 造成這樣問(wèn)題的主要原因是用戶(hù)程序裝入內(nèi)造成這樣問(wèn)題的主要原因是用戶(hù)程序裝入內(nèi)存時(shí)是整體裝入的,為解決這個(gè)問(wèn)題,提出了分存時(shí)是整體裝入的,為解決這個(gè)問(wèn)題,提
38、出了分頁(yè)存儲(chǔ)管理技術(shù)。頁(yè)存儲(chǔ)管理技術(shù)。第38頁(yè)/共100頁(yè)第三十九頁(yè),編輯于星期日:十五點(diǎn) 三十二分。第39頁(yè)/共100頁(yè)第四十頁(yè),編輯于星期日:十五點(diǎn) 三十二分。 一、一、 頁(yè)式系統(tǒng)的基本頁(yè)式系統(tǒng)的基本概念概念 (1 1) 頁(yè)面頁(yè)面 程序的地址空間被等分成大程序的地址空間被等分成大小相等的片,稱(chēng)為頁(yè)面,又稱(chēng)小相等的片,稱(chēng)為頁(yè)面,又稱(chēng)為虛頁(yè)。為虛頁(yè)。 (2 2) 主存塊主存塊 主存被等分成大小相等的片主存被等分成大小相等的片,稱(chēng)為主存塊,又稱(chēng)為實(shí)頁(yè)。,稱(chēng)為主存塊,又稱(chēng)為實(shí)頁(yè)。第40頁(yè)/共100頁(yè)第四十一頁(yè),編輯于星期日:十五點(diǎn) 三十二分。(3 3) 頁(yè)表頁(yè)表 為了實(shí)現(xiàn)從地址空間到物理主存的映象
39、,為了實(shí)現(xiàn)從地址空間到物理主存的映象,系統(tǒng)建立的記錄頁(yè)與內(nèi)存塊之間對(duì)應(yīng)關(guān)系的系統(tǒng)建立的記錄頁(yè)與內(nèi)存塊之間對(duì)應(yīng)關(guān)系的地址變換的機(jī)構(gòu)稱(chēng)為頁(yè)面映像表,簡(jiǎn)稱(chēng)頁(yè)表地址變換的機(jī)構(gòu)稱(chēng)為頁(yè)面映像表,簡(jiǎn)稱(chēng)頁(yè)表。 第41頁(yè)/共100頁(yè)第四十二頁(yè),編輯于星期日:十五點(diǎn) 三十二分。01KB01KB2KB3KB 1主存主存作業(yè)作業(yè)2地址空間地址空間2KB3KB4KB5KB6 KB7KB8 KB9KB10KB 101 KB2KB 1作業(yè)作業(yè)1地址空間地址空間01KB 1作業(yè)作業(yè)3地址空間地址空間0516頁(yè)頁(yè)號(hào)號(hào)塊號(hào)塊號(hào)02140827作業(yè)作業(yè)1頁(yè)表頁(yè)表作業(yè)作業(yè)2頁(yè)表頁(yè)表作業(yè)作業(yè)3頁(yè)表頁(yè)表osos 分頁(yè)映像存儲(chǔ)的例分頁(yè)映像
40、存儲(chǔ)的例 第42頁(yè)/共100頁(yè)第四十三頁(yè),編輯于星期日:十五點(diǎn) 三十二分。 (4 4)虛地址結(jié)構(gòu))虛地址結(jié)構(gòu)( (程序字程序字) ) 虛地址是用戶(hù)程序中的邏輯地址,它包括頁(yè)號(hào)和虛地址是用戶(hù)程序中的邏輯地址,它包括頁(yè)號(hào)和頁(yè)內(nèi)地址(頁(yè)內(nèi)位移)。頁(yè)內(nèi)地址(頁(yè)內(nèi)位移)。 區(qū)分頁(yè)號(hào)和頁(yè)內(nèi)地址的依椐是頁(yè)的大小,頁(yè)內(nèi)地址區(qū)分頁(yè)號(hào)和頁(yè)內(nèi)地址的依椐是頁(yè)的大小,頁(yè)內(nèi)地址占虛地址的低位部分,頁(yè)號(hào)占虛地址的高位部分。占虛地址的低位部分,頁(yè)號(hào)占虛地址的高位部分。 假定頁(yè)面大小假定頁(yè)面大小1024字節(jié),虛地址共占用字節(jié),虛地址共占用2個(gè)字節(jié)個(gè)字節(jié)(16位位) 頁(yè)號(hào)頁(yè)號(hào) 頁(yè)內(nèi)地址(位移量)頁(yè)內(nèi)地址(位移量) P W 15
41、10 9 0第43頁(yè)/共100頁(yè)第四十四頁(yè),編輯于星期日:十五點(diǎn) 三十二分。(5) 頁(yè)式地址變換頁(yè)式地址變換l頁(yè)式地址變換舉例頁(yè)式地址變換舉例 作業(yè)作業(yè)2 2地址空間中,設(shè)地址空間中,設(shè)100100號(hào)單元處有如下指令:號(hào)單元處有如下指令: mov mov r1,2500r1,2500。當(dāng)這條指令執(zhí)行時(shí),如何進(jìn)行正確的地址變換。當(dāng)這條指令執(zhí)行時(shí),如何進(jìn)行正確的地址變換。mov r1 ,250012301KB1KB3KB 1作業(yè)作業(yè)2地址空間地址空間 2500 2 2* *1024 + 452 1024 + 452 p=2 w=452 p=2 w=452第44頁(yè)/共100頁(yè)第四十五頁(yè),編輯于星期日
42、:十五點(diǎn) 三十二分。l 頁(yè)式地址變換過(guò)程頁(yè)式地址變換過(guò)程 000111 011100010015 10 9 0頁(yè)號(hào)頁(yè)號(hào)P頁(yè)內(nèi)位移頁(yè)內(nèi)位移W頁(yè)表始址寄存器頁(yè)表始址寄存器mov r1 ,250012301 KB2KB3KB 1作業(yè)作業(yè)2地址空間地址空間+021427頁(yè)表頁(yè)表 000010 011100010015 10 9 0頁(yè)號(hào)頁(yè)號(hào)P頁(yè)內(nèi)位移頁(yè)內(nèi)位移W250001KB主存主存2 KB3KB4KB5KB6KB7 KB8KB9KB10KB 1ososmov r1 , 2500123第第1頁(yè)頁(yè)7*1024+452=7620第45頁(yè)/共100頁(yè)第四十六頁(yè),編輯于星期日:十五點(diǎn) 三十二分。l 頁(yè)式地址變換
43、的步驟頁(yè)式地址變換的步驟 CPU給出操作數(shù)地址給出操作數(shù)地址(為為2500) ; 由分頁(yè)機(jī)構(gòu)自動(dòng)地把邏輯地址分為兩部分,由分頁(yè)機(jī)構(gòu)自動(dòng)地把邏輯地址分為兩部分,得到頁(yè)號(hào)得到頁(yè)號(hào)p和頁(yè)內(nèi)相對(duì)位移和頁(yè)內(nèi)相對(duì)位移w (p =2, w =452); 根據(jù)頁(yè)表始址寄存器指示的頁(yè)表始地址,以頁(yè)號(hào)根據(jù)頁(yè)表始址寄存器指示的頁(yè)表始地址,以頁(yè)號(hào)為索引,找到第為索引,找到第2頁(yè)所對(duì)應(yīng)的塊號(hào)頁(yè)所對(duì)應(yīng)的塊號(hào)(為為7) ; 最后,將塊號(hào)最后,將塊號(hào)b和頁(yè)內(nèi)位移量和頁(yè)內(nèi)位移量w拼接在一起,就拼接在一起,就形成了訪問(wèn)主存的物理地址形成了訪問(wèn)主存的物理地址 (7*1024+452=7620)。第46頁(yè)/共100頁(yè)第四十七頁(yè),編輯
44、于星期日:十五點(diǎn) 三十二分。第47頁(yè)/共100頁(yè)第四十八頁(yè),編輯于星期日:十五點(diǎn) 三十二分。第48頁(yè)/共100頁(yè)第四十九頁(yè),編輯于星期日:十五點(diǎn) 三十二分。 例:有一系統(tǒng)采用頁(yè)式存儲(chǔ)管理,有一作業(yè)大小例:有一系統(tǒng)采用頁(yè)式存儲(chǔ)管理,有一作業(yè)大小是是8KB8KB,頁(yè)大小為,頁(yè)大小為2KB2KB,依次裝入內(nèi)存的第,依次裝入內(nèi)存的第7 7、9 9、1010、5 5塊,塊,試將虛地址試將虛地址71457145,34123412轉(zhuǎn)換成內(nèi)存地址。轉(zhuǎn)換成內(nèi)存地址。虛地址虛地址 34123412P P3412 3412 2048 2048 1 1W W 3412 mod 20483412 mod 2048 13
45、641364MR=9MR=9* *2048+1364=197962048+1364=19796虛地址虛地址34123412的內(nèi)存地址的內(nèi)存地址是:是:1979619796第49頁(yè)/共100頁(yè)第五十頁(yè),編輯于星期日:十五點(diǎn) 三十二分。與靜態(tài)分頁(yè)管理與靜態(tài)分頁(yè)管理不同不同 :按需分配。將按需分配。將需要需要運(yùn)行的運(yùn)行的頁(yè)面頁(yè)面存放于內(nèi)存存放于內(nèi)存,暫時(shí),暫時(shí)不需要不需要運(yùn)運(yùn)行的頁(yè)面存放于輔存,當(dāng)需行的頁(yè)面存放于輔存,當(dāng)需要運(yùn)行要運(yùn)行存放于輔存存放于輔存上的頁(yè)面上的頁(yè)面時(shí),再將對(duì)應(yīng)的頁(yè)面調(diào)入內(nèi)時(shí),再將對(duì)應(yīng)的頁(yè)面調(diào)入內(nèi)存。存。 注意頁(yè)表變化注意頁(yè)表變化第50頁(yè)/共100頁(yè)第五十一頁(yè),編輯于星期日:十五
46、點(diǎn) 三十二分。第51頁(yè)/共100頁(yè)第五十二頁(yè),編輯于星期日:十五點(diǎn) 三十二分。衡量淘汰算法依據(jù):衡量淘汰算法依據(jù):所有頁(yè)面訪問(wèn)次數(shù)淘汰頁(yè)面數(shù)淘汰率 所有頁(yè)面訪問(wèn)次數(shù)缺頁(yè)次數(shù)缺頁(yè)率 好的淘汰算法應(yīng)該有好的淘汰算法應(yīng)該有較低的缺頁(yè)率和淘汰率。較低的缺頁(yè)率和淘汰率。 第52頁(yè)/共100頁(yè)第五十三頁(yè),編輯于星期日:十五點(diǎn) 三十二分。選擇在最遠(yuǎn)的將來(lái)才被訪問(wèn)的頁(yè)面淘汰。選擇在最遠(yuǎn)的將來(lái)才被訪問(wèn)的頁(yè)面淘汰。 誰(shuí)是最遠(yuǎn)的、將來(lái)才被訪問(wèn)的頁(yè)面?選擇最早進(jìn)入內(nèi)存的頁(yè)面淘汰 這種方法包含一個(gè)假定:這種方法包含一個(gè)假定:最早進(jìn)入內(nèi)存的頁(yè)面就是目前最不會(huì)被最早進(jìn)入內(nèi)存的頁(yè)面就是目前最不會(huì)被使用的頁(yè)面。使用的頁(yè)面。 假
47、定不成立?假定不成立?系統(tǒng)抖動(dòng)!系統(tǒng)抖動(dòng)!第53頁(yè)/共100頁(yè)第五十四頁(yè),編輯于星期日:十五點(diǎn) 三十二分。選擇最近一段時(shí)間內(nèi)最長(zhǎng)時(shí)間未被使用選擇最近一段時(shí)間內(nèi)最長(zhǎng)時(shí)間未被使用的頁(yè)面淘汰的頁(yè)面淘汰 該算法的該算法的假定假定:長(zhǎng)時(shí)間未使用的頁(yè)面不會(huì)馬上被使用:長(zhǎng)時(shí)間未使用的頁(yè)面不會(huì)馬上被使用。這正好符合內(nèi)存這正好符合內(nèi)存局部性原理局部性原理(內(nèi)存中某個(gè)位置現(xiàn)在被(內(nèi)存中某個(gè)位置現(xiàn)在被訪問(wèn),很快將再次被訪問(wèn);某個(gè)位置現(xiàn)在被訪問(wèn),其訪問(wèn),很快將再次被訪問(wèn);某個(gè)位置現(xiàn)在被訪問(wèn),其鄰近位置也將被訪問(wèn)。)鄰近位置也將被訪問(wèn)。) 問(wèn)題:?jiǎn)栴}:需要確定一個(gè)需要確定一個(gè)比較時(shí)間段比較時(shí)間段來(lái)反映哪一個(gè)頁(yè)面長(zhǎng)期未被
48、來(lái)反映哪一個(gè)頁(yè)面長(zhǎng)期未被使用,時(shí)間段使用,時(shí)間段過(guò)長(zhǎng)過(guò)長(zhǎng)時(shí)該算法將變?yōu)闀r(shí)該算法將變?yōu)橄冗M(jìn)先出先進(jìn)先出算法,時(shí)算法,時(shí)間段間段過(guò)短過(guò)短又會(huì)使系統(tǒng)頻繁地記錄訪問(wèn)次數(shù)并進(jìn)行比較又會(huì)使系統(tǒng)頻繁地記錄訪問(wèn)次數(shù)并進(jìn)行比較,從而增加系統(tǒng),從而增加系統(tǒng)開(kāi)銷(xiāo)開(kāi)銷(xiāo)。第54頁(yè)/共100頁(yè)第五十五頁(yè),編輯于星期日:十五點(diǎn) 三十二分。選擇頁(yè)面選擇指針遇到的最近選擇頁(yè)面選擇指針遇到的最近未被訪問(wèn)的頁(yè)面淘汰。未被訪問(wèn)的頁(yè)面淘汰。簡(jiǎn)化的方法是:簡(jiǎn)化的方法是:頁(yè)面選擇指針下移,只要遇到剛才未頁(yè)面選擇指針下移,只要遇到剛才未使用的頁(yè)面就可以淘汰。使用的頁(yè)面就可以淘汰。 第55頁(yè)/共100頁(yè)第五十六頁(yè),編輯于星期日:十五點(diǎn) 三十二
49、分。例例: : 某作業(yè)有某作業(yè)有a,b,c,da,b,c,d四個(gè)頁(yè)面四個(gè)頁(yè)面, ,作業(yè)在運(yùn)行過(guò)程中的訪問(wèn)作業(yè)在運(yùn)行過(guò)程中的訪問(wèn)次序?yàn)榇涡驗(yàn)?a,b,c,a,d,a,:a,b,c,a,d,a,試計(jì)算采用試計(jì)算采用FIFOFIFO和和LRULRU淘汰算法淘汰算法, ,各會(huì)各會(huì)產(chǎn)生幾次缺頁(yè)中斷產(chǎn)生幾次缺頁(yè)中斷?(?(注:系統(tǒng)為該作業(yè)分配個(gè)內(nèi)存塊注:系統(tǒng)為該作業(yè)分配個(gè)內(nèi)存塊) ) 缺頁(yè)中斷次數(shù)淘汰的頁(yè)面進(jìn)入主存的頁(yè)面1-a2-B3-C4ad5ba缺頁(yè)中斷次數(shù)淘汰的頁(yè)面進(jìn)入主存的頁(yè)面1-a2-b3-c4bd LRU LRUFIFOFIFO第56頁(yè)/共100頁(yè)第五十七頁(yè),編輯于星期日:十五點(diǎn) 三十二分。第
50、57頁(yè)/共100頁(yè)第五十八頁(yè),編輯于星期日:十五點(diǎn) 三十二分。第58頁(yè)/共100頁(yè)第五十九頁(yè),編輯于星期日:十五點(diǎn) 三十二分。第59頁(yè)/共100頁(yè)第六十頁(yè),編輯于星期日:十五點(diǎn) 三十二分。第60頁(yè)/共100頁(yè)第六十一頁(yè),編輯于星期日:十五點(diǎn) 三十二分。第61頁(yè)/共100頁(yè)第六十二頁(yè),編輯于星期日:十五點(diǎn) 三十二分。第62頁(yè)/共100頁(yè)第六十三頁(yè),編輯于星期日:十五點(diǎn) 三十二分。第63頁(yè)/共100頁(yè)第六十四頁(yè),編輯于星期日:十五點(diǎn) 三十二分。作業(yè)地址空間按邏輯意義劃分成段,每段都作業(yè)地址空間按邏輯意義劃分成段,每段都有其對(duì)應(yīng)的段號(hào)和段長(zhǎng),對(duì)分段數(shù)量和分段有其對(duì)應(yīng)的段號(hào)和段長(zhǎng),對(duì)分段數(shù)量和分段的長(zhǎng)
51、度沒(méi)有限制。的長(zhǎng)度沒(méi)有限制。 內(nèi)存空間采用多重動(dòng)態(tài)分區(qū)的內(nèi)存空間采用多重動(dòng)態(tài)分區(qū)的形式,分區(qū)的長(zhǎng)度和位置沒(méi)有形式,分區(qū)的長(zhǎng)度和位置沒(méi)有限制。限制。 段表將作業(yè)中的段對(duì)應(yīng)于內(nèi)存中段表將作業(yè)中的段對(duì)應(yīng)于內(nèi)存中的分區(qū)。有缺段機(jī)制。的分區(qū)。有缺段機(jī)制。第64頁(yè)/共100頁(yè)第六十五頁(yè),編輯于星期日:十五點(diǎn) 三十二分。段號(hào)段號(hào)S S 段內(nèi)位移段內(nèi)位移d d 每個(gè)段的段內(nèi)位移的范圍每個(gè)段的段內(nèi)位移的范圍是是不同不同的。的。 分頁(yè)管理分頁(yè)管理中,邏輯地址是中,邏輯地址是線性地址線性地址。分段管理分段管理中,段號(hào)中,段號(hào)S和段內(nèi)位移和段內(nèi)位移d不能形成一不能形成一個(gè)線性地址,因?yàn)樗鼘?shí)際上是代表著段長(zhǎng)和段內(nèi)位移個(gè)
52、線性地址,因?yàn)樗鼘?shí)際上是代表著段長(zhǎng)和段內(nèi)位移兩個(gè)兩個(gè)變量變量。由于這兩個(gè)變量沒(méi)有特定的限制范圍而無(wú)法用由于這兩個(gè)變量沒(méi)有特定的限制范圍而無(wú)法用一個(gè)變量來(lái)替代,因此分段管理的一個(gè)變量來(lái)替代,因此分段管理的邏輯地址是二維地址邏輯地址是二維地址,分段管理的邏輯地址空間是分段管理的邏輯地址空間是二維空間二維空間。 第65頁(yè)/共100頁(yè)第六十六頁(yè),編輯于星期日:十五點(diǎn) 三十二分。段表段表段表寄存器段表寄存器內(nèi)存分塊表內(nèi)存分塊表OrOr已使用分區(qū)表已使用分區(qū)表自由分區(qū)表自由分區(qū)表自由分區(qū)塊自由分區(qū)塊鏈鏈作業(yè)表作業(yè)表第66頁(yè)/共100頁(yè)第六十七頁(yè),編輯于星期日:十五點(diǎn) 三十二分。段表中段號(hào)為段表中段號(hào)為S
53、S的表目地址(段的表目地址(段表寄存器)表目長(zhǎng)度表寄存器)表目長(zhǎng)度 S S 段表起始地址(段表寄存器)段表起始地址(段表寄存器) 對(duì)應(yīng)的內(nèi)存分區(qū)地址對(duì)應(yīng)的內(nèi)存分區(qū)地址S S 絕對(duì)地址絕對(duì)地址SSd d 第67頁(yè)/共100頁(yè)第六十八頁(yè),編輯于星期日:十五點(diǎn) 三十二分。第68頁(yè)/共100頁(yè)第六十九頁(yè),編輯于星期日:十五點(diǎn) 三十二分。 首先為作業(yè)首先為作業(yè)分配分配段表段表空間;空間;分配分配主程序段:主程序段:按一定的按一定的分配算法分配算法(內(nèi)存空間采用動(dòng)態(tài)分區(qū)形(內(nèi)存空間采用動(dòng)態(tài)分區(qū)形式,因此分配算法可采用最先適應(yīng)算法、最佳適應(yīng)算法或者式,因此分配算法可采用最先適應(yīng)算法、最佳適應(yīng)算法或者最壞適應(yīng)
54、算法。)最壞適應(yīng)算法。)填寫(xiě)段表填寫(xiě)段表:填入對(duì)應(yīng)段表表目中該段的內(nèi)存地址,其他填入對(duì)應(yīng)段表表目中該段的內(nèi)存地址,其他暫時(shí)暫時(shí)不在內(nèi)存不在內(nèi)存的段,的段,缺段狀態(tài)缺段狀態(tài)置為置為1 1,在需要運(yùn)行時(shí)再,在需要運(yùn)行時(shí)再調(diào)入。調(diào)入。第69頁(yè)/共100頁(yè)第七十頁(yè),編輯于星期日:十五點(diǎn) 三十二分。當(dāng)作業(yè)空間邏輯分段后,當(dāng)作業(yè)空間邏輯分段后,用戶(hù)用戶(hù)是靠是靠調(diào)用調(diào)用來(lái)實(shí)現(xiàn)段來(lái)實(shí)現(xiàn)段與段之間的關(guān)系,而與段之間的關(guān)系,而存儲(chǔ)管理將其實(shí)現(xiàn)稱(chēng)存儲(chǔ)管理將其實(shí)現(xiàn)稱(chēng)為為連接連接 第70頁(yè)/共100頁(yè)第七十一頁(yè),編輯于星期日:十五點(diǎn) 三十二分。連接也可以分為連接也可以分為靜態(tài)連接靜態(tài)連接與與動(dòng)態(tài)連接動(dòng)態(tài)連接。靜態(tài)連接靜
55、態(tài)連接發(fā)生在作業(yè)剛裝發(fā)生在作業(yè)剛裝入內(nèi)存還入內(nèi)存還沒(méi)有被執(zhí)行前沒(méi)有被執(zhí)行前,一次完成所有連接。一次完成所有連接。動(dòng)態(tài)連接動(dòng)態(tài)連接發(fā)生在發(fā)生在執(zhí)行過(guò)程中執(zhí)行過(guò)程中,每當(dāng)作業(yè)段與段之間產(chǎn)生調(diào),每當(dāng)作業(yè)段與段之間產(chǎn)生調(diào)用要求時(shí)才進(jìn)行連接。用要求時(shí)才進(jìn)行連接。問(wèn)題問(wèn)題:作業(yè)段必須一次全部:作業(yè)段必須一次全部調(diào)入內(nèi)存,限制了作業(yè)的大調(diào)入內(nèi)存,限制了作業(yè)的大小,對(duì)內(nèi)存的容量要求高。小,對(duì)內(nèi)存的容量要求高。作業(yè)中的各段沒(méi)有必要一作業(yè)中的各段沒(méi)有必要一次全部調(diào)入,這極大的提次全部調(diào)入,這極大的提高了內(nèi)存的利用率。高了內(nèi)存的利用率。分段管理采用的是動(dòng)態(tài)連接方式。分段管理采用的是動(dòng)態(tài)連接方式。第71頁(yè)/共100頁(yè)第七十二頁(yè),編輯于星期日:十五點(diǎn) 三十二分。第72頁(yè)/共100頁(yè)第七十三頁(yè),編輯于星期日:十五點(diǎn) 三十二分。第73頁(yè)/共100頁(yè)第七十四頁(yè),編輯于星期日:十五點(diǎn) 三十二分。第74頁(yè)/共100頁(yè)第七十五頁(yè),編輯于星期日:十五點(diǎn) 三十二分。有沒(méi)有同時(shí)有沒(méi)有同時(shí)利用利用分頁(yè)管理和分段管理分頁(yè)管理和分段管理的的優(yōu)點(diǎn)優(yōu)點(diǎn),克服克服它們的它們的弱點(diǎn)弱點(diǎn)管理方法?管理方法?第75頁(yè)/共100頁(yè)第七十六頁(yè),編輯于星期日:十
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 東莞正規(guī)購(gòu)房合同范本
- 公司用車(chē)租賃合同范本
- 加入合作社合同范本
- 儲(chǔ)蓄存款合同范本
- 關(guān)于旅游合作合同范本
- 分包價(jià)格合同范本
- 養(yǎng)雞養(yǎng)殖服務(wù)合同范本
- 書(shū)寫(xiě)墻體大字合同范本
- 勞務(wù)合同范本工人
- 保時(shí)捷卡宴保護(hù)膜施工方案
- 動(dòng)態(tài)公路車(chē)輛自動(dòng)衡器
- 委托收款三方協(xié)議書(shū)
- 電路邱關(guān)源版第10章
- 綠植租擺服務(wù)投標(biāo)方案(技術(shù)方案)
- 2020新譯林版高中英語(yǔ)全七冊(cè)單詞表(必修一~選擇性必修四)
- 七年級(jí)上冊(cè)生物期末測(cè)試卷(含答案)
- 路基分層-表格-
- 離婚協(xié)議書(shū)電子版下載
- 中醫(yī)藥膳學(xué)124張課件
- 汽車(chē)法規(guī)第一章
- Kappa測(cè)試數(shù)據(jù)分析報(bào)告
評(píng)論
0/150
提交評(píng)論