|
The Pedigree Project 0.1
|
#include <Machine.h>
Inheritance diagram for HostedMachine:
Collaboration diagram for HostedMachine:Public Member Functions | |
| virtual void | initialise () INITIALISATION_ONLY |
| virtual void | initialise3 () |
| Called after processor startup - for thread creation etc. | |
| virtual void | deinitialise () |
| virtual void | initialiseDeviceTree () |
| virtual Serial * | getSerial (size_t n) |
| virtual size_t | getNumSerial () |
| virtual Vga * | getVga (size_t n) |
| virtual size_t | getNumVga () |
| virtual IrqManager * | getIrqManager () |
| virtual SchedulerTimer * | getSchedulerTimer () |
| virtual Timer * | getTimer () |
| virtual Keyboard * | getKeyboard () |
| virtual void | setKeyboard (Keyboard *kb) |
| MUST_USE_RESULT bool | quiesceAllOtherProcessors () override |
| MUST_USE_RESULT bool | resumeAllOtherProcessors () override |
| MUST_USE_RESULT bool | stopAllOtherProcessors () override |
Public Member Functions inherited from Machine | |
| virtual bool | supportsPowerOff () const |
| virtual bool | prepareShutdown (ShutdownType type) |
| virtual void | finalShutdown (ShutdownType type) |
| void | displayShutdownMessage (const char *message) |
| virtual void | initialise2 () |
| Called after debugger startup. | |
| bool | isInitialised () |
Static Public Member Functions | |
| static HostedMachine & | instance () |
Static Public Member Functions inherited from Machine | |
| static void | setShutdownPhase (ShutdownPhase phase) |
| static const char * | shutdownPhaseName () |
| static Machine & | instance () |
Private Member Functions | |
| HostedMachine () INITIALISATION_ONLY | |
| HostedMachine (const HostedMachine &) | |
| HostedMachine & | operator= (const HostedMachine &) |
| virtual | ~HostedMachine () |
Private Attributes | |
| HostedSerial | m_Serial [2] |
| HostedVga | m_Vga |
| Keyboard * | m_Keyboard |
Static Private Attributes | |
| static HostedMachine | m_Instance |
Additional Inherited Members | |
Public Types inherited from Machine | |
| enum class | ShutdownType { Restart , Halt , PowerOff } |
| enum class | ShutdownPhase { NotStarted , Requested , Userspace , Syscalls , Filesystems , Modules , Firmware , Destructors , Input , Caches , Timers , Devices , Processors , ProcessorCleanup , FinalAction } |
Protected Attributes inherited from Machine | |
| bool | m_bInitialised |
Concretion of the abstract Machine class for hosted systems
Definition at line 36 of file kernel/machine/hosted/Machine.h.
|
private |
Default constructor, does nothing.
Definition at line 121 of file hosted/Machine.cc.
|
privatevirtual |
Virtual destructor, does nothing.
Definition at line 123 of file hosted/Machine.cc.
References deinitialise().
|
virtual |
Stops platform services while interrupts and the scheduler are alive. Implementations may synchronously drain callbacks and join workers.
Reimplemented from Machine.
Definition at line 60 of file hosted/Machine.cc.
References Machine::deinitialise(), HostedSchedulerTimer::instance(), HostedInterruptManager::quiesceProcessor(), HostedSchedulerTimer::uninitialise(), and HostedTimer::uninitialise().
Referenced by ~HostedMachine().
Here is the caller graph for this function:
|
virtual |
Implements Machine.
Definition at line 89 of file hosted/Machine.cc.
|
virtual |
|
virtual |
Returns the number of Serial device.
Implements Machine.
Definition at line 77 of file hosted/Machine.cc.
|
virtual |
Returns the number of VGA devices.
Implements Machine.
Definition at line 85 of file hosted/Machine.cc.
|
virtual |
Returns the SchedulerTimer device.
Implements Machine.
Definition at line 93 of file hosted/Machine.cc.
References HostedSchedulerTimer::instance().
|
virtual |
Returns the n'th Serial device.
Implements Machine.
Definition at line 73 of file hosted/Machine.cc.
|
virtual |
|
virtual |
|
virtual |
Initialises the machine.
Implements Machine.
Definition at line 36 of file hosted/Machine.cc.
References initialise(), Keyboard::initialise(), HostedSchedulerTimer::instance(), panic(), and HostedSerial::setBase().
Referenced by initialise().
Here is the caller graph for this function:
|
virtual |
Called after processor startup - for thread creation etc.
Reimplemented from Machine.
Definition at line 54 of file hosted/Machine.cc.
References initialise3(), and panic().
Referenced by initialise3().
Here is the caller graph for this function:
|
virtual |
Initialises the machine's base device tree, if one exists, to prefill the tree with those devices that are not otherwise able to be detected via some sort of bus support.
Reimplemented from Machine.
Definition at line 52 of file hosted/Machine.cc.
|
inlinestatic |
Definition at line 38 of file kernel/machine/hosted/Machine.h.
|
overridevirtual |
Temporarily pauses every other processor for an interactive debugger.
Reimplemented from Machine.
Definition at line 109 of file hosted/Machine.cc.
|
overridevirtual |
Resumes processors paused by quiesceAllOtherProcessors().
Reimplemented from Machine.
Definition at line 113 of file hosted/Machine.cc.
|
virtual |
|
overridevirtual |
Permanently stops all other cores for panic or terminal shutdown.
Reimplemented from Machine.
Definition at line 117 of file hosted/Machine.cc.
|
staticprivate |
Definition at line 77 of file kernel/machine/hosted/Machine.h.
|
private |
Definition at line 75 of file kernel/machine/hosted/Machine.h.
|
private |
Definition at line 73 of file kernel/machine/hosted/Machine.h.
|
private |
Definition at line 74 of file kernel/machine/hosted/Machine.h.