作業系統離散儲存方式

2021-08-28 02:54:42 字數 1413 閱讀 6971

離散分配方式分為三種:

分頁儲存方式引出了三個概念,乙個叫頁面(在頁表中對應頁號),乙個叫物理塊(在頁表中對應塊號),乙個叫頁表。

頁表:系統為每乙個程序建立了一張頁面和物理塊的對映表。

結構如下:

這裡我們不妨先分析一下,這樣的結構有哪些優勢和問題。

優勢在於,通過將邏輯位址和實體地址分開劃分,然後設定對映建立聯絡的方式,我們可以實現程式在記憶體上的離散儲存。

劣勢在於,頁面固定的情況下,總會出現程式填不滿完整的乙個頁面的情況,那樣也會出現「碎片」現象,我們稱之為「頁內碎片」,同時,增加對映關係也會增加我們的訪問成本。

前人大佬當然也想到了這一點, 大佬們發現如果僅僅採用頁表來對映邏輯位址和實體地址的關係,那麼,在程式執行的過程中cpu每一次訪問乙個資料的時候,都要先去記憶體訪問頁表,獲得塊號,然後將其與頁內偏移量拼接,形成實體地址;獲得實體地址後再去記憶體處理資料。這樣一來處理速度降低了將近1/2。

這當然不行,於是大佬們提出了「快表」的概念。也就是設立乙個處理速度很快的高速緩衝暫存器,用來存放一些當前程式正在訪問的那些頁表項,cpu每次訪問的時候,先去快表裡面找找有沒有「捷徑」,如果有,就直接訪問得到塊號;如果沒有,再去記憶體讀取,讀取後將這個新的被訪問頁表放到快表中;如果快表滿了,那麼就從快表中找出最少使用的頁表和這個新頁表交換,我們稱之為更新快表。

那既然有了新的機制,當然我們也需要一些方法來判斷這個機制是否有用,所以我們引出了訪問記憶體的有效時間的概念,具體的公式和結果比較,大家可以通過《作業系統》等書籍了解。

首先我們依然要知道,為什麼要引入分段儲存管理方式,畢竟分頁管理已經可以做到將資料離散存放。引入分段儲存管理的原因,一方面是將程式分成若干個程式段後,可以使程式更直觀;另一方面,分段實現和滿足了資訊共享,資訊保護,資訊動態增長等需要。簡單來說就是方便程式設計。

那麼分段的方式是怎樣的呢?

分段儲存福管理方式中,作業的位址空間被劃分為若干個段,每個段定義了一組邏輯資訊。系統為每乙個分段分配乙個連續的分割槽。同時引入段表的概念,段表表示了邏輯段和實體地址的對映。

段頁式儲存管理其實就是把分段和分頁原理結合,即先將使用者程式分成若干個段,然後再將每個段分為若干個頁,並為每乙個段賦予乙個段名。

作業系統 連續分配儲存管理方式

目錄概述 一 單一連續分配 1.應用背景 2.基本思想 3,實現 4,特點 二 固定分割槽分配 1.應用背景 2.基本思想 3,實現 4,特點 三 動態分割槽分配 1.應用背景 2.基本思想 3,實現 資料結構 分配演算法 4,特點 四 動態可重定位分割槽分配 1.應用背景 2.基本思想 3,實現 ...

作業系統儲存管理

分段單元 分頁單元 邏輯位址 段基址 32位偏移量 線性位址 虛擬位址,0 4gb 實體地址 6個段暫存器 cs code段 ss stack段 ds data段 es fs gs 通用段暫存器 16位的段選擇符就存放在以上段暫存器中 線性位址 4gb 被分成以固定長度為單位的組,即頁。頁內部連續的...

作業系統 儲存管理

儲存管理 1 所謂虛擬儲存技術,即在記憶體中保留一部分程式或資料,在外存 硬碟 中放置整個位址空間的副本。程式執行過程中可以隨機訪問記憶體中的資料或程式,但需要的程式或資料不在記憶體中時,就將記憶體中的部分內容根據情況寫回外存,然後從外存調入所需程式或資料,實現作業內部的區域性對換,從而允許程式的位...