Jim Warner
46aa96e438
top: provide an unlimited capacity for field additions
With each of those references shown below, the maximum number of fields was increased. However, with a 'char' based implementation we're nearing the upper limits of total displayable fields. We currently use 76 of a max of 86 fields. With extra effort, 94 might be possible. But 94 is the absolute upper limit of possible fields! Moreover, the current implementation yields characters that were unprintable in the rcfile. This could become an issue with that 'inspect' feature when/if an rcfile is edited to add entries (as opposed to using 'echo'). So, with this commit the internals of field management has been completely reimagined. It is now based on the integer type, not a character. And whereas that former design used the high order bit to show the 'on' state, thus yielding an unprintable character, the new design uses the low order bit for the state. As such, numbers will be kept small and an even number will be an 'off' field whereas an odd number will become an 'on' state. The bottom line is that this new design will afford an unlimited number of new fields while keeping an rcfile completely free of that potential unprintable garbage. And it is embarrassingly easy to extend the maximum of supportable fields from the currently implemented 100. Who knows, maybe a future patch will prove this point. [ unless a subsequent commit proves otherwise, given ] [ the dramatic differences in rcfile contents, i had ] [ to abandon the practice of supporting old rcfiles. ] Reference(s): . Nov, 2013 - RCF_PLUS_H introduced commit af4e6533ba5ee04f414bc8774df31ddef38e8880 . Jul, 2016 - RCF_PLUS_J introduced commit d5c5051fb395e8bebaadb42add79ca99a16afe85 Signed-off-by: Jim Warner <james.warner@comcast.net>
…
…
…
procps
procps is a set of command line and full-screen utilities that provide information out of the pseudo-filesystem most commonly located at /proc. This filesystem provides a simple interface to the kernel data structures. The programs of procps generally concentrate on the structures that describe the processess running on the system.
The following programs are found in procps:
- free - Report the amount of free and used memory in the system
- kill - Send a signal to a process based on PID
- pgrep - List processes based on name or other attributes
- pkill - Send a signal to a process based on name or other attributes
- pmap - Report memory map of a process
- ps - Report information of processes
- pwdx - Report current directory of a process
- skill - Obsolete version of pgrep/pkill
- slabtop - Display kernel slab cache information in real time
- snice - Renice a process
- sysctl - Read or Write kernel parameters at run-time
- tload - Graphical representation of system load average
- top - Dynamic real-time view of running processes
- uptime - Display how long the system has been running
- vmstat - Report virtual memory statistics
- w - Report logged in users and what they are doing
- watch - Execute a program periodically, showing output fullscreen
Reporting Bugs
There are a few ways of reporting bugs or feature requests:
- Your distribution's bug reporter. If you are using a distribution your first port of call is their bug tracker. This is because each distribution has their own patches and way of dealing with bugs. Also bug reporting often does not need any subscription to websites.
- GitLab Issues - To the left of this page is the issue tracker. You can report bugs here.
- Email list - We have an email list (see below) where you can report bugs. The problem with this method is bug reports often get lost and cannot be tracked. This is especially a big problem when its something that will take time to resolve.
If you need to report bugs, there is more details on the Bug Reporting page.
Email List
The email list for the developers and users of procps is found at http://www.freelists.org/archive/procps/ This email list discusses the development of procps and is used by distributions to also forward or discuss bugs.
Description
Command line and full screen utilities for browsing procfs, a "pseudo" file system dynamically generated by Linux to provide information about the status of entries in its process table.
Languages
C
97.2%
Makefile
1%
Shell
0.9%
M4
0.9%