1HTOP(1) Utils HTOP(1)
2
3
4
6 htop - interactive process viewer
7
9 htop [-dChustv]
10
12 Htop is a free (GPL) ncurses-based process viewer for Linux.
13
14 It is similar to top, but allows you to scroll vertically and horizon‐
15 tally, so you can see all the processes running on the system, along
16 with their full command lines, as well as viewing them as a process
17 tree, selecting multiple processes and acting on them all at once.
18
19 Tasks related to processes (killing, renicing) can be done without
20 entering their PIDs.
21
23 Mandatory arguments to long options are mandatory for short options
24 too.
25
26 -d --delay=DELAY
27 Delay between updates, in tenths of seconds
28
29 -C --no-color --no-colour
30 Start htop in monochrome mode
31
32 -h --help
33 Display a help message and exit
34
35 -p --pid=PID,PID...
36 Show only the given PIDs
37
38 -s --sort-key COLUMN
39 Sort by this column (use --sort-key help for a column list)
40
41 -u --user=USERNAME
42 Show only the processes of a given user
43
44 -v --version
45 Output version information and exit
46
47 -t --tree
48 Show processes in tree view
49
51 The following commands are supported while in htop:
52
53 Up, Alt-k
54 Select (highlight) the previous process in the process list.
55 Scroll the list if necessary.
56
57 Down, Alt-j
58 Select (highlight) the next process in the process list. Scroll
59 the list if necessary.
60
61 Left, Alt-h
62 Scroll the process list left.
63
64 Right, Alt-l
65 Scroll the process list right.
66
67 PgUp, PgDn
68 Scroll the process list up or down one window.
69
70 Home Scroll to the top of the process list and select the first
71 process.
72
73 End Scroll to the bottom of the process list and select the last
74 process.
75
76 Ctrl-A, ^
77 Scroll left to the beginning of the process entry (i.e. beginning
78 of line).
79
80 Ctrl-E, $
81 Scroll right to the end of the process entry (i.e. end of line).
82
83 Space
84 Tag or untag a process. Commands that can operate on multiple pro‐
85 cesses, like "kill", will then apply over the list of tagged pro‐
86 cesses, instead of the currently highlighted one.
87
88 U Untag all processes (remove all tags added with the Space key).
89
90 s Trace process system calls: if strace(1) is installed, pressing
91 this key will attach it to the currently selected process, pre‐
92 senting a live update of system calls issued by the process.
93
94 l Display open files for a process: if lsof(1) is installed, press‐
95 ing this key will display the list of file descriptors opened by
96 the process.
97
98 F1, h, ?
99 Go to the help screen
100
101 F2, S
102 Go to the setup screen, where you can configure the meters dis‐
103 played at the top of the screen, set various display options,
104 choose among color schemes, and select which columns are dis‐
105 played, in which order.
106
107 F3, /
108 Incrementally search the command lines of all the displayed pro‐
109 cesses. The currently selected (highlighted) command will update
110 as you type. While in search mode, pressing F3 will cycle through
111 matching occurrences.
112
113 F4, \
114 Incremental process filtering: type in part of a process command
115 line and only processes whose names match will be shown. To cancel
116 filtering, enter the Filter option again and press Esc.
117
118 F5, t
119 Tree view: organize processes by parenthood, and layout the rela‐
120 tions between them as a tree. Toggling the key will switch between
121 tree and your previously selected sort view. Selecting a sort view
122 will exit tree view.
123
124 F6 On sorted view, select a field for sorting, also accessible
125 through < and >. The current sort field is indicated by a high‐
126 light in the header. On tree view, expand or collapse the current
127 subtree. A "+" indicator in the tree node indicates that it is
128 collapsed.
129
130 F7, ]
131 Increase the selected process's priority (subtract from 'nice'
132 value). This can only be done by the superuser.
133
134 F8, [
135 Decrease the selected process's priority (add to 'nice' value)
136
137 F9, k
138 "Kill" process: sends a signal which is selected in a menu, to one
139 or a group of processes. If processes were tagged, sends the sig‐
140 nal to all tagged processes. If none is tagged, sends to the cur‐
141 rently selected process.
142
143 F10, q
144 Quit
145
146 I Invert the sort order: if sort order is increasing, switch to
147 decreasing, and vice-versa.
148
149 +, - When in tree view mode, expand or collapse subtree. When a subtree
150 is collapsed a "+" sign shows to the left of the process name.
151
152 a (on multiprocessor machines)
153 Set CPU affinity: mark which CPUs a process is allowed to use.
154
155 u Show only processes owned by a specified user.
156
157 M Sort by memory usage (top compatibility key).
158
159 P Sort by processor usage (top compatibility key).
160
161 T Sort by time (top compatibility key).
162
163 F "Follow" process: if the sort order causes the currently selected
164 process to move in the list, make the selection bar follow it.
165 This is useful for monitoring a process: this way, you can keep a
166 process always visible on screen. When a movement key is used,
167 "follow" loses effect.
168
169 K Hide kernel threads: prevent the threads belonging the kernel to
170 be displayed in the process list. (This is a toggle key.)
171
172 H Hide user threads: on systems that represent them differently than
173 ordinary processes (such as recent NPTL-based systems), this can
174 hide threads from userspace processes in the process list. (This
175 is a toggle key.)
176
177 p Show full paths to running programs, where applicable. (This is a
178 toggle key.)
179
180 Ctrl-L
181 Refresh: redraw screen and recalculate values.
182
183 Numbers
184 PID search: type in process ID and the selection highlight will be
185 moved to it.
186
187
189 The following columns can display data about each process. A value of
190 '-' in all the rows indicates that a column is unsupported on your sys‐
191 tem, or currently unimplemented in htop. The names below are the ones
192 used in the "Available Columns" section of the setup screen. If a dif‐
193 ferent name is shown in htop's main screen, it is shown below in paren‐
194 thesis.
195
196 Command
197 The full command line of the process (i.e. program name and argu‐
198 ments).
199
200 PID The process ID.
201
202 STATE (S)
203 The state of the process:
204 S for sleeping (idle)
205 R for running
206 D for disk sleep (uninterruptible)
207 Z for zombie (waiting for parent to read its exit status)
208 T for traced or suspended (e.g by SIGTSTP)
209 W for paging
210
211 PPID The parent process ID.
212
213 PGRP The process's group ID.
214
215 SESSION (SID)
216 The process's session ID.
217
218 TTY_NR (TTY)
219 The controlling terminal of the process.
220
221 TPGID
222 The process ID of the foreground process group of the controlling
223 terminal.
224
225 MINFLT
226 The number of page faults happening in the main memory.
227
228 CMINFLT
229 The number of minor faults for the process's waited-for children
230 (see MINFLT above).
231
232 MAJFLT
233 The number of page faults happening out of the main memory.
234
235 CMAJFLT
236 The number of major faults for the process's waited-for children
237 (see MAJFLT above).
238
239 UTIME (UTIME+)
240 The user CPU time, which is the amount of time the process has
241 spent executing on the CPU in user mode (i.e. everything but sys‐
242 tem calls), measured in clock ticks.
243
244 STIME (STIME+)
245 The system CPU time, which is the amount of time the kernel has
246 spent executing system calls on behalf of the process, measured in
247 clock ticks.
248
249 CUTIME (CUTIME+)
250 The children's user CPU time, which is the amount of time the
251 process's waited-for children have spent executing in user mode
252 (see UTIME above).
253
254 CSTIME (CSTIME+)
255 The children's system CPU time, which is the amount of time the
256 kernel has spent executing system calls on behalf of all the
257 process's waited-for children (see STIME above).
258
259 PRIORITY (PRI)
260 The kernel's internal priority for the process, usually just its
261 nice value plus twenty. Different for real-time processes.
262
263 NICE (NI)
264 The nice value of a process, from 19 (low priority) to -20 (high
265 priority). A high value means the process is being nice, letting
266 others have a higher relative priority. The usual OS permission
267 restrictions for adjusting priority apply.
268
269 STARTTIME (START)
270 The time the process was started.
271
272 PROCESSOR (CPU)
273 The ID of the CPU the process last executed on.
274
275 M_SIZE (VIRT)
276 The size of the virtual memory of the process.
277
278 M_RESIDENT (RES)
279 The resident set size (text + data + stack) of the process (i.e.
280 the size of the process's used physical memory).
281
282 M_SHARE (SHR)
283 The size of the process's shared pages.
284
285 M_TRS (CODE)
286 The text resident set size of the process (i.e. the size of the
287 process's executable instructions).
288
289 M_DRS (DATA)
290 The data resident set size (data + stack) of the process (i.e. the
291 size of anything except the process's executable instructions).
292
293 M_LRS (LIB)
294 The library size of the process.
295
296 M_DT (DIRTY)
297 The size of the dirty pages of the process.
298
299 ST_UID (UID)
300 The user ID of the process owner.
301
302 PERCENT_CPU (CPU%)
303 The percentage of the CPU time that the process is currently
304 using.
305
306 PERCENT_MEM (MEM%)
307 The percentage of memory the process is currently using (based on
308 the process's resident memory size, see M_RESIDENT above).
309
310 USER The username of the process owner, or the user ID if the name
311 can't be determined.
312
313 TIME (TIME+)
314 The time, measured in clock ticks that the process has spent in
315 user and system time (see UTIME, STIME above).
316
317 NLWP The number of threads in the process.
318
319 TGID The thread group ID.
320
321 CTID OpenVZ container ID, a.k.a virtual environment ID.
322
323 VPID OpenVZ process ID.
324
325 VXID VServer process ID.
326
327 RCHAR (RD_CHAR)
328 The number of bytes the process has read.
329
330 WCHAR (WR_CHAR)
331 The number of bytes the process has written.
332
333 SYSCR (RD_SYSC)
334 The number of read(2) syscalls for the process.
335
336 SYSCW (WR_SYSC)
337 The number of write(2) syscalls for the process.
338
339 RBYTES (IO_RBYTES)
340 Bytes of read(2) I/O for the process.
341
342 WBYTES (IO_WBYTES)
343 Bytes of write(2) I/O for the process.
344
345 CNCLWB (IO_CANCEL)
346 Bytes of cancelled write(2) I/O.
347
348 IO_READ_RATE (DISK READ)
349 The I/O rate of read(2) in bytes per second, for the process.
350
351 IO_WRITE_RATE (DISK WRITE)
352 The I/O rate of write(2) in bytes per second, for the process.
353
354 IO_RATE (DISK R/W)
355 The I/O rate, IO_READ_RATE + IO_WRITE_RATE (see above).
356
357 CGROUP
358 Which cgroup the process is in.
359
360 OOM OOM killer score.
361
362 IO_PRIORITY (IO)
363 The I/O scheduling class followed by the priority if the class
364 supports it:
365 R for Realtime
366 B for Best-effort
367 id for Idle
368
369 PERCENT_CPU_DELAY (CPUD%)
370 The percentage of time spent waiting for a CPU (while runnable).
371 Requires CAP_NET_ADMIN.
372
373 PERCENT_IO_DELAY (IOD%)
374 The percentage of time spent waiting for the completion of syn‐
375 chronous block I/O. Requires CAP_NET_ADMIN.
376
377 PERCENT_SWAP_DELAY (SWAPD%)
378 The percentage of time spent swapping in pages. Requires
379 CAP_NET_ADMIN.
380
381 All other flags
382 Currently unsupported (always displays '-').
383
384
386 By default htop reads its configuration from the XDG-compliant path
387 ~/.config/htop/htoprc -- the configuration file is overwritten by
388 htop's in-program Setup configuration, so it should not be hand-edited.
389 If no user configuration exists htop tries to read the system-wide con‐
390 figuration from /etc/htoprc and as a last resort, falls back to its
391 hard coded defaults.
392
393 You may override the location of the configuration file using the $HTO‐
394 PRC environment variable (so you can have multiple configurations for
395 different machines that share the same home directory, for example).
396
397
399 Memory sizes in htop are displayed as they are in tools from the GNU
400 Coreutils (when ran with the --human-readable option). This means that
401 sizes are printed in powers of 1024. (e.g., 1023M = 1072693248 Bytes)
402
403 The decision to use this convention was made in order to conserve
404 screen space and make memory size representations consistent throughout
405 htop.
406
407
409 proc(5), top(1), free(1), ps(1), uptime(1), limits.conf(5)
410
411
413 htop is developed by Hisham Muhammad <hisham@gobolinux.org>.
414
415 This man page was written by Bartosz Fenski <fenio@o2.pl> for the
416 Debian GNU/Linux distribution (but it may be used by others). It was
417 updated by Hisham Muhammad, and later by Vincent Launchbury, who wrote
418 the 'Columns' section.
419
420
421
422htop 2.2.0 2015 HTOP(1)