The Target Navigator lists the targets and, for the connected ones, the processes running on them.
Through this view's controls, you can configure kernel event tracing and adaptive partitioning for targets
and send signals to processes, attach the debugger to them, and adjust their scheduling properties.
This view is also used to select the process for which you want to view runtime data. When you click a process entry
in the Target Navigator, several other System Information views are updated to show that process's
statistics, as explained in How data are displayed.
The QNX System Information and
QNX System Profiler
perspectives automatically open this view but you can access it at any time through:
The targets and processes are listed in a tree:
Interacting with targets
You can interact with targets by right-clicking their entries and using the context menu.
This menu allows you to refresh a target's process list, rename or delete its connection, or create a new connection.
It also has options to open the device log (which appears in the
Console view), launch an SSH or
Telnet session, attach the debugger to a process, start kernel event tracing, and manage adaptive partitions settings:
If you point to Attach As, the resulting submenu has two options:
C/C++ QNX Attach to Process and Attach Configurations.
For the first option, the IDE opens a window for selecting a process from a list. When you then do this,
the IDE creates a launch configuration called attach.process_name and tries to launch it
by attaching the debugger to the running process. For the second option, it opens a window for managing launch
configurations, in which you can create your own attach configuration.
The Log With option lets you run a kernel event trace. From the APS submenu, you can configure the
adaptive partitioning scheduler, as described below in Configuring APS.
Finally, the Properties option opens the QNX Qconn Target panel for
configuring the target connection.
Interacting with processes
When you right-click a process entry, you see different context menu options than for targets:
Some target-level operations are still accessible from the process-level menu. These include refreshing the process list,
creating a new connection, launching a kernel event trace, and displaying the target properties.
Here, the Attach As option doesn't display a window with a process list—the IDE just
creates the new attach configuration and tries to launch it to start debugging the selected process.
The middle portion of the menu shows options for interacting with processes.
For example, you can send signals by clicking Deliver Signal and then, in the resulting popup
window, selecting the appropriate signal from the dropdown list and clicking OK.
You can explicitly terminate a process by selecting Slay.
There are also options to adjust a process's priority and its inherited and non-inherited CPU affinities.
Each of these process options opens a popup window for setting the corresponding property.
For information about scheduling priorities and policies, see the
Thread scheduling section in the System Architecture guide.
For information about the CPU affinity settings that associate threads with a particular core, see the
Thread affinity section in the Programmer's Guide.
Configuring APS
The APS submenu in the context (right-click) menu for a target contains these options:
- Set APS Security
- This option opens a popup window that provides checkboxes for enabling APS security flags.
These flags determine who can add partitions and modify their attributes, and are described in the
Security section for the SchedCtl() entry in the
Utilities Reference.
- Note that after you set a flag, you can't unset it through this window, so the flag doesn't appear anymore.
To unset it, you must reboot the target.
- Set APS Parameters
- The popup window opened by choosing this option lets you modify the length of the averaging window, which is
the time interval used to calculate CPU usage, and enable specific bankruptcy flags, which determine how the system
reacts when a partition exhausts its critical budget and hence, becomes bankrupt; these flags are described in the
Handling bankruptcy section for the SchedCtl() entry.
- Note that after you set a flag, you can't unset it through this window, so the flag doesn't appear anymore.
To unset it, you must reboot the target.
- Modify Existing Partition
- This option lets you select a partition and set its budget and critical budget.
The first setting is a percentage of CPU usage while the second is in milliseconds.
- Create New Partition
- Choosing this option opens a window into which you can enter a name, parent partition, budget, and critical budget
to create a new partition. The new partition's budget is taken from its parent's budget.