-
-
在驱动中为什么无法使用invept指令呢
-
2016-2-29 12:57
5618
-
最近在学习VT,需要用Invept刷新cache,看了<处理器虚拟化技术>这本书上,有关于INVEPT指令的使用示例:invept rax, [rsi] ,看了下它的代码,并没有用机器码实现,而是直接用了Invept指令
;; 使用 "all-context invalidation" 类型刷新 cache
;;
mov eax, ALL_CONTEXT_INVALIDATION
invvpid eax, [ebp + PCB.InvDesc]
invept eax, [ebp + PCB.InvDesc] // 我用Notepad++搜索,并没有找到关于invept的机器码定义
由于我是32位操作系统 然后用了下面的代码
VOID Invept(int Type, int* Descriptor){
_asm{
PUSHAD
MOV EAX,1 // Single-context
MOV ESI,Descriptor // invept 描述符
invept EAX, [ESI]
POPAD
}
}
但是我用WDK 7600.16385.1版本的编译后,却出现了如下错误
请问谁能帮忙解答下吗,多谢了
[培训]《安卓高级研修班(网课)》月薪三万计划,掌
握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法