From d02b89c6268081f938b9825bf28dbc13c2b68810 Mon Sep 17 00:00:00 2001 From: Philipp Oppermann Date: Mon, 27 Mar 2017 13:43:08 +0200 Subject: [PATCH] Remove duplicate word --- blog/content/post/09-handling-exceptions.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/blog/content/post/09-handling-exceptions.md b/blog/content/post/09-handling-exceptions.md index 027ec8b4..1ef69968 100644 --- a/blog/content/post/09-handling-exceptions.md +++ b/blog/content/post/09-handling-exceptions.md @@ -21,7 +21,7 @@ We've already seen several types of exceptions in our kernel: - **Invalid Opcode**: This exception occurs when the current instruction is invalid. For example, this exception occurred when we tried to use SSE instructions before enabling SSE. Without SSE, the CPU didn't know the `movups` and `movaps` instructions, so it throws an exception when it stumbles over them. - **Page Fault**: A page fault occurs on illegal memory accesses. For example, if the current instruction tries to read from an unmapped page or tries to write to a read-only page. -- **Double Fault**: When an exception occurs, the CPU tries to call the corresponding handler function. If another exception exception occurs _while calling the exception handler_, the CPU raises a double fault exception. This exception also occurs when there is no handler function registered for an exception. +- **Double Fault**: When an exception occurs, the CPU tries to call the corresponding handler function. If another exception occurs _while calling the exception handler_, the CPU raises a double fault exception. This exception also occurs when there is no handler function registered for an exception. - **Triple Fault**: If an exception occurs while the CPU tries to call the double fault handler function, it issues a fatal _triple fault_. We can't catch or handle a triple fault. Most processors react by resetting themselves and rebooting the operating system. This causes the bootloops we experienced in the previous posts. For the full list of exceptions check out the [OSDev wiki][exceptions].