diff --git a/blog/content/edition-2/posts/02-minimal-rust-kernel/index.fa.md b/blog/content/edition-2/posts/02-minimal-rust-kernel/index.fa.md index 8465966d..61b38dea 100644 --- a/blog/content/edition-2/posts/02-minimal-rust-kernel/index.fa.md +++ b/blog/content/edition-2/posts/02-minimal-rust-kernel/index.fa.md @@ -414,7 +414,7 @@ pub extern "C" fn _start() -> ! { # in Cargo.toml [dependencies] -bootloader = "0.9.23" +bootloader = "0.9" ``` افزودن بوت‌لودر به عنوان وابستگی برای ایجاد یک دیسک ایمیج قابل بوت کافی نیست. مشکل این است که ما باید هسته خود را با بوت لودر پیوند دهیم، اما کارگو از [اسکریپت های بعد از بیلد] پشتیبانی نمی‌کند. diff --git a/blog/content/edition-2/posts/02-minimal-rust-kernel/index.ja.md b/blog/content/edition-2/posts/02-minimal-rust-kernel/index.ja.md index 59e946b1..991bf357 100644 --- a/blog/content/edition-2/posts/02-minimal-rust-kernel/index.ja.md +++ b/blog/content/edition-2/posts/02-minimal-rust-kernel/index.ja.md @@ -411,7 +411,7 @@ pub extern "C" fn _start() -> ! { # in Cargo.toml [dependencies] -bootloader = "0.9.23" +bootloader = "0.9" ``` bootloaderを依存として加えることだけでブータブルディスクイメージが実際に作れるわけではなく、私達のカーネルをコンパイル後にブートローダーにリンクする必要があります。問題は、cargoが[ビルド後 (post-build) にスクリプトを走らせる機能][post-build scripts]を持っていないことです。 diff --git a/blog/content/edition-2/posts/02-minimal-rust-kernel/index.ko.md b/blog/content/edition-2/posts/02-minimal-rust-kernel/index.ko.md index 140b2943..7e7fe87e 100644 --- a/blog/content/edition-2/posts/02-minimal-rust-kernel/index.ko.md +++ b/blog/content/edition-2/posts/02-minimal-rust-kernel/index.ko.md @@ -418,7 +418,7 @@ pub extern "C" fn _start() -> ! { # Cargo.toml 에 들어갈 내용 [dependencies] -bootloader = "0.9.23" +bootloader = "0.9" ``` 부트로더를 의존 크레이트로 추가하는 것만으로는 부팅 가능한 디스크 이미지를 만들 수 없습니다. 커널 컴파일이 끝난 후 커널을 부트로더와 함께 링크할 수 있어야 하는데, cargo는 현재 [빌드 직후 스크립트 실행][post-build scripts] 기능을 지원하지 않습니다. diff --git a/blog/content/edition-2/posts/02-minimal-rust-kernel/index.md b/blog/content/edition-2/posts/02-minimal-rust-kernel/index.md index 3aa9c66d..43a3e163 100644 --- a/blog/content/edition-2/posts/02-minimal-rust-kernel/index.md +++ b/blog/content/edition-2/posts/02-minimal-rust-kernel/index.md @@ -403,7 +403,7 @@ Instead of writing our own bootloader, which is a project on its own, we use the # in Cargo.toml [dependencies] -bootloader = "0.9.23" +bootloader = "0.9" ``` Adding the bootloader as a dependency is not enough to actually create a bootable disk image. The problem is that we need to link our kernel with the bootloader after compilation, but cargo has no support for [post-build scripts]. diff --git a/blog/content/edition-2/posts/02-minimal-rust-kernel/index.ru.md b/blog/content/edition-2/posts/02-minimal-rust-kernel/index.ru.md index 1c2f627d..36d1dc73 100644 --- a/blog/content/edition-2/posts/02-minimal-rust-kernel/index.ru.md +++ b/blog/content/edition-2/posts/02-minimal-rust-kernel/index.ru.md @@ -411,7 +411,7 @@ pub extern "C" fn _start() -> ! { # in Cargo.toml [dependencies] -bootloader = "0.9.23" +bootloader = "0.9" ``` Добавление загрузчика в качестве зависимости недостаточно для создания загрузочного образа диска. Проблема в том, что нам нужно связать наше ядро с загрузчиком после компиляции, но в cargo нет поддержки [скриптов после сборки][post-build scripts]. diff --git a/blog/content/edition-2/posts/02-minimal-rust-kernel/index.zh-CN.md b/blog/content/edition-2/posts/02-minimal-rust-kernel/index.zh-CN.md index a117560c..a09da9ff 100644 --- a/blog/content/edition-2/posts/02-minimal-rust-kernel/index.zh-CN.md +++ b/blog/content/edition-2/posts/02-minimal-rust-kernel/index.zh-CN.md @@ -365,7 +365,7 @@ pub extern "C" fn _start() -> ! { # in Cargo.toml [dependencies] -bootloader = "0.9.23" +bootloader = "0.9" ``` 只添加引导程序为依赖项,并不足以创建一个可引导的磁盘映像;我们还需要内核编译完成之后,将内核和引导程序组合在一起。然而,截至目前,原生的 cargo 并不支持在编译完成后添加其它步骤(详见[这个 issue](https://github.com/rust-lang/cargo/issues/545))。 diff --git a/blog/content/edition-2/posts/09-paging-implementation/index.ja.md b/blog/content/edition-2/posts/09-paging-implementation/index.ja.md index 9b470749..3776e21b 100644 --- a/blog/content/edition-2/posts/09-paging-implementation/index.ja.md +++ b/blog/content/edition-2/posts/09-paging-implementation/index.ja.md @@ -281,7 +281,7 @@ frame.map(|frame| frame.start_address() + u64::from(addr.page_offset())) ```toml [dependencies] -bootloader = { version = "0.9.23", features = ["map_physical_memory"]} +bootloader = { version = "0.9", features = ["map_physical_memory"]} ``` この機能を有効化すると、ブートローダは物理メモリの全体を、ある未使用の仮想アドレス空間にマッピングします。この仮想アドレスの範囲をカーネルに伝えるために、ブートローダは**boot information**構造体を渡します。 diff --git a/blog/content/edition-2/posts/09-paging-implementation/index.md b/blog/content/edition-2/posts/09-paging-implementation/index.md index 98709044..1b8f78ec 100644 --- a/blog/content/edition-2/posts/09-paging-implementation/index.md +++ b/blog/content/edition-2/posts/09-paging-implementation/index.md @@ -278,7 +278,7 @@ We choose the first approach for our kernel since it is simple, platform-indepen ```toml [dependencies] -bootloader = { version = "0.9.23", features = ["map_physical_memory"]} +bootloader = { version = "0.9", features = ["map_physical_memory"]} ``` With this feature enabled, the bootloader maps the complete physical memory to some unused virtual address range. To communicate the virtual address range to our kernel, the bootloader passes a _boot information_ structure. diff --git a/blog/content/edition-2/posts/09-paging-implementation/index.zh-CN.md b/blog/content/edition-2/posts/09-paging-implementation/index.zh-CN.md index 61317b1b..b5a3d7c5 100644 --- a/blog/content/edition-2/posts/09-paging-implementation/index.zh-CN.md +++ b/blog/content/edition-2/posts/09-paging-implementation/index.zh-CN.md @@ -288,7 +288,7 @@ frame.map(|frame| frame.start_address() + u64::from(addr.page_offset())) ```toml [dependencies] -bootloader = { version = "0.9.23", features = ["map_physical_memory"]} +bootloader = { version = "0.9", features = ["map_physical_memory"]} ``` 启用这个功能后,bootloader 将整个物理内存映射到一些未使用的虚拟地址范围。为了将虚拟地址范围传达给我们的内核,bootloader 传递了一个 _启动信息_ 结构。