用户模式 VS 内核模式(1)
生活随笔
收集整理的這篇文章主要介紹了
用户模式 VS 内核模式(1)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
用戶模式:
?通過windows啟動的任何一個進程都在用戶模式(user mode)下運行,在這種模式下的進程不能訪問其它進程的資源,除非通過API調用。在這種模式下運行的程序不能處理中斷(interrupts)和環境切換(context switching)。
中斷(interrupts):
?CPU在運行時經常被一些事件打斷(interrupt),如計時器,鍵盤,硬盤等。這些事件就叫做中斷(interrupts)。操作系統內核必須創建一些中斷處理器(interrupts handlers)來處理這些事件。因此,當中斷出現時,操作系統就會停止當前執行的程序并轉入內核模式來之中中斷處理器來處理這些事件。事件處理器會保存當前CPU的狀態,處理事件,恢復CPU的狀態,從而使得CPU可以繼續前面運行的程序。
?當一個程序希望調用windows API時,它就會觸發一個中斷(interrupt),從而使CPU進入內核模式來執行所要求的API。在API調用結束后,CPU會切換回用戶模式并繼續執行先前的程序。
環境切換(Context switching)
環境切換是由操作系統來執行的,環境切換的步驟如下:
(1)保存當前程序的運行狀態
(2)指出下一個將要運行的程序
(3)恢復另一個進程的狀態
?
總結
以上是生活随笔為你收集整理的用户模式 VS 内核模式(1)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: html cols跨两列,html –
- 下一篇: 用户模式与内核模式(2)