作業系統(十一)

2021-04-14 15:16:14 字數 1733 閱讀 1327

段模式的評價和實際採用情況

(1)記憶體利用率

關於空閒空間利用率的情況:1)和可變分割槽相比,仍存在外部碎片。但是程度大大減少,仍存在內部碎片的程度大了一些,但總的來說空間的利用率比可變分割槽高。

2)於頁式相比,同樣是不連續,但是不連續程度沒有頁式的高,顯然那沒有頁式的管理效果好。雖然段模式的內部碎片要不頁模式的少,但是確存在外部碎片。段模式下的外部儲存碎片的嚴重程度依賴於平均段長,小一些的段就有可能放入可用的空閒塊中。

關於已用空間的情況:1)在虛存模式下,此次執行用不到的段不會進入記憶體,且用完而不再用的段或有一段時間不用的段可及時調出記憶體以騰出空間。2)段模式下通過共享**段來節省記憶體空間。

(2)段模式下的保護

段模式下的保護機制,出可以程序段長越界檢查之外,還可以在程序表中增加許可權位。許可權位指出每段是可讀的,可寫的,只執行的。若不符合記憶體許可權,則陷入記憶體的非法獲取。同時,對於像陣列這樣的需要越界保護的資料,可以定義為單獨的一段。以便提供完整的保護。

(3)段模式下的共享

段模式下的共享是通過不同程序表中的指向同一段基址來實現的。

因此,在段模式下既可以共享**又可以共享資料。準確的說,可以共享程式的任何內容,只要單獨成段。故段模式下的共享也是非常充分的,這是除保護模式之外的段式的另一大好處。這種以程式邏輯為依據的分段,非常有利於共享。

(4)段模式下的動態擴充:從邏輯編制角度看,與頁模式比較,二維編制可以使得段模式可以多處伸縮。從物理記憶體個角度來看,則和可變分割槽相似,受是否有相鄰長度的限制。

(5)因段模式下可以是用虛存技術,因此可以解決裝不下的問題,但是沒有頁模式解決的好。

(6)段模式的實現要比可變分割槽複雜,因為塊數較多而且需要維持程序表。同時也比頁式複雜,因為需要設計分配演算法。

段頁式儲存管理摩斯的段模式與頁模式結合的產物,是利用二者的優點和避免二者的缺點而提出的。段頁式是將記憶體劃分為等長的頁面,將每個使用者程式先劃分為段,再將每段劃分為頁,頁內必須連續完整存放,但頁間可以不連續,也不一定要求所有的頁都進入記憶體。段頁式基本上結合了段式和頁式的有點,記憶體利用率較高。

程序邏輯空間(程式邏輯空間,虛位址空間),是指乙個程式執行時由cpu向mmu發出的所有位址所構成的位址空間。程序邏輯空間的編制方式有一維的連續編址(連續的編制),二維的編制(或稱不連續的編制)和重疊編制3種。

程序的物理空間是指該程序所佔據的所有實際實體地址(絕對位址)構成的位址空間。

乙個程序的邏輯空間和物理空間可以一致也可以不一致。位址不一致時需要重定位和對映。這時稱邏輯位址為相對位址,實體地址被稱為相對位址。程序的邏輯空間比物理空間大的時候稱為虛存。記憶體的邏輯空間是說有程序的邏輯空間加上程序號組成。是乙個純概念的空間。

虛存技術是相對於程序邏輯空間與程序物理空間的大小相對關係而言的。而交換技術則是相對於記憶體邏輯空間與記憶體物理空間大小對應關係而言的。交換意味著記憶體邏輯空間比記憶體物理空間大。此時的記憶體邏輯空間=記憶體物理空間+盤交換區。但在虛存下,盤交換區的大小要比交換技術下的盤交換區小得多。這是由虛存與檔案交換技術的本質區別。

單任務和多工是相對於記憶體邏輯空間和程序邏輯空間的數量對應關係而言的。但在任務下記憶體邏輯空間的編址是唯一的——記憶體邏輯空間就是程序的邏輯空間。多工下的記憶體邏輯空間的編址是一維的。記憶體的邏輯空間由多個程序的邏輯空間組成。

單道和多道是相對於記憶體物理空間與程序物理空間的數量對應關係而言的。多道是相對於記憶體物理空間與程序物理空間的數量對應關係而言的。虛存不一定多道,多道不一定是虛存。單道和多道下都即可能是連續的也可能是不連續的。在單道下若採用不連續技術,一定旨在虛存。而在多道下採用不連續技術不一定旨在虛存。可能只是為了充分利用記憶體空間。

作業系統概念(十一) I O系統

寫在前面 這一章似乎並不是很重要。當然,坐等打臉 os核心通過裝置驅動程式 模組 與i o子系統鏈結,驅動為i o子系統提供了統一裝置訪問介面,與系統呼叫api為應用程式與os之間提供了統一的標準介面一樣。1 使i o裝置可用統一的標準對待 2 塊與字元裝置 包括磁碟驅動器 鍵盤 滑鼠 序列口,記憶...

作業系統(十一) 死鎖的預防

下面我們來介紹,解決死鎖問題的各種方案 首先我們介紹第一種型別,叫做 死鎖預防 我們首先先總體介紹一下 解決死鎖問題的各種方法。不同的設計者 對於死鎖問題的看法是不一樣的 有的設計者很樂觀 有的設計者很悲觀 因此,他用於解決死鎖問題的方法,是不一樣的 我們總體上,有四種方法,來解決死鎖問題 第一種方...

作業系統 作業系統介面

介面表現為函式呼叫,由作業系統提供,連線作業系統和應用軟體。出於安全性考慮,應用程式不能直接在記憶體中任意訪問 將核心程式和使用者程式隔離 通過比較訪問資料段cpl和rpl的特權級和當前段dpl的特權級之間的關係 應用程式呼叫庫函式printf printf呼叫庫中的write函式 write將函式...