筆記】Operating System Security Models_作業系統_期末整理
Apr 18, 2024
期末了,順手紀錄一下學習重點。
與電腦系統進行 I/O 的外接式的裝置,可分成三類:
- 人類可讀:
印表機、終端機、視訊顯示器、滑鼠、鍵盤。 - 機器可讀:
磁碟機、USB 金鑰、感測器、控制器和執行器。 - 通訊:
遠端設備通訊。數位線路驅動程式和網路卡、WIFI。
以上三類在"資料速率"、”應用”、”操作的複雜度”、”傳輸單位”、”資料表示”、”錯誤狀況” 都有明顯的不同。
I/O 有三種運作模式:
- Programmed I/O 程式輸入/輸出:
處理器(CPU)代表程序向I/O 模組發出I/O 指令; 然後,該進程將忙於等待操作完成,然後再繼續。 - Interrupt-driven I/O 中斷驅動I/O:
處理器代表處理程序發出I/O 指令。 那麼就有兩種可能:
— 如果進程的 I/O 指令是非阻塞的,則處理器繼續執行發出 I/O 命令的進程中的指令。
— 如果I/O指令是阻塞的,那麼處理器執行的下一條指令來自作業系統,這將使當前程序處於阻塞狀態並調度另一個程序。 - Direct memory access 直接記憶體存取(DMA):
DMA 模組控制主記憶體和I/O 模組之間的資料交換。 處理器向 DMA 模組發送傳輸資料塊的請求,並且僅在傳輸整個資料塊後才會中斷。(資料量很大的時候)
I/O subsystem 種類:
- I/O scheduling:
藉由 ordering the jobs in I/O queue to improve 系統的 performance - Buffering:
在進行 I/O devices 之間的傳輸時,把資料存在記憶體。 memory copy 才不會有 overflow 的問題。調節速度用的。 - Caching:
這個資料可以丟掉。讓 I/O速度變快。 - Spooling:
把資料 buffer 滿了才會做下一步的處理。就像 printing。 - Error handling:
處理 I/O 的噴出的錯誤。 - I/O protection:
因為 I/O device 通常是 shared devices 所以需要 privileged instructions 來保護。