KGMON(8) | System Manager's Manual | KGMON(8)

# NAME

`kgmon` — generate a dump of the operating system's profile buffers

# SYNOPSIS

`kgmon` | [`-bhpr`] [`-c` cpuid] [`-M` core] [`-N` system]

# DESCRIPTION

`kgmon` is a tool used when profiling the operating system. When no arguments are supplied, `kgmon` indicates the state of per-CPU operating system profilings as “running”, “off”, or “not configured” (see config(8)). If the `-p` flag is specified, `kgmon` extracts profile data from the operating system and produces a file for each CPU suitable for later analysis by gprof(1).

The options are as follows:

`-b`
  Resume the collection of profile data.
`-c` cpuid
  Operate on the CPU specified by cpuid, instead of all of them.
`-h`
  Stop the collection of profile data.
`-M` core
  Extract values associated with the name list from the specified core instead of the default /dev/kmem.
`-N` system
  Extract the name list from the specified system instead of the default /bsd.
`-p`
  Dump the contents of the profile buffers into a gmon-<id>.out file, where “id” is the ID of the CPU.
`-r`
  Reset all the profile buffers. If the `-p` flag is also specified, the profile files are generated before the buffers are reset.

If neither `-b` nor `-h` is specified, the state of profiling collection remains unchanged. For example, if the `-p` flag is specified and profile data is being collected, profiling will be momentarily suspended, the operating system profile buffers will be dumped, and profiling will be immediately resumed.

`kgmon` requires the ability to open /dev/kmem which may be restricted based upon the value of the kern.allowkmem sysctl(8).

# FILES

/bsd
  default system
/dev/kmem
  default memory

# DIAGNOSTICS

Users with only read permission on /dev/kmem cannot change the state of profiling collection. They can get profile files with the warning that the data may be inconsistent if profiling is in progress.

# SEE ALSO

gprof(1), config(8)

# HISTORY

The `kgmon` command appeared in 4.2BSD.

September 25, 2016 | Debian