四、頁式存儲管理( 領會 )
1、如何分頁和分塊
頁式存儲管理中有兩個名詞:“ 頁 ”和“ 塊 ”,其中的“塊”是針對硬件來說的,就是把存儲器分成若干相等大小的區,每個區就稱為一個塊。對應的,在程序中,邏輯地址進行“分頁”,其大小和每個塊相一致。
事實上,頁面的大小是由塊的大小自然決定的。對于程序來說,其邏輯地址還是和原來一樣采用連續的地址。只是 按照塊的位數取其前面數位做為頁號 .
分配空間時,根據作業長度可以確定它的頁面數,根據這個頁面數在主存中分配相應的塊數,只要是空閑塊就可以放入,即使不是相鄰的。并把分配情況記在“頁表”中,根據頁表可以找到相對應的頁號與塊號,就得出絕對地址了。
2、采用頁式管理,使主存空間充分利用,頁不必為了得到連續空間而進行移動。 可以提高系統效率。
3、頁表的構造與作用
每個被裝入主存的作業都有一張 頁表 ,指出該作業邏輯地址中的頁號與所占用的主存塊號之間的對應關系。頁表的長度由作頁擁有的頁面數決定,行號對應為頁號,行中記錄的是主存中的塊號。
頁表是硬件進行地址轉換的依據,每執行一條指令時按邏輯地址中的頁號查找頁表并轉換成絕對地址。
在多道程序設計系統中,進入主存的每個作業都有一張頁表,由一個硬件“頁表控制寄存器”來記錄每個作業的頁表所在位置和長度以便作業轉換時同時轉換頁表。
4、快表的構造與作用
快表 就是頁表的一部分克隆,每行中有頁號及其對應的塊號,整個快表存放在一個小容量的高速緩存中,訪問時快表和內存同時進行查找,因為快表速度很快,而常用的頁都登記在快表中,因此可以大大加快執行速度。
5、采用頁式管理的地址轉換過程
(為什么不直接用塊分配表來記錄而要用位示圖呢,因為主存塊很多,這樣可以節省空間,提高效率。位示圖就是用一個位(0或1)來表示一個塊的使用狀態,一個字32位,可以表示32塊。按順序排列,只需一小段內存就可以記錄主存中大量的塊狀態)
6、利用位示圖實現頁式存儲空間的分配和回收
頁式存儲管理把主存空間分成大小固定的許多塊,在裝業作業時,如何知道主存中哪些塊已使用,哪些還未用,可以用位示圖來表示。
塊號=字號×字長+位號
字號=[i/字長](即塊號i除以字長取整)
位號=i mod 字長(即塊號i除以字長取余)。
五、段式存儲管理( 領會 )
1、段式存儲中段的劃分
段式管理 是根據人們對 程序 中需要 分段編制 的要求出發而提供的。它提供給用戶編程時使用的邏輯地址由“段號”和“段內地址”兩部分組成,其形式和頁式管理相同。但是實際上是不同的:
頁式存儲管理提供連續邏輯地址由系統自動分頁,段式存儲管理中的作業分段是由用戶決定的,每段獨立編程,因此段間的邏輯地址是不連續的。
2、段式存儲空間的分配
這種分配方法和可變分區管理方式的分配方法相同,所不同的是:
可變分區管理方式中是為每個作業分一個區,而段式管理是為一個作業中的每個段分一個連續的空間。(段式管理更細)。
3、段表的構造與作用
段表 由 段號 、 本段限長 和 起始地址 三部分組成,由于每一行記錄的行號可以對應程序的段號,因此段號實際上被省略,不占存儲空間。
與其他管理方式一樣,段表記錄的信息用于地址轉換和存儲保護。段表的表目起到了基址/限長寄存器的作用。
相關推薦:2010年自考數據庫及其應用重點知識講解匯總