筆記】Operating System Security Models_作業系統_期末整理

--

期末了,順手紀錄一下學習重點。

與電腦系統進行 I/O 的外接式的裝置,可分成三類:

  1. 人類可讀:
    印表機、終端機、視訊顯示器、滑鼠、鍵盤。
  2. 機器可讀:
    磁碟機、USB 金鑰、感測器、控制器和執行器。
  3. 通訊:
    遠端設備通訊。數位線路驅動程式和網路卡、WIFI。

以上三類在"資料速率"、”應用”、”操作的複雜度”、”傳輸單位”、”資料表示”、”錯誤狀況” 都有明顯的不同。

I/O 有三種運作模式:

  1. Programmed I/O 程式輸入/輸出:
    處理器(CPU)代表程序向I/O 模組發出I/O 指令; 然後,該進程將忙於等待操作完成,然後再繼續。
  2. Interrupt-driven I/O 中斷驅動I/O:
    處理器代表處理程序發出I/O 指令。 那麼就有兩種可能:
     — 如果進程的 I/O 指令是非阻塞的,則處理器繼續執行發出 I/O 命令的進程中的指令。
     — 如果I/O指令是阻塞的,那麼處理器執行的下一條指令來自作業系統,這將使當前程序處於阻塞狀態並調度另一個程序。
  3. Direct memory access 直接記憶體存取(DMA):
    DMA 模組控制主記憶體和I/O 模組之間的資料交換。 處理器向 DMA 模組發送傳輸資料塊的請求,並且僅在傳輸整個資料塊後才會中斷。(資料量很大的時候)

I/O subsystem 種類:

  1. I/O scheduling:
    藉由 ordering the jobs in I/O queue to improve 系統的 performance
  2. Buffering:
    在進行 I/O devices 之間的傳輸時,把資料存在記憶體。 memory copy 才不會有 overflow 的問題。調節速度用的。
  3. Caching:
    這個資料可以丟掉。讓 I/O速度變快。
  4. Spooling:
    把資料 buffer 滿了才會做下一步的處理。就像 printing。
  5. Error handling:
    處理 I/O 的噴出的錯誤。
  6. I/O protection:
    因為 I/O device 通常是 shared devices 所以需要 privileged instructions 來保護。

--

--