Writing an OS in Rust
- 禁用标准库
- 实现 panic 处理函数
- eh_personality 语言项 - 禁用栈展开
- start 语言项
vi src/main.rs
#![no_std]
#![no_main]
#[no_mangle]
pub extern "C" fn _start() -> ! {
loop{}
}
use core::panic::PanicInfo;
#[panic_handler]
fn panic(_info: &PanicInfo) -> ! {
loop{}
}
vi Cargo.toml
[profile.dev]
panic = "abort"
[profile.release]
panic = "abort"
vi .cargo/config
[build]
target = "thumbv7em-none-eabihf"
其他参考