Thursday, May 29, 2008

Windows 7 Won't Have Compact "MinWin" Kernel

From Slashdot

Calm down.

MinWin is not some magical new kernel. It is Windows with every single feature stripped out - It is the base ingredient of any version of Windows. (I forget the exact size. But it is pretty tiny - small enough for embedded stuff.)

We spent a boatload of time during Windows Vista making everything 'componentizable' - So that we could (by creating some xml files that our build process uses) create a boatload of different versions of Vista (and Server 2008). (So, all those blog posts out there with titles like 'How Microsoft can fix Windows 7: Make it modular!'...Uh, yeah. Welcome to three (four? five?) years ago.)

Why is this a good idea?
With not much more than some XML tweaking, we could create Windows Server 2008 Server Core: A version of Windows Server that is nothing more than just a web server. Or a file server (or whatever you choose to configure it as) - This means you can get a version of Windows Server with fewer things loaded in memory, fewer things running that can get hacked, fewer things that need to be updated. Pretty cool.

About the kernel:
The 2000/XP/Vista/Windows 7 kernel has evolved quite nicely over the years, and (in my opinion) is one of the best bits of code we have. You do not, and should not, do a total rewrite of a kernel in a widely-used OS between releases. Writing a piece of code is a tiny fraction of the work required to ship a bit of software - you have to test every single line of it, find the security bugs, make sure it works for every customer on every bit of hardware, etc etc.

How many times has the Ubuntu or Mac OS X kernel been rewritten?

So anyway:
You already have MinWin - It is the core system components that Windows Vista needs to function; everything else on the system depends directly or indirectly on it. It is the last thing you could (theoretically) uninstall.

So, if you really really want it, you can get it, I suppose - you probably could (using the command line) uninstall almost every single Windows Vista system component, including the user interface. I don't know what the hell you'd do with just a kernel and a kernel loader on your machine, though.