You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
Hisham Muhammad 5f9e16b9da Unstage/gitignore INSTALL since it's regenerated by autogen.sh 8 years ago
darwin macOS: fix the switched version test (#772) 8 years ago
dragonflybsd Security review: check results of snprintf. 9 years ago
freebsd Security review: check results of snprintf. 9 years ago
linux Fix #define to match header when regenerating with MakeHeader.py (#789) 8 years ago
openbsd OpenBSD: read Battery data 8 years ago
scripts MakeHeader.py: Fix for non-utf8 environments (#770) 8 years ago
solaris Solaris: update proc state letters to reflect Solaris usage 8 years ago
unsupported Remove unused function from unsupported/ 8 years ago
.editorconfig add editorconfig file to give hints to editors 11 years ago
.gitignore Unstage/gitignore INSTALL since it's regenerated by autogen.sh 8 years ago
.travis.yml travis-ci should really detect autogen.sh... 10 years ago
AUTHORS
Action.c Collapse current subtree pressing Backspace 8 years ago
Action.h Auto-follow process after a search. 10 years ago
Affinity.c Portable affinity using hwloc 10 years ago
Affinity.h Portable affinity using hwloc 10 years ago
AffinityPanel.c Security review: check results of snprintf. 9 years ago
AffinityPanel.h Sorry about the mega-patch. 11 years ago
AvailableColumnsPanel.c Security review: check results of snprintf. 9 years ago
AvailableColumnsPanel.h Sorry about the mega-patch. 11 years ago
AvailableMetersPanel.c Security review: check results of snprintf. 9 years ago
AvailableMetersPanel.h Sorry about the mega-patch. 11 years ago
BatteryMeter.c Security review: check results of snprintf. 9 years ago
BatteryMeter.h Move platform-dependent parts of Linux battery meter. 11 years ago
CONTRIBUTING.md Add Contributing Guide! 8 years ago
COPYING
CPUMeter.c Security review: check results of snprintf. 9 years ago
CPUMeter.h Calculate CPU averages on Darwin (See #295). 11 years ago
CRT.c Fix color behavior on some terminals. 8 years ago
CRT.h Fix color behavior on some terminals. 8 years ago
CategoriesPanel.c Mark some things as const 9 years ago
CategoriesPanel.h Sorry about the mega-patch. 11 years ago
ChangeLog Update ChangeLog 8 years ago
CheckItem.c Avoid future confusions with how default values are set. 11 years ago
CheckItem.h Avoid future confusions with how default values are set. 11 years ago
ClockMeter.c Rename Meter.setValues() functions to updateValues() 10 years ago
ClockMeter.h
ColorsPanel.c Fix color behavior on some terminals. 8 years ago
ColorsPanel.h Make the implementation of color schemes declarative. 11 years ago
ColumnsPanel.c fix fallthough comments for GCC 7.x 9 years ago
ColumnsPanel.h Sorry about the mega-patch. 11 years ago
DisplayOptionsPanel.c Mark some things as const 9 years ago
DisplayOptionsPanel.h
EnvScreen.c Security review: make privilege dropping-restoring optional. 9 years ago
EnvScreen.h refactor *Screen classes, add InfoScreen superclass 10 years ago
FunctionBar.c Mark some things as const 9 years ago
FunctionBar.h Mark some things as const 9 years ago
Hashtable.c Check for failure in allocations. 10 years ago
Hashtable.h
Header.c Security review: check results of snprintf. 9 years ago
Header.h Fix macro Header_forEachColumn 10 years ago
HostnameMeter.c Rename Meter.setValues() functions to updateValues() 10 years ago
HostnameMeter.h
IncSet.c Mark some things as const 9 years ago
IncSet.h Auto-follow process after a search. 10 years ago
InfoScreen.c Replace size_t with int/void* union 8 years ago
InfoScreen.h refactor *Screen classes, add InfoScreen superclass 10 years ago
ListItem.c Security review: check results of snprintf. 9 years ago
ListItem.h Sorry about the mega-patch. 11 years ago
LoadAverageMeter.c Security review: check results of snprintf. 9 years ago
LoadAverageMeter.h
MainPanel.c Replace size_t with int/void* union 8 years ago
MainPanel.h Replace size_t with int/void* union 8 years ago
Makefile.am Disable 'make dist' when pkg.m4 is unused in configure 8 years ago
MemoryMeter.c Rename Meter.setValues() functions to updateValues() 10 years ago
MemoryMeter.h
Meter.c Fix out-of-bounds read 8 years ago
Meter.h Rename Meter.setValues() functions to updateValues() 10 years ago
MetersPanel.c fix fallthough comments for GCC 7.x 9 years ago
MetersPanel.h Mouse-friendly functions bar for meters panel 10 years ago
NEWS
Object.c Check for failure in allocations. 10 years ago
Object.h Check for failure in allocations. 10 years ago
OpenFilesScreen.c Use fork/exec instead of popen to run lsof (#757) 8 years ago
OpenFilesScreen.h refactor *Screen classes, add InfoScreen superclass 10 years ago
Panel.c Handle unexpected values for character passed to isalnum 8 years ago
Panel.h Added Ctrl+A and Ctrl+E to go to beginning and end of line. 10 years ago
Process.c Collapse current subtree pressing Backspace 8 years ago
Process.h Collapse current subtree pressing Backspace 8 years ago
ProcessList.c Collapse current subtree pressing Backspace 8 years ago
ProcessList.h Portable affinity using hwloc 10 years ago
README Point users to the official release tarballs. 10 years ago
README.md
RichString.c Protect against overflows in RichString_setAttrn 8 years ago
RichString.h Protect against overflows in RichString_setAttrn 8 years ago
ScreenManager.c Added Ctrl+A and Ctrl+E to go to beginning and end of line. 10 years ago
ScreenManager.h Move FunctionBar inside Panel 11 years ago
Settings.c Make settings file finding sequence more straightforward 8 years ago
Settings.h Merge pull request #148 from nckx/display-basename 11 years ago
SignalsPanel.c Fix overflow for signals >= 100. 8 years ago
SignalsPanel.h
StringUtils.c free(NULL) is a valid no-op, so let's make String_freeArray(NULL) valid too. 10 years ago
StringUtils.h Optimize Strings_startWith() 10 years ago
SwapMeter.c Rename Meter.setValues() functions to updateValues() 10 years ago
SwapMeter.h use dynamic units for text display 11 years ago
TESTPLAN Fix failing stuff. 11 years ago
TasksMeter.c htop scans /proc to determine how many running tasks exist. Since that 8 years ago
TasksMeter.h
TraceScreen.c strace: increase string length 8 years ago
TraceScreen.h refactor *Screen classes, add InfoScreen superclass 10 years ago
UptimeMeter.c Security review: check results of snprintf. 9 years ago
UptimeMeter.h Move UptimeMeter back into cross-platform code. 11 years ago
UsersTable.c Check for failure in allocations. 10 years ago
UsersTable.h
Vector.c Optimize Vector_size on non-debug builds 8 years ago
Vector.h Optimize Vector_size on non-debug builds 8 years ago
XAlloc.c Security review: check results of snprintf. 9 years ago
XAlloc.h Security review: check results of snprintf. 9 years ago
autogen.sh Simplify autogen.sh 10 years ago
configure.ac Disable 'make dist' when pkg.m4 is unused in configure 8 years ago
htop.1.in Mention the "c" key (tag subtree) in the man 8 years ago
htop.c fix option string 8 years ago
htop.desktop Add Comment[zh_CN] and GenericName[zh_CN] into htop.desktop 9 years ago
htop.h Sorry about the mega-patch. 11 years ago
htop.png Updated icon! 12 years ago
test_spec.lua Fix typos, by @Gelma. 10 years ago

README.md

Build Status PayPal donate

htop

by Hisham Muhammad hisham@gobolinux.org (2004 - 2016)

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.

When compiling from a release tarball, run:

./configure && make

For compiling sources downloaded from the Git repository, run:

./autogen.sh && ./configure && make

By default make install will install into /usr/local, for changing the path use ./configure --prefix=/some/path.

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.

License

GNU General Public License, version 2 (GPL-2.0)