mirror of
https://github.com/phil-opp/blog_os.git
synced 2025-12-16 22:37:49 +00:00
Use version 0.8.0 of bootloader
This commit is contained in:
@@ -361,7 +361,7 @@ Instead of writing our own bootloader, which is a project on its own, we use the
|
|||||||
# in Cargo.toml
|
# in Cargo.toml
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
bootloader = "0.6.4"
|
bootloader = "0.8.0"
|
||||||
```
|
```
|
||||||
|
|
||||||
Adding the bootloader as 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].
|
Adding the bootloader as 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].
|
||||||
|
|||||||
@@ -47,11 +47,11 @@ To implement the approach, we will need support from the bootloader, so we'll co
|
|||||||
|
|
||||||
### Dependency Updates
|
### Dependency Updates
|
||||||
|
|
||||||
This post requires version 0.6.4 or later of the `bootloader` dependency and version 0.6.0 or later of the `x86_64` dependency. You can update the dependencies in your `Cargo.toml`:
|
This post requires version 0.8.0 or later of the `bootloader` dependency and version 0.6.0 or later of the `x86_64` dependency. You can update the dependencies in your `Cargo.toml`:
|
||||||
|
|
||||||
```toml
|
```toml
|
||||||
[dependencies]
|
[dependencies]
|
||||||
bootloader = "0.6.4"
|
bootloader = "0.8.0"
|
||||||
x86_64 = "0.6.0"
|
x86_64 = "0.6.0"
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -305,7 +305,7 @@ We choose the first approach for our kernel since it is simple, platform-indepen
|
|||||||
|
|
||||||
```toml
|
```toml
|
||||||
[dependencies]
|
[dependencies]
|
||||||
bootloader = { version = "0.6.4", features = ["map_physical_memory"]}
|
bootloader = { version = "0.8.0", 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.
|
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.
|
||||||
|
|||||||
Reference in New Issue
Block a user