The System Information perspective provides a complete and detailed report on your system's resource allocation and use, along with key metrics such as CPU usage, program layout, the interaction of different programs, and more:
The System Information perspective shows a detailed report of the system's resource allocation, CPU usage, and more.
The perspective's metrics may prove useful throughout your development cycle, from writing and debugging your code through your quality-control strategy.
Key terms
Before we describe how to work with the System Information perspective, let's first briefly discuss the terms used in the perspective itself. The main items are:
Threads within a process share the same virtual memory space, but have their own stack. This common address space lets threads within the process easily access shared code and data, and lets you optimize or group common functionality, while still providing process-level protection from the rest of the system.
Each thread can have a scheduling priority ranging from 1 to 255 (the highest priority), independent of the scheduling policy. The special idle thread (in the process manager) has priority 0 and is always ready to run. A thread inherits the priority of its parent thread by default.
You can set a thread's priority using the pthread_setschedparam function.
You can set a thread's scheduling policy using the pthread_setschedparam function or you can start a process with a specific priority and policy by using the on command (see the Utilities Reference for details).
The OS supports the standard POSIX signals (as in UNIX) as well as the POSIX realtime signals. The POSIX signals interface specifies how signals target a particular process, not a specific thread. To ensure that signals go to a thread that can handle specific signals, many applications mask most signals from all but one thread.
You can specify the action associated with a signal by using the sigaction function, and block signals by using sigprocmask. You can send signals by using the raise function, or send them manually using the Target Navigator view (see Sending a signal below).