Comprehensive Rust(繁体中文)請注意,如果使用 addr_of!/addr_of_mut! 取得個別欄位的指標,而不建立中繼參照,這種做 法並不安全。 271 53.5.4 開始使用 讓我們編寫一個小程式,使用驅動程式寫入序列控制台,並回應傳入的位元組。 mod exceptions; mod pl011; use crate::pl011::Uart; use core::fmt::Write; use core::panic::PanicInfo; 值,以及進入點、UART 控制台記錄等。 use vmbase::{main, println}; main!(main); pub fn main(arg0: u64, arg1: u64, arg2: u64, arg3: u64) { println!("Hello world"); } • main! 巨集會標記主函式,方便從 vmbase 進入點呼叫。 • vmbase 進入點會處理控制台初始化作業,並在主函式傳回時發出 56.1 RTC 驅動程式 QEMU aarch64 虛擬機器的 PL031 即時時鐘位於 0x9010000。在這個練習中,您應為該時鐘編寫驅動 程式。 1. 使用該時鐘將目前時間顯示至序列控制台。您可以使用 chrono Crate 設定日期/時間格式。 2. 使 用 比 對 暫 存 器 和 原 始 中 斷 狀 態,忙 碌 等 待 至 指 定 時 間,例 如 未 來 3 秒 (呼 叫 迴 圈0 码力 | 358 页 | 1.41 MB | 11 月前3
共 1 条
- 1













