RDMSR--读MSR
2016-07-30 14:58
1081 查看
RDMSR--读MSR
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).
原文地址:http://blog.csdn.net/misterliwei/article/details/4352065
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).
原文地址:http://blog.csdn.net/misterliwei/article/details/4352065
相关文章推荐
- UISegmentedControl搭配UIScrollView使用
- Snmp linux
- 基于Spring实现可跨域访问的REST服务
- WRMSR--写MSR
- JSON解析之原生解析
- SYSEXIT——快速系统调用的快速返回
- 编写常见C语言字符串函数
- 【Debug】_ASSERTE(_BLOCK_TYPE_IS_VALID(pHead->nBlockUse));
- "java.io.IOEXception:couldn't create PTY"
- GZIP压缩原理分析(20)——第五章 Deflate算法详解(五11) 算法分析(05) 格式说明(04) 动态哈夫曼编码
- SYSENTER——快速系统调用
- linux目录结构,文件管理
- java基础--10.面向对象
- CheckBox 单选按钮自定义样式
- PyQt5教程-05-消息盒子
- 非常规文件名删除
- RPM打包
- AngularJS ng-bind 指令简单实现
- laravel学习教程之关联模型
- GZIP压缩原理分析(18)——第五章 Deflate算法详解(五09) 算法分析(03) 格式说明(02) 存储类型