我正在使用Windows 7家庭高级版x64。我想知道为什么我的system32目录中的ntoskrnl标头中的IMAGE_MACHINETYPE字段指定了x86。 IDA甚至会让我把它拆解为原生x86。
然而在我的windows 7 pro机器上,image_machinetype是x64。我只是遗漏了什么......或者为什么64位操作系统上的ntoskrnl 32位?
答案 0 :(得分:3)
我的猜测是在x64架构上使用BIOS启动ntoskrnl.exe的main()入口点在切换到长模式(64bit)之前被调用。因此,就其入口点而言,它将是一个x86应用程序,但exe中的内核映像的其余部分将是64位。