From mboxrd@z Thu Jan 1 00:00:00 1970 Message-ID: <015001c3b913$0976be80$220101c8@MICHAEL> From: "Michael Jeffrey" To: <9fans@cse.psu.edu> References: Subject: Re: [9fans] ... from Inferno... MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-2" Content-Transfer-Encoding: 7bit Date: Tue, 2 Dec 2003 12:29:50 -0800 Topicbox-Message-UUID: 9a3ab0f0-eacc-11e9-9e20-41e7f4b1d025 > Inferno is to Plan 9 as Java is to Windoze ;-) as I understand it > Plan 9 is OS, but inferno is a layer above OS that runs on that (or other[?]) OS. This is a common misconception. Inferno is an operating system and, like Plan 9 and most other operating systems, can run as the native OS on bare hardware. A fairly wide range of architectures are supported, have a look at http://www.vitanuova.com/solutions/embedded/index.html. Unlike other OSes however, Inferno can also run as an application on top of an existing OS; which is what you referred to above. Inferno in this case does not manage the hardware directly but through services provided by the underlying OS. The important thing however is that in both cases system resources are presented in precisely the same way irrespective of whether Inferno is managing the hardware or running on top of another platform. The way resources are represented (namespaces) is shared with Plan 9 and the protocol for communication with resources is also shared. Plan 9 came first. To take full advantage of Inferno's portability across hardware architectures and OS platforms you, ideally, would like portable applications. The Limbo language within Inferno provides this application portability. Limbo is a concurrent, modular programming language that has a C-like syntax. The byte code representing a compiled Limbo program is portable to any platform on which Inferno is running. If you like, Limbo is to Inferno what Java would have been to JavaOS if it had existed.