系统架构师学习笔记-操作系统(三)
目錄
?
?
存儲管理
地址變換機構
分頁和分段的主要區別
段頁式存儲管理
頁面置換算法
作業管理
?
存儲管理
段表:為使程序正常運行,須在系統中為每個進程建立一張段映射表,簡稱“段表”。每個段在表中占有一個表項。
段表結構:段號;段在內存中的起始地址(基址);段長。
段表可以存放在寄存器中,但更多的是存放在內存中。段表用于實現從邏輯段到物理內存區的映射。
?
地址變換機構
在系統中設置段表寄存器,用于存放段表始址和段表長度,以實現從進程的邏輯地址到物理地址的變換。當段表存放在內存中時,每訪問一個數據,都需訪問兩次內存,降低了計算機的速率。
?
分段系統的地址變換機構:如下圖所示:
解析:首先是看邏輯地址的段號S,他通過控制寄存器來查找段號(如果段號s太大則會越界中斷),找到段號在段表的位置,這時看他對應的基址,找到機制后,再看位移量w的值(也就是偏移地址),這時就可以在主存(內存)中找到數據!
?
分頁和分段的主要區別
相似點:采用離散分配方式,通過地址映射機構實現地址變換。
不同點:
1.?頁是信息的物理單位,分頁是為了滿足系統的需要;段是信息的邏輯單位,含有意義相對完整的信息,是為了滿足用戶的需要。
2.頁的大小固定且由系統確定,由系統把邏輯地址分為頁號和頁內地址,由機器硬件實現;段的長度不固定,取決于用戶程序,編譯程序對源程序編譯時根據信息的性質劃分。
3.?分頁的作業地址空間是一維的;分段的作業地址空間是二維的。
?
段頁式存儲管理
分段和分頁存儲管理方式各有優缺點。把兩者結合成一種新的存儲管理方式--段頁式存儲管理方式,具有兩者的長處。
1. 基本原理
先將用戶程序分成若干段,再把每個段分成若干頁,并為每個段賦予一個段名。
基本段頁式存儲管理:把作業的所有段裝入內存方可運行。
請求段頁式存儲管理:沒必要把整個作業裝入內存,可把作業的幾段或幾頁裝入內存即可運行。
段頁式系統地址結構:段號;段內頁號;頁內地址。
?
段頁式系統的地址變換機構如下圖所示:
解析:首先是找到段號s(可能會有越界的問題),找到后,在找頁號(也可能會越界)然后根據塊號(這時候是物理地址了)找塊內地址(也是頁內地址)
?
在段頁式系統中,為了獲得一條指令或數據,需訪問三次內存:
第一次:訪問內存中的段表,取得頁表始址
第二次:訪問內存中的頁表,取得該頁所在的物理塊號,將塊號與頁內地址形成物理地址
第三次:根據第二次所得的地址,取出指令或數據
缺點:訪存次數增加兩倍
解決方法:增設高速緩沖寄存器
?
頁面置換算法
1.最佳置換算法;
2.先進先出置換算法;
3.最近最久未使用(LRU)算法;
?
?
作業管理
一個批處理型作業,從進入系統并駐留在外存的后備隊列上開始,直至作業運行完畢,要經歷提交、后備、執行和完成4個狀態。
這里要了解下360浮懸球有個內存釋放的功能,他就是把就緒態和阻塞態的內存,掛起放到掛起就緒或者掛起阻塞中!
這里要注意:掛起就緒和掛起阻塞是在外存中!恢復后就是在內存中!
?
處理機調度
1.高級調度:也是作業調度
2.中級調度:把內存調往外存,把外存調回內存
3.低級調度:進程調度,去就緒到執0行
?
?
總結
以上是生活随笔為你收集整理的系统架构师学习笔记-操作系统(三)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Qt文档阅读笔记-Visual Pare
- 下一篇: Qt文档阅读笔记-对Style Plug