Running drivers in userspace/VM

KOLANICH kolan_n at mail.ru
Fri Oct 7 10:10:15 CDT 2016


Hello everybody. ReactOS project is devoted to making an OS kernel binary compatible with NT kernel. In their official FAQ it is written that they cannot be replaced with GNU/Linux + Wine because of drivers which cannot be run in Wine. I'm a bit sceptical about their OS, so I wonder why cannot drivers be run in wine?

Drivers are run in ring 0 or 1, right? Why it is impossible/too complicated to 
a) expose some privileged instructions into userland through API;
b) expose IO space using IOPL;
c) make a mock of NT kernel to allow the drivers use its ABI;
d) patch the binaries automatically to use API instead of privileged instructions;
e) if a driver doesn't works well enough in userland, create a micro-VM using VT-x and VT-d and put there NT kernel mock and the driver?



More information about the wine-devel mailing list