Skip to content
/ JsOS Public
forked from runtimejs/runtime

Операционная система на JavaScript | Operating system written in JavaScript

License

Notifications You must be signed in to change notification settings

JsOS-Team/JsOS

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
Apr 18, 2018
Oct 13, 2017
Oct 13, 2017
Feb 14, 2015
Nov 1, 2015
Jul 25, 2016
Aug 4, 2018
Jul 7, 2016
Nov 18, 2021
Mar 2, 2018
Oct 17, 2017
Aug 4, 2018
Jul 18, 2015
Aug 20, 2014
Dec 20, 2017
Aug 8, 2021
Mar 2, 2018
Mar 28, 2016
Mar 2, 2018
Sep 30, 2017
Oct 14, 2017
Oct 15, 2017
Dec 3, 2017
Jun 17, 2014
Oct 10, 2017
Apr 16, 2018
Oct 13, 2017
Oct 10, 2017
Apr 21, 2018
Aug 6, 2018
Apr 21, 2018
Jun 21, 2018
Dec 13, 2017
Apr 21, 2018
Apr 21, 2018

Repository files navigation

JsOS

JsOS is an open-source operating system (unikernel) written in JavaScript and based on runtime.js.

It's built on V8 JavaScript engine and uses event-driven and non-blocking I/O model inspired by Node.js. At the moment KVM is the only supported hypervisor.

It tries to be compatible with npm module ecosystem and supports some of the Node.js API.

WARNING: project is in development and not ready for production use.

Documentation in progress

Ready ISO image

Download

System requirements

CPU: x86_64
RAM: >128MB

Installation

First thing is the command line tool jsos-cli, it will add jsos command to the shell. Type jsos --help to get full usage help.

sudo npm i -g jsos-cli

Make sure QEMU installed, it enables running applications locally.

brew install qemu           # OSX
sudo apt-get install qemu   # Ubuntu

Getting Started

Clone this repository and install dependencies:

git clone https://github.com/JsOS-Team/JsOS.git
cd JsOS
npm i

Run project locally in QEMU (in the root of the git folder):

jsos start

That's it, operating system should start.

How does it work?

There are two main components: operating system kernel and a JavaScript code.

The kernel is written in C++ and manages low-level resources like CPU and memory, runs JavaScript using embedded V8 engine. Library drives the entire system and manages hardware devices (usually virtualized by hypervisor). Some low-level code written in JS and compiled.

License

I wanna help!

We will be grateful if you help us

Description of folders


Apache License, Version 2.0

Packages

No packages published

Languages

  • C++ 79.8%
  • JavaScript 18.7%
  • Assembly 0.9%
  • Python 0.2%
  • CMake 0.2%
  • C 0.1%
  • Other 0.1%