<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet type='text/xsl' href='http://chayce-za.spaces.live.com/mmm2008-07-24_12.50/rsspretty.aspx?rssquery=en-US;http%3a%2f%2fchayce-za.spaces.live.com%2fcategory%2fCosmos%2ffeed.rss' version='1.0'?><rss version="2.0" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:msn="http://schemas.microsoft.com/msn/spaces/2005/rss" xmlns:live="http://schemas.microsoft.com/live/spaces/2006/rss" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:cf="http://www.microsoft.com/schemas/rss/core/2005" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Jonathan Chayce Dickinson: Cosmos</title><description /><link>http://chayce-za.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&amp;_c=BlogPart&amp;partqs=catCosmos</link><language>en-US</language><pubDate>Tue, 27 May 2008 12:26:12 GMT</pubDate><lastBuildDate>Tue, 27 May 2008 12:26:12 GMT</lastBuildDate><generator>Microsoft Spaces v1.1</generator><docs>http://www.rssboard.org/rss-specification</docs><ttl>60</ttl><cf:parentRSS>http://chayce-za.spaces.live.com/blog/feed.rss</cf:parentRSS><live:type>blogcategory</live:type><live:identity><live:id>-5288244965216934031</live:id><live:alias>chayce-za</live:alias></live:identity><cf:listinfo><cf:group ns="http://schemas.microsoft.com/live/spaces/2006/rss" element="typelabel" label="Type" /><cf:group ns="http://schemas.microsoft.com/live/spaces/2006/rss" element="tag" label="Tag" /><cf:group element="category" label="Category" /><cf:sort element="pubDate" label="Date" data-type="date" default="true" /><cf:sort element="title" label="Title" data-type="string" /><cf:sort ns="http://purl.org/rss/1.0/modules/slash/" element="comments" label="Comments" data-type="number" /></cf:listinfo><item><title>Cosmos</title><link>http://chayce-za.spaces.live.com/Blog/cns!B69C6138F2FF2771!189.entry</link><description>&lt;p&gt;I'll make my first real post an introduction to Cosmos (which neither stands for something nor does not stand for anything). Cosmos is an open source operating system written in 100% pure home-grown C#. How do we do this? &lt;h2&gt;Il2Cpu&lt;/h2&gt; &lt;p&gt;IL2CPU is a compiler that compiles CIL (Common Intermediate Language) to ML (Machine Language). CIL can not be run directly on a CPU (currently, at least): but it is what C# compiles to. ML is what your CPU understands. &lt;p&gt;To get around the issue of needing ML at some point we inline assembler into C# (but it is strongly typed and all that amazing goodness). We can 'plug' methods in the corlib (.Net base library) and replace object and method implementations (this is a work in progress - a lot more needs to be done on the front of plugs). &lt;h2&gt;Why IL?&lt;/h2&gt; &lt;p&gt;So why are bothering to use IL in the first place? &lt;ol&gt; &lt;li&gt;Languages that compile directly to ML generally suck (that includes 'hardcore' C/C++), why?  &lt;ol&gt; &lt;li&gt;ML is unsafe - write buggy programs (which even the best programmers do) and you are opening security holes: just look at Windows.  &lt;li&gt;ML is complicated - yes, spend 10 years writing your operating system in C to prove your point.  &lt;li&gt;ML is only faster in academic situations - in very, very, very academic situations. Not to mention that up until now CIL has been benchmarked on an ML operating system.  &lt;li&gt;ML is static - you don't take advantage of MMX/SSE/3DNow automatically.&lt;/ol&gt; &lt;li&gt;It's a challenge.  &lt;li&gt;It's a philosophical leap.  &lt;li&gt;It's controversial.  &lt;ol&gt; &lt;li&gt;Everyone tells us that we can't and throws stones at us. Kinda like the nerd in elementary school who grows up and lands up being their boss.&lt;/ol&gt; &lt;li&gt;It will be easier in the long run.&lt;/ol&gt; &lt;h2&gt;What We Are Looking Forward To&lt;/h2&gt; &lt;p&gt;We are really looking forward to: &lt;ul&gt; &lt;li&gt;Strongly typed drivers  &lt;li&gt;Modular system  &lt;li&gt;Uber security  &lt;li&gt;Filesystem abstraction (read WinFS)&lt;/ul&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=-5288244965216934031&amp;page=RSS%3a+Cosmos&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=chayce-za.spaces.live.com&amp;amp;GT1=chayce-za"&gt;</description><comments>http://chayce-za.spaces.live.com/Blog/cns!B69C6138F2FF2771!189.entry#comment</comments><guid isPermaLink="true">http://chayce-za.spaces.live.com/Blog/cns!B69C6138F2FF2771!189.entry</guid><pubDate>Wed, 23 Jan 2008 18:53:39 GMT</pubDate><slash:comments>0</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://chayce-za.spaces.live.com/blog/cns!B69C6138F2FF2771!189/comments/feed.rss</wfw:commentRss><wfw:comment>http://chayce-za.spaces.live.com/Blog/cns!B69C6138F2FF2771!189.entry#comment</wfw:comment><dcterms:modified>2008-01-23T18:53:39Z</dcterms:modified></item></channel></rss>