Inside Nintendo's ES Open-Source Operating System
Operating system-oriented website OSNews
reports about an open-source operating system from Nintendo, titled ES. The website
for the OS reveals that it was made public on August 30, 2006, though it only hit version 0.1 on October 11 of this year.
According to OSNews, the first English-language site to pick up on the system, ES "runs natively on x86 (and qemu of course), kernel is written in C++, uses an ECMAScript interpreter for all of the userland, uses Cairo for graphics, and even has a port of [programming language] Squeak
The OS is a 'research system,' meaning that there is no specific application for it at present, and is being used for experimentation. However, a story commenter
on Gamedev.net theorizes: that it could be the framework for something like Microsoft's XNA, and is certainly expandable to platforms other than PC with a little work.
The commenter, 'ravyne2001' postulates: "Officially, it's simply a "research operating system." Something Nintendo is toying with and which may or may not lead to an eventual release in much the same way that Nintendo has always been in constant hardware development..."
"The working theory" he continues, "seems to be that this OS might be the early stages of something similar to Microsoft's XNA -- basically a sandbox environment which offers hardware acceleration and a userland based on some form of VM execution, ECMAscript in this instance. Although the current build is against X86, it could be ported over to PPC to run on the Wii, for instance."
For now, the operating system is laid bare to the public, which OSNews commentors seem to think is designed with broad adoption and simplicity in mind.
Though all documentation - including a full technical paper
[PDF] on the project is in Japanese, all necessary source code is downloadable. An official English-language abstract regarding the project is as follows:
"We propose an extensible component operating system architecture in which an operating system kernel uses reflection to process C++ pure virtual function based system calls and upcalls to provide a unified programming environment for application, server, and kernel development. We found that we could even develop file subsystems and a TCP/IP protocol stack on an existing operating system based on this architecture."
The official ES website
is being updated regularly, with the Squeak port implemented only days ago.