This commit is contained in:
parent
21d093b1fa
commit
f8dc7c62e2
@ -7,12 +7,11 @@ A very basic POSIX-based operating system for personal computers, written in C++
|
|||||||
## Features
|
## Features
|
||||||
- x86_64-compatible lightweight [kernel](kernel/).
|
- x86_64-compatible lightweight [kernel](kernel/).
|
||||||
- Preemptive multitasking, with a round-robin [scheduler](kernel/src/thread/) that can switch between tasks.
|
- Preemptive multitasking, with a round-robin [scheduler](kernel/src/thread/) that can switch between tasks.
|
||||||
- [Virtual file system](kernel/src/fs/) with a simple but working [tmpfs](kernel/src/fs/tmpfs/) populated from the initial ramdisk.
|
- [Virtual file system](kernel/src/fs/) with a simple [tmpfs](kernel/src/fs/tmpfs/) and read-only [ext2](kernel/src/fs/ext2/) support.
|
||||||
- Can [load ELF programs](kernel/src/thread/ELF.cpp) from the file system as userspace tasks.
|
- Can [load ELF programs](kernel/src/thread/ELF.cpp) from the file system as userspace tasks.
|
||||||
- [System call](kernel/src/sys/) interface and [C Library](libc/), aiming to be mostly POSIX-compatible.
|
- [System call](kernel/src/sys/) interface and [C Library](libc/), aiming to be mostly POSIX-compatible.
|
||||||
- Designed to be [portable](kernel/src/arch), no need to be restricted to x86_64.
|
- Designed to be [portable](kernel/src/arch), no need to be restricted to x86_64.
|
||||||
- Fully [UTF-8 aware](libluna/include/luna/Utf8.h), **everywhere**.
|
- Designed around [UTF-8](libluna/include/luna/Utf8.h).
|
||||||
- [Thread](libluna/include/luna/Atomic.h) [safety](kernel/src/thread/Spinlock.h) (supposedly).
|
|
||||||
- Environment-agnostic [utility library](libluna/), which can be used in both kernel and userspace.
|
- Environment-agnostic [utility library](libluna/), which can be used in both kernel and userspace.
|
||||||
- Return-oriented [error propagation](libluna/include/luna/Result.h), inspired by Rust and SerenityOS.
|
- Return-oriented [error propagation](libluna/include/luna/Result.h), inspired by Rust and SerenityOS.
|
||||||
- Build system uses [CMake](CMakeLists.txt).
|
- Build system uses [CMake](CMakeLists.txt).
|
||||||
|
Loading…
Reference in New Issue
Block a user