Anonymous user
Troubleshooting: Difference between revisions
Jump to navigation
Jump to search
no edit summary
[unchecked revision] | [unchecked revision] |
No edit summary |
No edit summary |
||
Line 2:
===Exception Handlers===
The first thing ever to do is to implement a reliable 'exception handler' that will tell you what was wrong. Under an emulator like BOCHS, the absence of such a handler will lead to a '3rd Exception without resolution' panic message, if the emulator is configured to do so...
Every time the CPU is unable to call some exception handler, it tries to execute the Double Fault exception handler. If it fails to call it either, a Triple Fault occurs. Also keep in mind that exceptions cannot be masked so either your code is perfect or you need exception handlers.
It's quite convenient to have the exception handler showing what kind of exception occurred before anything 'hazardous' is attempted. Displaying (as hex) the exception number in a corner of the screen, for instance can save you hours of debugging :)▼
▲It's quite convenient to have the exception handler
<pre>
|