Philipp Oppermann
2377c0a579
Restructure: Create a new Running our Kernel section
2019-04-26 12:08:41 +02:00
Philipp Oppermann
24e06d8978
Create a .cargo/config file that sets the default target
...
Instead of setting a bootimage default target.
2019-04-25 13:12:29 +02:00
Philipp Oppermann
3a3a76466c
Use bootimage 0.7.3
2019-04-25 12:27:27 +02:00
Philipp Oppermann
f2335e8e72
Add a note that there must be no spaces in features string
2019-04-17 18:49:23 +02:00
Philipp Oppermann
ac16f2ed55
Link if let and shadowing chapters under keyboard code
2019-04-15 14:10:34 +02:00
Philipp Oppermann
0b9ca84735
Rewrite "A Freestanding Rust Binary" ( #577 )
...
- solve linker errors by compiling for thumbv7em-none-eabihf
- make old section about linker arguments optional content
- use different linker arguments on Windows and macOS to use the `_start` entry point on all OSs
- Add an (optional) section that explains how to set linker arguments in .cargo/config
- Add an (optional) section that discourages the linker arguments approach and recommends the `#[start]` attribute instead
- reorganize section levels
2019-04-11 15:28:51 +02:00
Philipp Oppermann
6015feb511
Update 'Paging Implementation' post for bootloader 0.5.1
2019-04-06 17:49:31 +02:00
Philipp Oppermann
b8667c45dd
Update "Minimal Rust Kernel" to new bootloader 0.5.1 and bootimage 0.7.2
2019-04-06 16:46:10 +02:00
Philipp Oppermann
6eb9c83345
Spell out post-* branch names in posts
2019-04-03 12:12:48 +02:00
Philipp Oppermann
0605fc54df
Move the ToC of Paging Implementation after the aside
2019-03-19 13:24:41 +01:00
Philipp Oppermann
48d96243ea
Add an inline table of contents to all posts
2019-03-19 13:01:25 +01:00
Philipp Oppermann
cc0f68448b
Fix swapped changelog links
2019-03-15 10:46:30 +01:00
Philipp Oppermann
fc5fd7f86b
Remove unneeded into_iter call in Paging Implementation post
2019-03-14 13:21:02 +01:00
Philipp Oppermann
82256aaa2f
Use zola's page_template feature
2019-03-14 12:58:10 +01:00
Philipp Oppermann
c655a61290
Point bootloader doc links to version 0.4.0
2019-03-14 11:20:48 +01:00
Philipp Oppermann
7b88ebcaf6
Update bootloader dependency in post to 0.4.0
2019-03-14 11:20:36 +01:00
Philipp Oppermann
b496f835dc
Set publish date
2019-03-14 10:13:04 +01:00
Philipp Oppermann
5ce8eabffb
Fix code link to current HEAD of post-10 branch
...
The code in the post-10 branch will be replaced with the code of the new "Paging Implementation" post.
2019-03-13 15:10:32 +01:00
Philipp Oppermann
c069cdde69
Minor improvements
2019-03-13 15:01:07 +01:00
Philipp Oppermann
c734bc472f
Link to the page table flag list of the previous post
2019-03-13 15:01:07 +01:00
Philipp Oppermann
42d94c3d50
Fix missing imports in code examples
2019-03-13 15:01:07 +01:00
Philipp Oppermann
154f10c3a0
Add missing unsafe in code example
2019-03-13 15:01:07 +01:00
Philipp Oppermann
1041754c71
Provide more context in code example
2019-03-13 15:01:07 +01:00
Philipp Oppermann
b8a3bb44df
Simplify the active_level_4_table function
2019-03-13 15:01:07 +01:00
Philipp Oppermann
23e70e0e9c
Add a second temporary mapping to figure to make things clearer
2019-03-13 15:01:07 +01:00
Philipp Oppermann
f34725de85
Fix grammar
2019-03-13 15:01:07 +01:00
Philipp Oppermann
15668849d2
Minor fixes
2019-03-13 15:01:07 +01:00
Philipp Oppermann
8efa53761e
Cleanup: remove replaced content from Advanced Paging post
2019-03-13 15:01:07 +01:00
Philipp Oppermann
a72810e1ab
Rewrite and extend introduction
2019-03-13 15:01:07 +01:00
Philipp Oppermann
409527caca
Deprecate the Advanced Paging post
2019-03-13 15:01:07 +01:00
Philipp Oppermann
bf66b29225
Update images
2019-03-13 15:01:07 +01:00
Philipp Oppermann
96f543b2d4
Finish implementation section
2019-03-13 15:01:07 +01:00
Philipp Oppermann
053b2d3c23
Complete section about translating addresses
2019-03-13 15:01:07 +01:00
Philipp Oppermann
d09dd7ff1f
Begin implementation section
2019-03-13 15:01:07 +01:00
Philipp Oppermann
4197382855
Resolve some TODOs and other minor improvements
2019-03-13 15:01:07 +01:00
Philipp Oppermann
d0e995d221
Update the Accessing Page Tables section
2019-03-13 15:01:07 +01:00
Philipp Oppermann
cb6d46a582
Require x86_64 0.5.0 and bootloader 0.4.0
2019-03-13 15:01:07 +01:00
Philipp Oppermann
fee3e34378
Create Bootloader Support section
2019-03-13 15:01:07 +01:00
Philipp Oppermann
c3abefd745
Begin restructuring the post
...
- Add page table access code from previous post
- Make each page table access technique its own subsection
- Make details of recursive paging optional
- Add short codesnippets how to implement recursive paging
- Add disadvantages of recursive paging
2019-03-13 15:01:07 +01:00
Philipp Oppermann
b19e350dc4
Create a copy of the advanced paging post
2019-03-13 15:01:07 +01:00
Philipp Oppermann
7e4c8285dd
Move images
2019-03-13 15:01:07 +01:00
Philipp Oppermann
8d54b92ded
Update paging introduction post to not use the recursive address
...
The upcoming breaking version of the bootloader will not create a recursive mapping unless requested through a cargo feature. So we move the last section to the next post where we introduce these cargo features.
2019-03-13 15:01:07 +01:00
Philipp Oppermann
ddbe36c0dc
Update x86_64 to version 0.5.2
...
This is required for the upcomping _Paging Implementation_ post.
2019-03-12 17:47:58 +01:00
Philipp Oppermann
9011a8a123
Use the new MapperAllSizes::translate_addr function in Post 10
2019-03-09 13:46:55 +01:00
Philipp Oppermann
4c68f8a541
The int3 function was moved into the interrupts submodule
2019-03-09 13:18:46 +01:00
Philipp Oppermann
8ea576263c
Update x86_64 to version 0.5.0
2019-03-09 13:16:46 +01:00
Philipp Oppermann
d2852ce966
ExceptionStackFrame was renamed to InterruptStackFrame
2019-03-09 13:13:40 +01:00
Philipp Oppermann
b95ec88e4f
Update x86_64 doc links to version 0.5.0
2019-03-09 13:13:40 +01:00
Antoine
c14d1db833
🎨 format hex numbers to improve readability ( #565 )
2019-03-08 15:48:50 +01:00
Antoine
3a3bb7fb38
✏️ fix typos ( #563 )
...
`create_example_mapping` was written `create_mapping` in several lines
2019-03-08 13:50:58 +01:00