# 
# $Copyright
# Copyright 1991 , 1994, 1995 Intel Corporation
# INTEL CONFIDENTIAL
# The technical data and computer software contained herein are subject
# to the copyright notices; trademarks; and use and disclosure
# restrictions identified in the file located in /etc/copyright on
# this system.
# Copyright$
# 
 
#
# Mach Operating System
# Copyright (c) 1991,1990,1989,1988,1987,1986 Carnegie Mellon University
# All Rights Reserved.
# 
# Permission to use, copy, modify and distribute this software and its
# documentation is hereby granted, provided that both the copyright
# notice and this permission notice appear in all copies of the
# software, derivative works or modified versions, and any portions
# thereof, and that both notices appear in supporting documentation.
# 
# CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS" 
# CONDITION.  CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
# ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
# 
# Carnegie Mellon requests users of this software to return to
# 
#  Software Distribution Coordinator  or  Software.Distribution@CS.CMU.EDU
#  School of Computer Science
#  Carnegie Mellon University
#  Pittsburgh PA 15213-3890
# 
# any improvements or extensions that they make and grant Carnegie Mellon
# the rights to redistribute these changes.
#  
#
# HISTORY
# $Log: MASTER,v $
# Revision 2.22  1994/11/18  20:27:30  mtm
# Copyright additions/changes
#
# Revision 2.21  1994/07/12  19:17:00  andyp
# Merge of the NORMA2 branch back to the mainline.
#
# Revision 2.20.4.1  1994/06/20  20:34:17  rkl
#  Changes for BORG removal.
#
# Revision 2.20  1993/10/01  16:58:17  steved
# Support for MP3
#
# Revision 2.19  1993/07/22  00:12:41  andyp
# NORMA needs fixpri scheduling [rwd@osf.org].  Rearranged the _LITE configs
# (and the hippi device) so that they can be built (improvements are still
# possible).
#
# Revision 2.18  1993/06/30  22:18:47  dleslie
# Adding copyright notices required by legal folks
#
# Revision 2.17  1993/06/09  01:25:07  terry
# source sync with OSF
#
# Revision 2.16  1993/01/09  22:24:12  stans
# norma13.16 SSD Trans 7 version
#
# Revision 2.15.5.3  92/04/30  11:45:24  bernadat
# 	Added multi2 option for Compaq SystemPro
# 	[92/04/08            bernadat]
# 
# Revision 2.15.5.2  92/03/28  10:03:51  jeffreyh
# 	Moved OSF_LOCAL option here from MASTER.i386
# 	[92/03/19            jeffreyh]
# 
# Revision 2.15.5.1  92/02/18  18:36:37  jeffreyh
# 	Added new options:
# 		mach_lock_mon:	simple locks monitoring
# 		mach_mp_debug:	dead lock detection for simple locks
# 		time_stamp:	If h/w provides a cheap counter, can
# 				be used for xpr stamps and lock monitoring
# 	 	
# 	[91/12/06            bernadat]
# 
# 	Added the MACH_PROF option for profiling
# 	[91/09/16            bernadat]
# 
# 	Added multi6 for the Corollary MP
# 	[91/06/25            bernadat]
# 
# Revision 2.15  91/09/12  16:35:35  bohman
# 	Added ufs_pager option and made it the default.  Not enabling it allows
# 	a different default pager setup to be supplied.
# 	[91/09/11  16:53:41  bohman]
# 
# Revision 2.14  91/08/28  11:10:00  jsb
# 	Added lineno build option.
# 	[91/08/26  11:12:32  jsb]
# 
# Revision 2.13  91/08/03  18:17:06  jsb
# 	Replaced NORMA_BOOT with more specific NORMA_DEVICE.
# 	[91/07/27  18:24:47  jsb]
# 
# 	Added NORMA_ETHER option.
# 	[91/07/24  22:34:52  jsb]
# 
# Revision 2.12  91/07/09  23:14:11  danner
# 	Added support for luna88k (pseudo-device cpus 4).
# 	[91/05/06            danner]
# 
# Revision 2.11  91/06/17  15:43:31  jsb
# 	Rearranged and renamed NORMA options.
# 	[91/06/17  09:54:37  jsb]
# 
# Revision 2.10  91/06/06  17:03:28  jsb
# 	Added MACH_CLTASK, under NORMA.
# 	[91/05/13  16:46:15  jsb]
# 
# Revision 2.9  91/05/14  15:24:11  mrt
# 	Correcting copyright
# 
# Revision 2.8  91/05/13  06:01:58  af
# 	Rid of the "CMU" conditional once and forall.
# 	[91/05/12  15:43:10  af]
# 
# Revision 2.7  91/03/16  14:41:47  rpd
# 	Added MACH_COUNTERS (tag count).
# 	[91/02/24            rpd]
# 
# Revision 2.6  91/02/05  17:01:58  mrt
# 	Changed to new copyright
# 	[91/01/28  14:45:37  mrt]
# 
# Revision 2.5  91/01/08  15:08:42  rpd
# 	Removed FAST_CSW (tag fast_csw).
# 	[90/12/08            rpd]
# 	Removed MACH_IPC_GENNOS (tag ipc_gennos).
# 	[90/11/08            rpd]
# 
# Revision 2.4  90/09/28  16:53:11  jsb
# 	Added preliminary NORMA support.
# 	[90/09/28  14:00:51  jsb]
# 
# Revision 2.3  90/06/02  14:45:48  rpd
# 	Added MACH_VM_DEBUG (tag vm_debug) and added it to STD.
# 	[90/04/20            rpd]
# 	Converted to new IPC.
# 	Cleaned up, removing timezone, maxusers, etc.
# 	[90/03/26  21:33:20  rpd]
# 
#
# Condensed history:
#	MACH_KERNEL version (dbg).
#	Changes for cleanup (gm0w).
# 	Made STD config be small (mrt).
#
#######################################################################
#
#	Master machine independent configuration file.
#
#	Specific configuration files are created based on this and
#	the machine specific master file using the doconf script.
#
#	Any changes to the master configuration files will affect all
#	other configuration files based upon it.
#
#######################################################################
#
#	To build a configuration, execute "doconf <configuration>."
#	Configurations are specified in the "Configurations:" section
#	of the MASTER and MASTER.* files as follows:
#
#	<configuration> = [ <attribute0> <attribute1> ... <attributeN> ]
#
#	Lines in the MASTER and MASTER.* files are selected based on
#	the attribute selector list, found in a comment at the end of
#	the line.  This is a list of attributes separated by commas.
#	The "!" operator selects the line if none of the attributes are
#	specified.
#
#	For example:
#
#	<foo,bar>	selects a line if "foo" or "bar" are specified.
#	<!foo,bar>	selects a line if neither "foo" nor "bar" is
#			specified.
#
#	Lines with no attributes specified are selected for all
#	configurations.
#
#######################################################################
#
#  STANDARD CONFIGURATION OPTIONS (select any combination)
#
#	debug   = kernel level debugging support
#	mdebug	= enable debugging kernel calls
#	ldebug	= check use of simple locks on uniprocessors
#	assert	= enable assertions
#	lineno	= generate filename and line number debugging info
#
#  EXPERIMENTAL CONFIGURATION OPTIONS (select any combination, carefully)
#
#	simple  = non-rollover clock support
#	timing  = precision timing support
#	host	= host resource control support
#	pm	= paged-out page map hints
#	fixpri	= fixed priority threads
#
#  MULTI-PROCESSOR CONFIGURATION (select at most one)
#
#	multi16 = enable 16 multi-processors
#	multi32 = enable 32 multi-processors
#	multi64 = enable 64 multi-processors
#
#  MULTICOMPUTER OPTIONS (each option requires all previous options,
#			  for example, norma_vm requires norma_ipc.
#			  Except that norma_device and norma_ether both
#			  only need norma_ipc.)
#
#
#	norma_ipc  = NORMA internode ipc
#	norma_vm   = NORMA virtual memory support (distributed virtual memory)
#	norma_task = NORMA task support (remote creation, migration)
#
#	norma_ether  = use ethernet as NORMA interconnect
#	norma_device = support for unified device name space for all nodes
#
#######################################################################
#  
#
#  Standard CMU CS/RI Production Configuration Components:
#  -------- --- -- -- ---------- ------------- ----------
#
#  STD   = [ debug mdebug ipc_compat ipc_debug vm_debug ufs_pager pm profile]
#
#  (Optional for stripped-down compute-only nodes.)
#
#  STD_LITE  = [              ipc_compat        pm  profile]
#
#  (Optional for multi-processor configurations)
#
#  64        = [ multi64 host ]
#  32        = [ multi32 host ]
#  16        = [ multi16 host ]
#  6         = [ multi6 host ]
#  3         = [ multi3 host ]
#  2         = [ multi2 host ]
#
#  (Optional for multicomputer configurations)
#
#  NORMA     = [ norma_ipc norma_device norma_task norma_vm fixpri fast_ool]
#  DIPC      = [ dipc norma_device norma_task norma_vm fixpri rpc rdma]
#
#  (Normally not enabled because of correctness or performance concerns)
#
#  EXP	     = [ pm ]
#
#  (Useful for testing, but may cause significant performance degradation)
#
#  TEST	     = [ assert ldebug ipc_test count ]
#
#######################################################################
#
ident		MACH

options		MACH_KERNEL	# Standalone MACH kernel
options		MACH_ASSERT	# Compile in assertions		# <assert>
options		MACH_DEBUG	# IPC debugging interface	# <mdebug>
options		MACH_FIXPRI	# Fixed priority threads	# <fixpri>
options		MACH_HOST	# Mach host (resource alloc.)	# <host>
options		MACH_IPC_COMPAT	# Enable old IPC interface	# <ipc_compat>
options		MACH_IPC_DEBUG	# Enable IPC debugging calls	# <ipc_debug>
options		MACH_IPC_TEST	# Testing code/printfs		# <ipc_test>
options		MACH_KDB	# Kernel debugger support	# <debug,kdb>
options		MACH_LDEBUG	# Sanity-check simple locking	# <ldebug>
options		MACH_PAGEMAP	# Paged-out page map hints	# <pm>
options		NORMA_IPC	# NORMA IPC support		# <norma_ipc>
options		NORMA_DEVICE	# NORMA unified device names	#<norma_device>
options		NORMA_VM	# NORMA virtual memory support	# <norma_vm>
options		NORMA_TASK	# NORMA task support		# <norma_task>
options		NORMA_ETHER	# NORMA across ethernet		# <norma_ether>
options		NORMA_FAST_OOL	# NORMA Fast Out-Of-Line	# <fast_ool>
options		NORMA2		# DIPC code base		# <dipc>
options		RPC		# DIPC RPC support		# <rpc>
options		RDMA		# DIPC RDMA support		# <rdma>
options		LOOPBACK_ENG	# loopback engine for RPC/RDMA	# <loopback_eng>
options		MACH_COUNTERS	# counters			# <count>
options		MACH_VM_DEBUG	# Enable VM debugging calls	# <vm_debug>
options		HW_FOOTPRINT	# Cache footprint support	# <hw_foot>
options		SIMPLE_CLOCK	# no hardware clock rollover	# <simple>
options		STAT_TIME	# Use statistical timing	# <!timing>
options		XPR_DEBUG	# kernel tracing		# <debug>
options		MACH_PROF	# Thread profiling		# <profile>
options		MACH_MP_DEBUG	# Multi processor lock debug	# <mp_debug>
options		MACH_LOCK_MON	# Multi processor lock monitor	# <lock_mon>
options		TIME_STAMP	# support for time stamps 	# <time_stamp>
options		UFS_PAGER	# include in-kernel ufs pager	# <ufs_pager>
options		OSF_LOCAL	# use for osf site changes 	#<osflocal>

#
#  Multi-processor selection
#
pseudo-device	cpus		64	# <multi64>
pseudo-device	cpus		32	# <multi32>
pseudo-device	cpus		16	# <multi16>
pseudo-device	cpus		6	# <multi6>
pseudo-device	cpus		3	# <multi3>
pseudo-device	cpus		2	# <multi2>
pseudo-device   cpus            4       # <luna88k>
pseudo-device	cpus		1	# <!multi64,multi32,multi16,multi6,multi3,multi2,luna88k>
#


