JsOS-Team / JsOS

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

Home Page:https://vk.com/JsOSofficial

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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

About

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

https://vk.com/JsOSofficial

License:Apache License 2.0


Languages

Language:C++ 79.9%Language:JavaScript 18.7%Language:Assembly 0.9%Language:Python 0.2%Language:CMake 0.2%Language:C 0.1%Language:HTML 0.1%Language:Dockerfile 0.0%Language:Shell 0.0%