You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Make virtual machine and emulated device allocation static
This patch make some significant changes to the allocation layout
of Mythril. Now, instead of heap allocation of devices and virtual
machines, these are allocated in the following way:
There is a static 'VirtualMachineSet' object that contains a list
of virtual machines and associated message passing contexts. This
structure is how inter-core and inter-vm communication occurs. Each
'VirtualMachine' now contains an ArrayVec of 'DynamicVirtualDevice'.
A 'DynamicVirtualDevice' is a wrapper around various EmulatedDevice
types that are _not_ part of the required guest architecture. For
example, a given PCI device is 'dynamic' in the sense that we cannot
state that it is part of the guest at compile time.
Non-dynamic EmulatedDevices are now stored explicitly as part of the
'StaticVirtualDevices' field of the 'VirtualMachine'. This makes it
significantly easier to reference a particular part of the guest
architecture (rather than having to look up a device by Port, for
example).
0 commit comments