Annotation of XNU/osfmk/conf/MASTER, revision 1.1.1.1

1.1       root        1: #
                      2: # Mach Operating System
                      3: # Copyright (c) 1986 Carnegie-Mellon University
                      4: # All rights reserved. The CMU software License Agreement
                      5: # specifies the terms and conditions for use and redistribution.
                      6: #  
                      7: #######################################################################
                      8: #
                      9: #      Master machine independent configuration file.
                     10: #
                     11: #      Specific configuration files are created based on this and
                     12: #      the machine specific master file using the doconf script.
                     13: #
                     14: #      Any changes to the master configuration files will affect all
                     15: #      other configuration files based upon it.
                     16: #
                     17: #######################################################################
                     18: #
                     19: #      To build a configuration, execute "doconf <configuration>."
                     20: #      Configurations are specified in the "Configurations:" section
                     21: #      of the MASTER and MASTER.* files as follows:
                     22: #
                     23: #      <configuration> = [ <attribute0> <attribute1> ... <attributeN> ]
                     24: #
                     25: #      Lines in the MASTER and MASTER.* files are selected based on
                     26: #      the attribute selector list, found in a comment at the end of
                     27: #      the line.  This is a list of attributes separated by commas.
                     28: #      The "!" operator selects the line if none of the attributes are
                     29: #      specified.
                     30: #
                     31: #      For example:
                     32: #
                     33: #      <foo,bar>       selects a line if "foo" or "bar" are specified.
                     34: #      <!foo,bar>      selects a line if neither "foo" nor "bar" is
                     35: #                      specified.
                     36: #
                     37: #      Lines with no attributes specified are selected for all
                     38: #      configurations.
                     39: #
                     40: #######################################################################
                     41: #
                     42: # Basic compilation options.
                     43: #
                     44: # The MACH ident is passed to every kernel file compilation as -DMACH.
                     45: #      This is useful in order to #ifdef code that is intended to be used in
                     46: #      a MACH kernel.
                     47: #
                     48: ident          MACH
                     49: ##############################################################################
                     50: #
                     51: # MACH configuration options.
                     52: #
                     53: # TASK_SWAPPER enables code that manages demand for physical memory by
                     54: #      forcibly suspending tasks when the demand exceeds supply. This
                     55: #      option should be on.
                     56: #
                     57: options                MACH_KERNEL
                     58: options                MACH_PAGEMAP
                     59: options                MACH_LOAD
                     60: options                MACH_RT
                     61: options                THREAD_SWAPPER  #       <thread_swapper_disabled>
                     62: options                TASK_SWAPPER    #       <task_swapper_disabled>
                     63: pseudo-device  test_device     1
                     64: options                ADVISORY_PAGEOUT
                     65: ##########################################################
                     66: #
                     67: # conf/config.debug
                     68: #
                     69: # This defines configuration options that are normally used only during
                     70: # kernel code development and debugging. They add run-time error checks or
                     71: # statistics gathering, which will slow down the system
                     72: #
                     73: ##########################################################
                     74: #
                     75: # MACH_ASSERT controls the assert() and ASSERT() macros, used to verify the
                     76: #      consistency of various algorithms in the kernel. The performance impact
                     77: #      of this option is significant.
                     78: #
                     79: options                MACH_ASSERT     #               # <debug>
                     80: #
                     81: # MACH_DEBUG enables the mach_debug_server, a message interface used to
                     82: #      retrieve or control various statistics. This interface may expose data
                     83: #      structures that would not normally be allowed outside the kernel, and
                     84: #      MUST NOT be enabled on a released configuration.
                     85: #      Other options here enable information retrieval for specific subsystems
                     86: #
                     87: options                MACH_DEBUG      #               #
                     88: #
                     89: options                MACH_IPC_DEBUG  #               # <debug>
                     90: options                MACH_VM_DEBUG   #               # <debug>
                     91: #
                     92: # MACH_MP_DEBUG control the possible dead locks that may occur by controlling
                     93: #      that IPL level has been raised down to SPL0 after some calls to
                     94: #      hardclock device driver.
                     95: #
                     96: options                MACH_MP_DEBUG   #               # <debug>
                     97: #
                     98: # ZONE_DEBUG keeps track of all zalloc()ed elements to perform further
                     99: #      operations on each element.
                    100: #
                    101: options                ZONE_DEBUG      #               # <debug>
                    102: # 
                    103: # XPR_DEBUG enables the gathering of data through the XPR macros inserted
                    104: #      into various subsystems. This option is normally only enabled for
                    105: #      specific performance or behavior studies, as the overhead in both
                    106: #      code and data space is large. The data is normally retrieved through
                    107: #      the kernel debugger (kdb) or by reading /dev/kmem.
                    108: #      
                    109: options                XPR_DEBUG       #               # <debug>
                    110: # 
                    111: # MACH_LDEBUG controls the internal consistency checks and
                    112: #      data gathering in the locking package. This also enables a debug-only
                    113: #      version of simple-locks on uniprocessor machines. The code size and
                    114: #      performance impact of this option is significant.
                    115: # 
                    116: options                MACH_LDEBUG     #               # <debug>
                    117: 
                    118: #
                    119: # 
                    120: #
                    121: options                KDEBUG          # kernel tracing        # <kdebug>
                    122: 
                    123: #      
                    124: # MACH_COUNTERS enables code that handles various counters in the system.
                    125: # 
                    126: options                MACH_COUNTERS   #               # <debug>
                    127: #
                    128: # ETAP The Event Trace Analysis Package enables user-level tasks to monitor
                    129: #      and analyze kernel events.  ETAP supports three modes of tracing:
                    130: #
                    131: #              1. General event tracing:       ETAP_EVENT_MONITOR
                    132: #              2. Monitored lock tracing:      ETAP_LOCK_MONITOR
                    133: #              3. Cumulative lock tracing:     ETAP_LOCK_ACCUMULATE
                    134: #
                    135: #      Each of these trace modes are mutually exclusive.
                    136: #
                    137: #      CONFIGURING ETAP:  To enable the trace package, the ETAP switch
                    138: #      along with *ONE* ETAP trace mode is selected.  The selected ETAP
                    139: #      mode determines the level of instrumentation built into the kernel.
                    140: #      Mode 1 configures event probes through-out the system.  Modes 2 & 3
                    141: #      add instumentation to the kernel lock mechanisms.
                    142: #
                    143: #      ETAP (and all its trace modes) is mutually exclusive with the
                    144: #      MACH_LDEBUG option.  It is assumed that general lock debugging is
                    145: #      completed before gathering event information.
                    146: #
                    147: #      ETAP functionality is normally only enabled for event profiling and
                    148: #      performance studies.  Event tracing should not be enabled for release
                    149: #      configurations, as the code size and performance impact of these
                    150: #      options are significant.
                    151: #
                    152: #
                    153: #options       ETAP                    # ETAP enable
                    154: #options       ETAP_EVENT_MONITOR      # Monitor events
                    155: #options       ETAP_LOCK_MONITOR       # Monitor lock behavior
                    156: #options       ETAP_LOCK_ACCUMULATE    # Collect cumulative lock data
                    157: 
                    158: ##########################################################
                    159: #
                    160: # This defines configuration options that are normally used only during
                    161: # kernel code development and performance characterization. They add run-time
                    162: # statistics gathering, which will slow down the system,
                    163: #
                    164: ##########################################################
                    165: #
                    166: # MACH_PROF enables the profiling server, a message interface used to
                    167: #      retrieve profiling statistics.
                    168: #
                    169: #options       MACH_PROF
                    170: #
                    171: # MACH_IPC_STATS controls the collection of statistics in the MACH IPC
                    172: #      subsystem.
                    173: #
                    174: #options       MACH_IPC_STATS
                    175: #
                    176: # MACH_CO_INFO controls the collection of callout statistics. This
                    177: #      information is retrieved via a mach_debug message, or though
                    178: #      /dev/kmem. The runtime impact of the option is minimal.
                    179: #
                    180: #options       MACH_CO_INFO
                    181: #
                    182: # MACH_CLUSTER_STATS controls the collection of various statistics concerning
                    183: #      the effectiveness and behavior of the clustered pageout and pagein
                    184: #      code.
                    185: #
                    186: #options       MACH_CLUSTER_STATS
                    187: #
                    188: # MACH_SCTIMES enables optional code that can be used to measure the
                    189: #      execution overhead of performing Mach traps with 1 through 6
                    190: #      arguments.
                    191: #
                    192: #options       MACH_SCTIMES
                    193: #
                    194: # MACH_COUNTERS enables various code-path statistics. Most of these
                    195: #      are accessed through the debugger.
                    196: #
                    197: options                MACH_COUNTERS           #               # <stats>
                    198: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.