40.简述操作系统中调用过程?
生活随笔
收集整理的這篇文章主要介紹了
40.简述操作系统中调用过程?
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
講過程之前,讓我們先明白什么是調用?
但是講調用之前又需要明白兩個概念 核心態和用戶態。
操作系統中的狀態可以分為核心態(管態)和用戶態(目態)。
程序有些是特權指令,特權指令是只能在核心態運行,不能夠在用戶態運行的指令。
再額外說一點:
其實微內核系統和宏內核系統就是核心態和用戶態的劃分不同。微內核只提供一些必要的系統服務,也就是處于核心態的系統服務少,只有一些必要的。宏內核把很多的系統服務都劃分到了核心態,所以提供的服務比較多。
那劃分核心態和用戶態的意義是什么呢?
那么我們想一個問題,如果只有核心態沒有用戶態的情況下,會出現什么情況?
由于系統資源可能同時被多個應用程序訪問,那么會出現文件、網絡、各種硬件設備等資源競爭的情況,各個應用程序之間可能會產生沖突,對于惡意應用程序更可能導致系統奔潰。
所以對應用程序進行限制就出現了了用戶態。
我們普通的應用程序基本都是處于用戶態下運行。
那么操作系統調用過程是怎樣的呢?
首先運行于用戶態的應用程序發出系統調用請求,保護現場。一般都是給出一個中斷指令(軟中斷),然后根據中斷向量表查找系統調用表,最后在核心態執行系統調用處理程序(中斷程序),最后返回應用程序,恢復現場。
總結
以上是生活随笔為你收集整理的40.简述操作系统中调用过程?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 39.什么是操作系统(os)
- 下一篇: 41.虚拟存储器以及相关算法