htop - an interactive process viewer
Go to file
Michael McConville ae5c01f485 Use err() rather then errx() for sysctl()
So that we can see errno. Pointed out by Michael Reed.
2016-01-02 12:17:35 -05:00
darwin Merge pull request #299 from mmcco/master 2015-11-02 08:46:40 -05:00
freebsd Regenerate platform-dependent headers. 2015-10-19 17:22:54 -02:00
linux Merge pull request #298 from patrickmarlier/issue202 2015-10-26 17:55:13 -04:00
openbsd Use err() rather then errx() for sysctl() 2016-01-02 12:17:35 -05:00
scripts Sorry about the mega-patch. 2015-01-21 23:27:31 -02:00
unsupported fix calloc() calls 2015-09-07 07:52:39 +02:00
.editorconfig add editorconfig file to give hints to editors 2015-10-05 11:13:17 +02:00
.gitignore remove autoconf files, generate by autogen.sh 2015-07-15 09:30:38 +02:00
AUTHORS Initial import. 2006-03-04 18:16:49 +00:00
Action.c Add expand/collapse on additional clicks! 2015-08-19 19:09:54 -03:00
Action.h handle clicks on panel header line 2015-03-24 23:12:43 -03:00
Affinity.c Sorry about the mega-patch. 2015-01-21 23:27:31 -02:00
Affinity.h Sorry about the mega-patch. 2015-01-21 23:27:31 -02:00
AffinityPanel.c Handle KEY_RECLICK events generated by ScreenManager 2015-08-27 18:43:22 -03:00
AffinityPanel.h Sorry about the mega-patch. 2015-01-21 23:27:31 -02:00
AvailableColumnsPanel.c Do not trust isalpha(c) for values > 255. 2015-03-23 18:14:35 -03:00
AvailableColumnsPanel.h Sorry about the mega-patch. 2015-01-21 23:27:31 -02:00
AvailableMetersPanel.c Improve feedback when moving meters. 2015-08-27 19:14:13 -03:00
AvailableMetersPanel.h Sorry about the mega-patch. 2015-01-21 23:27:31 -02:00
BatteryMeter.c Rename String to StringUtils. 2015-08-19 13:45:20 -03:00
BatteryMeter.h Move platform-dependent parts of Linux battery meter. 2014-11-27 21:04:57 -02:00
COPYING Resolve license incompatibility issues, 2010-02-24 21:13:45 +00:00
CPUMeter.c Calculate CPU averages on Darwin (See #295). 2015-10-23 13:46:21 -02:00
CPUMeter.h Calculate CPU averages on Darwin (See #295). 2015-10-23 13:46:21 -02:00
CRT.c gcc warning cleanups. 2015-10-05 11:27:44 -03:00
CRT.h Merge pull request #221 from eworm-de/define-array-size 2015-08-20 01:26:38 -03:00
CategoriesPanel.c handle clicks on panel header line 2015-03-24 23:12:43 -03:00
CategoriesPanel.h Sorry about the mega-patch. 2015-01-21 23:27:31 -02:00
ChangeLog Bring changelog up-to-date :) 2015-09-11 16:29:19 -03:00
CheckItem.c Avoid future confusions with how default values are set. 2015-08-12 17:29:32 -03:00
CheckItem.h Avoid future confusions with how default values are set. 2015-08-12 17:29:32 -03:00
ClockMeter.c get a useful tolal for clock meter 2015-08-28 10:15:00 +02:00
ClockMeter.h Changes in object model: separate class objects to store vtable. Also, nicer UTF-8 display of big numbers. 2012-12-05 15:12:20 +00:00
ColorsPanel.c Handle KEY_RECLICK events generated by ScreenManager 2015-08-27 18:43:22 -03:00
ColorsPanel.h Make the implementation of color schemes declarative. 2015-02-03 22:30:05 +01:00
ColumnsPanel.c Handle KEY_RECLICK events generated by ScreenManager 2015-08-27 18:43:22 -03:00
ColumnsPanel.h Sorry about the mega-patch. 2015-01-21 23:27:31 -02:00
DisplayOptionsPanel.c Handle KEY_RECLICK events generated by ScreenManager 2015-08-27 18:43:22 -03:00
DisplayOptionsPanel.h Changes in object model: separate class objects to store vtable. Also, nicer UTF-8 display of big numbers. 2012-12-05 15:12:20 +00:00
FunctionBar.c Clean up some needless malloc casts, convert some mallocs to callocs, and fix some style 2015-09-16 23:42:36 -04:00
FunctionBar.h Simplify constructors. 2015-03-23 19:24:34 -03:00
Hashtable.c Clean up some needless malloc casts, convert some mallocs to callocs, and fix some style 2015-09-16 23:42:36 -04:00
Hashtable.h major header cleanup 2011-12-26 21:35:57 +00:00
Header.c fix calloc() calls 2015-09-07 07:52:39 +02:00
Header.h Fix saving of header states, motion in Setup screen. 2015-03-16 23:01:21 -03:00
HostnameMeter.c BUGFIX: Fix crash when adding meters and toggling detailed CPU time. 2014-01-16 01:40:47 -02:00
HostnameMeter.h Changes in object model: separate class objects to store vtable. Also, nicer UTF-8 display of big numbers. 2012-12-05 15:12:20 +00:00
INSTALL Initial import. 2006-03-04 18:16:49 +00:00
IncSet.c Rename String to StringUtils. 2015-08-19 13:45:20 -03:00
IncSet.h incremental search and filter reintegrated! 2015-03-23 17:04:53 -03:00
ListItem.c Replace some remaining tabs 2015-09-19 12:21:22 -04:00
ListItem.h Sorry about the mega-patch. 2015-01-21 23:27:31 -02:00
LoadAverageMeter.c Add longer descriptions to available meters. 2015-02-03 22:31:44 +01:00
LoadAverageMeter.h Changes in object model: separate class objects to store vtable. Also, nicer UTF-8 display of big numbers. 2012-12-05 15:12:20 +00:00
MainPanel.c Extra checks. 2015-08-20 01:13:20 -03:00
MainPanel.h incremental search and filter reintegrated! 2015-03-23 17:04:53 -03:00
Makefile.am (Very) initial working OpenBSD port 2015-09-18 00:46:48 -04:00
MemoryMeter.c use dynamic units for text display 2015-08-27 06:13:27 +02:00
MemoryMeter.h Changes in object model: separate class objects to store vtable. Also, nicer UTF-8 display of big numbers. 2012-12-05 15:12:20 +00:00
Meter.c kilobytes is the smallest unit and never has precision 2015-08-29 21:22:46 +02:00
Meter.h make units more dynamic 2015-08-27 06:13:27 +02:00
MetersPanel.c Improve feedback when moving meters. 2015-08-27 19:14:13 -03:00
MetersPanel.h Improve feedback when moving meters. 2015-08-27 19:14:13 -03:00
NEWS cleanup old stuff 2011-11-21 02:58:34 +00:00
Object.c Compare with long, for 64-bit systems 2014-04-25 19:41:23 -03:00
Object.h Compare with long, for 64-bit systems 2014-04-25 19:41:23 -03:00
OpenFilesScreen.c Clean up some needless malloc casts, convert some mallocs to callocs, and fix some style 2015-09-16 23:42:36 -04:00
OpenFilesScreen.h Move FunctionBar inside Panel 2015-03-23 15:26:56 -03:00
Panel.c fix calloc() calls 2015-09-07 07:52:39 +02:00
Panel.h Visual tweaks: change color when following, add Broken Gray theme. 2015-04-09 15:17:20 -03:00
Process.c Make column width calculation dynamic. 2015-08-20 00:32:47 -03:00
Process.h Remove duplicate declaration. 2015-09-10 10:45:22 -03:00
ProcessList.c Merge pull request #43 from ErkiDerLoony/master 2015-08-20 02:15:04 -03:00
ProcessList.h Fixes to use platform-specific compare routines. 2015-04-09 15:40:46 -03:00
README add missing blank 2015-08-28 11:29:33 +02:00
README.md Add README.md for Github 2014-02-03 09:11:39 -02:00
RichString.c Fixes for color glitches in ncurses ABI6. 2015-08-27 21:45:02 -03:00
RichString.h Fixes for color glitches in ncurses ABI6. 2015-08-27 21:45:02 -03:00
ScreenManager.c Add expand/collapse on additional clicks! 2015-08-19 19:09:54 -03:00
ScreenManager.h Move FunctionBar inside Panel 2015-03-23 15:26:56 -03:00
Settings.c Rename String to StringUtils. 2015-08-19 13:45:20 -03:00
Settings.h Merge pull request #148 from nckx/display-basename 2015-08-12 17:16:50 -03:00
SignalsPanel.c attempt to return to upstream/master 2015-10-06 19:39:01 +02:00
SignalsPanel.h Changes in object model: separate class objects to store vtable. Also, nicer UTF-8 display of big numbers. 2012-12-05 15:12:20 +00:00
StringUtils.c (Very) initial working OpenBSD port 2015-09-18 00:46:48 -04:00
StringUtils.h Fix comment. 2015-08-19 13:58:29 -03:00
SwapMeter.c use dynamic units for text display 2015-08-27 06:13:27 +02:00
SwapMeter.h use dynamic units for text display 2015-08-27 06:13:27 +02:00
TESTPLAN Fix failing stuff. 2015-04-09 15:56:43 -03:00
TasksMeter.c Major advances in FreeBSD port. 2015-03-16 23:02:03 -03:00
TasksMeter.h Changes in object model: separate class objects to store vtable. Also, nicer UTF-8 display of big numbers. 2012-12-05 15:12:20 +00:00
TraceScreen.c Clean up some needless malloc casts, convert some mallocs to callocs, and fix some style 2015-09-16 23:42:36 -04:00
TraceScreen.h Move FunctionBar inside Panel 2015-03-23 15:26:56 -03:00
UptimeMeter.c Make UptimeMeter cross-platform again. 2014-11-27 19:41:14 -02:00
UptimeMeter.h Move UptimeMeter back into cross-platform code. 2014-11-27 19:34:47 -02:00
UsersTable.c major header cleanup 2011-12-26 21:35:57 +00:00
UsersTable.h major header cleanup 2011-12-26 21:35:57 +00:00
Vector.c Clean up some needless malloc casts, convert some mallocs to callocs, and fix some style 2015-09-16 23:42:36 -04:00
Vector.h Changes in object model: separate class objects to store vtable. Also, nicer UTF-8 display of big numbers. 2012-12-05 15:12:20 +00:00
autogen.sh ignore which errors 2015-09-17 08:44:34 +02:00
configure.ac (Very) initial working OpenBSD port 2015-09-18 00:46:48 -04:00
htop.1.in Improve prose a bit. 2015-10-19 17:26:53 -02:00
htop.c gcc warning cleanups. 2015-10-05 11:27:44 -03:00
htop.desktop Update htop.desktop 2015-09-19 00:12:41 +02:00
htop.h Sorry about the mega-patch. 2015-01-21 23:27:31 -02:00
htop.png Updated icon! 2014-04-09 14:47:58 -03:00
test_spec.lua 84.9% test coverage in the wip branch! 2015-04-08 21:27:52 -03:00

README.md

htop

by Hisham Muhammad hisham@gobolinux.org

2004 - 2015

Introduction

This is htop, an interactive process viewer. It requires ncurses. It is developed primarily on Linux, but we also have code for running under FreeBSD and Mac OS X (help and testing are wanted for these platforms!)

This software has evolved considerably over the years, and is reasonably complete, but there is always room for improvement.

Comparison between 'htop' and classic 'top'

  • In 'htop' you can scroll the list vertically and horizontally to see all processes and full command lines.
  • In 'top' you are subject to a delay for each unassigned key you press (especially annoying when multi-key escape sequences are triggered by accident).
  • 'htop' starts faster ('top' seems to collect data for a while before displaying anything).
  • In 'htop' you don't need to type the process number to kill a process, in 'top' you do.
  • In 'htop' you don't need to type the process number or the priority value to renice a process, in 'top' you do.
  • In 'htop' you can kill multiple processes at once.
  • 'top' is older, hence, more tested.

Compilation instructions

This program is distributed as a standard autotools-based package. See the INSTALL file for detailed instructions, but you are probably used to the common ./configure/make/make install routine.

When fetching the code from the development repository, you need to run the ./autogen.sh script, which in turn requires autotools to be installed.

See the manual page (man htop) or the on-line help ('F1' or 'h' inside htop) for a list of supported key commands.

if not all keys work check your curses configuration.