Zero-Tang / NoirVisor

The Grimoire Hypervisor solution for x86 Processors with experimental nested virtualization support. Remastering with Rust in progress.
MIT License
474 stars 81 forks source link

noir_vt_invept和noir_vt_invvpid的问题 #8

Closed huoji120 closed 4 years ago

huoji120 commented 4 years ago

在vt_hv.asm中, 第66行一个是 invept rcx,xmmword ptr [rdx],而不是 invept xmmword ptr [rdx],rcx 看起来是作者故意的?

Zero-Tang commented 4 years ago

这确实是我故意的,因为MASM汇编器定义的inveptinvvpid指令的操作数顺序与Intel VMX手册中所定义的相反,按正常顺序则无法编译。指令名后跟的先是内存操作数,然后才是寄存器操作数,也就是invept xmmword ptr[rdx],rcx。编译后用反汇编器查看,是正常的。 ida_invept

huoji120 commented 4 years ago

哈哈,不小心让一个anti paste代码暴露了。 作者的hypervisor源码质量特别高,是目前为止我认为的最好的hv源码了