Memory Controllers#
Memory controllers define structures and functions representing higher-level data types used by engines during execution.
Monitor#
The monitor structure defined here tracks the monitor internal state and stores the pointers to all the memory used by R2U2 during execution.
There are 4 major types of fields in the monitor structure:
The vector clock, made up of the time stamp, BZ and TL program counters, and progress indicator.
Instruction memory, including an instruction table for both BZ and TL instructions and auxiliary string information.
Output pointers, defining how to return produced verdicts.
Memory domain pointers, pointing to arrays or arenas of memory defined by the memory controllers and manipulated by the engines.
The macro R2U2_DEFAULT_MONITOR is also defined here which provides a .bss friendly instantiation of a monitor.