3 7 虛擬儲存器

2021-09-26 19:16:07 字數 1260 閱讀 5472

主存和聯機工作的輔存共同構成了虛擬儲存器,二者在硬體和系統軟體的共同管理下工作,對應用程式設計師來說,虛擬儲存器是透明的。

虛擬儲存器將主存或輔存的位址空間同一編址,形成乙個龐大的位址空間,不必在乎實際的主存容量和程式在主存中實際的位置

使用者程式設計允許涉及的位址稱為虛位址邏輯位址,虛位址對應的儲存空間稱為虛擬空間程式空間。實際的主存單元位址稱為實位址實體地址,實位址對應的是主存位址空間,也稱實位址空間。虛位址比實位址大的多。

cpu使用虛位址時,由輔助硬體找出虛位址和實位址之間的對應關係,並判斷這個虛位址對應的儲存單元內容是否已裝入主存。

實位址=主存頁號+頁內字位址

虛位址=虛存頁號+頁內字位址

頁式虛擬儲存器

以頁為基本單位的虛擬儲存器稱為頁式虛擬儲存器。虛擬空間與主存空間都被劃分成同樣大小的頁,主存的頁被稱為實頁,虛存的頁被稱為虛頁。虛擬位址分為兩個字段:虛頁號和頁內位址。虛位址到實位址的變化由頁表來實現。頁表一般長久保留在記憶體中。

頁表基址暫存器存放當前執行程式的頁表的起始位址,它和虛頁號拼接成頁表項位址,每個頁表項紀錄與某個1虛頁對應的虛頁號,實頁號和裝入位等資訊。裝入位為「1」,則表示該頁面已在主存中,將對應的實頁號和虛位址中的頁內位址拼接,得到完整的實位址;裝入位為「0」,表示該頁面不在主存中,此時要啟動i/o系統,把該頁從輔存調入主存後再供cpu使用。

段式虛擬儲存器

段頁式虛擬儲存器

每乙個程式對應乙個段表,每段對應乙個頁表,段的長度必須是頁長的整數倍,段的起點必須是某一頁的起點。以頁為基本的傳送單位。

快表(tlb)

根據程式執行的區域性性原理,將經常訪問的某些頁對應的頁項放入高速緩衝器組成快表,相應的把存放在主存中的頁表稱為慢表(page)

虛擬儲存器

1 虛擬儲存器只是乙個容量非常大的儲存器的邏輯模型,不是任何實際的物理儲存器 2 它借助於磁碟等輔存來擴大主存的容量,使之為更大或更多的程式使用 3 程式的邏輯位址稱為虛擬位址 虛位址 程式的邏輯位址空間稱為虛擬位址空間 4 實體地址 實位址 由cpu位址引腳送出,是用於訪問主存的位址 5 設cpu...

虛擬儲存器

在系統中程序是與其它的程序共享cpu和主存資源的,程序太多就需要太多的儲存器,而且儲存器很容易受到破壞,如果某個程序不小心寫了另乙個程序使用的儲存器,它就會以 完全和程式邏輯無關的令人迷惑的方式失敗。位址空間。特點 1.主存看成是虛擬在磁碟上的位址空間 的快取記憶體,在主存裡只儲存活動區域。2.為每...

虛擬儲存器

1 常規儲存器管理方式的特徵 一次性 即作業在執行前需一次性地全部裝入記憶體。這會導致兩種情況的發生 當作業很大,所要求的記憶體空間超過了記憶體總容量,作業不能全部被裝入記憶體,致使該作業無法執行。在多道程式中,有多個作業要求執行,但由於記憶體容量不足以容納所有這些作業,只能將少數作業裝入記憶體讓它...