htop - an interactive process viewer
Go to file
Christian Hesse e8970b6f32 fix calloc() calls
* size_t nmemb (number of elements) first, then size_t size
* do not assume char is size 1 but use sizeof()
* allocate for char, not pointer to char (found by Michael McConville,
  fixes #261)
2015-09-07 07:52:39 +02:00
darwin fix calloc() calls 2015-09-07 07:52:39 +02:00
freebsd fix calloc() calls 2015-09-07 07:52:39 +02:00
linux fix calloc() calls 2015-09-07 07:52:39 +02: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
.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 remove extra space in dual meters without margins 2015-08-27 22:40:35 +02:00
CPUMeter.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
CRT.c Merge pull request #221 from eworm-de/define-array-size 2015-08-20 01:26:38 -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 Update changelog. 2014-05-03 18:09:31 -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 Simplify constructors. 2015-03-23 19:24:34 -03:00
FunctionBar.h Simplify constructors. 2015-03-23 19:24:34 -03:00
Hashtable.c Fix order of calloc arguments. 2014-01-16 18:51:16 -02: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 remove UTF-8 code when compiling with --disable-unicode 2015-08-19 22:42:34 +02: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 Added darwin with working battery meter 2015-08-19 13:47:26 -03: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 Rename String to StringUtils. 2015-08-19 13:45:20 -03: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 Make column width calculation dynamic. 2015-08-20 00:32:47 -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 Simplify constructors. 2015-03-23 19:24:34 -03: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 Fix comment. 2015-08-19 13:58:29 -03: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 Rename String to StringUtils. 2015-08-19 13:45:20 -03: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 This assert is no longer valid. 2015-04-08 21:27:36 -03: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 This seems necessary. 2010-11-24 18:43:02 +00:00
configure.ac Make Unicode strings safe for ncurses 6 ABI. 2015-08-20 00:31:48 -03:00
htop.1.in A more portable version of the note suggested in #113. 2015-08-20 02:17:11 -03:00
htop.c remove duplicate code 2015-07-16 08:17:12 +02:00
htop.desktop Add translations for desktop file. 2015-08-12 18:05:46 -03: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.