Ini adalah gudang resmi kernel Libertyos. Libertyos adalah sistem operasi, dibangun dengan karat, yaitu open-source, gratis untuk digunakan, dan terbuka untuk kontributor baru. Segala sesuatu di LOS, atau akan, dibangun dari awal. Saat ini, LOS mendukung sistem X86_64, dan dapat di -boot pada perangkat keras nyata, menggunakan bootloader sederhana. Sistem operasi ini sedang dikerjakan secara terus menerus, dan semua perubahan dicatat dalam file VersionHistory.md (di direktori root repositori ini). Jika Anda ingin melihat penjelasan yang lebih rinci tentang perubahan antar versi, Anda dapat membaca komitmen pada repositori GitHub.
Bagaimana berkontribusi
Apakah Anda ingin membantu membuat kernel ini lebih baik? Kami memiliki banyak hal yang perlu dilakukan, dan kami selalu dapat menggunakan bantuan melakukannya! Ada folder di repositori ini (disebut "ide") yang berisi file berbeda yang menjelaskan ide untuk kernel. Jika Anda memiliki ide baru, cukup buat file baru di dalam folder ide, kirimkan permintaan tarik, dan salah satu dari kami akan menggabungkan ide Anda ke cabang utama. Ada banyak fitur hebat yang sedang dikerjakan saat ini, dan kami dapat menggunakan sebanyak mungkin pengembang berbakat!
Blog
Pada 22 Agustus 2022, ada file blog (blog.md). Ini akan menjelaskan beberapa keputusan desain yang dibuat, beberapa masalah dalam pengembangan, dan apa yang diharapkan dalam waktu dekat. Libertyos tidak mati. Ada masa depan yang cerah di depan untuk proyek ini.
Membangun/Menjalankan Libertyos
- Kloning repositori ini.
- Arahkan ke lokasi yang Anda kloning repositori ini.
- Pastikan Anda telah menginstal yang berikut:
- Jalankan skrip bootstrap (./bootstrap.sh)
- Kompilasi kernel dengan "kargo build - -rilis", atau jalankan kernel di qemu, menggunakan "cargo run --selease".
Fitur yang sedang diimplementasikan saat ini
- Dukungan untuk arsitektur x86-64
- Dukungan untuk Rust's Core dan Alloc Crates
- Alokasi Memori, Menggunakan Daftar Tertaut, Alokasi Buddy, dan Alokasi Bump
- Penanganan kesalahan dasar
- Dukungan bawaan untuk menjalankan LOS dengan QEMU
- Dukungan untuk beberapa tata letak keyboard
- Dukungan Dasar untuk Fungsi Asynchronous, termasuk Eksekutor Tugas Dasar
- Dukungan untuk membaca/menulis ke file file (dukungan untuk sistem file tertentu belum diimplementasikan, tetapi fondasi telah diimplementasikan)
- Menggunakan Perpustakaan Inti, Dibangun Untuk Libertyos (Libcore)
- Mendukung perhitungan matematika, termasuk aljabar dasar, geometri, dll.
- Dukungan untuk C-Types
- Dukungan Dasar untuk Parsing Font
- Menjaga waktu
- Panggilan sistem
- Manajemen proses dasar
- Dukungan untuk Stdin, Stdout, dan Stderr
- Dukungan dasar untuk menjalankan proses di ruang pengguna
Fitur WIP
- Sistem file dasar, dibangun untuk Libertyos
- Dokumentasi lengkap untuk seluruh kernel
- Dukungan Lengkap untuk Membaca/Menulis ke Sistem File Fat
- Kemampuan jaringan dasar
- Dukungan untuk tikus komputer
- Cangkang dasar
Fitur yang direncanakan
- Dukungan untuk target berbasis ARM
- Dukungan untuk glibc/musl (atau, mungkin, menulis ulang bagian -bagian tertentu dari mereka)
- Dukungan untuk Sistem File Fat, Fat32, Exfat
- Dukungan untuk Ext2, Ext3, Ext4 Filesystems
- Dukungan untuk sistem file NTFS
- Nama host
- Kemampuan untuk memperbarui kernel dari dalam sistem operasi
- Dukungan untuk karakter non-Inggris
- Dukungan penuh untuk Unicode
- Kustomisasi Dasar
Perilaku yang diharapkan saat ini
- Kernel menginisialisasi bagian kritis Libertyos
- Kernel menampilkan pesan tentang proses pengaturan
- Kernel menghadapi kesalahan halaman. :(