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

FreeBSD Manual Pages


home | help
HTOP(1)				     Utils			       HTOP(1)

       htop - interactive process viewer

       htop [-dChusv]

       Htop is a free (GPL) ncurses-based process viewer for Linux.

       It  is similar to top, but allows you to	scroll vertically and horizon-
       tally, so you can see all the processes running on  the	system,	 along
       with  their  full  command  lines, as well as viewing them as a process
       tree, selecting multiple	processes and acting on	them all at once.

       Tasks related to	processes (killing, renicing) can be done without  en-
       tering their PIDs.

       Mandatory  arguments  to	 long  options are mandatory for short options

       -d --delay=DELAY
	      Delay between updates, in	tenths of seconds

       -C --no-color --no-colour
	      Start htop in monochrome mode

       -h --help
	      Display a	help message and exit

       -p --pid=PID,PID...
	      Show only	the given PIDs

       -s --sort-key COLUMN
	      Sort by this column (use --sort-key help for a column list)

       -u --user=USERNAME
	      Show only	the processes of a given user

       -v --version
	      Output version information and exit

       The following commands are supported while in htop:

       Up, Alt-k
	    Select (hightlight)	the previous  process  in  the	process	 list.
	    Scroll the list if necessary.

       Down, Alt-j
	    Select  (hightlight)  the next process in the process list.	Scroll
	    the	list if	necessary.

       Left, Alt-h
	    Scroll the process list left.

       Right, Alt-l
	    Scroll the process list right.

       PgUp, PgDn
	    Scroll the process list up or down one window.

       Home Scroll to the top  of  the	process	 list  and  select  the	 first

       End  Scroll  to	the  bottom  of	 the  process list and select the last

       Ctrl-A, ^
	    Scroll left	to the beginning of the	process	entry (i.e.  beginning
	    of line).

       Ctrl-E, $
	    Scroll right to the	end of the process entry (i.e. end of line).

	    Tag	or untag a process. Commands that can operate on multiple pro-
	    cesses, like "kill", will then apply over the list of tagged  pro-
	    cesses, instead of the currently highlighted one.

       U    Untag all processes	(remove	all tags added with the	Space key).

       s    Trace  process  system  calls: if strace(1)	is installed, pressing
	    this key will attach it to the currently  selected	process,  pre-
	    senting a live update of system calls issued by the	process.

       l    Display  open files	for a process: if lsof(1) is installed,	press-
	    ing	this key will display the list of file descriptors  opened  by
	    the	process.

       F1, h, ?
	    Go to the help screen

       F2, S
	    Go	to  the	 setup screen, where you can configure the meters dis-
	    played at the top of the  screen,  set  various  display  options,
	    choose  among  color  schemes,  and	 select	which columns are dis-
	    played, in which order.

       F3, /
	    Incrementally search the command lines of all the  displayed  pro-
	    cesses.  The  currently selected (highlighted) command will	update
	    as you type. While in search mode, pressing	F3 will	cycle  through
	    matching occurrences.

       F4, \
	    Incremental	 process  filtering: type in part of a process command
	    line and only processes whose names	match will be shown. To	cancel
	    filtering, enter the Filter	option again and press Esc.

       F5, t
	    Tree  view:	organize processes by parenthood, and layout the rela-
	    tions between them as a tree. Toggling the key will	switch between
	    tree and your previously selected sort view. Selecting a sort view
	    will exit tree view.

       F6   On sorted view,  select  a	field  for  sorting,  also  accessible
	    through  <	and >.	The current sort field is indicated by a high-
	    light in the header.  On tree view,	expand or collapse the current
	    subtree.  A	 "+"  indicator	 in the	tree node indicates that it is

       F7, ]
	    Increase the selected process's  priority  (subtract  from	'nice'
	    value).  This can only be done by the superuser.

       F8, [
	    Decrease the selected process's priority (add to 'nice' value)

       F9, k
	    "Kill" process: sends a signal which is selected in	a menu,	to one
	    or a group of processes. If	processes were tagged, sends the  sig-
	    nal	to all tagged processes.  If none is tagged, sends to the cur-
	    rently selected process.

       F10, q

       I    Invert the sort order: if sort order is increasing,	switch to  de-
	    creasing, and vice-versa.

       +, - When in tree view mode, expand or collapse subtree.	When a subtree
	    is collapsed a "+" sign shows to the left of the process name.

       a (on multiprocessor machines)
	    Set	CPU affinity: mark which CPUs a	process	is allowed to use.

       u    Show only processes	owned by a specified user.

       M    Sort by memory usage (top compatibility key).

       P    Sort by processor usage (top compatibility key).

       T    Sort by time (top compatibility key).

       F    "Follow" process: if the sort order	causes the currently  selected
	    process  to	 move  in  the list, make the selection	bar follow it.
	    This is useful for monitoring a process: this way, you can keep  a
	    process  always  visible  on  screen. When a movement key is used,
	    "follow" loses effect.

       K    Hide kernel	threads: prevent the threads belonging the  kernel  to
	    be displayed in the	process	list. (This is a toggle	key.)

       H    Hide user threads: on systems that represent them differently than
	    ordinary processes (such as	recent NPTL-based systems),  this  can
	    hide  threads  from	userspace processes in the process list. (This
	    is a toggle	key.)

       p    Show full paths to running programs, where applicable. (This is  a
	    toggle key.)

	    Refresh: redraw screen and recalculate values.

	    PID	search:	type in	process	ID and the selection highlight will be
	    moved to it.

       The following columns can display data about each process. A  value  of
       '-' in all the rows indicates that a column is unsupported on your sys-
       tem, or currently unimplemented in htop.	The names below	are  the  ones
       used  in	the "Available Columns"	section	of the setup screen. If	a dif-
       ferent name is shown in htop's main screen, it is shown below in	paren-

	    The	 full command line of the process (i.e.	program	name and argu-

       PID  The	process	ID.

       STATE (S)
	    The	state of the process:
	       S for sleeping (idle)
	       R for running
	       D for disk sleep	(uninterruptible)
	       Z for zombie (waiting for parent	to read	its exit status)
	       T for traced or suspended (e.g by SIGTSTP)
	       W for paging

       PPID The	parent process ID.

       PGRP The	process's group	ID.

	    The	process's session ID.

       TTY_NR (TTY)
	    The	controlling terminal of	the process.

	    The	process	ID of the foreground process group of the  controlling

	    The	number of page faults happening	in the main memory.

	    The	 number	 of minor faults for the process's waited-for children
	    (see MINFLT	above).

	    The	number of page faults happening	out of the main	memory.

	    The	number of major	faults for the process's  waited-for  children
	    (see MAJFLT	above).

       UTIME (UTIME+)
	    The	 user  CPU  time,  which is the	amount of time the process has
	    spent executing on the CPU in user mode (i.e. everything but  sys-
	    tem	calls),	measured in clock ticks.

       STIME (STIME+)
	    The	 system	 CPU  time, which is the amount	of time	the kernel has
	    spent executing system calls on behalf of the process, measured in
	    clock ticks.

	    The	 children's  user  CPU	time,  which is	the amount of time the
	    process's waited-for children have spent executing	in  user  mode
	    (see UTIME above).

	    The	 children's  system  CPU time, which is	the amount of time the
	    kernel has spent executing system  calls  on  behalf  of  all  the
	    process's waited-for children (see STIME above).

	    The	 kernel's  internal priority for the process, usually just its
	    nice value plus twenty. Different for real-time processes.

       NICE (NI)
	    The	nice value of a	process, from 19 (low priority)	to  -20	 (high
	    priority).	A  high	value means the	process	is being nice, letting
	    others have	a higher relative priority. The	 usual	OS  permission
	    restrictions for adjusting priority	apply.

	    The	time the process was started.

	    The	ID of the CPU the process last executed	on.

       M_SIZE (VIRT)
	    The	size of	the virtual memory of the process.

	    The	 resident  set size (text + data + stack) of the process (i.e.
	    the	size of	the process's used physical memory).

       M_SHARE (SHR)
	    The	size of	the process's shared pages.

       M_TRS (CODE)
	    The	text resident set size of the process (i.e. the	 size  of  the
	    process's executable instructions).

       M_DRS (DATA)
	    The	data resident set size (data + stack) of the process (i.e. the
	    size of anything except the	process's executable instructions).

       M_LRS (LIB)
	    The	library	size of	the process.

       M_DT (DIRTY)
	    The	size of	the dirty pages	of the process.

       ST_UID (UID)
	    The	user ID	of the process owner.

	    The	percentage of the CPU time that	the process is	currently  us-

	    The	 percentage of memory the process is currently using (based on
	    the	process's resident memory size,	see M_RESIDENT above).

       USER The	username of the	process	owner, or the  user  ID	 if  the  name
	    can't be determined.

       TIME (TIME+)
	    The	 time,	measured  in clock ticks that the process has spent in
	    user and system time (see UTIME, STIME above).

       NLWP The	number of threads in the process.

       TGID The	thread group ID.

       CTID OpenVZ container ID, a.k.a virtual environment ID.

       VPID OpenVZ process ID.

       VXID VServer process ID.

       RCHAR (RD_CHAR)
	    The	number of bytes	the process has	read.

       WCHAR (WR_CHAR)
	    The	number of bytes	the process has	written.

       SYSCR (RD_SYSC)
	    The	number of read(2) syscalls for the process.

       SYSCW (WR_SYSC)
	    The	number of write(2) syscalls for	the process.

	    Bytes of read(2) I/O for the process.

	    Bytes of write(2) I/O for the process.

	    Bytes of cancelled write(2)	I/O.

	    The	I/O rate of read(2) in bytes per second, for the process.

	    The	I/O rate of write(2) in	bytes per second, for the process.

       IO_RATE (DISK R/W)
	    The	I/O rate, IO_READ_RATE + IO_WRITE_RATE (see above).

	    Which cgroup the process is	in.

       OOM  OOM	killer score.

	    The	I/O scheduling class followed by the  priority	if  the	 class
	    supports it:
	       R for Realtime
	       B for Best-effort
	       id for Idle

       All other flags
	    Currently unsupported (always displays '-').

       By  default  htop  reads	 its configuration from	the XDG-compliant path
       ~/.config/htop/htoprc --	 the  configuration  file  is  overwritten  by
       htop's in-program Setup configuration, so it should not be hand-edited.
       If no user configuration	exists htop tries to read the system-wide con-
       figuration  from	 ${prefix}/etc/htoprc and as a last resort, falls back
       to its hard coded defaults.

       You may override	the location of	the configuration file using the $HTO-
       PRC  environment	 variable (so you can have multiple configurations for
       different machines that share the same home directory, for example).

       Memory sizes in htop are	displayed as they are in tools	from  the  GNU
       Coreutils  (when	ran with the --human-readable option). This means that
       sizes are printed in powers of 1024. (e.g., 1023M = 1072693248 Bytes)

       The decision to use this	convention  was	 made  in  order  to  conserve
       screen space and	make memory size representations consistent throughout

       proc(5),	top(1),	free(1), ps(1),	uptime(1), limits.conf(5)

       htop is developed by Hisham Muhammad <>.

       This man	page was written by Bartosz Fenski <> for  the  De-
       bian  GNU/Linux distribution (but it may	be used	by others). It was up-
       dated by	Hisham Muhammad, and later by Vincent  Launchbury,  who	 wrote
       the 'Columns' section.

htop 2.0.2			     2015			       HTOP(1)


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

home | help