Minix1.5/kernel/glo.h

Compare this file to the similar file:
Show the results in this format:

/* Global variables used in the kernel. */

/* EXTERN is defined as extern except in table.c. */
#ifdef _TABLE
#undef EXTERN
#define EXTERN
#endif

/* Kernel memory. */
EXTERN phys_bytes code_base;	/* base of kernel code */
EXTERN phys_bytes data_base;	/* base of kernel data */

/* Low level interrupt communications. */
EXTERN struct proc *held_head;	/* head of queue of held-up interrupts */
EXTERN struct proc *held_tail;	/* tail of queue of held-up interrupts */
EXTERN unsigned char k_reenter;	/* kernel reentry count (entry count less 1)*/

/* Process table.  Here to stop too many things having to include proc.h. */
EXTERN struct proc *proc_ptr;	/* pointer to currently running process */

/* Signals. */
EXTERN int sig_procs;		/* number of procs with p_pending != 0 */

/* Miscellaneous. */
extern u16_t sizes[8];		/* table filled in by build */
extern struct tasktab tasktab[];	/* see table.c */
extern char t_stack[];		/* see table.c */

#if (CHIP == INTEL)

/* Machine type. */
EXTERN int pc_at;		/* PC-AT compatible hardware interface */
EXTERN int ps;			/* PS/2 */
EXTERN int ps_mca;		/* PS/2 with Micro Channel */
EXTERN int port_65;		/* saved contents of Planar Control Register */
EXTERN unsigned processor;	/* 86, 186, 286, 386, ... */
EXTERN int protected_mode;	/* nonzero if running in Intel protected mode*/
extern int using_bios;		/* nonzero to force real mode (for bios_wini)*/

/* Video cards and keyboard types. */
EXTERN int color;		/* nonzero if console is color, 0 if mono */
EXTERN int ega;			/* nonzero if console is EGA */
EXTERN int scan_code;		/* scan code of key pressed to start minix */
EXTERN int snow;		/* nonzero if screen needs snow removal */

/* Memory sizes. */
EXTERN unsigned ext_memsize;	/* initialized by assembler startup code */
EXTERN unsigned low_memsize;
EXTERN phys_clicks mem_base[NR_MEMS];	/* bases of chunks of memory */
EXTERN phys_clicks mem_size[NR_MEMS];	/* sizes of chunks of memory */
EXTERN unsigned char mem_type[NR_MEMS];	/* types of chunks of memory */

/* Miscellaneous. */
EXTERN u16_t Ax, Bx, Cx, Dx, Es;	/* to hold registers for BIOS calls */
EXTERN struct farptr_s break_vector;	/* debugger breakpoint hook */
EXTERN int db_enabled;		/* nonzero if external debugger is enabled */
EXTERN int db_exists;		/* nonzero if external debugger exists */
extern struct segdesc_s gdt[];	/* global descriptor table for protected mode*/
EXTERN struct farptr_s sstep_vector;	/* debugger single-step hook */
EXTERN u16_t vec_table[VECTOR_BYTES / sizeof(u16_t)]; /* copy of BIOS vectors*/

#endif /* (CHIP == INTEL) */

#if (CHIP == M68000)
EXTERN int flush_flag;		/* tells clock when to flush the tty buf */
extern unsigned char font8[];	/* 8 pixel wide font table */
extern unsigned char font16[];	/* 16 pixel wide font table */
extern int keypad;		/* Flag for keypad mode */
extern int app_mode;		/* Flag for arrow key application mode */
#endif