0
我認爲我得到了什麼系統程序,但我想知道爲什麼它們部分在用戶模式下執行,部分在內核模式下執行。執行系統程序的模式
由於計算機軟件旨在爲其他軟件提供服務,我認爲它們可能完全以內核模式運行。他們在用戶模式下運行哪些casses?
我認爲我得到了什麼系統程序,但我想知道爲什麼它們部分在用戶模式下執行,部分在內核模式下執行。執行系統程序的模式
由於計算機軟件旨在爲其他軟件提供服務,我認爲它們可能完全以內核模式運行。他們在用戶模式下運行哪些casses?
存在內核模式和用戶模式級別,以防止用戶軟件損壞系統及其功能。
用戶模式如何執行低級指令?
ANS - 使用系統調用
的用戶模式程序可以切換到內核模式,但是有超過這將在內核模式中執行所述指令的控制。因此唯一可能發生這種情況的方式是使用系統調用,用戶模式使用哪個接口與低級資源(硬件)進行通信。
唯一的例外是當一個進程使用''ioperm''系統調用。在這種情況下的設備可以通過 用戶模式進程直接訪問(IRQ的不能被使用)。
過程中,
用戶模式程序放置在寄存器中的值,或創建具有參數, 堆棧幀,以指示什麼特定服務它從操作系統需要。然後執行陷阱指令。
,立即將CPU切換至內核模式,並且在存儲器中的固定位置跳轉到指令。
陷阱指令或系統調用處理程序時,讀取所請求的服務+參數,的細節,然後 執行在內核模式下此請求。
終於有了系統調用來完成,操作系統重置模式 到用戶模式,並從系統調用返回。