Page 1 of 1

MinWin, is M$ seeing the light ?

Posted: Tue May 06, 2008 9:51 pm
by Dex
What's all your views on the M$ project, code named "MinWin" which is part of the next generation of windows, is this a Uturn in design ?
30MB for a self contained M$ kernel :shock:.

http://en.wikipedia.org/wiki/Windows_7
http://blogs.zdnet.com/microsoft/?p=842
http://www.vimeo.com/352637

Posted: Tue May 06, 2008 10:23 pm
by Colonel Kernel
My take on it is this... Over the past few years, Microsoft has let a lot more of its employees blog about the projects they're working on. The press get wind of some of these blog posts and make a big deal about them like they're product release announcements rather than technical details (which of course the press don't understand).

IMO, MinWin is just an attempt to separate the base kernel + sub-system servers from the rest of the user-land cruft that has accumulated over the years since NT 3.1. This separation is probably more at the level of configuration management and source tree organization than in terms of the run-time OS architecture. It is not revolutionary, not a change in the OS design, and won't amount to much other than to make it easier for MS to confuse customers by offering dozens of different "editions" of Windows. That's it (IMO).

Posted: Tue May 06, 2008 10:53 pm
by Cognition
I'm somewhat skeptical to be honest. I run Vista 64 and the bloat is very very apparent, even after the service packs it still takes a good deal longer to boat and load then Kde4 (which honestly still needs a lot of polish itself). However I'm not totally convinced this has todo with install size so much as poor memory management/driver design. I have a fairly powerful system (dual core 2.4 ghz, 4gigs pc8500 ddr, 1tb raid arrary in raid 0) and I just don't think any OS should be bogging it down this much.

I think there's a few possible culprits one being how windows manages it's page file. Windows seems to be fairly quick to kick things out of main memory if you're gaming or using other resource intensive applications. This makes sense but on vista you actually get a noticable delay when switching back out as everything else gets loaded back from disk. I'll note that I also think the indexing feature is a resource hog and rather gimmicky, who really uses the search function that much honestly? Lastly I think part of the bloat just comes from the sheer number of services that run at the base of the operating system. There's literally about 80 services running and only around 5 of those are from software I've installed, most of which are actually driver related anyways. I think that's where Windows 7 has the potential to make the most difference, just by stripping and consolidating the sheer amount of junk there. But the other issues I don't see it helping with too much.

Trusted computing is something that has me a bit concerned as well. I can see scenarios with extra security and verification would be very helpful, mainly in the private/government sector. But for home use a lot of possible applications seem less appealing. I'm not really a big fan of ever being identified by a microchip. But honestly I haven't read enough into the specification to see exactly what it entails at this point. As an OS developer I'd also hate for any additional closed standards to be implemented, which I could see this shifting into.

I'm not sure how heavily it will borrow from Singulairity, but I think Microsoft is kind of overhyping the advantages of CIL. Don't get me wrong I think it's a great move and very important for the future of computing but some of the claims seem rather silly to me. The major one I read is that operating systems are dumb when it comes comes to typical machine code based programs, and it has no idea what they're doing. That seems well... dumb to me, I mean without proper system calls a program can't really do anything but push sand around in it's own sand box. This can obviously change if you have a totally unprotected memory management scheme. But ultimately I don't see a compelling reason why an OS wouldn't know every file a program opens and every window it draws. Especially one that draws from a very well established API like Windows. That said, I do think CIL opens the door for dramatic changes in processor architecture that the PC hasn't really seen in years. There's been a lot of focus on things like GPU processing, which I think CIL would make much more feasible if, at a minimum, manufacturers write an interpreter for their hardware. It also would allow more specialized multicore setups where we might see things like dedicated highly vectorized FPU processors returning. Other then that though, I don't really see it as much more then another layer of abstraction and a new API.

Personally I'm reserving judgement until some more concrete information and demonstrations come out. Even a great design and implementation can be ruined by business practices that encourage the release of code known to be buggy or not thoroughly tested.

Posted: Tue May 06, 2008 11:01 pm
by AdHawk
I dont know... 30MB on disk still seems kinda big to me, without any drivers or anything. All it is is the IPC, memory management and scheduling. 30MB just seems big to call it "min"-win.

Posted: Tue May 06, 2008 11:55 pm
by Colonel Kernel
@Cognition: Most of what you said has nothing to do with "MinWin". Singularity is just a research project at this point. It won't see the light of day in a shipping MS OS for years, if at all.

@AdHawk: 30 MB would be insanely large for a microkernel, but MinWin is not a microkernel. It's not even just a kernel. It's the kernel + drivers + environment sub-systems (CSRSS, LSASS, and friends) + whatever other basic userland functionality they decided to include... Probably PowerShell or at least cmd.exe. I read somewhere that it includes a small HTTP server too. Basically, it's Windows without the GUI or any of the other "features". Think along the lines of a really, really stripped down Linux distro that can boot, give you a command prompt, basic networking, and access to the file system, but that's about it.

Posted: Wed May 07, 2008 2:01 am
by Cognition
@Colonel: Sorry, my take on it was that MinWin itself was purely a research build to be used to guide future OS releases as well. Seems like the Singularity buzz was all hype or wishful thinking at this point for sure though. And trusted computing might at most be found through Live Services. Still I agree with what you've said about there being nothing revolutionary about it and I'm not certain how much it's actually going to improve performance beyond load times.

Posted: Wed May 07, 2008 1:50 pm
by Dex
I think it could be very important, as it show a big shift in focus, before you had a case where you had a kernel that needed to for fill many rolls, for many differant usages, you can not take parts from it or you many break something, so you left it in needed or not.
This got and still is unmanageable in the long term, i think when they made the Xbox OS, it tort them a big lessen, that is, what is needed is a very small kernel that can be customised to differant jobs, One you could add too or take from, without break something, this will make a big difference, you will find new releaser's coming out faster and more custom OS coming out.

I think this will be great news for OS Dev's, because
1. even though M$ will cut jobs, it will sub divide into lots of smaller devisions.
Which inturn will mean more jobs for OS Dev's type coders

2. M$ may be on the lookout for any good custom OS's and may buy you out for the idea.

Posted: Wed May 07, 2008 2:32 pm
by lukem95
that was a really interesting video. i think if MS continue like they are, they might end up with a really nice product :)

Posted: Wed May 07, 2008 2:46 pm
by Colonel Kernel
@Dex: I'm not sure how you extrapolate all that from what is essentially little more than an internal source tree re-org. My understanding is that the kernel itself is not really any different, just that a lot of the user-land dependencies have been stripped away. The XBox kernel is sort of a counter-example in that they actually did have to modify the kernel a fair bit. I'm guessing that they maintain that on a separate branch from the rest of Windows development (that's how I would organize it).

I had a thought though -- this may be a response to the success of Linux on small low-power mobile devices like OLPC and the Asus EEE PC. MS can't keep supporting XP forever, and Vista is too big for such devices, so a stripped-down Windows OS is just what they need to compete.

Posted: Wed May 07, 2008 5:24 pm
by B.E
Don't forget, that MinWin is has no GUI, no hardware accelerated drivers, I don't think it has the command prompt.

It does however have network support and basic IO support. It would be interesting to see the Linux kernel be brought down to that level and see how much memory space it would consume.

Posted: Wed May 07, 2008 5:28 pm
by Dex
Colonel Kernel wrote:I had a thought though -- this may be a response to the success of Linux on small low-power mobile devices like OLPC and the Asus EEE PC. MS can't keep supporting XP forever, and Vista is too big for such devices, so a stripped-down Windows OS is just what they need to compete.
I agree with you Colonel Kernel on this point.
Maybe when we have more info, we can have a better idea of what they are upto.

Posted: Fri May 09, 2008 12:35 pm
by 01000101
On the topic of embedded windows OS, they already have mini-distro's (Windows Mobile and Windows Vista (embedded)). So why can't they just keep supporting Xp, keep developing Vista, keep developing their mini-distros or embedded distros, and continue the path they are on? Home computers are getting exponentially faster, thus the power vs. prettiness factor gets pulled in favor of high graphics and such as the newer computers can support them without having to worry about the size of the OS.

Posted: Mon May 12, 2008 8:01 pm
by AdHawk
01000101 wrote:Home computers are getting exponentially faster, thus the power vs. prettiness factor gets pulled in favor of high graphics and such as the newer computers can support them without having to worry about the size of the OS.
I'm sorry but that's a terrible reason to think that you should try to optimize something while you're adding new features to it. Intel is already hitting walls in their development, electron migration problems are a huge issue with low nm chips. Even if they're keeping up with or breaking mores law now, it doesnt mean they always will. (plus moores law is about number of transistors, not how well you can use them)

@Colonel Kernel: I'm sorry but you're wrong, the roughly 25MB kernel they demoed has no CLI, no environment subsystems, and no drivers besides what was required to allow it to run inside Virtual PC. No sub-systems that you find in todays windows. No userland apps, with the exception of maybe the simple 80k http server.

Posted: Sat May 17, 2008 5:14 pm
by B.E
01000101 wrote:mini-distro's (Windows Mobile and Windows Vista (embedded)).
That word is annoying me, There not distros at all, there versions of the same operating system. But there not distros. If they were able to be distributable by more then one company then it would be called a distribution, but with Windows only Microsoft can do it.

Windows Vista Business is a product, Windows Vista Home is a product, Windows Vista <insert one of the billion different names> is a product. Windows Mobile is a product. Windows CE is a product. Am I making my point.

Posted: Fri May 23, 2008 4:36 am
by jal
01000101 wrote:(Windows Mobile and Windows Vista (embedded))
It is still XP Embedded, renamed to Windows Embedded (and its derivatives like WE POS - Windows Embedded for Point of Sale). See also here and here.


JAL