软考总结——虚存管理
存儲管理是操作系統的重要職能之中的一個,主要任務是對內存空間進行分配與回收。
因為計算機內存容量有限(如今一般都是32位或64位系統),而外存儲設備的容量增長速度很快,比如移動硬盤已經到了T的級別,這時假設要訪問這塊兒移動硬盤內的大數據,我們的計算機就有點力不從心了。
。。故在此基礎上發展了虛擬存儲系統。
?
虛存理念:利用有限資源盡可能的運行大程序。對用戶程序和內存進行分塊,將用戶程序一塊塊拿到內存中來,一個運行完后釋放內存,下一個繼續運行。
?
虛擬存儲通過將執行進程訪問的地址(邏輯地址、虛擬地址)與主存的物理地址(實際地址)分開,從而使得提供大于物理地址的邏輯地址空間成為可能。
?
虛存管理的組織結構例如以下圖示
????
1.頁式存儲組織
????
???????
????系統劃分,邏輯地址=頁號+頁內地址。
????基本思想:內存分為固定大小的頁。
??? 基本原理:將各進程的虛擬空間劃分為若干個長度相等的頁,把內存空間以與頁相等的大小劃分為大小相等的片或頁面。採用請求調頁或預調頁技術實現內外存統一管理。
例:
????????已知程序邏輯地址為14位且前三位為011,頁面大小2K,採用頁式存儲。
??? 已知邏輯地址14位,每一個頁面2K=2^11,所以頁內地址11位,頁號為3位。
又前三位為011變為十進制為3,相應的物理塊號為b。地址變換步驟例如以下圖所看到的
???????
??????
??? 長處:利用率高,產生的內存碎片小,內存間分配及管理簡單。
??? 缺點:要有對應的硬件支持,添加了系統開銷。
請求調頁的算法選擇不當,有可能產生抖動現象。
2.段式存儲組織
????
從用戶角度劃分,邏輯地址=段號+段內地址。
基本思想:程序按邏輯單位分成基本獨立的段。
基本原理:系統為每個作業建立一個段表。其內容包含段號與內存起始地址的相應關系、段長和狀態等。
???
??? 地址變換過程與頁式變換同理,例如以下圖所看到的
?????
長處:便于多道程序共享內存,便于對存儲器的保護,各段程序改動互不影響
缺點:內存利用率低。內存碎片浪費大。
?????
3.段頁式存儲組織
???
邏輯地址=基號+段號+頁號+頁內地址
一個段表+一組頁表。
段頁式存儲組織是段式存儲組織和頁式存儲組織的組合。這樣能夠充分利用兩者的長處,實存等分為頁。程序按邏輯模塊分成段。當中,基號作為用戶標志號存在。
????
地址變換過程公式:
????(((x)+s)+p)*2^n +d
當中,X表示基號,(x)表示基寄存器中地址為x的單元的內容。S為段號。P表示頁號,d表示頁內地址。n表示頁內地址的位數。
?長處:空間浪費小,存儲共享easy、存儲保護easy、能動態連接。
缺點:因為軟件的添加。復雜性和開銷添加。須要的硬件以及占用的內存添加,運行速度大大下降。
?
頁面置換算法(從要運行的元素自身開始算起)
在開始頁面置換之前,要了解一個概念,頁面置換是相對缺頁現象來講的。缺頁,簡單的來理解,就是因為實際主存是小于虛存的。因此可能會發生主存中已滿,而要使用的頁不在主存中,這時就會出現缺頁現象。
?
??????最優算法
?????????????查看后面的序列,最后被使用的元素被替換掉
??????隨機算法
?????????????隨機淘汰,沒有一定的約束性。
??????先進先出
?????????????最先進入主存的元素先被淘汰。
??????近期最少使用算法
?????????????查看前面的序列,最后被訪問的元素被替換掉
例
??????
| 初始keyword?? | 2 | 4 | 6 | 5 | 3 | 4 | 2 |
| 最優置換 | 2 | 2 | 2 | 2 | 2 | 2 | 2 |
| ? | ? | 4 | 4 | 4 | 4 | 4 | 4 |
| ? | ? | ? | 6 | 5 | 3 | 3 | 3 |
| 缺頁(*) | * | * | * | * | * | ? | ? |
?解析:
??? 主存初始加入頁2,4,6,直接依次放入就可以,可是都會出現缺頁現象。
加入頁5。主存中沒有5。所以會出現缺頁現象,依據最優置換的規定,5后面又依次出現了3,4,2所以6被替換掉。
加入頁3。主存中沒有3。出現缺頁現象。3后面出現了4和2,5被替換掉
加入頁4。主存中2,4,3包括3。沒有缺頁現象。不用進行最優置換。
| 初始keyword?? | 2 | 4 | 6 | 5 | 3 | 4 | 2 |
| 先進先出 | 2 | 2 | 2 | 5 | 2 | 2 | 2 |
| ? | ? | 4 | 4 | 4 | 3 | 3 | 3 |
| ? | ? | ? | 6 | 6 | 6 | 4 | 4 |
| 缺頁(*) | * | * | * | * | * | * | ? |
解析:
主存初始加入頁2,4,6,直接依次放入就可以。可是都會出現缺頁現象。
加入頁5,主存中沒有5,所以會出現缺頁現象,依據先進先出的規定。主存中已有頁出現順序為2,4,6,所以2被替換掉
加入頁3,主存中沒有3。出現缺頁現象。主存中已有頁出現順序為4,6,5,所以4被替換掉
加入頁4,主存中沒有4。出現缺頁現象。主存中已有頁出現順序為6,2,3,所以6被替換掉
加入頁2,主存中有2。沒有缺頁現象。
總結:
沒有學不會的知識,僅僅有不愿意學的知識。再簡單的知識點,不學習不總結。也掌握不好;再難的知識點,僅僅要想學、愿意學、會學,那么也能夠掌握。
點滴積累吧!
轉載于:https://www.cnblogs.com/claireyuancy/p/6964824.html
總結
以上是生活随笔為你收集整理的软考总结——虚存管理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ajax 基础
- 下一篇: mysql-理想的索引