RDMSR

RDMSR將64位由ECX寄存器指定的MSR(model specific register,模式指定寄存器)的內容讀出至寄存器EDX:EAX中(在支持intel64架構的處理器中RCX的高32位忽略)。MSR的高32位內容存放在EDX寄存器中,MSR的低32位內容存放在EAX寄存器中(在支持intel64架構的處理器中RDX和RAX的高32位忽略)。如果MSR中沒有64位(有些位沒有實現),則EDX:EAX中沒有實現的位置則未定義。


該指令必須在0層權限或者實地址模式下執行;否則會觸發#GP(0)異常。在ECX中指定一個保留的或者未實現的MSR地址也會引發異常。

MSR控制着可測試性、執行跟蹤、性能檢測和機器錯誤檢查等功能。附錄B列出所有能讀寫的MSR以及它們的地址。注意不同的處理器族有自己不同的MSR.


我們可以在使用本指令前用CPUID指令來檢查是否支持MSR。(CPUID.01H:EDX[5]=1)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章