請求分頁式存儲管理
⑴ 請問段頁式和分頁式存儲管理有什麼區別
段式和頁式存儲管理的地址結構很類似,但是它們之間有實質上的不同,表現為頁式的邏輯地址是連續的,段式的邏輯地址可以不連續、頁式的地址是一維的,段式的地址是二維的、分頁是操作系統進行,分段是用戶確定、各頁可以分散存放在主存,每段必須佔用連續的主存空間
拓展:
各頁可以分散存放在主存,每段必須佔用連續的主存空間。分頁和分段者是操作系統確定和進行的。頁式和段式都是採用動態重定位方式。
進程的地址空間:按照程序自身的邏輯關系劃分為若干個段,每個段都有一個段名(在低級語言中,程序員使用段名來編程),每段從0開始編址。
內存分配規則:以段為單位進行分配,每個段在內存中占連續空間,但各段之間可以不相鄰。
優點:保留了分段和請求分頁存儲管理的全部優點、提供了虛存空間,能更有效利用主存
缺點:增加了硬體成本、系統復雜度較大
⑵ 請求分頁調度是和分頁調度有何聯系和區別
在分頁存儲管理方式中 :不具備頁面對換功能,不支持虛擬存儲器功能,在調度作業運行時 ,必須將它的所有頁面一次調入內存 ,若內存沒有足夠的塊, 則作業等待的這種分頁管理方式被稱為純分頁或基本分頁存儲管理方式.
而請求分頁管理方式是支持虛擬存儲的,具備了頁面的對換功能.調度作業時 是將它的 一部分(而不是全部) 放入內存.當發現頁面缺少時 會發出一個缺頁請求 從外存調用頁面文件進入內存.
基於以上所述:基於這一點,請求分頁存儲管理可以提供虛存,而分頁存儲管理卻不能提供虛存。
⑶ 在請求分頁式存儲管理中,為什麼既有頁表,又有快表
實際系統中的做法是採用內存頁表和快表相結合的解決方案。系統總是先通過頁號與快表中的所有表項進行比較。如果發現匹配的頁,則將塊號直接從快表中取出,而不必通過頁表。
也是該塊號與頁內位移拼接,形成所需要的絕對地址。如果快表中沒有匹配的頁號時,系統訪問頁表進行掉進塊號。提高讀取數據的速度。
(3)請求分頁式存儲管理擴展閱讀:
快表就是存放在高速緩沖存儲器的部分頁表。作為頁表的Cache,它的作用與頁表相似,但是提高了訪問速率。由於採用頁表做地址轉換,讀寫內存數據時CPU要訪問兩次主存。有了快表,有時只要訪問一次高速緩沖存儲器,一次主存,這樣可加速查找並提高指令執行速度。
⑷ 分頁式虛擬存儲系統中,頁面大小與可能產生的缺頁中斷次數____。 A.成正比 B.成反比 C.無關 D.成固定比例
分頁式虛擬存儲系統中,頁面大小與可能產生的缺頁中斷次數成固定比例;答案選擇D;
若執行的程序佔用內存很大或很多,則會導致內存消耗殆盡。為解決該問題,Windows中運用了虛擬內存技術,即勻出一部分硬碟空間來充當內存使用。當內存耗盡時,電腦就會自動調用硬碟來充當內存,以緩解內存的緊張。
調度方式
調度方式有分頁式、段式、段頁式3種。頁式調度是將邏輯和物理地址空間都分成固定大小的頁。主存按頁順序編號,而每個獨立編址的程序空間有自己的頁號順序,通過調度輔存中程序的各頁可以離散裝入主存中不同的頁面位置,並可據表一一對應檢索。
頁表對程序員來說是透明的,地址變換快,調入操作簡單;缺點是各頁不是程序的獨立模塊,不便於實現程序和數據的保護。段式調度是按程序的邏輯結構劃分地址空間,段的長度是隨意的,並且允許伸長,它的優點是消除了內存零頭,易於實現存儲保護,便於程序動態裝配;缺點是調入操作復雜。
將這兩種方法結合起來便構成段頁式調度。在段頁式調度中把物理空間分成頁,程序按模塊分段,每個段再分成與物理空間頁同樣小的頁面。段頁式調度綜合了段式和頁式的優點。其缺點是增加了硬體成本,軟體也較復雜。大型通用計算機系統多數採用段頁式調度
⑸ 對於請求分頁式存儲管理系統,若把頁面的大小增加一倍,則缺頁中斷次數會減少一半
當然不一定是一半,這還得取決於操作系統內核的相關結構以及實際運行情況。因為系統中,缺頁中斷次數和頁面大小有些關系,但並不只取決於頁面大小,還跟系統總內存總量等很多因素有關,當系統內存不足時,會發生頁面交換,此時也會產生很多次缺頁中斷,但與頁面大小就沒有太大關系了。
⑹ 在一個請求分頁存儲管理系統中,一個作業的頁面走向為4、3、2、1、4、3、5、4、3、2、1、5,
(1)缺頁7次 缺頁6次
(2)缺頁9次 缺頁10次
⑺ 在請求分頁管理系統中,發生缺頁以後,所缺頁有可能從哪裡調入
在請求分頁系統中,每當所要訪問的頁面不在內存時,便產生一個缺頁中斷,請求操作系統將所缺頁調入內存。此時應將缺頁的進程阻塞(調頁完成喚醒),如果內存中有空閑塊,則分配一個塊,將調入的頁裝入該塊,並修改頁表中的相應頁表項,.若內存中沒有空閑塊,則要淘汰某頁(若被淘汰頁在內存期間被修改過,則要將其寫回外存)。
請求分頁也稱為頁式虛擬存儲管理,是建立在基本分頁基礎上,為了能支持虛擬存儲器功能而增加了請求調頁功能和頁面置換功能其基本思想是:在進程開始運行之前,不是裝入全部頁面,而是裝入部分頁面,之後根據進程運行的需要,動態裝入其他頁面,當內存空間已滿,又需要裝入新的頁面時,根據某種演算法淘汰某個頁面,以便裝進新的頁面。