AIX debugging commands

List of debugging commands.

bindprocessor –q
Lists the available processors.
bootinfo –K
Shows if the 64–bit kernel is active.
bootinfo –y
Shows whether the hardware in use is 32-bit or 64-bit.
dbx
The AIX® debugger. Examples of use can be found throughout this set of topics.

The SDK also includes a dbx Plug-in for additional help debugging Java™ applications. See DBX Plug-in for more information.

iostat

Reports the read and write rate to all disks. This tool can help determine if disk workload should be spread across multiple disks. iostat also reports the same CPU activity that vmstat does.

lsattr
Details characteristics and values for devices in the system.
To obtain the type and speed of processor 0, use:
# lsattr -El proc0
state     enable         Processor state False
type      PowerPC_POWER3 Processor type  False
frequency 200000000      Processor Speed False
Processor 0 might not be available to you if you are using an LPAR. Use bindprocessor -q to list the available processors.
lsconf
Shows basic hardware and configuration details. See lsconf for an example.
netpmon
uses the trace facility to obtain a detailed picture of network activity during a time interval. See netpmon for an example.
netstat
Shows information about socket and network memory usage. Use this command with the –m option to look at mbuf memory usage. See netstat for more details.
nmon
Gives much of the same information as topas but can save the information to a file.

The information that is collected includes CPU, disk, network, adapter statistics, kernel counters, memory, and the top process information.

no
Configures network attributes. For example, to see the size of the wall use:
# no -a | grep wall
                  thewall = 524288
# no -o thewall = 
1000000
The wall is the maximum amount of memory assigned to the network memory buffer.
ps
Shows process information. See ps for more details.
sar
Shows usage by multiple CPUs. See sar for more details.
svmon
Captures snapshots of virtual memory. See svmon for more details.
tprof
The tprof command reports CPU usage for individual programs and the system as a whole. The command is useful for analyzing a Java program that might be CPU-bound. You can determine which sections of the program are most heavily using the CPU.

The tprof command can charge, or record, CPU time to object files, processes, threads and subroutines (user mode, kernel mode and shared library). The tprof command can also charge CPU time to individual lines of source code, or to individual instructions in the source code. Charging CPU time to subroutines is called profiling and charging CPU time to source program lines is called micro-profiling.

topas
A graphical interface to system activity. See topas for more details.
trace
Captures a sequential flow of time-stamped system events. The trace is a valuable tool for observing system and application execution. See trace for more details.
truss
Traces the following details for a process: system calls, dynamically loaded user-level function calls, received signals, and incurred machine faults.
vmstat
Reports statistics about kernel threads in the run and wait queue, memory paging, interrupts, system calls, context switches, and CPU activity. See vmstat for more details.