kpps - Show Local KP Process Status

[Contents] [Prev] [Next]
Table of Contents


kpps - Show Local KP Process Status




The utility prints status information about each process running under control of a local KOS (i.e. a KOS running on the local host). The status information combines information about the underlying operating system process, like the process id, and information that is KOS-specific, like the name of the kernel where the process is running.

The utility takes no arguments.

Here is an example of output from the utility. Each process is listed on a single line. The column headings and the meaning of each column are listed below.

 KOS   jeremy     jeremy       1993 14:11:38     0:25   6504 python ../kernel/k
 sta   jeremy     jeremy       2159 14:17:26     0:04   5028 python /home/jhylt
 EXT   jeremy    network    1  1996 14:11:53     0:03   4080 python 
 EXT   jeremy       http    2  1997 14:11:53     0:02   4008 python -n 
  KP   jeremy    swarm.1   78  2371 15:55:58     0:00   5048 python /home/jhylt
What kind of KOS process this is. The value is always one of these four labels: KOS, a kernel process, sta, the KP starter process, EXT, a KOS extension process, or KP, a Knowbot program.
The name of the kernel where the process is running.
The name of the KOS process. Most processes are explicitly named sometime during the startup process, e.g. when an extension registers with the kernel. For a KP, this value is the reporting id.
The internal id assigned by the KOS kernel. Although the id is called the KPID, both KPs and extensions have one.
The underlying operating system's process id.
The starting time of the process. The format of this field depends on the ps utility provided by the operating system. Typically, the time is show as hours, minutes, and seconds from processes started in the last 24 hours.
The total amount of time this process has spent executing.
The size of the processes virtual memory footprint, in kilobytes.
The operating system command being executed, including arguments. (The string displayed here is truncated to the first 19 characters.)

Bugs and Caveats

The "reporting-id", an identifier assigned to a KP by its submittor when it is created, and which doesn't change when the KP migrates, is not displayed.

Only processes running of the local machine are summarized by this utility. A kernel running on a different machine will not appear, nor will an extension for a local kernel if the extension is run on another machine.

The lifetime of many KPs is only a fraction of a second. Thus, a KP can easily by missed between independent runs of

Some extensions spawn child processes that provide services to a specific client, i.e. the tkstdio extension. These child processes are not registered with the KOS and do not appear.

On SGI IRIX, garbage is printed in the TIME and MEM columns.

Since every UNIX variant seems to have a slightly different formatting of its ps output, it is possible that kpps doesn't work when used on other systems. It is easy to add a few customization lines to the source code (search for sys.platform). If you add the right customization for your platform, please send us a patch. If you have to port this to a non-UNIX system, our hearts go out to you, but you're on your own.

Table of Contents

[Contents] [Prev] [Next]
Copyright © 1998 by the Corporation for National Research Initiatives.