Hi folks. I've been working towards various ways of merging FS and SE modes more completely, and one of the places the diverge today is how System objects are set up. In FS mode, the System object is responsible for loading the kernel, firmware blobs, etc., and is specialized for that for each ISA. It also has all the parameters related to the kernel (object file location, various addresses, etc.) directly.
I recently put together a little exploratory change over here: https://gem5-review.googlesource.com/c/public/gem5/+/22243/1 Which attempts to start pulling the kernel out of the System object to make it its own replaceable, overridable entity. I don't even know if the code in that CL will compile, but before sinking a lot of time into it I thought it would be a good idea to see what people thought. To develop it further, I want to make the OpSysKernel SimObject I've created inherit from a more generic Workload object which can include an OpSysKernel, but can also include firmware bits, etc. The System would then have a single, opaque Workload, and that could be an Alpha Tru64 kernel, an ARM bare metal program, a fake Linux which loads a SPARC binary in SE mode, etc. The System object would then become a much more generic container for truly system level things like holding memory, collecting relating SimObjects, etc. Gabe _______________________________________________ gem5-dev mailing list [email protected] http://m5sim.org/mailman/listinfo/gem5-dev
