微吼云上線多路互動(dòng)直播服務(wù) 加速多場(chǎng)景互動(dòng)直播落地
632
2025-04-04
保護(hù)模式內(nèi)存管理
分頁(yè)機(jī)制(支持虛擬存儲(chǔ)技術(shù))
(1)虛擬存儲(chǔ):是一種內(nèi)存管理技術(shù),“虛擬化”線性地址空間的方法
(2)使用分頁(yè)將段劃分成頁(yè)面(通常為4K),頁(yè)面存儲(chǔ)于物理內(nèi)存或硬盤(pán)上,操作系統(tǒng)通過(guò)維護(hù)頁(yè)表或頁(yè)目錄來(lái)管理,當(dāng)程序訪問(wèn)線性地址空間的一個(gè)地址位置時(shí),處理器會(huì)使用頁(yè)目錄和頁(yè)表來(lái)轉(zhuǎn)換為物理地址。如果訪問(wèn)的頁(yè)面不在物理內(nèi)存上,處理器會(huì)產(chǎn)生一個(gè)中斷,然后將該頁(yè)面載入到物理內(nèi)存。
*段表存儲(chǔ)在線性地址空間;頁(yè)表存儲(chǔ)在物理內(nèi)存中
保護(hù)
*80X86支持兩種保護(hù):一是通過(guò)給每個(gè)任務(wù)不同的虛擬地址空間來(lái)隔絕各個(gè)任務(wù)
二是通過(guò)保護(hù)機(jī)制
(1)任務(wù)之間的保護(hù)
*80X86使用的是把不同任務(wù)放在不同的虛擬地址空間中,給予每個(gè)任務(wù)不同的邏輯地址到物理地址的變換映射。
*全局地址空間:所有任務(wù)具有的相同虛擬地址空間
局部地址空間:每個(gè)任務(wù)唯一的虛擬地址空間
(2)特權(quán)級(jí)保護(hù)(定義了4個(gè)執(zhí)行特權(quán)級(jí),0最高,3最低)
*每一個(gè)內(nèi)存段都與一個(gè)特權(quán)級(jí)相關(guān)聯(lián)
*CPL:Current Privilege Level 當(dāng)前特權(quán)級(jí),定義了當(dāng)前活動(dòng)代碼段的特權(quán)級(jí),確定了哪些段能被程序訪問(wèn)
*每個(gè)特權(quán)級(jí)都有自己的程序棧
段的定義:段是虛擬地址到線性地址轉(zhuǎn)換機(jī)制的基礎(chǔ)
(1)段由三個(gè)參數(shù)定義
*段基地址Base address:指定段在線性地址空間中的開(kāi)始地址,基地址是線性地址,偏移為0
*段限長(zhǎng)Limit:是虛擬地址空間中段內(nèi)最大可用偏移地址,定義了段的長(zhǎng)度
*段屬性Attributes:描述了段的屬性,如是否可讀可寫(xiě)或作為程序執(zhí)行以及段的特權(quán)級(jí)
(2)邏輯地址---->線性地址:
*使用段選擇符中的偏移值(段索引)在GDT或LDT表中定位相應(yīng)的段描述符
*利用段描述符檢驗(yàn)段的訪問(wèn)權(quán)限和范圍
*把段描述符中的基地址加到偏移量上,形成線性地址
段描述符表:是段描述符的一個(gè)數(shù)組
(1)分類(lèi):GDT(全局描述符表)
LDT(局部描述符表)
(2)GDT
*每個(gè)系統(tǒng)必須定義一個(gè)GDT
*GDT本身不是一個(gè)段,是線性地址中的數(shù)據(jù)結(jié)構(gòu)
*處理器不使用GDT的第一個(gè)描述符
*LDT的段描述符必須包含于GDT中
Linux 虛擬化
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶(hù)投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶(hù)投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。