操作系統特徵、內核態與用戶態

1. 操作系統的特徵

  • 併發:宏觀上計算機系統在一段時間內能同時存在多個運行的程序,需要OS管理和調度。
  • 共享:共享是指系統中的資源可以被多個併發進程共同使用。有兩種共享方式:互斥共享和同時共享。
  • 虛擬:虛擬技術把一個物理實體轉換爲多個邏輯實體。主要有兩種虛擬技術:時分複用技術和空分複用技術。多個進程能在同一個處理器上併發執行使用了時分複用技術,讓每個進程輪流佔有處理器,每次只執行一小個時間片並快速切換。虛擬內存使用了空分複用技術,它將物理內存抽象爲地址空間,每個進程都有各自的地址空間。地址空間的頁被映射到物理內存,地址空間的頁並不需要全部在物理內存中,當使用到一個沒有在物理內存的頁時,執行頁面置換算法,將該頁置換到內存中。
  • 異步:程序不是一次性執行完畢,而是走走停停,以不可知的速度向前推進。

2. 內核態與用戶態

硬件上對於指令具有級別控制,處於內核態的代碼具有最高優先級,可以訪問硬件資源,包括內存、網卡等等,處於用戶態的代碼具有最低優先級,往往不能直接訪問硬件資源。所以當用戶進程需要訪問IO時候,就涉及到了用戶態向內核態的切換,一般有三種方式:系統調用、異常和中斷。

3. 中斷、異常和系統調用

  • 系統調用:應用程序主動向操作系統發出的請求。用戶態進程通過系統調用,臨時進入內核態,執行內核態特權。
  • 異常:非法指令或其它原因導致當前指令執行失敗(如內存出錯)後的處理請求。
  • 中斷:來自外圍設備的中斷處理請求。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章