KGMON(8)

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

# NAME

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

# SYNOPSIS

`kgmon` | [`-bdhpr`] [`-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 operating system profiling as running, off, or not configured (see config(1)). If the `-p` flag is specified, `kgmon` extracts profile data from the operating system and produces a gmon.out or gmon-<id>.out file 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. If this option is specified with `-p`, the output file name will be gmon-<id>.out instead of gmon.out. And if the cpuid argument is “all” , the operation is performed for each cpu.
`-d`
  Enable debug output.
`-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 /netbsd.
`-p`
  Dump the contents of the profile buffers into a gmon.out or gmon-<id>.out file.
`-r`
  Reset all the profile buffers. If the `-p` flag is also specified, the gmon.out or gmon-<id>.out file is 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.

# FILES

/netbsd
  the default system
/dev/kmem
  the default memory

# DIAGNOSTICS

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

# SEE ALSO

config(1), gprof(1)

# HISTORY

The `kgmon` command appeared in 4.2BSD.

August 10, 2021 | NetBSD 10.1