Sistem operasi 64-bit yang sederhana, mandiri, bersih, terdokumentasi dengan baik, hobi 64-bit untuk prosesor Intel dan AMD. Ini ditulis dalam perakitan (intel sintaks) dan C (standar GNU99) di mana saya berusaha untuk menambahkan komentar ke kode sumber sebanyak mungkin sehingga dapat digunakan sebagai referensi untuk pengembang OS di masa depan.
Ini berisi komponen -komponen berikut yang ditulis dari awal:
| Komponen | Keterangan | Kode Sumber |
|---|---|---|
| Mbr | Bootloader tahap pertama | kode |
| Pemuat | Bootloader tahap kedua | kode |
| Komponen | Keterangan | Kode Sumber |
|---|---|---|
| PML4 | Struktur paging | kode |
| Sobat | Sistem Alokasi Memori | kode |
| Printk | utilitas parsing format string seperti printf | kode |
| Pengemudi serial | Kirim MSG printk melalui RS232 untuk membantu debugging | kode |
| Dump inti | Buang register CPU untuk tujuan debugging | kode |
| Syscall/Sysret | Metode yang dipilih untuk melompat untuk berdering 3 dan kembali | kode |
| LUBANG | Timer Interval yang Dapat Diprogram | kode |
| Foto | Pengontrol interupsi yang dapat diprogram | kode |
| (x) penundaan | Berdasarkan ketat mengingat bahwa saya menggunakan PIT | kode |
| CMOS RTC | Jam real-time | kode |
| Penjadwal | Penjadwal Round-Robin Sederhana | kode |
Fungsi ditambahkan sesuai permintaan: kode
Lebih banyak yang akan datang! Bintang/Tonton repo ini untuk tetap disini!
Untuk membangun aplikasi ini, Anda diharapkan memiliki make docker yang diinstal di mesin Anda. Semua dependensi bangunan lainnya harus diurus secara otomatis oleh gambar Docker yang dibuat selama langkah ini.
Untuk membangunnya, Anda harus menjalankan:
make build
Untuk menjalankan aplikasi ini, Anda diharapkan memiliki make dan qemu-system-x86_64 yang diinstal di mesin Anda.
make test
Untuk memastikan saya tidak akan kehilangan fokus pada apa yang saya ingin OS ini dapat lakukan, saya memutuskan untuk menulis daftar fitur yang ingin saya terapkan dalam jangka pendek hingga menengah.
Hal -hal yang fantastis untuk dimiliki tetapi saya tidak yakin apakah saya memiliki apa yang diperlukan dalam hidup saya.
Ini semua adalah referensi yang banyak membantu saya selama pengembangan Almeidaos
Forum:
BUKU:
OS yang ada:
Kursus: