📄 machine.h
字号:
/*
* This file defines the interface between top and the machine-dependent
* module. It is NOT machine dependent and should not need to be changed
* for any specific machine.
*/
#include "utils.h"
/*
* the statics struct is filled in by machine_init
*/
/*下面是os.h的内容*/
#include <sys/types.h>
#include <sys/param.h> /* This defines BSD */
#if defined(BSD) && !defined(BSD4_4) && !defined(__osf__)
# include <stdio.h>
# include <strings.h>
# define strchr(a, b) index((a), (b))
# define strrchr(a, b) rindex((a), (b))
# define memcpy(a, b, c) bcopy((b), (a), (c))
# define memzero(a, b) bzero((a), (b))
# define memcmp(a, b, c) bcmp((a), (b), (c))
#if defined(NeXT)
typedef void sigret_t;
#else
typedef int sigret_t;
#endif
/* system routines that don't return int */
char *getenv();
caddr_t malloc();
#else
# include <stdio.h>
# define setbuffer(f, b, s) setvbuf((f), (b), (b) ? _IOFBF : _IONBF, (s))
# include <string.h>
# include <memory.h>
# include <stdlib.h>
# define memzero(a, b) memset((a), 0, (b))
typedef void sigret_t;
#endif
/* some systems declare sys_errlist in stdio.h! */
#if defined(__NetBSD__) || defined(__FreeBSD__)
#if !defined(__m68k__)
# if !defined(__NetBSD132__)
#define SYS_ERRLIST_DECLARED
# endif /* __NetBSD132__ */
#endif
#endif
/*下面是top.h的内容*/
/*
* Top - a top users display for Berkeley Unix
*
* General (global) definitions
*/
/* Current major version number */
#define VERSION 3
/* Number of lines of header information on the standard screen */
#define Header_lines 6
/* Maximum number of columns allowed for display */
#define MAX_COLS 128
/* Log base 2 of 1024 is 10 (2^10 == 1024) */
#define LOG1024 10
char *itoa();
char *itoa7();
char *version_string();
/* Special atoi routine returns either a non-negative number or one of: */
#define Infinity -1
#define Invalid -2
/* maximum number we can have */
#define Largest 0x7fffffff
/*
* The entire display is based on these next numbers being defined as is.
*/
#define NUM_AVERAGES 3
/****************/
struct statics
{
char **procstate_names;
char **cpustate_names;
char **memory_names;
#ifdef ORDER
char **order_names;
#endif
};
/*
* the system_info struct is filled in by a machine dependent routine.
*/
#ifdef p_active /* uw7 define macro p_active */
#define P_ACTIVE p_pactive
#else
#define P_ACTIVE p_active
#endif
struct system_info
{
int last_pid;
double load_avg[NUM_AVERAGES];
int p_total;
int P_ACTIVE; /* number of procs considered "active" */
int *procstates;
int *cpustates;
int *memory;
};
/* cpu_states is an array of percentages * 10. For example,
the (integer) value 105 is 10.5% (or .105).
*/
/*
* the process_select struct tells get_process_info what processes we
* are interested in seeing
*/
struct process_select
{
int idle; /* show idle processes */
int system; /* show system processes */
int uid; /* only this uid (unless uid == -1) */
char *command; /* only this command (unless == NULL) */
};
/* routines defined by the machine dependent module */
char *format_header();
char *format_next_process();
/* non-int routines typically used by the machine dependent module */
char *printable();
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -