Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
TOP(1)			    General Commands Manual			TOP(1)

       top - display and update	information about the top cpu processes

       top  [ -abCHIijnPqStuvz ] [ -dcount ] [ -mio|cpu	] [ -ofield ] [	-stime
       ] [ -Uusername ]	[ number ]

       Top displays the	top processes on the system and	 periodically  updates
       this  information.   If standard	output is an intelligent terminal (see
       below) then as many processes as	will fit on the	 terminal  screen  are
       displayed  by  default.	 Otherwise,  a	good  number of	them are shown
       (around 20).  Raw cpu percentage	is used	to  rank  the  processes.   If
       number  is  given,  then	the top	number processes will be displayed in-
       stead of	the default.

       Top makes a distinction between terminals that support  advanced	 capa-
       bilities	and those that do not.	This distinction affects the choice of
       defaults	for certain options.  In the remainder of  this	 document,  an
       "intelligent"  terminal	is  one	that supports cursor addressing, clear
       screen, and clear to end	of line.  Conversely, a	"dumb" terminal	is one
       that  does  not	support	 such features.	 If the	output of top is redi-
       rected to a file, it acts as if it were being run on a dumb terminal.

       -C     Toggle CPU display mode.	By default top displays	 the  weighted
	      CPU  percentage  in the WCPU column (this	is the same value that
	      ps(1) displays as	CPU).  Each time -C flag is passed it  toggles
	      between  "raw  cpu"  mode	 and  "weighted	cpu" mode, showing the
	      "CPU" or the "WCPU" column respectively.

       -S     Show system processes in the  display.   Normally,  system  pro-
	      cesses  such  as	the pager and the swapper are not shown.  This
	      option makes them	visible.

       -a     Display command names derived from  the  argv[]  vector,	rather
	      than  real  executable  name. It's useful	when you want to watch
	      applications, that puts their status information there.  If  the
	      real  name  differs from argv[0],	it will	be displayed in	paren-

       -b     Use "batch" mode.	 In this mode, all input from the terminal  is
	      ignored.	Interrupt characters (such as ^C and ^\) still have an
	      effect.  This is the default on a	dumb  terminal,	 or  when  the
	      output is	not a terminal.

       -H     Display  each  thread  for a multithreaded process individually.
	      By default a single summary line is displayed for	each process.

       -i     Use "interactive"	mode.  In this mode, any input is  immediately
	      read  for	processing.  See the section on	"Interactive Mode" for
	      an explanation of	which keys perform what	functions.  After  the
	      command  is  processed,  the screen will immediately be updated,
	      even if the command was not understood.  This mode  is  the  de-
	      fault when standard output is an intelligent terminal.

       -I     Do  not  display	idle processes.	 By default, top displays both
	      active and idle processes.

       -j     Display the jail(8) ID.

       -t     Do not display the top process.

	      Display either 'cpu' or 'io' statistics.	Default	is 'cpu'.

       -n     Use "non-interactive" mode.  This	is identical to	"batch"	mode.

       -P     Display per-cpu CPU usage	statistics.

       -q     Renice top to -20	so that	it will	run faster.  This can be  used
	      when  the	system is being	very sluggish to improve the possibil-
	      ity of discovering the problem.  This option can only be used by

       -u     Do not take the time to map uid numbers to usernames.  Normally,
	      top will read as much of the file	"/etc/passwd" as is  necessary
	      to  map  all the user id numbers it encounters into login	names.
	      This option disables all that, while possibly decreasing	execu-
	      tion time.  The uid numbers are displayed	instead	of the names.

       -v     Write  version  number  information  to stderr then exit immedi-
	      ately.  No other processing takes	 place	when  this  option  is
	      used.  To	see current revision information while top is running,
	      use the help command "?".

       -z     Do not display the system	idle process.

	      Show only	count displays,	then exit.  A display is considered to
	      be one update of the screen.  This option	allows the user	to se-
	      lect the number of displays he wants to see before top automati-
	      cally  exits.  For intelligent terminals,	no upper limit is set.
	      The default is 1 for dumb	terminals.

       -stime Set the delay between screen updates to time seconds.   The  de-
	      fault delay between updates is 2 seconds.

	      Sort the process display area on the specified field.  The field
	      name is the name of the column as	seen in	 the  output,  but  in
	      lower case.  Likely values are "cpu", "size", "res", and "time",
	      but may vary on different	operating systems.  Note that not  all
	      operating	systems	support	this option.

	      Show  only  those	processes owned	by username.  This option cur-
	      rently only accepts usernames and	will not understand  uid  num-

       Both count and number fields can	be specified as	"infinite", indicating
       that they can stretch as	far as possible.  This is accomplished by  us-
       ing  any	proper prefix of the keywords "infinity", "maximum", or	"all".
       The default for count on	an intelligent terminal	is, in fact, infinity.

       The environment variable	TOP is examined	for options before the command
       line  is	 scanned.  This	enables	a user to set his or her own defaults.
       The number of processes to display can also be specified	in  the	 envi-
       ronment	variable TOP.  The options -a, -C, -H, -I, -j, -P, -S, -t, -u,
       and -z are actually toggles.  A second specification of	any  of	 these
       options	will  negate  the  first.  Thus	a user who has the environment
       variable	TOP set	to "-I"	may use	the command "top -I" to	see idle  pro-

       When  top  is running in	"interactive mode", it reads commands from the
       terminal	and acts upon them accordingly.	 In this mode, the terminal is
       put in "CBREAK",	so that	a character will be processed as soon as it is
       typed.  Almost always, a	key will be pressed when top is	 between  dis-
       plays;  that  is,  while	 it is waiting for time	seconds	to elapse.  If
       this is the case, the command will be processed and the display will be
       updated immediately thereafter (reflecting any changes that the command
       may have	specified).  This happens even if the command  was  incorrect.
       If a key	is pressed while top is	in the middle of updating the display,
       it will finish the update and then process the command.	Some  commands
       require	additional  information, and the user will be prompted accord-
       ingly.  While typing this information in, the  user's  erase  and  kill
       keys (as	set up by the command stty) are	recognized, and	a newline ter-
       minates the input.

       These commands are currently recognized (^L refers to control-L):

       ^L     Redraw the screen.

       h or ? Display a	summary	of the commands	(help screen).	Version	infor-
	      mation is	included in this display.

       q      Quit top.

       d      Change  the  number of displays to show (prompt for new number).
	      Remember that the	next display counts as one, so typing d1  will
	      make top show one	final display and then immediately exit.

       m      Toggle the display between 'cpu' and 'io'	modes.

       n or # Change  the  number of processes to display (prompt for new num-

       s      Change the number	of seconds to delay between  displays  (prompt
	      for new number).

       S      Toggle the display of system processes.

       a      Toggle the display of process titles.

       k      Send  a signal ("kill" by	default) to a list of processes.  This
	      acts similarly to	the command kill(1)).

       r      Change the priority (the "nice") of a list of  processes.	  This
	      acts similarly to	the command renice(8)).

       u      Display  only processes owned by a specific username (prompt for
	      username).  If the username specified is simply "+",  then  pro-
	      cesses belonging to all users will be displayed.

       o      Change  the  order in which the display is sorted.  This command
	      is not available on all systems.	The sort key names  vary  from
	      system  to  system  but  usually include:	 "cpu",	"res", "size",
	      "time".  The default is cpu.

       e      Display a	list of	system errors (if any) generated by  the  last
	      kill or renice command.

       H      Toggle the display of threads.

       i      (or I) Toggle the	display	of idle	processes.

       j      Toggle the display of jail(8) ID.

       P      Toggle the display of per-CPU statistics.

       t      Toggle the display of the	top process.

       z      Toggle the display of the	system idle process.

       The  actual  display  varies  depending on the specific variant of Unix
       that the	machine	is running.  This description may  not	exactly	 match
       what  is	 seen  by top running on this particular machine.  Differences
       are listed at the end of	this manual entry.

       The top few lines of the	display	show  general  information  about  the
       state  of  the  system,	including  the	last  process id assigned to a
       process (on most	systems), the three load averages, the	current	 time,
       the number of existing processes, the number of processes in each state
       (sleeping, running, starting, zombies, and stopped), and	 a  percentage
       of  time	spent in each of the processor states (user, nice, system, and
       idle).  It also includes	information about physical and virtual	memory

       The  remainder of the screen displays information about individual pro-
       cesses.	This display is	similar	in spirit to ps(1) but it is  not  ex-
       actly  the  same.   PID	is the process id, JID,	when displayed,	is the
       jail(8) ID corresponding	to the process,	USERNAME is the	 name  of  the
       process's  owner	 (if -u	is specified, a	UID column will	be substituted
       for USERNAME), PRI is the current priority of the process, NICE is  the
       nice  amount  (in  the  range -20 to 20), SIZE is the total size	of the
       process (text, data, and	stack),	RES is the current amount of  resident
       memory (both SIZE and RES are given in kilobytes), STATE	is the current
       state (one of "START", "RUN" (shown as "CPUn" on	SMP systems), "SLEEP",
       "STOP",	"ZOMB",	 "WAIT",  "LOCK"  or  the  event  on which the process
       waits), C is the	processor number on which  the	process	 is  executing
       (visible	 only  on  SMP systems), TIME is the number of system and user
       cpu seconds that	the process has	used, WCPU,  when  displayed,  is  the
       weighted	 cpu percentage	(this is the same value	that ps(1) displays as
       CPU), CPU is the	raw percentage and is the field	that is	sorted to  de-
       termine the order of the	processes, and COMMAND is the name of the com-
       mand that the process is	currently running (if the process  is  swapped
       out, this column	is marked "<swapped>").

       If  a  process is in the	"SLEEP"	or "LOCK" state, the state column will
       report the name of the event or lock on which the process  is  waiting.
       Lock  names  are	 prefixed  with	an asterisk "*"	while sleep events are

       William LeFebvre, EECS Department, Northwestern University

       TOP  user-configurable defaults for options.

       /dev/kmem      kernel memory
       /dev/mem	      physical memory
       /etc/passwd	   used	to map uid numbers to user names
       /boot/kernel/kernel system image

       Don't shoot me, but the default for -I has changed once again.  So many
       people  were  confused by the fact that top wasn't showing them all the
       processes that I	have decided to	make the default  behavior  show  idle
       processes,  just	 like  it  did in version 2.  But to appease folks who
       can't stand that	behavior, I have added the ability  to	set  "default"
       options	in  the	 environment  variable	TOP (see the OPTIONS section).
       Those who want the behavior that	version	3.0 had	need only set the  en-
       vironment variable TOP to "-I".

       The command name	for swapped processes should be	tracked	down, but this
       would make the program run slower.

       As with ps(1), things can change	while top  is  collecting  information
       for  an	update.	 The picture it	gives is only a	close approximation to

       kill(1),	ps(1), stty(1),	mem(4),	renice(8)

       Mem: 9220K Active, 1M Inact, 3284K Wired, 1M Cache, 2M Buf, 1320K  Free
       ARC:  2048K  Total,  342K  MRU,	760K MFU, 272K Anon, 232K Header, 442K
       Other Swap: 91M Total, 79M Free,	13% Inuse, 80K In, 104K	Out

       K:     Kilobyte

       M:     Megabyte

       G:     Gigabyte

       %:     1/100

   Physical Memory Stats
	      number of	bytes active

       Inact: number of	bytes inactive

       Wired: number of	bytes wired down, including BIO-level cached file data

       Cache: number  of clean bytes caching data that are available for imme-
	      diate reallocation

       Buf:   number of	bytes used for BIO-level disk caching

       Free:  number of	bytes free

   ZFS ARC Stats
       These stats are only displayed when the ARC is in use.

       Total: number of	wired bytes used for the ZFS ARC

       MRU:   number of	ARC bytes holding most recently	used data

       MFU:   number of	ARC bytes holding most frequently used data

       Anon:  number of	ARC bytes holding in flight data

	      number of	ARC bytes holding headers

       Other  miscellaneous ARC	bytes

   Swap	Stats
       Total: total available swap usage

       Free:  total free swap usage

       Inuse: swap usage

       In:    bytes paged in from swap devices (last interval)

       Out:   bytes paged out to swap devices (last interval)

4th Berkeley Distribution	     Local				TOP(1)


Want to link to this manual page? Use this URL:

home | help