es-operating-system


ES operating system


The source code repositories for esidl and escudo are now on Github!

https://github.com/esrille


ES operating system is a new pure component operating system currently being developed mainly at Esrille. ES operating system project was originally started by Shiki Okasaka and Kyu Ueno at Nintendo largely affected by Rob Pike's "Systems Software Research is Irrelevant" talk in 2000. ES operating system was released under an open source license from Nintendo at SourceForge.JP in 2006. The source code repository of the ES operating system was moved from SourceForge.JP to Google Code in 2008 under the copyright of both Nintendo and Google in hope we can reach more people worldwide.

The project goals include but not limited to: * a pure component operating system kernel design and development * a new web browser design and development including a new CSS/HTML rendering engine * a Web IDL based component object binding runtime implementation for C++, ECMAScript, and other programming languages * a TCP/IP stack implementation based on design pattern

As we realize ECMAScript/Web based applications are becoming very important and useful, ES operating system has been designed to make the Web Apps APIs as the primary operating system interfaces, and to be an extensible operating system by supporting the component technology from the operating system kernel level as originally proposed for the future direction by Noah Mendelsohn in "Operating Systems for Component Software Environments" in 1997.

In ES operating system, every system API is defined in Web IDL, a new interface definition language used for defining APIs for Web Apps including HTML5, Web GL, and so forth. New APIs defined in Web IDL can be dynamically added to the system by loading the corresponding new software components running at the user level. With a better security model in the operating system, we should be able to bring better extensibility to the computers and devices connected to the Internet. For example, a web browser could be implemented as a seamless composition of various software components from various companies, communities, and organizations. As the Web is becoming the new platform replacing the traditional operating systems, we believe we will need an extensible operating system like we're studying with ES operating system. A unique part in ES operating system is we are using Web IDL to generate interfaces for C++ not only for ECMAScript and Java, and the software components written in C++ can be seamlessly controlled from ECMAScript.

Introduction

  • Introduction
  • Using the ES operating system
  • Using Escort Web Browser (Last updated on: 17 February 2013)

How-tos

  • Quick Developer Setup
    • Setting up the development environment
    • Building the support libraries
    • Building the ES operating system
    • ES Web browser for Linux (Last updated on: 26 June 2012)
  • Developing ES on a physical machine
  • Requesting code review (for GSoC students and contributors)

C++ DOM API

  • Web IDL - C++11 binding
  • C++ DOM API Introduction
  • Web IDL - C++ binding

References

Design Documents

Presentation

Google Summer of Code™ 2009

ES operating system has participated in the Google Summer of Code™ 2009. And three students successfully passed the final evaluation. Our ideas list for GSoC 2009 is here.

Google Summer of Code™ 2008

ES operating system has participated in the Google Summer of Code™ 2008. And two students successfully passed the final evaluation. Our ideas list for GSoC 2008 is here.

Contact Us

Please feel free to post your questions, suggestions, etc., on any topics related to the ES operating system to our discussion group. We always welcome your input.

Project Information

Labels:
OS JavaScript WebIDL Google Browser Kernel HTML CSS