內(nèi)存
內(nèi)存管理:因?yàn)椴豢赡芤矝]有必要將所有用戶進(jìn)程和系統(tǒng)所需要的全部程序與數(shù)據(jù)放入內(nèi)存充尉,所以操作系統(tǒng)必須對內(nèi)存空間進(jìn)行合理的劃分和有效的動(dòng)態(tài)分配算利。
功能:內(nèi)存空間的分配與回收辣辫;地址轉(zhuǎn)換兽掰;內(nèi)存空間的擴(kuò)充试浙;存儲(chǔ)保護(hù)
程序裝入和鏈接:編譯-->鏈接-->裝入
編譯:靜態(tài)編譯/動(dòng)態(tài)編譯队他。
靜態(tài)編譯:編譯器在編譯可執(zhí)行文件時(shí)卷仑,將需要調(diào)用的庫中的內(nèi)容提取出來,鏈接到編譯文件中
動(dòng)態(tài)編譯:編譯器在編譯時(shí)附帶了一個(gè)動(dòng)態(tài)鏈接庫麸折,縮小了執(zhí)行文件本身锡凝,加快了編譯速度,節(jié)省了系統(tǒng)資源垢啼。
鏈接:靜態(tài)鏈接/裝入時(shí)動(dòng)態(tài)鏈接/運(yùn)行時(shí)動(dòng)態(tài)裝入
裝入:絕對裝入/可重定位裝入/動(dòng)態(tài)運(yùn)行時(shí)裝入
連續(xù)分配管理方式
1.單一連續(xù)分配
2.固定分區(qū)分配
3.動(dòng)態(tài)分區(qū)分配
非連續(xù)分配管理方式
1.基本分頁存儲(chǔ)管理方式
頁:進(jìn)程中的塊
頁框:內(nèi)存中的塊
頁表:系統(tǒng)為每個(gè)進(jìn)程建立一張頁表窜锯,記錄頁面在內(nèi)存中對應(yīng)的物理塊號。
2.基本分段存儲(chǔ)管理方式
3.段頁式管理方式
分段和分頁之間的區(qū)別
分頁存儲(chǔ):以頁這一物理單位進(jìn)行內(nèi)存分配芭析,頁的大小固定锚扎,邏輯地址是一維的,只產(chǎn)生內(nèi)部碎片放刨,離散分配工秩,提高內(nèi)存利用率。
分段存儲(chǔ):以段這一邏輯單位進(jìn)行內(nèi)存分配进统,段的大小不固定助币,邏輯地址是二維的,只產(chǎn)生外部碎片螟碎,更易于實(shí)現(xiàn)信息的共享和保護(hù)眉菱。
虛擬內(nèi)存
基于局部性原理
虛擬存儲(chǔ)器
定義:系統(tǒng)為用戶提供了一個(gè)比實(shí)際內(nèi)存大得多的存儲(chǔ)器,這個(gè)存儲(chǔ)器實(shí)際并不存在掉分。
特征:多次性俭缓、對換性、虛擬性
虛擬內(nèi)存技術(shù)的實(shí)現(xiàn):傳統(tǒng)的非連續(xù)分配+請求調(diào)頁(段)功能+頁面(段)置換功能=請求分頁(段)管理
請求分頁管理方式
頁表新增4個(gè)字段:狀態(tài)位酥郭,訪問字段华坦、修改位、外存地址
缺頁中斷機(jī)制:需要訪問的頁面不在內(nèi)存中時(shí)不从,便產(chǎn)生了一個(gè)缺頁中斷惜姐,請求操作系統(tǒng)將所缺的頁調(diào)入內(nèi)存。若內(nèi)存中有空閑塊,將要調(diào)入的頁裝入空閑塊歹袁;若內(nèi)存中沒有空閑塊坷衍,則要淘汰某頁。
頁面置換算法
1.最佳置換算法(OPT):選擇以后不用或最長時(shí)間不用的頁面
2.先進(jìn)先出頁面置換算法(FIFO):選擇最先裝入的頁面----->會(huì)導(dǎo)致Belady異常(增加頁框反而導(dǎo)致缺頁率上升)
3.最近最久未使用(LRU):選擇最近最久未使用的頁面
4.時(shí)鐘(CLOCK)置換算法:選擇最近未用的頁面
5.改進(jìn)型CLOCK置換算法:在clock的基礎(chǔ)上考慮頁面修改的問題
頁面分配策略
駐留集:給一個(gè)進(jìn)程分配的物理頁框的集合
駐留集頁數(shù)太少導(dǎo)致缺頁率太高引起抖動(dòng)条舔;頁數(shù)太多枫耳,浪費(fèi)。
頁面分配策略:1.固定分配局部置換 2.可變分配全局置換 3.可變分配局部置換
調(diào)入時(shí)機(jī):1.預(yù)調(diào)頁策略(運(yùn)行前)2.請求調(diào)頁策略(運(yùn)行期間)
抖動(dòng):剛剛換出的頁面馬上就要換入主存孟抗,剛剛換入的頁面馬上又要換出主存迁杨,頻繁的頁面調(diào)度
工作集:在某段時(shí)間間隔內(nèi),進(jìn)程要訪問的頁面集合夸浅。(工作集<駐留集)