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/config.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 CONFIG_H
    2 #define CONFIG_H
    3 
    4 /* This file defines the kernel configuration. It allows to set sizes of some
    5  * kernel buffers and to enable or disable debugging code, timing features, 
    6  * and individual kernel calls.
    7  *
    8  * Changes:
    9  *   Jul 11, 2005       Created.  (Jorrit N. Herder)
   10  */
   11 
   12 /* In embedded and sensor applications, not all the kernel calls may be
   13  * needed. In this section you can specify which kernel calls are needed
   14  * and which are not. The code for unneeded kernel calls is not included in
   15  * the system binary, making it smaller. If you are not sure, it is best
   16  * to keep all kernel calls enabled.
   17  */
   18 #define USE_FORK           1    /* fork a new process */
   19 #define USE_NEWMAP         1    /* set a new memory map */
   20 #define USE_EXEC           1    /* update process after execute */
   21 #define USE_EXIT           1    /* clean up after process exit */
   22 #define USE_TRACE          1    /* process information and tracing */
   23 #define USE_GETKSIG        1    /* retrieve pending kernel signals */
   24 #define USE_ENDKSIG        1    /* finish pending kernel signals */
   25 #define USE_KILL           1    /* send a signal to a process */
   26 #define USE_SIGSEND        1    /* send POSIX-style signal */
   27 #define USE_SIGRETURN      1    /* sys_sigreturn(proc_nr, ctxt_ptr, flags) */
   28 #define USE_ABORT          1    /* shut down MINIX */
   29 #define USE_GETINFO        1    /* retrieve a copy of kernel data */
   30 #define USE_TIMES          1    /* get process and system time info */
   31 #define USE_SETALARM       1    /* schedule a synchronous alarm */
   32 #define USE_DEVIO          1    /* read or write a single I/O port */
   33 #define USE_VDEVIO         1    /* process vector with I/O requests */
   34 #define USE_SDEVIO         1    /* perform I/O request on a buffer */
   35 #define USE_IRQCTL         1    /* set an interrupt policy */
   36 #define USE_SEGCTL         1    /* set up a remote segment */
   37 #define USE_PRIVCTL        1    /* system privileges control */
   38 #define USE_NICE           1    /* change scheduling priority */
   39 #define USE_UMAP           1    /* map virtual to physical address */
   40 #define USE_VIRCOPY        1    /* copy using virtual addressing */ 
   41 #define USE_VIRVCOPY       1    /* vector with virtual copy requests */
   42 #define USE_PHYSCOPY       1    /* copy using physical addressing */
   43 #define USE_PHYSVCOPY      1    /* vector with physical copy requests */
   44 #define USE_MEMSET         1    /* write char to a given memory area */
   45 
   46 /* Length of program names stored in the process table. This is only used
   47  * for the debugging dumps that can be generated with the IS server. The PM
   48  * server keeps its own copy of the program name.  
   49  */
   50 #define P_NAME_LEN         8
   51 
   52 /* Kernel diagnostics are written to a circular buffer. After each message, 
   53  * a system server is notified and a copy of the buffer can be retrieved to 
   54  * display the message. The buffers size can safely be reduced.  
   55  */
   56 #define KMESS_BUF_SIZE   256    
   57 
   58 /* Buffer to gather randomness. This is used to generate a random stream by 
   59  * the MEMORY driver when reading from /dev/random. 
   60  */
   61 #define RANDOM_ELEMENTS   32
   62 
   63 /* This section contains defines for valuable system resources that are used
   64  * by device drivers. The number of elements of the vectors is determined by 
   65  * the maximum needed by any given driver. The number of interrupt hooks may
   66  * be incremented on systems with many device drivers. 
   67  */
   68 #define NR_IRQ_HOOKS      16            /* number of interrupt hooks */
   69 #define VDEVIO_BUF_SIZE   64            /* max elements per VDEVIO request */
   70 #define VCOPY_VEC_SIZE    16            /* max elements per VCOPY request */
   71 
   72 /* How many bytes for the kernel stack. Space allocated in mpx.s. */
   73 #define K_STACK_BYTES   1024    
   74 
   75 /* This section allows to enable kernel debugging and timing functionality.
   76  * For normal operation all options should be disabled.
   77  */
   78 #define DEBUG_SCHED_CHECK  0    /* sanity check of scheduling queues */
   79 #define DEBUG_LOCK_CHECK   0    /* kernel lock() sanity check */
   80 #define DEBUG_TIME_LOCKS   0    /* measure time spent in locks */
   81 
   82 #endif /* CONFIG_H */
   83 

Cache object: 22740a58a19fbfb593a588087224a303


[ 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.