Intel的x86處理器是通過Ring級別來進行訪問控制的,級別共分4層,RING0,RING1,RING2,RING3。
RING0層擁有最高的權限,RING3層擁有最低的權限。
Windows只使用其中的兩個級別RING0和RING3。按照Intel原有的構想,應用程序工作在RING3層,只能訪問RING3層的數據,操作系統工作在RING0層,可以訪問所有層的數據,而其他驅動程序位於RING1、RING2層,每一層只能訪問本層以及權限更低層的數據。如果普通應用程序企圖執行RING0指令,則Windows會顯示“非法指令”錯誤信息。
如圖:
| |