Commit Graph

120 Commits

Author SHA1 Message Date
Philipp Oppermann
8eba47816f Begin new post about double faults 2016-12-30 14:50:52 +01:00
Philipp Oppermann
c33f01d8f7 Update printing-to-screen post to use spin 0.4.5 2016-12-30 14:47:39 +01:00
Philipp Oppermann
14babd8c2a Add a Xargo.toml for xargo 0.3.0 and update the corresponding post (#272) 2016-12-29 16:45:24 +01:00
Philipp Oppermann
02697891e2 Update x86 crate to version 0.8.0 (#266) 2016-12-21 14:59:57 +01:00
Philipp Oppermann
a7a9aabce7 Remove workspace from post as well (#267) 2016-12-21 14:55:09 +01:00
Philipp Oppermann
00452c2302 Revert "map the P4 table recursively before setting paging" (#259) 2016-12-19 11:34:21 +01:00
Philipp Oppermann
c5dd983949 Mark panic_fmt as no_mangle to work around rust-lang/rust#38281 (#262) 2016-12-19 11:32:20 +01:00
Anton Strömkvist
bef61116fd Minor grammatical error fix (#258)
In `02-entering-longmode.md`
2016-11-30 16:28:45 +01:00
Philipp Oppermann
f4c9c12047 Fix panic_fmt arguments in post 2016-11-26 12:17:12 +01:00
Philipp Oppermann
a1fccc12b6 Set date of last update correctly for posts (#254) 2016-11-08 17:45:36 +01:00
Philipp Oppermann
9963961f35 Test the handler_with_error_code macro in a different way
We now take stack_frame as a immutable reference and we shouldn't write to a &. So the old test example (page faults as breakpoints) becomes even more hacky. Instead, we're now deliberately entering an endless page fault loop to check our iretq logic.
2016-11-01 17:50:51 +01:00
Philipp Oppermann
67857bde2f Returning from Exceptions: Take stack_frame as reference 2016-11-01 17:46:57 +01:00
Philipp Oppermann
e129da8cc2 Better Exception Messages: Take stack_frame argument as reference 2016-11-01 17:46:57 +01:00
Philipp Oppermann
f737c302e7 therefor -> for that 2016-10-31 15:31:32 +01:00
Philipp Oppermann
3bfa5a8178 Update “Returning from Exceptions” to use println 2016-10-31 01:04:53 +01:00
Philipp Oppermann
25fca59248 Update “Better Exception Messages” to use println 2016-10-30 20:06:51 +01:00
Philipp Oppermann
f14baa218e Fix typo 2016-10-30 19:12:55 +01:00
Philipp Oppermann
ca522db7bf Exceptions inside printlns are no longer a problem
The recent update to the vga driver evaluates the arguments before locking the global stdout writer
2016-10-30 17:32:04 +01:00
Philipp Oppermann
41c87636e0 Improve wording and add some more QEMU screenshots 2016-10-30 17:23:17 +01:00
Philipp Oppermann
cfccffca39 Trigger and fix the deadlock for nested printlns 2016-10-30 16:54:03 +01:00
Philipp Oppermann
c69f73b9b2 Improve some explanations in the section about fomatting macros 2016-10-30 16:53:24 +01:00
Dentosal
1fe9e87ead Remap the Kernel: Fixed broken link (#247) 2016-10-24 00:06:58 +02:00
Matanel Levi
f35ea9430c Page Tables: clarify that we need to map the P4 table recursively before enabling paging (#246)
We have to map the P4 table recursively before setting paging - can't do this wherever we'd like.
2016-10-23 16:04:09 +02:00
Philipp Oppermann
92b04dfba7 Remove old “Update” sections (#244)
Most of these updates are quite old and thus distracting. Instead, we now have a “Recent Changes” box in the sidebar of the front page.
2016-10-15 17:10:43 +02:00
Philipp Oppermann
941fca8b0d Better Exception Messages: Add example code that triggers the triple fault again (#242) 2016-10-12 16:56:25 +02:00
Philipp Oppermann
7db50a1a62 Fine-tune the section about volatiles 2016-10-08 15:41:59 +02:00
Philipp Oppermann
895cab981b Rewrite post to use and explain volatiles
Also extends some other explanations.
2016-10-06 23:57:26 +02:00
Philipp Oppermann
cd93924159 Add a footnote that userspace programs can still use SSE
Fixes #227
2016-10-02 18:49:20 +02:00
Philipp Oppermann
2b07d88b62 Update post to use multiboot2 from crates.io 2016-09-27 13:46:29 +02:00
Philipp Oppermann
4db15a7e80 Update post to new bit_field code 2016-09-27 13:25:03 +02:00
Philipp Oppermann
f73006a24f Fix link syntax (#228) 2016-09-25 21:48:43 +02:00
Calvin Lee
5b9a45674d Minor wording change
"so that the calling code cannot overflow `heap_start`" -> "so that `alloc_end` cannot overflow"
2016-09-22 16:03:32 -06:00
Calvin Lee
54e02fd6b5 Fixes #220: BumpAllocator overflow
I also fixed a spelling error and replaced a tab with a space
in the blog post where `allocate()` was created.
2016-09-22 12:25:59 -06:00
Philipp Oppermann
901ca7f2ed Rewrite “Cross Compile Libcore” guide using rustup and xargo
Rustup replaces the “Download it” solution and xargo the “Build it using cargo” solution.
2016-09-22 15:34:24 +02:00
Philipp Oppermann
2e013397e3 Use rustup for cross compiling libcore 2016-09-22 15:15:46 +02:00
Philipp Oppermann
f8151580de Fix date of new post 2016-09-21 15:39:43 +02:00
Philipp Oppermann
f38805c3d3 Final improvements 2016-09-21 14:32:42 +02:00
Philipp Oppermann
706c48a410 Add source files for the diagrams 2016-09-20 17:35:39 +02:00
Philipp Oppermann
5a00bddd7c Write introduction 2016-09-20 17:31:28 +02:00
Philipp Oppermann
626763d452 Write “What's next?” 2016-09-20 17:16:13 +02:00
Philipp Oppermann
e4ae45e863 Write “Exceptions with Error Codes” section 2016-09-20 16:17:22 +02:00
Philipp Oppermann
0bb7f1a53e New post about returning from exceptions 2016-09-20 02:47:55 +02:00
Philipp Oppermann
9b842e9578 Rename posts: Use ascending numbers instead of date 2016-09-18 19:25:08 +02:00
Klemen Košir
30a8c06295 reexport -> re-export 2016-08-20 13:04:26 +02:00
Klemen Košir
e56df793d4 Fix an incorrect function name 2016-08-20 13:03:54 +02:00
Klemen Košir
02ef52c677 Fix an incorrect year of update in post title 2016-08-20 13:03:25 +02:00
Klemen Košir
a33bf9c889 Fix a function name typo 2016-08-20 13:02:41 +02:00
Philipp Oppermann
7c0082ecb4 Fix broken unwinding link (link to nomicon now) (#207) 2016-08-17 14:35:42 +02:00
Jeremy Ruten
c6f35a953a Fix code to trigger memcpy linker errors (#206)
Fixes #205
2016-08-16 12:49:36 +02:00
Leon Loopik
98c3b2a4a1 Fix incorrect uses of therefor (#204)
* Fix typo (therefor -> therefore)

* Rephrased a sentence

* Added backticks back in
2016-08-10 12:22:53 +02:00