Linked by Andrew Youll on Thu 11th Aug 2005 16:27 UTC, submitted by Lazarus
Windows Singularity is a research project at Microsoft to write an OS using managed code. Although it will probably never be seen out in the wild, it incorporates some interesting ideas nonetheless. Read about it here and here (ppt).
Order by: Score:
Cool
by Anonymous on Thu 11th Aug 2005 17:10 UTC
Anonymous
Member since:
---

Looks a bit like JNode. But some features of MSIL such as value types make it more suited to low level development. Could be interesting.

But unfortunately only very few of the cool things they research at MS research make it into their products. It is almost like Xerox :-)

Reply Score: 3

Very Cool
by Anonymous on Thu 11th Aug 2005 17:48 UTC
Anonymous
Member since:
---

I would like to know more about the compiling the "MSIL direct to metal" as mentioned here.

Very cool project...

Reply Score: 0

RE: Very Cool
by Anonymous on Thu 11th Aug 2005 18:12 UTC in reply to "Very Cool"
Anonymous Member since:
---

At Channel 9, you can find a video of an interview with the researchers of Singularity:
http://channel9.msdn.com/ShowPost.aspx?PostID=69063

Reply Score: 0

RE[2]: Very Cool
by Anonymous on Thu 11th Aug 2005 18:14 UTC in reply to "RE: Very Cool"
Anonymous Member since:
---

I'm sorry, the right URL for that video is:
http://channel9.msdn.com/ShowPost.aspx?PostID=68302

Reply Score: 0

Hardware requirements?
by Anonymous on Thu 11th Aug 2005 19:23 UTC
Anonymous
Member since:
---

Quad core 10GHz Pentium whatever, 16GB RAM, 500GB HD.

Hardware vendors are gonna love it...

:p

Reply Score: 0

RE: Hardware requirements?
by Celerate on Fri 12th Aug 2005 01:58 UTC in reply to "Hardware requirements?"
Celerate Member since:
2005-06-29

Actually interpreted languages usually have much smaller binaries, java for example can have fairly large programs that are smaller than a Mb. While the interpreter will take up about 50 mb of space, the resulting small binaries will quickly result in a lot of space saved.

Reply Score: 1

hmmm
by poundsmack on Thu 11th Aug 2005 21:40 UTC
poundsmack
Member since:
2005-07-13

this could be a very viable solution. i hope this sees the light of day.

Reply Score: 1

WTF?
by segedunum on Thu 11th Aug 2005 21:43 UTC
segedunum
Member since:
2005-07-06

What the hell is the point of running an OS as a machine within a machine?!!!

Reply Score: 1

Interesting, but...
by orestes on Thu 11th Aug 2005 23:19 UTC
orestes
Member since:
2005-07-06

Seems like Inferno did the whole managed code OS thing a long time ago.

Reply Score: 1

what is managed code?
by Anonymous on Thu 11th Aug 2005 23:26 UTC
Anonymous
Member since:
---

what is managed code?

Reply Score: 0

RE: what is managed code?
by Lazarus on Fri 12th Aug 2005 00:07 UTC in reply to "what is managed code?"
Lazarus Member since:
2005-08-10
managed code means JIT?
by Anonymous on Fri 12th Aug 2005 00:31 UTC
Anonymous
Member since:
---

there's a reason for managed code always being associated with JIT?

why a program has to be recompiled every time i launch it?

Reply Score: 0

RE: managed code means JIT?
by Anonymous on Fri 12th Aug 2005 09:25 UTC in reply to "managed code means JIT?"
Anonymous Member since:
---

> there's a reason for managed code always being associated with JIT?

portability, compatibility, security, efficiency (what?)...

> why a program has to be recompiled every time i launch it?

why not? oh wait... you are launching it several hundred times per second

Reply Score: 0

RE: Hardware requirements?
by Anonymous on Fri 12th Aug 2005 05:57 UTC
Anonymous
Member since:
---

I have to agree with Celerate here. The RAM and hard drive requirements for an interpreted OS should be significantly less than an equivalent compiled OS. Anonymous (IP: 64.119.120.---) might be right about needing a 10 Ghz cpu though. It all depends upon how the layers of abstraction are structured.

Reply Score: 0

RE[2]: Hardware requirements?
by Anonymous on Fri 12th Aug 2005 08:51 UTC in reply to "RE: Hardware requirements?"
Anonymous Member since:
---

managed code is not interpreted code

Reply Score: 0

...
by Anonymous on Fri 12th Aug 2005 10:42 UTC
Anonymous
Member since:
---

If you write the OS, you could implement a cache for the final output of the JIT. Of course no application may access it.

Reply Score: 0

RE: ...
by Anonymous on Sat 13th Aug 2005 05:08 UTC in reply to "..."
Anonymous Member since:
---

When MSIL programs are run and JIT'd the resulting native code is cached, and on subsequest runs, the loading of the cached components gets optimized which ultimately results in higher performance.

Having said that, I've been playing around with Microsoft's Rotor code on FreeBSD, and the first run is *always* painful. It does get better.

If for example, Windows were ever completely rewritten using managed code, Microsoft would be shipping it already JIT'd, and even if they didn't, by the time they get around to doing such a rewrite, the processors of the day would be mighty damned fast indeed.

What can I say? I'm a dreamer ;^)

Reply Score: 0

release shedules
by Anonymous on Fri 12th Aug 2005 12:48 UTC
Anonymous
Member since:
---

I guess it doesn't yet iclude handling release shedules?

Reply Score: 0