At home and in test/specialty labs in my school I'm running everything from flavors of *buntu and Mandrake Linux to OS X. However, most of my clients are running Windows, whether accessing Server 2003 via thin clients or as standalone XP and Vista machines. Sure, OS X is brilliantly elegant and Linux is infinitely tweakable (and FREE!), but Windows definitely gets the job done in most cases in ways that are familiar and easy to support.
As a result, although I'm looking at a variety of alternatives and spend a fair amount of time thinking about a non-Windows future (for a variety of reasons that the constant reader will understand), I'm in no hurry to abandon Windows. At the very least, I'm 2 years from the tech refresh that would replace 100 lab computers (thin clients and high-end workstations), all of which run Windows.
So now, Windows has released source code for its proof-of-concept Singularity OS, built from scratch and completely not Windows. Interesting. While fellow blogger, Mary Jo Foley, notes that upcoming versions of Singularity will be designed to test technologies around multicore processing, it also seems as though an OS kernel designed to run a copy per core could also lend itself to use in single-core ultra-mobile PCs.
Could Singularity be an answer for products like the Classmate and XO PCs instead of a basically deprecated OS (the clean XP image that Microsoft is currently pushing for these products)? Although I'm the first to advocate for open source solutions, especially in these micro-laptops that will represent many kids' first exposure to computing, there is something to be said for development and support efforts with the backing of a multi-billion dollar corporation.
Singularity won't push Linux out of this market; it's only a proof-of-concept and Linux has gained remarkable traction here. However, if Microsoft could really get it right by starting from scratch with a flexible and easily-customized kernel that could be adapted to low-power environments like the XO as easily as it could scale up to massively multi-core applications, then we'd certainly owe it some consideration.
What would Singularity need to make it competitive in this space (i.e., low-power, low-cost computing for a variety of educational applications)? Obviously, a small footprint would be a must. As Ms. Foley notes,
Singularity also is a vehicle for demonstrated that software-isolated processes (SIPs) result in less performance overhead than the hardware-protection schemes commonly used by most operating systems developed over the last 30 to 40 years. Singularity’s developers believe that SIPs can result in as much as 30 percent savings in performance.
Security, without the need for the overhead of anti-malware software (as can be achieved using *nix-based systems) would also be necessary to ensure reasonable performance from XO-style computers.
Transparency of code, allowing for regional customizations and ports to a variety of hardware, would allow local groups in countries around the world to get what they need from Singularity and deliver appropriate applications to their students would also be a top priority on my wish list.
Now wait a minute. I've just described the current state of Linux development as it's been deployed on the XO, Classmate, Eee, and Cloudbook. What can Microsoft bring to the table besides strong arm tactics? It can bring dollars, and a lot of them. Again, if they do it right, they can push Singularity (or its offspring) to new levels of flexibility and usability by dumping more money and programming manpower into it than the open source community could touch. While this isn't necessarily a desirable outcome, Microsoft does have an opportunity here to right some wrongs and address some significant needs in the educational market.
I'm not holding my breath, though. Windows serves my needs in a lot of ways, but when it comes time to look at low-cost 1:1 in my district, I have a distinct feeling that Linux will be on my students' laps.