03a2aca9a9
System object now exists for both fullsys and syscall emulation, as the latter needs it so that Process objects can find the shared PhysicalMemory for initialization. Changes are incomplete: still need to fix up Process (& EioProcess) memory initialization and syscall emulation code for new mem interface. arch/alpha/alpha_linux_process.cc: arch/alpha/alpha_linux_process.hh: arch/alpha/alpha_tru64_process.cc: arch/alpha/alpha_tru64_process.hh: cpu/base.cc: cpu/base.hh: Take System argument in constructor. cpu/exec_context.cc: Take System argument in constructor. Merge two constructors into a single one. cpu/exec_context.hh: Take System argument in constructor. Merge two constructors into a single one. Replace dummy translation with lookup in Process object's page table. python/m5/objects/Process.py: Add System parameter to Process object (& subobjects). python/m5/objects/System.py: Segregate full-system only Process parameters (most of them!). sim/process.cc: Take System argument in constructor. Move initialization to startup() callback to occur after system & cpus are initialized. Generate ProxyMemory object to pass to loader for transparent virtual page allocation. sim/process.hh: Take System argument in constructor. Move initialization to startup() callback to occur after system & cpus are initialized. sim/system.cc: sim/system.hh: Enable System object for non-full-system too. Basically involved putting most of the existing code inside '#ifdef FULL_SYSTEM'. Key thing needed for syscall emulation at this point is the PhysicalMemory object (for Process initialization). --HG-- extra : convert_revision : f0f34b47bd4f77b502191affd3d03b4d6d9bcdd8 |
||
---|---|---|
.. | ||
alpha_linux_process.cc | ||
alpha_linux_process.hh | ||
alpha_memory.cc | ||
alpha_memory.hh | ||
alpha_tru64_process.cc | ||
alpha_tru64_process.hh | ||
aout_machdep.h | ||
arguments.cc | ||
arguments.hh | ||
ecoff_machdep.h | ||
ev5.cc | ||
ev5.hh | ||
faults.cc | ||
faults.hh | ||
isa_desc | ||
isa_traits.hh | ||
osfpal.cc | ||
osfpal.hh | ||
pseudo_inst.cc | ||
pseudo_inst.hh | ||
stacktrace.cc | ||
stacktrace.hh | ||
vptr.hh | ||
vtophys.cc | ||
vtophys.hh |