Virtualization is a common use case in embedded systems today.
Virtualization means that multiple guest operating systems are running on the same processor under control of a hypervisor.
Processors with virtualization support are equipped with a 2-stage MMU for memory abstraction on two levels (OS level and hypervisor level).
TRACE32 is fully aware of 2-stage MMUs and provides the following features to handle it:
- Dedicated commands allow a detailed view of MMUs, TLBs and the current page table.
- The TRACE32 MMU support and the TRACE32 hypervisor and kernel awareness extend this view to all page tables used by the kernel and the hypervisor.
- This allows full system visibility. Functions, variables, stack frames of all processes and the kernel can be inspected in detail.
Developers who are familiar with the deep details of the MMUs, TLBs, pages tables and address translation can inspect all entities in detail by using advanced TRACE32 commands.