中文说明
Peringatan: Proyek ini masih pada tahap awal, dan program pengguna tidak tersedia di OS. Setiap risiko potensial menjalankan perangkat lunak baik di mesin virtual atau logam telanjang harus diperhitungkan oleh pengguna.
Saat ini, proyek ini hanya mendukung arsitektur X86_64, dan mungkin akan mendukung AARCH64 di masa depan.
io-uring Linux.debug - Berisi file perakitan yang didekompilasi, simbol debug, informasi file objek. dan file log serial dari mesin virtual.h2o - Berisi kode sumber untuk kernel.scripts - Berisi skrip yang diperlukan untuk membangun proyek.src - Berisi kode sumber perpustakaan dan executable untuk seluruh proyek.target - Berisi file binari dan disk virtual.xtask - berisi pembangun untuk proyek tersebut.Unduh Rust dan dependensi lainnya (misalnya Ubuntu):
# Select the nightly channel for rust
curl --proto ' =https ' --tlsv1.2 -sSf https://sh.rustup.rs | sh
sudo apt install build-essential qemu-system-x86 llvm-14 nasm
export LLVM_PATH= " /usr/lib/llvm-14 "Tambahkan target berikut:
rustup target add nightly-x86_64-unknown-linux-gnuUbah ke direktori root proyek dan jalankan perintah berikut:
cargo xtask dist imgUntuk menjalankan OS dengan Qemu, jalankan perintah berikut:
sh scripts/run.sh qemu N # N for the number of CPUs Dan periksa file debug/qemu.log , Anda akan melihat output OS.
Untuk men -debug dengan Qemu, jalankan perintah berikut:
sh scripts/run.sh qdbg N # Same as abovedan buka terminal baru:
# cd to the working directory
gdb debug/FOO.sym
# FOO for the binary you want to debug;
# you may check it in the directory first.
# In the gdb:
target remote :1234Kemudian Anda dapat mengatur breakpoint (kernel.sym misalnya):
b kmain
cJika Anda ingin menjalankan OS dengan perangkat lunak VM lainnya, periksa run.sh terlebih dahulu, dan secara manual membuat file konfigurasi VM sesuai keinginan. Jangan lupa untuk menambahkan disk virtual dan log serial atau tidak ada output akan ada!
Jika Anda ingin memberikan kontribusi, pastikan untuk menghubungi saya terlebih dahulu.