使用者模式和核心模式

執行 Windows 的電腦中的處理器會以兩種不同的模式運作: 使用者模式核心模式。 處理器會根據執行的程式代碼類型,在這些模式之間切換。 應用程式會在使用者模式中運作,而核心操作系統元件在核心模式中運作。 雖然許多驅動程式在核心模式中運作,但有些驅動程式可以在使用者模式中運作。

使用者模式

當您以使用者模式啟動應用程式時,Windows 會為其建立 程式 。 此程式會提供應用程式私人 虛擬位址空間 和私人 句柄數據表。 由於每個應用程式的虛擬位址空間都是私人的,所以一個應用程式無法修改另一個應用程式的數據。 每個應用程式都會以隔離方式執行,確保如果一個當機,它不會影響其他應用程式或操作系統。

使用者模式應用程式的虛擬位址空間也受到限制。 在使用者模式中執行的進程無法存取保留給操作系統的虛擬位址。 限制使用者模式應用程式的虛擬位址空間,可防止應用程式修改或損害重要的作業系統數據。

核心模式

在核心模式中執行的所有程式代碼都會共用單一 虛擬位址空間。 因此,核心模式驅動程式不會與其他驅動程式或操作系統隔離。 如果內核模式驅動程式錯誤地寫入錯誤的虛擬位址,可能會危害屬於操作系統或其他驅動程序的數據。 如果內核模式驅動程序當機,它會導致整個操作系統當機。

下圖說明使用者模式和核心模式元件之間的通訊。

此圖顯示計算機系統中使用者模式和核心模式元件之間的通訊。

虛擬位址空間