Previous - Up - Next

4.4   Logging

It is often a good idea for a module to be able to log what is happening. The Simics API provides logging facilities based on the following criteria:

level
The verbosity level ranging from 1 through 4 in decreasing importance order.
type
Each log message belongs to a specific category:

info
Info or debug message without any consequence on the simulation.
error
An error occurred that prevents the simulation (or part of the simulation) from running properly. Note that error messages do not have any logging level and are always printed out.
unimplemented
A model does not implement a specific functionality, bit or register.
spec_violation
A model received commands from the target program that violates the device specification.
target_error
An error occurred in the target machine (not in the simulator).
.
undefined
The simulation has been put in a state where the device behavior is undefined.
group
A bit-field, defined and registered by the module, used to separate different part of the device, for example to separate between the configuration of a device and using the device's services, or the PCI interface and the Ethernet interface, etc.

To learn more about logging in DML, refer to section 5.4. For C and Python, refer to section 6.6.

Previous - Up - Next