操作系統邏輯結構
操作系統邏輯結構
操作系統的設計和實現思路
整體式、層次式、微內核(客戶/服務端)
整體式
特點
模塊設計、編碼和調試獨立;模塊調用自由;模塊通信多以全局變量形式完成
缺點
信息傳遞隨意,維護和更新困難
層次式
按調用次序排成若干層,相鄰層只有單向依賴和單向調用
優點:結構清晰;整體問題局部化,有利於OS的維護、擴充、移植
分層原則
硬件相關-最底層
外部相關-最外層
中間層-調用次序或消息傳遞順序
共性服務-較低層
活躍功能-較低層
優點
微內核
微內核+核外服務器
微內核:足夠小,提供OS最基本的核心功能和服務
核外服務器:完成OS的絕大部分服務功能,等待應用程序提出請求
Minix:缺少多線程,內核不需要過多可移植性
Linux:宏內核在整體設計上有害
CPU
CPU態:工作狀態,對資源和指令使用權限的描述
態的分類
核態
能夠訪問所有資源和執行所有指令,可以管理程序/OS內核
用戶態
僅能訪問部分資源,其它資源受限,可以使用用戶程序
管態
介於核態和用戶態之間
用戶態->核態
用戶請求os提供服務
發生中斷
用戶進程產生錯誤
用戶態企圖執行特權指令
用戶態<-核態
執行中斷返回
硬件按“態”區分CPU的狀態
OS按“進程”區分CPU的狀態
存儲器
RAM ROM ,主存、輔存
半導體存儲器,磁,光
CPU訪問順序:緩存、內存、輔存
速度大,容量大,成本低
實際存儲體系:寄存器,高速緩存,主存,輔存
整體式結構模塊設計、編碼和調試獨立;模塊調用自由;模塊通信多以全局變量形式完成。但是它信息傳遞隨意,維護和更新困難
微內核結構的操作系統由微內核和核外服務器組成。微內核:足夠小,提供OS最基本的核心功能和服務。
核外服務器:完成OS的絕大部分服務功能,等待應用程序提出請求
核態:能夠訪問所有資源和執行所有指令,可以管理程序/OS內核用戶態:僅能訪問部分資源,其它資源受限,可以使用用戶程序。分爲內核態和用戶態可以維護系統安全,簡化用戶操作。
中斷機制
中斷:CPU對突發的外部事件的反應過程或機制
CPU收到外部信號後,停止當前工作,轉去處理該外部事件,處理完畢後回到原來的工作的中斷處繼續原來的工作
目的:實現併發活動、實現實時處理、故障自動處理
中斷源:引起系統中斷的事件
強迫性中斷:程序沒有預期(I/O,外部中斷等)
自願中斷:執行訪管指令等
外中斷:CPU外部事件引起(I/O,外部事情
內中斷:CPU內部事件引起(訪管中斷,程序中斷
外中斷:不可屏蔽中斷和可屏蔽中斷
可屏蔽中斷:中斷原因不很緊要,CPU可以不響應
斷點:程序中斷的地方,將要執行指令的下一指令的地址 CS:IP
現場:程序正常運行所依賴的信息集合
現場的保護和恢復
中斷響應過程
識別中斷源,保護斷點和現場,裝入中斷服務程序的入口地址,進入中斷服務程序,恢復現場和斷點,中斷返回:IRET
中斷響應實質
交換指令執行地址
交換CPU的態
工作:現場保護和恢復、參數傳遞