Showing posts with label OS. Show all posts
Showing posts with label OS. Show all posts
Wednesday, March 5, 2008
Singularity source code
A while back I wrote a post about Microsofts expermental OS built using an extension of C# . Now they have suprised us with the release of a RDK which includes source code, build tools, test suites, design notes, and other background materials. Cool ;-)
Labels:
Microsoft,
Open Source,
OS
Saturday, January 26, 2008
Does Windows=Evolution?

Windows gets a lot of flack for being this monstrous OS that is just constantly being patched and updated with security fixs and feature updates. But maybe this is the natural way of building a rebust and agile system. I come across this reliazation after reading this very good article over at SEED called Algorithmic Inelegance.
In flies, those paradigmatic models of genetics and development, that process of elaboration has been carried to an extreme. Any algorithmic elegance in the ancestral arthropod has been lost in favor of detailed, segment-by-segment hardwiring of the specification of the body plan. If a fly were software, it's software that has been patched and patched, and patches have been put on patches, until almost all vestiges of the original code have been obscured in the tweaks. It's the antithesis of planning and design—it's ad hoc co-option and opportunistic incorporation of chance enhancements. It's evolution.
Does this sound a little familar?
Now I'm not saying that Windows is totally devoid of direction.
Of course some would disagree with that. But the symalarties with evolution is scary.
Labels:
Microsoft,
OS,
Programming
Sunday, July 29, 2007
Singularity v1.0
Looks like Singularity has reached the first release stage.
This is a project that Microsoft has been working on for a while, since 2003.
It’s basically a research OS prototype answering the question, "what if you built an OS with dependability and trustworthiness at its core from the ground up".
Here are some of the items the Singularity team is working on.
For example, Singularity uses type-safe languages and an abstract instruction set to enable what we call Software Isolated Processes (SIPs). SIPs provide the strong isolation guarantees of OS processes (isolated object space, separate GCs, separate runtimes) without the overhead of hardware-enforced protection domains. In the current Singularity prototype SIPs are extremely cheap; they run in ring 0 in the kernel’s address space.
I think the best thing about this new OS is the SIPs (Software Isolated Process).
Every program, device and system extension gets its own SIP.
Imagine this scenario...
You go out and buy some cheap ass web cam, printer or any external device and plug it into your machine. You install the drivers and restart your pc.....BAM!!! Blue Screen of Death

Your new cheap ass device just killed your OS because drivers are first class citizens and have hooks into the kernel. This scenario could not happen in a Singularity based system. In a Singularity based system the device would have its own memory space. There is no memory sharing or modifying of its own code. Every SIP gets its own data layouts, run-time system, and garbage collector. If this happened, in a Singularity based system, it would just die in its own little memory space and the rest of the OS would not be affected. Once the system finish booting, the OS can just tell you which devices have not booted and would you like to uninstall them.
I guess the other coolest part about this OS is the new language built for it called Sing#, which is an extension of C#. This language has first-class support for OS communication primitives as well as strong support for systems programming and code factoring.
Too get more info on Singularity check out their page... Singularity
Also here’s a really good white paper that goes into the specs of the whole system here.
This is a project that Microsoft has been working on for a while, since 2003.
It’s basically a research OS prototype answering the question, "what if you built an OS with dependability and trustworthiness at its core from the ground up".
Here are some of the items the Singularity team is working on.
For example, Singularity uses type-safe languages and an abstract instruction set to enable what we call Software Isolated Processes (SIPs). SIPs provide the strong isolation guarantees of OS processes (isolated object space, separate GCs, separate runtimes) without the overhead of hardware-enforced protection domains. In the current Singularity prototype SIPs are extremely cheap; they run in ring 0 in the kernel’s address space.
I think the best thing about this new OS is the SIPs (Software Isolated Process).
Every program, device and system extension gets its own SIP.
Imagine this scenario...
You go out and buy some cheap ass web cam, printer or any external device and plug it into your machine. You install the drivers and restart your pc.....BAM!!! Blue Screen of Death

Your new cheap ass device just killed your OS because drivers are first class citizens and have hooks into the kernel. This scenario could not happen in a Singularity based system. In a Singularity based system the device would have its own memory space. There is no memory sharing or modifying of its own code. Every SIP gets its own data layouts, run-time system, and garbage collector. If this happened, in a Singularity based system, it would just die in its own little memory space and the rest of the OS would not be affected. Once the system finish booting, the OS can just tell you which devices have not booted and would you like to uninstall them.
I guess the other coolest part about this OS is the new language built for it called Sing#, which is an extension of C#. This language has first-class support for OS communication primitives as well as strong support for systems programming and code factoring.
Too get more info on Singularity check out their page... Singularity
Also here’s a really good white paper that goes into the specs of the whole system here.
Labels:
Microsoft,
OS,
Programming
Subscribe to:
Posts (Atom)
