Giter Site home page Giter Site logo

yonglehou / mosa-project Goto Github PK

View Code? Open in Web Editor NEW

This project forked from mosa/mosa-project

0.0 1.0 0.0 76.03 MB

Managed Operating System Alliance Project

Home Page: https://github.com/mosa/MOSA-Project/wiki

License: Other

Batchfile 0.05% Shell 0.01% C# 99.71% Smalltalk 0.03% XSLT 0.20%

mosa-project's Introduction

Build status License Issues Stars Forks Gitter Chat

Issue Stats Issue Stats

Bountysource

MOSA is an open source software project aiming to create a high quality, cross-platform, optimizing .NET compiler designed specifically to support a managed operating system based on the .NET framework.

The MOSA project consists of:

  • Compiler - a high quality, multithreaded, cross-platform, optimizing .NET compiler.
  • Kernel - a small, micro-kernel operating system.
  • Device Drivers Framework - a modular, device drivers framework and device drivers.

Read our Frequently Asked Questions for more information about this project.

Getting Started

Download

The MOSA project is available as a zip download or via git:

git clone https://github.com/mosa/MOSA-Project.git

Prerequisites

You will also need the following prerequisites:

Windows

Install any Visual Studio 2013 edition from Microsoft, including the free Express Edition.

Linux

Install Mono and Qemu.

sudo apt-get -y install mono-devel qemu

Mac

Install Mono and Qemu.

Running

Windows

Double click on the "Compile.bat" script in the root directory to compile all the tools, sample kernels, and demos.

Next double click on the "Launcher.bat" script, which will bring up the MOSA Launcher tool (screenshot below) that can:

  • Compile the operating system
  • Create a virtual disk image, with the compiled binary and boot loader
  • Launch a virtual machine instance (QEMU by default)

By default, the CoolWorld operating system demo is pre-selected. Click the "Compiler and Emulator" button to compile and launch the demo.

MOSA Launcher

MOSA CoolWorld Demo

Current Status

The MOSA compiler supports:

  • almost all non-object oriented code (arithmetic, assignment, bitwise logic, bitwise shifts, boolean logic, conditional evaluation, equality testing, calling functions, increment and decrement, member selection, object size, order relations, reference and dereference, sequencing, and subexpression grouping),
  • basic object oriented code (such as new operator, member methods and virtual methods),
  • basic type conversion (implicit type and explicit type conversion on primitives types and "is" and "as" operators),
  • generic code (example, List), and
  • delegates (static and non-static) and with optional parameters.
  • exception handling (try, finally, and catch code blocks)

Join the Discussion

Join us on Gitter chat. This is the most interactive way to connect to MOSA's development team.

License

MOSA is licensed under the New BSD License.

mosa-project's People

Contributors

tgiphil avatar kintaro avatar charsleysa avatar kiootic avatar grover avatar tea avatar arakis avatar mincus avatar pdelprat avatar dasblub avatar edgars-ozols avatar mosa-project avatar marcelocaetano avatar shanebrown99 avatar cathode avatar davidleon avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.