Skip to content

Commit 38606f6

Browse files
committed
cleanup(ch1-lab)
Signed-off-by: YdrMaster <[email protected]>
1 parent f275465 commit 38606f6

File tree

2 files changed

+23
-26
lines changed

2 files changed

+23
-26
lines changed

ch1-lab/README.md

+5-5
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
# 第一章实验
22

3-
第一章实验的示例,展示如何依赖 `console` crate。
3+
第一章实验的示例,展示如何依赖 `rcore_console` crate。
44

55
[Cargo.toml](Cargo.toml#L9) 里添加:
66

77
```toml
8-
console = { path = "../console"}
8+
rcore_console = { path = "../rcore_console"}
99
```
1010

11-
[main.rs](src/main.rs#L49) 里初始化:
11+
[main.rs](src/main.rs#L38) 里初始化:
1212

1313
```rust
14-
init_console(&Console);
14+
rcore_console::init_console(&Console);
1515
```
1616

17-
后续的章节都可以这样依赖 `console`
17+
后续的章节都可以这样依赖 `rcore_console`

ch1-lab/src/main.rs

+18-21
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@
33
#![feature(naked_functions, asm_const)]
44
#![deny(warnings)]
55

6-
use rcore_console::*;
6+
#[macro_use]
7+
extern crate rcore_console;
8+
79
use sbi_rt::*;
810

911
/// Supervisor 汇编入口。
@@ -28,6 +30,21 @@ unsafe extern "C" fn _start() -> ! {
2830
)
2931
}
3032

33+
/// 使用 `console` 输出的 Supervisor 裸机程序。
34+
///
35+
/// 测试各种日志和输出后关机。
36+
extern "C" fn rust_main() -> ! {
37+
// 初始化 `console`
38+
rcore_console::init_console(&Console);
39+
// 设置日志级别
40+
rcore_console::set_log_level(option_env!("LOG"));
41+
// 测试各种打印
42+
rcore_console::test_log();
43+
44+
system_reset(Shutdown, NoReason);
45+
unreachable!()
46+
}
47+
3148
/// 将传给 `console` 的控制台对象。
3249
///
3350
/// 这是一个 Unit struct,它不需要空间。否则需要传一个 static 对象。
@@ -41,26 +58,6 @@ impl rcore_console::Console for Console {
4158
}
4259
}
4360

44-
/// 使用 `console` 输出的 Supervisor 裸机程序。
45-
///
46-
/// 测试各种日志和输出后关机。
47-
extern "C" fn rust_main() -> ! {
48-
// 初始化 console
49-
init_console(&Console);
50-
// 设置总的日志级别
51-
log::set_max_level(log::LevelFilter::Trace);
52-
53-
println!("[PRINT] Hello, world!");
54-
log::trace!("Hello, world!");
55-
log::debug!("Hello, world!");
56-
log::info!("Hello, world!");
57-
log::warn!("Hello, world!");
58-
log::error!("Hello, world!");
59-
60-
system_reset(Shutdown, NoReason);
61-
unreachable!()
62-
}
63-
6461
/// Rust 异常处理函数,以异常方式关机。
6562
#[panic_handler]
6663
fn panic(info: &core::panic::PanicInfo) -> ! {

0 commit comments

Comments
 (0)