在x86中,在設置PE位CR0後,我們執行遠程JMP以確保CS/EIP已更改。當我看到在x86的程序員手冊中的邏輯流程,與此對應遠JMP指令(保護模式),我看到這樣的事情:x86從實模式切換到保護模式CPL(當前權限級別)
Set RPL field of CS register to CPL;
我想,以確保優先級爲0。假設是DPL描述符中也是0,遠端JMP中的選擇器中的RPL也是0.描述符中的C位爲0,所以它是非符合代碼段的情況。該手冊說CPL是CS中的最後兩位。這意味着,在遠的JMP之前,CS應該包含一個最後兩位爲00的值。因此,當我最初處於實模式時,我應該確保CS在I之前具有符合此條件的某個值執行遠遠的JMP? 如果我要重述一下,當我們從實模式切換到保護模式時,CPL是多少?
不錯的問題,順便說一句。當我開始使用這些東西的時候,我想了好幾個月。 – Downvoter
謝謝,cad。儘管如此,我的腦袋正在旋轉着,在你的回覆中嵌入瞭如此多的嵌套信息。我想這可能需要我花幾個月的時間來吸收它們。但在此之前我需要了解很多,因爲我很快就會登上老師的領獎臺。 – Kamalakshi