]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - usr.bin/top/top.h
top: add -p option and p command to only show a single process
[FreeBSD/FreeBSD.git] / usr.bin / top / top.h
1 /*
2  * $FreeBSD$
3  */
4 /*
5  *  Top - a top users display for Berkeley Unix
6  *
7  *  General (global) definitions
8  */
9
10 #ifndef TOP_H
11 #define TOP_H
12
13 #define Default_DELAY 2
14
15 /* Number of lines of header information on the standard screen */
16 extern int Header_lines;        /* 7 */
17
18 /* Maximum number of columns allowed for display */
19 #define MAX_COLS        512
20
21 /* Log base 2 of 1024 is 10 (2^10 == 1024) */
22 #define LOG1024         10
23
24 /* Special atoi routine returns either a non-negative number or one of: */
25 #define Infinity        -1
26 #define Invalid         -2
27
28 /* maximum number we can have */
29 #define Largest         0x7fffffff
30
31 /*
32  * The entire display is based on these next numbers being defined as is.
33  */
34
35 #define NUM_AVERAGES    3
36
37 /* Exit code for system errors */
38 #define TOP_EX_SYS_ERROR        23
39
40 enum displaymodes { DISP_CPU = 0, DISP_IO, DISP_MAX };
41
42 /*
43  * Format modifiers
44  */
45 #define FMT_SHOWARGS 0x00000001
46
47 extern enum displaymodes displaymode;
48
49 extern int pcpu_stats;
50 extern int  overstrike;
51
52 extern const char * myname;
53
54 extern int (*compares[])(const void*, const void*);
55
56 char* kill_procs(char *);
57 char* renice_procs(char *);
58
59 extern char copyright[];
60 /* internal routines */
61 void quit(int);
62
63
64 /*
65  *  The space command forces an immediate update.  Sometimes, on loaded
66  *  systems, this update will take a significant period of time (because all
67  *  the output is buffered).  So, if the short-term load average is above
68  *  "LoadMax", then top will put the cursor home immediately after the space
69  *  is pressed before the next update is attempted.  This serves as a visual
70  *  acknowledgement of the command.
71  */
72 #define LoadMax  5.0
73
74 /*
75  *  "Nominal_TOPN" is used as the default TOPN when 
76  *  the output is a dumb terminal.  If we didn't do this, then
77  *  we will get every
78  *  process in the system when running top on a dumb terminal (or redirected
79  *  to a file).  Note that Nominal_TOPN is a default:  it can still be
80  *  overridden on the command line, even with the value "infinity".
81  */
82 #define Nominal_TOPN    18
83
84 /*
85  *  If the local system's getpwnam interface uses random access to retrieve
86  *  a record (i.e.: 4.3 systems, Sun "yellow pages"), then defining
87  *  RANDOM_PW will take advantage of that fact.  
88  */
89
90 #define RANDOM_PW       1
91
92 #endif /* TOP_H */