Hi, Am 25.10.2006 um 14:31 schrieb Joshua Tauberer:
> Alessandro Bottoni wrote: >> I'm sure you know MS Singularity (http://research.microsoft.com/os/ >> singularity/). >> >> Singularity is something like a kernel (similar to Mach) + a >> virtual machine >> (similar to Mono/.NET VM) + a language (similar to C# but with >> special >> contract-programming and multithreading features). (Yes, it is >> much more than >> this but... ignore that, for the moment). >> >> I wonder if anybody has even thought to re-create something like >> Singularity >> starting from Mono (or GNU.NET). I mean, something like this: >> 1) a kernel (Linux, Mach, a "managed code" kernel written in C#, >> whatever...) >> 2) the Mono virtual machine (maybe with support for "channels" and >> other stuff) > > I don't know how relevant it is -- for this thread and the other > about a > C# operating system -- but I was playing around with writing a managed > runtime last month, that is, a .NET VM written in C#. Some info here: > > http://razor.occams.info/blog/?p=41 > > And code here: > > http://razor.occams.info/code/repo/?action=view&url=/mmr/ > > Though it can run *very* basic .NET programs, it's many man-months > away > from being able to run anything useful, mostly due to the need to > reimplement a good chunk of the class library to fit with the VM. > > I think anyone interested in doing an OS or something low-level like > that ought to consider the huge amount of effort that would be > needed to > re-create the base class library.... Some months ago there was an admittedly short discussion on the list of Mono's future in the case of a managed Microsoft OS (see the archive) where I mentioned Singularity and pointed out the possibility to port Mono to such an OS in order to run any CLI we like - that would come close to Joshua's managed runtime project. (however I still don't believe Microsoft would put Singulary on the market as such, it's a research project) Concerning the thought of a managed OS, wouldn't that either mean you'd have to write it in assembler and thus architecture-specific or you'd need CLI-specific hardware? I thought I heard for Java there was some research to create a processor that could directly execute Java bytecode, don't have any links though. Anyway, there are a number of both experimental and commercial operating systems out there, each with their unique pros and cons - even if Novell as a widely known company said its OS would in a future version be fully managed, then that would still mean that they would have to "re-invent" everything from the ground up (resource management, threading etc.) just like any other OS (e.g. Linux) and even if they did and supplied drivers for virtually every device as well as a set of apps then that would still not assure a commercial success in the sense of a large user base. (think BeOS) Same argument as for Singularity. However, this is in no way intended to stop you from proving it can be done. :-) Andreas _______________________________________________ Mono-list maillist - [email protected] http://lists.ximian.com/mailman/listinfo/mono-list
