xref: /freebsd/usr.bin/top/top.h (revision e9dcd83155b39327497e7a2577d8990074144ff3)
1 /*-
2  * Top - a top users display for Berkeley Unix
3  *
4  * $FreeBSD$
5  */
6 
7 #ifndef TOP_H
8 #define TOP_H
9 
10 #include <unistd.h>
11 
12 /* Number of lines of header information on the standard screen */
13 extern int Header_lines;
14 
15 /* Special atoi routine returns either a non-negative number or one of: */
16 #define Infinity	-1
17 #define Invalid		-2
18 
19 /* maximum number we can have */
20 #define Largest		0x7fffffff
21 
22 /* Exit code for system errors */
23 #define TOP_EX_SYS_ERROR	23
24 
25 enum displaymodes { DISP_CPU = 0, DISP_IO, DISP_MAX };
26 
27 /*
28  * Format modifiers
29  */
30 #define FMT_SHOWARGS 0x00000001
31 
32 extern enum displaymodes displaymode;
33 
34 extern int pcpu_stats;
35 extern int overstrike;
36 extern pid_t mypid;
37 
38 extern int (*compares[])(const void*, const void*);
39 
40 const char* kill_procs(char *);
41 const char* renice_procs(char *);
42 
43 extern char copyright[];
44 
45 void quit(int);
46 
47 /*
48  *  The space command forces an immediate update.  Sometimes, on loaded
49  *  systems, this update will take a significant period of time (because all
50  *  the output is buffered).  So, if the short-term load average is above
51  *  "LoadMax", then top will put the cursor home immediately after the space
52  *  is pressed before the next update is attempted.  This serves as a visual
53  *  acknowledgement of the command.
54  */
55 #define LoadMax  5.0
56 
57 /*
58  *  "Nominal_TOPN" is used as the default TOPN when
59  *  the output is a dumb terminal.  If we didn't do this, then
60  *  we will get every
61  *  process in the system when running top on a dumb terminal (or redirected
62  *  to a file).  Note that Nominal_TOPN is a default:  it can still be
63  *  overridden on the command line, even with the value "infinity".
64  */
65 #define Nominal_TOPN	18
66 
67 #endif /* TOP_H */
68