|
|
|
|
|
by fwsgonzo
1124 days ago
|
|
You're kind of forced to. I have tried to do userspace emulation using a vmm in amd64, but it's a bit hard. It is possible to handle exceptions in userspace, but you can't do page table modifications because many important instructions are ring0 only. That said, if you simplify a bit and handle paging in the host-side VMM it still works fine. You still have to do system call emulation by trapping in the SYSCALL handler. SYSCALL forces you into kernel mode, unfortunately. So bottom line is that no matter which way you try to do the userspace emulation, some parts are going to be ring0, and thus the answer to your question is indeed yes. |
|