Greetings, habrovchane!
Do you think it is possible to create a full-fledged operating system in the programming language JavaScript, from which you can boot?
The correct answer is possible!
Today I want to tell you about the JsOS project.
JsOS is an operating system in javascript.
Initially, the project was created on the basis of the JS library and the runtime.js core, but after the latter was closed, it became an independent project.
Currently, the project is under development , so any input is welcome.
Consider the basic structure of the project.
JsOS consists of two parts (levels):
The low level (core) consists of parts written in C ++ and Assembler. Used for basic loading and transferring control to a high level. Also, the kernel provides an API for working with the hardware.
Let's take a closer look at the high-level structure:
core
โ ( (kernel) ), ;driver
โ API ;apps
โ , install;
- .
- JavaScript Repl (, #).
- PS/2 .
- PCSpeaker.
- Virtio (QEMU) Realtek (rtl8139) .
- ATA .
- (FAT32).
- VGA BGA.
- Node.js API ( os, fs, ..).
- ASCII (UTF-8 ).
- - ASCII .
- PCI .
2 :
2, รณ .
Node.js QEMU.
# 1. :
git clone https://github.com/JsOS-Team/JsOS
# 2. :
cd JsOS
# 3. :
npm i
# 4. JsOS-CLI:
sudo npm i -g jsos-cli
# 5. :
jsos start
!
โ QEMU, JsOS.
โ issue .
, help
.
, help
:
install _
.
js/apps.
, screenfetch Linux , .
install screenfetch
, โ start screenfetch
.
, :
start brainfuck hw
;install
start
.
, , ( graphics-mode pseudo-graphics), , , USB ( usb).
:
Source: https://habr.com/ru/post/353524/
All Articles