Fix internal link syntax in translation

This commit is contained in:
Philipp Oppermann
2020-02-17 10:49:00 +01:00
parent 7124ce742f
commit 0f8bd7fab8

View File

@@ -22,11 +22,11 @@ date = 2019-04-27
这篇文章替换了此前的(现在已经过时了) [_单元测试(Unit Testing)_] 和 [_集成测试(Integration Tests)_] 两篇文章。这里我将假定你是在2019-04-27日后阅读的[_最小Rust内核_]一文。总而言之,本文要求你已经有一个[设置默认目标]的 `.cargo/config` 文件且[定义了一个runner可执行文件]。
[_单元测试(Unit Testing)_]: ./second-edition/posts/deprecated/04-unit-testing/index.md
[_集成测试(Integration Tests)_]: ./second-edition/posts/deprecated/05-integration-tests/index.md
[_最小Rust内核_]: ./second-edition/posts/02-minimal-rust-kernel/index.md
[设置默认目标]: ./second-edition/posts/02-minimal-rust-kernel/index.md#set-a-default-target
[定义了一个runner可执行文件]: ./second-edition/posts/02-minimal-rust-kernel/index.md#using-cargo-run
[_单元测试(Unit Testing)_]: @/second-edition/posts/deprecated/04-unit-testing/index.md
[_集成测试(Integration Tests)_]: @/second-edition/posts/deprecated/05-integration-tests/index.md
[_最小Rust内核_]: @/second-edition/posts/02-minimal-rust-kernel/index.md
[设置默认目标]: @/second-edition/posts/02-minimal-rust-kernel/index.md#set-a-default-target
[定义了一个runner可执行文件]: @/second-edition/posts/02-minimal-rust-kernel/index.md#using-cargo-run
## Rust中的测试
@@ -151,7 +151,7 @@ test-args = ["-device", "isa-debug-exit,iobase=0xf4,iosize=0x04"]
### I/O 端口
在x86平台上CPU和外围硬件通信通常有两种方式**内存映射I/O**和**端口映射I/O**。之前,我们已经使用内存映射的方式,通过内存地址`0xb8000`访问了[VGA文本缓冲区]。该地址并没有映射到RAM而是映射到了VGA设备的一部分内存上。
[VGA text buffer]: ./second-edition/posts/03-vga-text-buffer/index.md
[VGA text buffer]: @/second-edition/posts/03-vga-text-buffer/index.md
与内存映射不同端口映射I/O使用独立的I/O总线来进行通信。每个外围设备都有一个或数个端口号。CPU采用了特殊的`in``out`指令来和端口通信,这些指令要求一个端口号和一个字节的数据作为参数(有些这种指令的变体也允许发送`u16`或是`u32`长度的数据)。
@@ -304,7 +304,7 @@ lazy_static! {
`isa-debug-exit`设备一样UART也是用过I/O端口进行编程的。由于UART相对来讲更加复杂它使用多个I/O端口来对不同的设备寄存器进行编程。不安全的`SerialPort::new`函数需要UART的第一个I/O端口的地址作为参数从该地址中可以计算出所有所需端口的地址。我们传递的端口地址为`0x3F8` ,该地址是第一个串行接口的标准端口号。
[vga lazy-static]: ./second-edition/posts/03-vga-text-buffer/index.md#lazy-statics
[vga lazy-static]: @/second-edition/posts/03-vga-text-buffer/index.md#lazy-statics
为了使串口更加易用,我们添加了 `serial_print!``serial_println!`宏: