<linux_mapper>.status <linux_tracker>.info
Simics Reference Manual  /  3 Commands  /  3.2 Command List  / 

<linux_tracker>.detect-parameters

Synopsis

<linux_tracker>.detect-parameters [param-file] ["version-string"] [base-address] [symbol-file] [-load] [-overwrite] [-real-time] [ram-base] [randomize-base] [kernel-modules]

Description

Detect the parameters to use with the Linux tracker. For this to work, Linux must be up and running on the simulated machine. If more than one possible solution is found (the tracker could not identify which is correct), each possible solution will be saved, by adding a suffix to the given parameter file name.

The optional param-file argument is used to specify where to save the parameters, the default is 'detect.params'. If this argument is left out and the -load flag is used then no parameters will be saved.

The -load flag can be used to load the newly detected parameters directly after detection.

The optional version-string argument can be used to specify information about the Linux version running on the system. This will be the name of the root node in the node tree.

The optional base-address argument can be used to specify the kernel base address. Unless this option is given, the tracker will use a set of predefined values, which are platform dependent. For 32-bit x86 kernels, the tracker will use the symbols, if provided, to determine the kernel base address. If the target is running a kernel with a kernel base that is not part of the default values (usually 0xc0000000) the user may specify this option in order to get a successful parameter detection. It can also be provided in order to speed up the detection on some platforms.

The optional ram-base argument can be used to specify the physical address for the base of the ram in which the kernel is loaded. This is currently only used when tracking Linux on ARM systems.

For many targets it is possible to detect parameters without providing any symbols. For other targets, the tracker will require the user to provide debug information by using the symbol-file argument. Debug information can normally be found in the vmlinux file when the kernel is compiled with debug information.

For some targets it may be enough to provide plain symbols, such as /proc/kallsyms on the target or the System.map file associated with the kernel. The exact needs depends on platform and kernel version.

The optional -real-time argument should be used when detecting parameters for a real-time kernels if only plain symbols are given. If this is not used for that case then the detection can fail to understand that this is a real-time kernel and the detected parameters may be incorrect for that kernel. If vmlinux symbols are given this argument should not be needed.

The optional randomize-base forces the detection to either treat the kernel as having randomised base (the RANDOMIZE_BASE configuration option for the kernel) or to not have, depending on if this argument is set to TRUE or FALSE. If this argument is not set then the detector will try to determine whether or not the kernel has randomized base.

The optional kernel-modules argument is used to either leave out detection of kernel modules, when FALSE, or to force kernel modules to be detected, when TRUE. If TRUE and kernel module parameters cannot be found then detect will fail. If this is not set then kernel module parameters will be included if found, but detection will not fail if such parameters are not found.

The optional -overwrite flag specifies that the parameters file should be overwritten if it exists.

Provided By

linux-tracker

See Also

<osa_parameters>.load-parameters
<linux_mapper>.status <linux_tracker>.info