/mini-os

mini os experiment

Primary LanguageRust

Introduction

Mini OS

Step by step learning to create an OS

常用命令

更新 mini-os

cargo build --release

生成镜像

rust-objcopy --strip-all target/riscv64gc-unknown-none-elf/release/mini-os -O binary target/riscv64gc-unknown-none-elf/release/mini-os.bin

启动 qemu

qemu-system-riscv64
-machine virt
-nographic
-bios ./bootloader/rustsbi-qemu.bin
-device loader,file=target/riscv64gc-unknown-none-elf/release/mini-os.bin,addr=0x80200000
-s -S

启动 GDB 调试

riscv64-unknown-elf-gdb \
    -ex 'file target/riscv64gc-unknown-none-elf/release/mini-os' \
    -ex 'set arch riscv:rv64' \
    -ex 'target remote localhost:1234'

Target

Reference