mirror of
https://github.com/phil-opp/blog_os.git
synced 2025-12-17 23:07:50 +00:00
Move images next to their corresponding posts
This commit is contained in:
BIN
blog/content/posts/10-double-faults/boot-loop.gif
Normal file
BIN
blog/content/posts/10-double-faults/boot-loop.gif
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 39 KiB |
@@ -49,7 +49,7 @@ We try to write to address `0xdeadbeaf`, but the corresponding page is not prese
|
||||
|
||||
When we start our kernel now, we see that it enters an endless boot loop:
|
||||
|
||||

|
||||

|
||||
|
||||
The reason for the boot loop is the following:
|
||||
|
||||
@@ -90,7 +90,7 @@ Our handler prints a short error message and dumps the exception stack frame. Th
|
||||
|
||||
When we start our kernel now, we should see that the double fault handler is invoked:
|
||||
|
||||

|
||||

|
||||
|
||||
It worked! Here is what happens this time:
|
||||
|
||||
@@ -906,7 +906,7 @@ The `set_stack_index` method is unsafe because the the caller must ensure that t
|
||||
|
||||
That's it! Now the CPU should switch to the double fault stack whenever a double fault occurs. Thus, we are able to catch _all_ double faults, including kernel stack overflows:
|
||||
|
||||

|
||||

|
||||
|
||||
From now on we should never see a triple fault again!
|
||||
|
||||
|
||||
BIN
blog/content/posts/10-double-faults/qemu-catch-double-fault.png
Normal file
BIN
blog/content/posts/10-double-faults/qemu-catch-double-fault.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 16 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 17 KiB |
Reference in New Issue
Block a user