Linux

地址空間中的核心空間是由什麼為我們保留的?

  • March 1, 2020

在程序執行過程中,當一個程序的記憶體映射是這樣的:

在此處輸入圖像描述

這可能是一個愚蠢的問題,但是在地址空間中保留核心空間的原因是什麼?使用者程序對此負責嗎?特權程序?所有程序?

據我了解,核心記憶體空間由正在執行的程序保留,但只有在指示在環 0 下執行時,CPU 才能訪問它。這是正確的嗎?

核心代表程序處理這個問題。核心的地址空間確實只有在 CPU 處於特權模式時才能訪問,在 x86 上是 ring 0。

另請參閱所有程序的虛擬地址空間在其“核心”部分中是否具有相同的內容?在Linux程序的虛擬記憶體空間中有核心部分有什麼用?, 64位linux程序的虛擬記憶體核心部分是什麼?,除了使用系統呼叫時,我們何時跳轉到程序虛擬記憶體的核心部分?(在 Linux 中)

引用自:https://unix.stackexchange.com/questions/570131