4 ms·
IMHO it was an architecture far ahead of its time --- basically a hypervisor running existing DOS in VMs, with all hardware passed through by default. If they k
by userbinator 2mo ago
IMHO it was an architecture far ahead of its time --- basically a hypervisor running existing DOS in VMs, with all hardware passed through by default. If they kept at it instead of abandoning for NT, by e.g. increasing protections for better isolation and reliability, while still passing through where performance mattered, we might've gotten Microsoft's take on Xen.
- crazysim 2mo agoWould HyperV and Virtualization Based Security be that take? I suppose it’s taken very far on Xbox and VBS is enabled by default on most Windows systems.
- cyberax 2mo agoIt was not a hypervisor, the hardware was not virtualized. They instead used 16-bit code for the OS kernel, simply transitioning between 16 and 32-bit modes. The 16-bit code was a dead end. It was not re-enterable, so 32-bit code had to take a Win16Mutex on every kernel code. If you ever debugged DirectX code on Win9x, you'd remember that quite vividly. The LockSurface call that provided direct access to pixels locked this mutex, so a breakpoint in a locked section caused an instant hard deadlock. That being said, it indeed was a brilliant hack that allowed a featereful GUI to run within 2Mb of RAM with good DOS compatibility.
- haileys 2mo agoThe hardware was virtualized, it's even in the name for drivers on Win9x: Virtual Device Driver
- cyberax 2mo agoVxD-s technically allowed virtualizing devices, but only in a very limited way. The port IO instructions were easily intercepted but not much else. VxDs could use page protection tricks to redirect MMIO but this was used sparingly. Really the only serious "virtualization" was in the interrupt handling. Code in Win9x that handles interrupts had to be 16-bit and located in the lower 640kb of RAM. Most VxDs worked like classic drivers, they encapsulated device-specific interfaces and provided more abstract application-level interfaces.