Microsoft Singularity Now "Open" Source
Alex_Ionescu writes "Microsoft's Singularity operating system (covered previously by Slashdot) is now open to the public for download, under a typical Microsoft academic, non-commercial license. Inside is a fully compilable and bootable version of what could be the basis for the future of Windows, or maybe simply an experiment to demonstrate .NET's capabilities. Singularity, if you'll recall, has gained wide interest from researchers and users alike, by claiming to be a fully managed code kernel (with managed code drivers and applications as well), something that would finally revolutionize the operating system research arena. The project is available on CodePlex."
There's a list of the applications here
No IE, but it has Pong!
Managed code! Look at that! Microsoft has managed to prove...
:-/
:-)
What OSS developers already proved years ago.
Actually, I'm still pretty happy about this. Regardless of whether Microsoft was first or not, they're going to manage to market the concept far better than a conglomeration of OSS developers ever could. (Sorry, guys!) If everything goes well, perhaps the public impression of managed code being "nothing but an interpreter" can finally get turned around and Computer Science can keep moving forward.
Javascript + Nintendo DSi = DSiCade
Ars Technica says it all.
This OS doesn't really run any applications at all. It's not intended for commercial use, and will not be the next Windows. All it is, is a test bed for future technologies. Think of it as an IT equivalent of a concept car. It doesn't really run, but it's nifty to look at to get ideas for future projects.
MSFT never intends to turn Singularity into a marketable product. It's simply a RESEARCH project, a breeding and proving ground for advanced O/S concepts. If they learn valuable things from the project -- like SIP, for example -- those ideas might find their way into the Windows code base in the future.
http://opensource.org/docs/osd
also, STFU when you clearly have no clue.
http://opensource.org/docs/osd
also, repost is repost
your right. Now compare Minix and Linux. One has a license for you too look at the source code and the other one allows you to actually use the source code and ideas in it.
It's not Open Source until you can use it. BSD, MIT, Apache, GPL, allow you to actually use the code.
i thought once I was found, but it was only a dream.
I'm not an expert on the subject, and everything I know I read just this morning (I hadn't even heard of Singularity before this slashdot article), but it appears as if everything runs inside of a SIP (software isolation process) which runs in ring 0 of the kernel's address space. Thus the creation of SIPs is extremely cheap, even less overhead than hardware enforced protection domains.
You're right, this will not eliminate bugs. But it will prevent applications from "stepping on each other's toes". SIPs can not modify their own code or write to other SIP's address space. I don't see this as so much of an abstraction layer as just a different way for the kernel to manage processes and address space.
Besides, every kernel implements abstraction layers anyway. Heck, you could even consider the kernel to be one big abstraction layer to the hardware. So abstraction layer does not always equate to "more overhead". And this isn't an abstraction layer on top of an existing high-level system. This is an entirely new kernel that implements processes and memory management in a completely different way.
This is not open source. It's just another "you can play with it but don't you dare do anything real" license.
Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
"open source = source code is made available"
http://www.opensource.org/
They may have coinded tghe term, they certainly promoted it and made it polular. They disagree.
all the best,
drew
http://zotzbro.blogspot.com/
FreeMusicPush If you want to see more Free Music made, listen to Free
From the ars technica link below :
QUOTE:"Although the Singularity research development kit (RDK) is available for download, it is not technically open source. The source code is distributed under the terms of the restrictive Microsoft Research License rather than one of Microsoft's two OSI-approved open source licenses."
ars technica
To be "open source" you need a tad little bit more than having the source readable in plain text, IMHO.
C. Sagan : A demon haunted world:
http://www.amazon.com/gp/product/0345409469/
visit randi.org
Have you ever seen an obfuscator? Run your code through one of those and see how easily reversible it is.
www.timcoleman.com is a total waste of your time. Never go there.
My understanding is that the security model is actually pretty old, and has been around since at least 1979.
Instead, use another term when you mean "you can read the source code". I suggest "source available".
- David A. Wheeler (see my Secure Programming HOWTO)
I would point out that there are a couple other microkernels out there that have reached that point. The main one I'm familiar with is BeOS, which is currently being reborn in Haiku.
In other words, Microsoft finally discovers Erlang.
While I wouldn't go so far as to say that the guys at Redmond lost the habit of inventing anything new a long time ago, the above concepts have been in industrial use in Erlang-powered PTT exchanges since the dawn of time.
"The question of whether machines can think is no more interesting than [] whether submarines can swim" - Dijkstra
No one said they were. But as the OSI definition is the longest standing and it is a definition that really has ever been challenged except by proponents of close software, the attempt to redefine results in confusion as the the real meaning of open source and foss and the GPL. It is like working away at the chink in the armor. Sooner or later it'll bust unless you have knowledgeable folks repairing it.
OSI is not some random organization that popped up and created a website. Proponents of open source are not fascists. There's no religious ferver here. The individuals are simply protecting their homes. This is where they live when it comes to their community spirit. Soon you'll be redefining their definitions of terroristic toward Microsoft. It is insanely stupid to do so but once you attack and the open source folks defend sooner or later the battle will get much more heated and we'll begin to see terms like terrorism used in software because one party wants to ensure that their homeland is safe.
This is not an open source project and doesn't meet the established definition, one which has been long standing for years and has not been challenged except by a company that has stated they are hell bent on destroying "open source" and is a convicted monopolist. We aren't going to get a court ruling on the term "open source" and those that established it are the ones to define it. Just as I write the book I have the right to name it. BTW, did the court give Websters the right to define words? Or Blacks? I think it is that these were the first entrants and they have been accepted for years. They didn't form some world wide standards organization to create their dictionaries (legal the Blacks law dictionary, or Websters for the English language).
You can't redefine it because you disagree with the meaning given to it by those that invented it.
You can lead a man with reason but you can't make him think.
With verifiable managed code (i.e. the one that doesn't use pointers and such), it is possible to statically prove that it will never access the address space of another process. Once you've done that, you don't need to isolate such processes from each other. This property is already used in .NET with something that MS has called "AppDomains", which allow you to isolate different parts of a single managed process from each other. I would imagine that it can also be useful in a kernel.
Managed Code is code intended for a virtual machine (like MS's CLR or Sun's JVM) that abstracts the hardware instructions away. Instead, the instruction set for the virtual machine is used. The Virtual Machine will provide "devices" and "memory" in a (hopefully) safe and portable way and take care of all of the dirty hardware business itself. Some VM's will actually take the VM instruction and turn it into actual hardware instructions as it's being executed (JIT) for speed, but that's not necessary.
Which isn't to say that Managed Code is a new thing: The USCD-Pascal p-code machine is remembered fondly by many, and the Zork games ran on a Z-Machine.
Interpreted code is a little stickier because it's been around a lot longer and has picked up some additional meanings. It can mean anything from the "Managed Code" described above to parsing (and possibly re-parsing) text lines of BASIC as they're run to process them in a giant state machine which "runs" the program.
Usually, interpreted code implies that there's no abstracted fully virtual machine underneath running the code, but possibly just a big jump-table pointing at native assembly-language (hand-coded or compiled) routines. Perl and Microsoft BASIC (basis of many of the old 8-bit BASICs) are two examples of interpreted code.
Get off my lawn.
Singularity runs as a collection of Software Isolated Processes (SIPs) that (normally) run in a single address space. Each SIP appears to the kernel as a thread. SIPs can have multiple threads. SIPs can provide their own memory management and thread management. SIPs communicate through a shared-memory message passing interface where precisely one SIP has ownership of a shared memory block at any given time.