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.
CPU: x86_64
RAM: >128MB
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
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.
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
We will be grateful if you help us
Apache License, Version 2.0