OS回顧 使用者態和核心態

2021-10-22 07:24:57 字數 642 閱讀 2609

為了限制使用者程式的許可權,保護系統安全,保證系統不被應用程式有意或無意地破壞。

如果使用者執行了一些惡意的程式,它們可能就會進行一些危險操作,如果不對使用者程式的許可權進行限制,那麼這些惡意程式可能就會對作業系統造成破壞。

原因

系統呼叫這是使用者態程序主動要求切換到核心態的一種方式,使用者態程序通過系統呼叫申請使用作業系統提供的服務程式完成工作。而系統呼叫的機制其核心還是使用了作業系統為使用者特別開放的乙個中斷來實現,例如linux的int 80h中斷。

當cpu在執行執行在使用者態下的程式時,發生了某些事先不可知的異常,這時會觸發由當前執行程序切換到處理此異常的核心相關程式中,也就轉到了核心態,比如缺頁異常。

外圍裝置的中斷:當外圍裝置完成使用者請求的操作後,會向cpu發出相應的中斷訊號,這時cpu會暫停執行下一條即將要執行的指令轉而去執行與中斷訊號對應的處理程式,如果先前執行的指令是使用者態下的程式,那麼這個轉換的過程自然也就發生了由使用者態到核心態的切換。比如硬碟讀寫操作完成,系統會切換到硬碟讀寫的中斷處理程式中執行後續操作等。

這3種方式是系統在執行時由使用者態轉到核心態的最主要方式,其中系統呼叫可以認為是使用者程序主動發起的,異常和外圍裝置中斷則是被動的

OS回顧 使用者態和核心態

使用者態 只能受限的訪問記憶體,且不允許訪問外圍裝置。核心態 可以訪問到所有資料,包括外圍裝置 使用者空間和系統空間。為了限制不同程式之間的訪問能力,防止他們獲取到別的程式的記憶體資料,或者獲取外圍裝置的資料,所以就分成了兩個許可權 使用者態和核心態。一般情況下,所有的使用者程式都是執行在使用者態下...

核心態和使用者態

在核心態下,cpu可執行任何指令,在使用者態下cpu只能執行非特權指令。當cpu處於核心態,可以隨意進入使用者態 而當cpu處於使用者態,只能通過中斷的方式進入核心態。一般程式一開始都是執行於使用者態,當程式需要使用系統資源時,就必須通過呼叫軟中斷進入核心態。當乙個任務 程序 執行系統呼叫而陷入核心...

核心態和使用者態

複習的時候發現 作業系統 書上竟然沒有找到使用者態和核心態的概念,還納悶了半天以為是自己上課的時候沒有認真聽講.核心態 cpu可以訪問記憶體所有資料,包括外圍裝置,例如硬碟,網絡卡.cpu也可以將自己從乙個程式切換到另乙個程式 使用者態 只能受限的訪問記憶體,且不允許訪問外圍裝置.占用cpu的能力被...