Show HN: OS hobi buatan saya akhirnya berjalan di IBM ThinkPad vintage
(github.com/joexbayer)- RetrOS-32 adalah proyek sistem operasi hobi 32-bit berbasis arsitektur i386
- Menyediakan fitur grafis, multitasking, dan jaringan serta telah diuji pada perangkat keras nyata
- Ditulis dalam C, C++, dan Assembly serta mendukung kompilasi lintas platform melalui Docker
- Mendukung pembangunan sistem pengguna, menjalankan emulasi QEMU, dan boot di perangkat fisik
- Proyek ini memiliki fitur kernel yang matang dan stack jaringan serta terus menambahkan fitur baru
Pengenalan proyek RetrOS-32bit
- Proyek pengembangan sistem operasi hobi 32-bit berbasis arsitektur i386
- Mendukung lingkungan grafis, multitasking, dan fungsi jaringan
- Tanggal mulai proyek: 12 Mei 2022
Informasi login dasar
- Akun pengguna default: system, admin, guest
- Kata sandi admin adalah
admin, guest tidak memiliki kata sandi - Pengguna baru dapat dibuat dengan perintah
admin create <nama_pengguna> <kata_sandi>
Bahasa dan alat pengembangan utama
- C, Assembly: kernel, utilitas, sistem build
- C++: aplikasi ruang pengguna
- Make: otomatisasi build
- Docker: menyediakan lingkungan kompilasi lintas platform
Perangkat keras yang telah diuji
- Lenovo x240
- Asus Eee PC series
- Dell Optiplex 780
- Samsung N150 Plus
- Samsung NP-NC10
- IBM Thinkpad a21p
Memulai (Getting Started)
Alat yang diperlukan (Prerequisites)
- Docker: kompilasi lintas platform
- QEMU: emulasi mesin virtual
- Lingkungan Linux/WSL:
build-essential,gcc-multilib,grub2,xorriso,xxd - MacOS: perlu menggunakan Docker (karena keterbatasan build x86 32-bit)
Cara instalasi (Installation)
- Clone repositori Git
- Inisialisasi submodule Git
- Buat file image dengan perintah
make compile,make img - Jalankan emulator QEMU dengan perintah
make qemu
Pada MacOS dan Windows, penggunaan Docker direkomendasikan
Cara penggunaan (Usage)
- Unggah file
.imgke situs copy.sh v86 untuk menjalankannya - Dapat dijalankan langsung dengan QEMU:
make qemuatauqemu-system-i386 <nama_image> - Pada perangkat fisik, ISO berbasis GRUB dapat dibakar ke USB/CD lalu di-boot
Struktur proyek (ringkasan singkat)
apps: aplikasi ruang penggunabin: file binerboot: source bootloaderdrivers: driver kernelfs: kode sistem filegraphics: kode pemrosesan grafisinclude: file headerkernel: source utama kernellib: pustakanet: kode jaringanrootfs: sistem file roottests: kode pengujiantools: alat build dan utilitas
Roadmap pengembangan (Roadmap)
- Bootloader kustom dan boot kompatibel GRUB selesai
- Penjadwalan preemptive multithread dan pemisahan ruang kernel/pengguna telah diimplementasikan
- Stack jaringan: Ethernet, IP, ARP, UDP, TCP, DHCP, DNS selesai
- Sistem grafis: pengelola jendela, widget, rendering framebuffer ganda telah diimplementasikan
- Sistem file: mirip Ext2, mendukung FAT16, dapat baca/tulis
- Rencana berikutnya: menambahkan dukungan web server, FTP, IRC, SSH, Telnet, HTTP, HTML
1 komentar
Komentar Hacker News