43 #ifndef __ARCH_ARM_LINUX_SYSTEM_HH__
44 #define __ARCH_ARM_LINUX_SYSTEM_HH__
54 #include "params/LinuxArmSystem.hh"
138 #endif // __ARCH_ARM_LINUX_SYSTEM_HH__
void startup()
startup() is the final initialization call before simulation.
PCEvent * kernelPanicEvent
Event to halt the simulator if the kernel calls panic()
LinuxArmSystemParams Params
Boilerplate params code.
void dumpDmesg()
Dump the kernel's dmesg buffer to stdout.
std::map< uint32_t, uint32_t > taskMap
This map stores a mapping of OS process IDs to internal Task IDs.
Linux::UDelayEvent * uDelaySkipEvent
PC based event to skip udelay(<time>) calls and quiesce the processor for the appropriate amount of t...
ThreadContext is the external interface to all thread state for anything outside of the CPU...
LinuxArmSystem(Params *p)
DumpStatsPCEvent * dumpStatsPCEvent
void initState()
Initialise the system.
Linux::UDelayEvent * constUDelaySkipEvent
Another PC based skip event for const_udelay().
const Params * params() const
virtual void process(ThreadContext *tc)
This function is called whenever the the kernel function "__switch_to" is called to change running ta...
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
A class to skip udelay() and related calls in the kernel.
bool enableContextSwitchStatsDump
When enabled, dump stats/task info on context switches for Streamline and per-thread cache occupancy ...
DumpStatsPCEvent(PCEventQueue *q, const std::string &desc, Addr addr)
PCEvent * kernelOopsEvent
Event to halt the simulator if the kernel calls oopses.
OutputStream * taskFile
This is a file that is placed in the run directory that prints out mappings between taskIds and OS pr...
void mapPid(ThreadContext *tc, uint32_t pid)
This function creates a new task Id for the given pid.