4 ms·
The Windows kernel really isn't that great by modern standards, neither codewise nor architecturally. And yes I know a lot about it. There's a LOT of weird stu
by revelio 4y ago
The Windows kernel really isn't that great by modern standards, neither codewise nor architecturally. And yes I know a lot about it.
There's a LOT of weird stuff lurking in there, and a lot of features they've added in recent years just doesn't work properly at all (anything uwp related...). Even the basics of how you start another process have turned into a labyrinthine mess. Then you have things they never fixed like the totally unhelpful NT file locking semantics that regularly break apps that work fine on UNIX.
NTFS is supposedly a nightmare of tech debt that uses SEH for control flow, yet their attempt to move Windows to a new ReFS stalled and failed. Note: Apple managed this with APFS and Linux distros have routinely introduced new file systems.
COM isn't a part of the kernel but is the same situation - incredibly complicated and has not been evolved well. Lots of failed rebrands, attempts to rejuvinate it that actually made things worse.
- manicennui 4y agoIs the Linux kernel really that great?
- gigatexal 4y agoI think it is. Others might not. But it being open is the best part.
- revelio 4y agoWithin its own rules, yeah, it's pretty great. Very high performance, huge feature set, everything is configurable and transparent, relatively non-buggy, clean code, runs on everything. If you want stable driver APIs that allow you to distribute hardware support with the hardware, keeping that investment proprietary, then obviously no it's crap, and that's a pretty important use case. If your hardware has good driver support in-tree though, then Linux is hard to beat these days. It just gets so much more investment than the NT or Darwin kernels. There are a few places where Darwin is ahead especially w.r.t. code signing and sandboxing. I can't think of anything that NT in particular excels at though.
- pjmlp 4y agoDriver guard, safe kernel, userspace graphics drivers, Xerox PARC/Oberon like workflows between kernel and userspace frameworks, setting the rules where graphics APIs are going (DX drives, Vulkan follows),...
- revelio 4y agoNot sure what you mean by oberon-like workflows. IIRC the new gen graphics frameworks have their origins in work by AMD.
- pjmlp 4y agoMantle was just a PC API based of how game console APIs work, like DirectX on XBox. As for Oberon, there is enough material out there. Suffice to say how Powershell integrates with .NET, DLLs and COM, enabling OS and applications scripting, pursue of safer approaches to OS system programming instead of yet another UNIX clone written in C.