forked from Dentrax/DentOS
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathREADME
44 lines (32 loc) · 1.06 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
DentOS Kernel
============
My first experimental Stand-alone 32-bit Kernel with Bootloader, written in;
- x86 AT&T Assembly
- Freestanding C
- Rust (Soon)
...with features;
- 16-bit Bootloader
- 32-bit Protected Mode
- CPU ISR's IRQ's
- Assembly level inline function calls
- Primitive data types: ``bool``, ``uint8_t`` and other sizes
- Colorful printing
- ``printf()`` function
In order to build the OS image file, use ``make os-image.bin V=1``
To run the kernel on the ``qemu-system-x86_64``, use ``make run``
To clean project build files, use ``make clean``
SS: https://prnt.sc/mw1tiz
CI: https://travis-ci.org/Dentrax/DentOS
TOOLS:
- GCC (for native building)
- LD (for linking Bootloader)
TODO:
- [KERNEL] Add ``scanf()`` function
- [KERNEL] Add ``getch`` function
- [KERNEL] Add keyboard IO features
- [KERNEL] Add interrupt descriptor table
- [KERNEL] Add global descriptor table
- [KERNEL] Add timer interrupts
- [KERNEL] Add 64 bit support
- [USR] Add Rust binding betweeb kernel and usr level
The DentOS Kernel is provided under: GNU GPLv3