logoalt Hacker News

userbinatortoday at 6:09 AM5 repliesview on HN

Developing our own KMD is not really an option

Why not? Fully open-source Windows GPU drivers would be great. Incidentally, this sort of "glue code" is probably something LLM assistance could help greatly with much of the grunt work.

(E.g. there is already a generic framebuffer driver for Win3x/9x: https://news.ycombinator.com/item?id=47646363 but one of the ideas I have --- which anyone else with the time is more than welcome to attempt --- is to port the existing open-source Linux drivers for AMD/NVIDIA/Intel to early Windows versions that never even had closed-source drivers available, giving them full 2D/3D acceleration. Theoretically, something as crazy as CUDA on Windows 95 is possible, and perhaps some vibecoding can turn that into reality. After all, as I write this comment, https://news.ycombinator.com/item?id=49089814 is on the main page.)


Replies

AshamedCaptaintoday at 10:39 AM

I am quite sure AMD is already using a fork of the Linux amdgpu KMD for their proprietary driver on Windows (which in part explains why a project like this can even be done)

Porting Linux drivers to anywhere is generally hard. It either makes your kernel very Linux-like (and lots of manpower to translate the abstractions), or forces you to put Linux on it. There are bazillions of projects to put recent Intel drivers on 9x and none suceeded, for example.

Plus my recent observation that for Haiku it was easier to port the out-of-tree nvidia driver and fork Mesa, than it was to port the Linux amdgpu one.

MayeulCtoday at 9:29 AM

I almost wrote the same comment — the first part, anyways.

In theory, it should be feasible to provide a "shim" to bridge the API gap between Linux and Windows internal APIs. The catch here is that Linux is a moving target.

AMDGPU (the Linux kernel module) has its roots in a shared Linux/Windows codebase from AMD, so hopefully it didn't get _too_ tightly integrated (I know some parts got integrated, IIRC it used to ship its own i2c driver).

ZiiStoday at 7:43 AM

For Windows 3x/9x the common term was VxD, KMD strongly implies an NT derived OS.

show 1 reply
LoganDarktoday at 7:17 AM

You can't really develop a kernel-mode driver nowadays without being an incredibly large OEM. Otherwise, you won't be accepted by any anti-cheat.

show 4 replies
pjmlptoday at 7:44 AM

Certainly OpenGL and DirectX acceleration was a thing in Windows 9x, kind of missing the point.

show 1 reply