|
The Pedigree Project 0.1
|
Handles interrupts and interrupt registrations from kernel components. More...
#include <InterruptManager.h>
Inheritance diagram for InterruptManager:
Collaboration diagram for InterruptManager:Public Member Functions | |
| virtual bool | registerInterruptHandler (size_t nInterruptNumber, InterruptHandler *pHandler)=0 |
| virtual bool | registerInterruptHandlerDebugger (size_t nInterruptNumber, InterruptHandler *pHandler)=0 |
| virtual size_t | getBreakpointInterruptNumber () PURE=0 |
| virtual size_t | getDebugInterruptNumber () PURE=0 |
Static Public Member Functions | |
| static EXPORTED_PUBLIC InterruptManager & | instance () |
Protected Member Functions | |
| InterruptManager () | |
| virtual | ~InterruptManager () |
Private Member Functions | |
| InterruptManager (const InterruptManager &) | |
| InterruptManager & | operator= (const InterruptManager &) |
Handles interrupts and interrupt registrations from kernel components.
The interrupt manager allows interrupt handler registrations and handles interrupts.
Definition at line 35 of file include/pedigree/kernel/processor/InterruptManager.h.
|
protecteddefault |
The constructor
|
protectedvirtualdefault |
The destructor
|
private |
The copy-constructor
|
pure virtual |
Get the interrupt number of the breakpoint exception
Implemented in Arm64InterruptManager, Armv7InterruptManager, HostedInterruptManager, and X64InterruptManager.
|
pure virtual |
Get the interrupt number of the debug exception
Implemented in Arm64InterruptManager, Armv7InterruptManager, HostedInterruptManager, and X64InterruptManager.
|
static |
Get the interrupt manager instance
Definition at line 64 of file arm64/InterruptManager.cc.
Referenced by Debugger::initialise(), NMFaultHandler::initialise(), PageFaultHandler::initialise(), Pic::initialise(), HostedInterruptManager::interrupt(), and Debugger::interrupt().
Here is the caller graph for this function:
|
private |
The copy-constructor
|
pure virtual |
Register an interrupt handler
| [in] | nInterruptNumber | the interrupt's number |
| [in] | pHandler | the interrupt handler |
Implemented in HostedInterruptManager, X64InterruptManager, Arm64InterruptManager, and Armv7InterruptManager.
Referenced by NMFaultHandler::initialise(), PageFaultHandler::initialise(), and Pic::initialise().
Here is the caller graph for this function:
|
pure virtual |
Register an interrupt handler (for the kernel debugger)
| [in] | nInterruptNumber | the interrupt's number |
| [in] | pHandler | the interrupt handler |
Implemented in HostedInterruptManager, X64InterruptManager, Arm64InterruptManager, and Armv7InterruptManager.