The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/kernel/glo.h

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 #ifndef GLO_H
    2 #define GLO_H
    3 
    4 /* Global variables used in the kernel. This file contains the declarations;
    5  * storage space for the variables is allocated in table.c, because EXTERN is
    6  * defined as extern unless the _TABLE definition is seen. We rely on the 
    7  * compiler's default initialization (0) for several global variables. 
    8  */
    9 #ifdef _TABLE
   10 #undef EXTERN
   11 #define EXTERN
   12 #endif
   13 
   14 #include <minix/config.h>
   15 #include "config.h"
   16 
   17 /* Variables relating to shutting down MINIX. */
   18 EXTERN char kernel_exception;           /* TRUE after system exceptions */
   19 EXTERN char shutdown_started;           /* TRUE after shutdowns / reboots */
   20 
   21 /* Kernel information structures. This groups vital kernel information. */
   22 EXTERN phys_bytes aout;                 /* address of a.out headers */
   23 EXTERN struct kinfo kinfo;              /* kernel information for users */
   24 EXTERN struct machine machine;          /* machine information for users */
   25 EXTERN struct kmessages kmess;          /* diagnostic messages in kernel */
   26 EXTERN struct randomness krandom;       /* gather kernel random information */
   27 
   28 /* Process scheduling information and the kernel reentry count. */
   29 EXTERN struct proc *prev_ptr;   /* previously running process */
   30 EXTERN struct proc *proc_ptr;   /* pointer to currently running process */
   31 EXTERN struct proc *next_ptr;   /* next process to run after restart() */
   32 EXTERN struct proc *bill_ptr;   /* process to bill for clock ticks */
   33 EXTERN char k_reenter;          /* kernel reentry count (entry count less 1) */
   34 EXTERN unsigned lost_ticks;     /* clock ticks counted outside clock task */
   35 
   36 #if (CHIP == INTEL)
   37 
   38 /* Interrupt related variables. */
   39 EXTERN irq_hook_t irq_hooks[NR_IRQ_HOOKS];      /* hooks for general use */
   40 EXTERN irq_hook_t *irq_handlers[NR_IRQ_VECTORS];/* list of IRQ handlers */
   41 EXTERN int irq_actids[NR_IRQ_VECTORS];          /* IRQ ID bits active */
   42 EXTERN int irq_use;                             /* map of all in-use irq's */
   43 
   44 /* Miscellaneous. */
   45 EXTERN reg_t mon_ss, mon_sp;            /* boot monitor stack */
   46 EXTERN int mon_return;                  /* true if we can return to monitor */
   47 EXTERN int do_serial_debug;
   48 
   49 /* Variables that are initialized elsewhere are just extern here. */
   50 extern struct boot_image image[];       /* system image processes */
   51 extern char *t_stack[];                 /* task stack space */
   52 extern struct segdesc_s gdt[];          /* global descriptor table */
   53 
   54 EXTERN _PROTOTYPE( void (*level0_func), (void) );
   55 #endif /* (CHIP == INTEL) */
   56 
   57 #if (CHIP == M68000)
   58 /* M68000 specific variables go here. */
   59 #endif
   60 
   61 #endif /* GLO_H */

Cache object: 17497be3e5eb2e33daf69337c47d5244


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.