sim-se: Extend MemState API to use VMAs
Extend the MemState API to handle tracking dynamically sized memory regions of a Process class which may be added, moved, removed, or change in size during the course of simulation. This utilizes the virtual memory areas (VMA) class to track individual regions and provides a fixup method to handle physical page allocation in case of a page fault. This allows for lazy allocation of the stack, heap, and mmap regions of memory. Change-Id: I3ef10657e5f8e8f0e328bdf0aa15a27b1dde39bf Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/25483 Tested-by: Gem5 Cloud Project GCB service account <345032938727@cloudbuild.gserviceaccount.com> Reviewed-by: Jason Lowe-Power <power.jg@gmail.com> Maintainer: Jason Lowe-Power <power.jg@gmail.com>
This commit is contained in:
@@ -86,6 +86,7 @@ if env['TARGET_ISA'] != 'null':
|
||||
Source('process.cc')
|
||||
Source('fd_array.cc')
|
||||
Source('fd_entry.cc')
|
||||
Source('mem_state.cc')
|
||||
Source('pseudo_inst.cc')
|
||||
Source('syscall_emul.cc')
|
||||
Source('syscall_desc.cc')
|
||||
|
||||
Reference in New Issue
Block a user