NAME
	  BOOTMAGIC - Diagnostic station: Specifies bootmagic strings
	  that control how a Paragon system boots.

     SYNOPSIS
	  /usr/paragon/boot/bootmagic

     DESCRIPTION
	  The bootmagic	file is	on the diagnostic station and can be
	  created or changed by	the system administrator only.

	  The bootmagic	file specifies how a Paragon system boots when
	  it is	reset. When a Paragon system is	reset, the bootpp com-
	  mand reads the BADNODES.TXT, MAGIC.MASTER, and SYSCONFIG.TXT
	  files	and creates the	bootmagic file.

	  The bootmagic	file contains bootmagic	strings	that specify
	  information about booting the	system.	A bootmagic string has
	  the following	format:

	    name=value

	  The name part	of the bootmagic string	indicates a booting or
	  system configuration characteristic. The value part of the
	  string specifies the value of	the bootmagic string. The
	  value	can be a string, a node	number,	or a list of node
	  numbers. For example,	the following bootmagic	string speci-
	  fies the boot	node for booting a Paragon system:

	    BOOT_FIRST_NODE=0

	  This specifies the system to use node	0 as the boot node.

	  You do not edit the bootmagic	file. You change the value of
	  a bootmagic string in	the bootmagic file by including	the
	  bootmagic string in the MAGIC.MASTER file or in an alternate
	  magic	file. Changes are made to the bootmagic	file when the
	  bootpp command is executed during system reset. For example,
	  changing the following bootmagic string in the MAGIC.MASTER
	  file changes the bootmagic string in the bootmagic file when
	  the system is	reset:

	    BOOT_FIRST_NODE=7

	  This string changes the boot node to node 7 in the bootmagic
	  file when the	system is reset.

     BOOTMAGIC STRINGS
	  The following	lists and describes the	bootmagic strings:

	  ALLOCATOR_NODE=node
		    Specifies the node where the allocator runs. The
		    default is the boot	node.

	  BOOT_ALT_KERNEL_NAME=kernel
		    Specifies the pathname of the kernel that is
		    broadcast to the nodes listed in the
		    BOOT_ALT_NODE_LIST bootmagic string. The default
		    is /mach_servers/sunmos.

	  BOOT_ALT_NODE_LIST=node_list
		    Specifies a	list of	nodes on which to run the
		    alternate operating	system.

	  BOOT_ARCH=arch
		    Specifies the name of the system architecture. The
		    default is paragon.

	  BOOT_COMPUTE_KERNEL_NAME=kernel
		    Specifies the pathname of the kernel file that is
		    sent to the	compute	nodes. The default is
		    /mach_servers/mach_kernel.compute. If defined,
		    this pathname is used instead of the value of
		    BOOT_KERNEL_NAME bootmagic string.

	  BOOT_COMPUTE_NODE_LIST=node_list
		    Specifies the list of nodes	that receive the
		    ``light'' server and kernel. Compute nodes without
		    any	devices	attached to them are defined in	this
		    list. The list is computed when the	system is
		    booted.

	  BOOT_COMPUTE_STARTUP_NAME=server
		    Specifies the pathname of the server that is sent
		    to the compute nodes. The default is
		    /mach_servers/startup.compute. If defined, this
		    pathname is	used in	place of BOOT_STARTUP_NAME
		    bootmagic string.

	  BOOT_CONSOLE=string
		    Specifies the console that all the system nodes
		    use. The default is	cm. The	string argument	speci-
		    fies the kind of console to	use. When a node is
		    booted, the	string is parsed from left to right
		    until a valid console for the node is determined.
		    The	following characters are allowed in the	string
		    argument:

		      c		  Use the serial line as the console
				  if the node is the boot node.	If the
				  node is not the boot node, this
				  character is skipped.

		      C		  Use the serial line as the console

				  if the node has a serial line. Oth-
				  erwise, this character is skipped.

		      f		  Use the fast scan interface (fscan)
				  as the console and provide flow con-
				  trol on user applications.

		      F		  Use the fast scan interface (fscan)
				  as the console and provide flow con-
				  trol on user applications.

		      k		  Stop the LED display while waiting
				  for input.

		      l		  Use the LED display while waiting
				  for input.

		      m		  Use the mesh as a console. Do	not
				  use this unless no other access is
				  available.

		      s		  Use the scan line as a console when
				  looking for input only.

		      S		  Always use the scan line as a	con-
				  sole.

		    For	example, the following specifies a boot	con-
		    sole:

			BOOT_CONSOLE=cm

		    The	value c	specifies using	a serial line first.
		    If the compute node	does not have a	serial line,
		    the	value m	specifies using	the mesh as the	con-
		    sole interface.

	  BOOT_COPY_REMOTE_KERNEL=1
		    Specifies that the kernel defined by
		    BOOT_REMOTE_KERNEL is copied to the	file defined
		    by BOOT_KERNEL_NAME. This effectively establishes
		    the	kernel being broadcast to non-boot nodes as
		    the	kernel pointed to by BOOT_REMOTE_KERNEL. Use
		    of the copy	switch with the	reset command automat-
		    ically creates the BOOT_COPY_REMOTE_KERNEL=1 boot-
		    magic string.

	  BOOT_DAT_NODE_LIST=node_list
		    Specifies the nodes	that have DAT drives attached.

	  BOOT_DISK_NODE_LIST=node_list
		    Specifies the nodes	that have hard disks attached.

	  BOOT_EMULATOR_NAME=emulator
		    Specifies the absolute pathname of the emulator
		    that is broadcast to all nodes and is loaded by
		    the	boot node. The default is
		    /mach_servers/emulator.

	  BOOT_ENET_NODE_LIST=node_list
		    Specifies the list of nodes	that are Ethernet
		    nodes.

	  BOOT_FIRST_NODE=node
		    Specifies the first	node that boots	on the system
		    (the boot node). The default is node number	0
		    (zero). The	boot node receives the bootmagic
		    strings from the scan line and receives the	kernel
		    from the network. This is a	mandatory bootmagic
		    string that	must be	in the MAGIC.MASTER file and
		    the	bootmagic file.

	  BOOT_GREEN_LED=string
		    Specifies that the green LED is turned on and off.

	  BOOT_HOWTO=hex_value
		    Specifies how the system is	to be booted. The
		    default is 0x0. The	hex_value has the form
		    0xhex_digits, where	hex_digits is a	hexadecimal
		    number. This value is reserved for debugging only.
		    Do not modify this string.

	  BOOT_IO_NODE_LIST=node_list
		    Specifies the nodes	that are to receive the
		    ``heavy'' server and kernel. All service nodes and
		    nodes that have attached devices (for example, a
		    hard disk or HIPPI device) are specified. The list
		    is computed	when the system	is booted.

	  BOOT_KERNEL_NAME=kernel
		    Specifies the pathname of the kernel that is
		    loaded on the boot node and	broadcast to the nodes
		    on the mesh. The default is
		    /mach_servers/mach_kernel.

	  BOOT_LOAD_SYMBOLS=0 |	1
		    Specifies whether to load the server symbols. A 1
		    (default) specifies	to load	the server symbols,
		    while a 0 specifies	not to load the	server sym-
		    bols.

	  BOOT_LTU_NODE=node_list
		    Specifies disabling	the LTUs for the nodes speci-
		    fied in node_list. By default, all nodes have
		    their LTU's	enabled. To disable LTUs, define the
		    node value as 4096 which is	an invalid node
		    number.

	  BOOT_MESH_X=x_dimension
		    Specifies the number of slots in the x-dimension
		    (left to right) for	the mesh. This value is	always
		    a multiple of 4. The bootpp	command	computes this
		    value when it is not specified.

	  BOOT_MESH_Y=y_dimension
		    Specifies the number of slots in the y-dimension
		    (top to bottom) for	the mesh. This value is	always
		    a multiple of 4. The bootpp	command	computes this
		    value when it is not specified.

	  BOOT_MY_NODE=node
		    Specifies a	node's node number. You	cannot change
		    this number. The bootmesh command updates this
		    value prior	to broadcasting	the bootmagic file to
		    each node. Each node has a unique number.

	  BOOT_NODE_LIST=node_list
		    Specifies every node in the	system.	The bootpp
		    command computes this value.

	  BOOT_NUM_NODES=num_nodes
		    Specifies how many nodes (not slots) are in	the
		    system. The	bootpp command computes	this value.

	  BOOT_RED_LED=string
		    Specifies that the red LED is turned on and	off.

	  BOOT_REMOTE_KERNEL=address
		    Specifies the system address and pathname of the
		    remote kernel that is used to boot the boot	node
		    from the diagnostic	station. The address value has
		    the	form IP_ADDRESS:pathname. This bootmagic
		    string is created automatically by the reset com-
		    mand if the	string is not specified.

	  BOOT_ROOT_DEV=device
		    Specifies the name of the device containing	the
		    root file system. The default is rz0a. This	value
		    must be md0a when booting with the RAM disk.

	  BOOT_STARTUP_NAME=server
		    Specifies the absolute pathname of the server that
		    is broadcast to all	nodes and loaded by the	boot
		    node. The default is /mach_servers/startup.

	  BOOT_TIME=time
		    Specifies the current time.	This time is used to
		    set	the system clock. The value is retrieved using
		    the	time(8)	system call on the diagnostic station.

	  CHECK_FOR_RPMFAIL=0 |	1
		    Specifies whether the server should	(when reading
		    the	RPM) check to make sure	the clock is running.
		    On occasion	the server reads the RPM (a hardware
		    clock whose	output is broadcast to all nodes).
		    When the server reads this clock, it normally
		    checks to make sure	the clock has not stopped.
		    Setting this bootmagic string to 0 causes the
		    server to not check	for a stopped clock and	also
		    renders the	``REBOOT_ON_RPMFAIL'' bootmagic	string
		    useless.

	  ENABLE_FORK_REMOTE=[fF] | [tT]
		    Specifies whether to enable	or disable static
		    load-leveling and remote process creation on ser-
		    vice nodes.	The values f and F disable static
		    load-leveling. The values t	and T enable static
		    load-leveling. The default is static load-leveling
		    enabled. See the load_leveld manual	page for more
		    information	on static load-leveling.

	  EXPORT_PAGING=node_list
		    Specifies the nodes	that will provide paging for
		    other nodes. The default is	the boot node, which
		    means only the boot	node will provide paging ser-
		    vices.

	  FORK_REMOTE_TIMEOUT=time
		    Specifies an integer value time that is the
		    time-out period after which	the ``fastnode''
		    becomes the	local node unless a new	``fastnode''
		    value is specified.	The default is 60 seconds. See
		    the	load_leveld manual page	for more information
		    on the ``fastnode.''

	  NETIPC_PGLIST_HIGH=pages
		    Specifies the maximum number of 8K-byte pages to
		    dedicate to	the memory pool.

	  NETIPC_PGLIST_LOW=pages
		    Specifies the minimum number of 8K-byte pages to
		    dedicate to	the memory pool.

	  NETIPC_PGLIST_REFILL=pages
		    Specifies the threshold (number of 8-K byte	pages)
		    at which resource depletion	is detected and	new
		    resources are allocated.

	  NETSERVER=node
		    Specifies the node that provides the network ser-
		    vices. The default is the boot node.

	  PAGER_NODE=pager_list
		    Specifies which nodes use which pager. The default
		    is that all	nodes use the boot node	as their
		    pager. The pager_list argument has the format:

			<node_list>pager[:<node_list>pager] ...

	  PAGE_TO=paging_device_list
		    Specifies which nodes use which paging device. The
		    default is that all	nodes use the device rz0b as
		    the	paging device. The paging_device_list argument
		    has	the format:

			<node_list>device_name[:<node_list>device_name]	...

		    The	value of the bootmagic string PAGE_TO is
		    automatically generated from the DEVCONF.TXT file.
		    Do not attempt to change the value of this boot-
		    magic string in any	other file. Doing so can cause
		    inconsistencies in the file	system configuration.

	  PARACORE_MAX_PROCESSES=number_of_processes
		    Specifies the size limit (measured by number of
		    processes) for applications	that can dump parallel
		    core. number_of_processes can be -1	or any posi-
		    tive integer. The default value for
		    number_of_processes	is 1.

		    If the actual number of processes in a faulting
		    application	exceeds	number_of_processes then, at
		    most, one process will dump	core. If and how that
		    process dumps core is determined by	the
		    CORE_ACTION_FIRST environment variable. Note that
		    setting number_of_processes	to 1 (the default)
		    causes every parallel application to exceed	this
		    limit. Thus, a single process dumps	core and the
		    environment	variables CORE_ACTION_FAULT and
		    CORE_ACTION_OTHER are not used.

		    Setting number_of_processes	to -1 effectively
		    places an unlimited	value on the number of
		    processes an application can have and still	dump
		    parallel core. With	a setting of -1	the environ-
		    ment variables CORE_ACTION_FAULT and
		    CORE_ACTION_OTHER can be used to dump parallel
		    core.

		    Controlling	the number of processes	that dump core
		    is especially useful in gang-scheduled
		    environments. Since	an application which is	dump-
		    ing	core cannot be interrupted, it cannot be
		    rolled out on demand as required for gang schedul-
		    ing. Consequently, an application that is
		    scheduled to be rolled in has the potential	of
		    losing a portion or	perhaps	all of its time	quan-
		    tum	while waiting for the current application's
		    core dumps to complete. This situation can result
		    in inaccurate accounting.

		    In less time-critical situations, the system
		    administrator can increase the default value of
		    number_of_processes	to a level that	allows users
		    to employ the core action environment variables.
		    Use	of these variables along with this bootmagic
		    string can yield parallel core dumps, which	can be
		    useful debugging aides.

	  PFS_ASYNC_DFLT=0 | 1
		    Specifies the default I/O mode for PFS files only
		    as M_ASYNC.	A 1 specifies a	default	I/O mode of
		    M_ASYNC, while a 0 (the default) specifies a
		    default I/O	mode of	M_UNIX.	Regardless of
		    PFS_ASYNC_DFLT setting, the	default	I/O mode for
		    non-PFS files is M_UNIX.

		    In M_ASYNC mode, each node has its own file
		    pointer and	file access is unrestricted. Because
		    of this unrestricted access, atomic	I/O operations
		    are	not preserved. This implies asynchronous read
		    and	write operations to variable length records
		    can	occur.

	  RB_MULTIUSER=0 | 1
		    Specifies booting the system in either single-user
		    or multiuser mode. A 0 (default) indicates booting
		    the	system in single-user mode, while a 1 indi-
		    cates booting the system in	multiuser mode.

	  REBOOT_ON_RPMFAIL=0 |	1
		    Specifies whether the system shuts itself down
		    when a check of the	RPM uncovers a stopped clock.
		    A 0	(default) causes the node that detects the
		    stopped RPM	to simply print	an error message on
		    the	boot node. A 1 causes the system to be shut
		    down when the server detects a stopped RPM.

	  ROOT_DEVICE_NODE=node
		    Specifies the node that contains the root file
		    system. The	default	is the boot node.

	  REAL_FIRST_NODE=node
		    Specifies the first	node when the RAM disk is not
		    used.

	  ROOT_FS_NODE=node
		    Specifies the node that provides the services for
		    accessing the root file system. The	default	is the
		    boot node.

	  TCP_SPACE_SIZE=buffer_size
		    Specifies the default socket buffer	space avail-
		    able to TCP	connections on the Paragon. Valid
		    values for buffer_size are:

		      65536	  ethernet only	systems

		      262144	  systems that have a HIPPI/FDDI

		      524288	  systems that have a HIPPI

		    Use	of this	bootmagic string also enables the
		    Paragon system to use window scaling with other
		    systems employing window scaling. Note that	the
		    effect of TCP_SPACE_SIZE is	system wide as it
		    optimizes TCP/IP performance over the HIPPI	chan-
		    nel.

     EXAMPLES
	  The following	shows an example bootmagic file.

	  BOOT_FIRST_NODE=7
	  BOOT_CONSOLE=f
	  BOOT_STARTUP_NAME=/mach_servers/startup
	  BOOT_EMULATOR_NAME=/mach_servers/emulator
	  BOOT_KERNEL_NAME=/mach_servers/mach_kernel.db
	  BOOT_ROOT_DEV=rz0a
	  BOOT_HOWTO=0x0
	  BOOT_COMPUTE_STARTUP_NAME=/mach_servers/startup.compute
	  BOOT_COMPUTE_KERNEL_NAME=/mach_servers/mach_kernel.compute.db
	  BOOT_ALT_KERNEL_NAME=/mach_servers/sunmos
	  BOOT_ARCH=paragon
	  BOOT_MY_NODE=7
	  ROOT_FS_NODE=7
	  ROOT_DEVICE_NODE=7
	  NETSERVER=7
	  ALLOCATOR_NODE=7
	  BOOT_NUM_NODES=71
	  BOOT_MESH_X=8
	  BOOT_MESH_Y=16
	  BOOT_IO_NODE_LIST=0,7,15
	  BOOT_COMPUTE_NODE_LIST=23,31,41..78,81..94,97..102,105..126
	  BOOT_NODE_LIST=0,7,15,23,31,41..78,81..94,97..102,105..126
	  EXPORT_PAGING=0,7
	  PAGER_NODE=<0>7:<15..126>0
	  BOOT_TIME=755976977
	  BOOT_REMOTE_KERNEL=137.46.14.37:/usr/paragon/boot/mach_kernel.db
	  BOOT_GREEN_LED=Dciw
	  BOOT_RED_LED=DcglXRm
	  RB_MULTIUSER=0
	  BOOT_LOAD_SYMBOLS=1
	  BOOT_DISK_NODE_LIST=0,7
	  BOOT_DAT_NODE_LIST=7
	  BOOT_ENET_NODE_LIST=7,15

     FILES
	  /usr/paragon/boot/BADNODES.TXT
		    Specifies the nodes	that are nonfunctional on a
		    Paragon system. This file resides on the diagnos-
		    tic	station.

	  /usr/paragon/boot/bootmagic
		    Specifies information for booting a	Paragon	sys-
		    tem. This file resides on the diagnostic station.

	  /usr/paragon/boot/DEVCONF.TXT
		    Specifies the device configuration for a Paragon
		    system. This file resides on the diagnostic	sta-
		    tion.

	  /usr/paragon/boot/MAGIC.MASTER
		    Specifies the master version of the	bootmagic
		    strings for	booting	a Paragon system. This file
		    resides on the diagnostic station.

	  /usr/paragon/boot/SYSCONFIG.TXT
		    Specifies the hardware configuration for a Paragon
		    system. This file resides on the diagnostic	sta-
		    tion.

     SEE ALSO
	  calls: time(8)

	  commands: bootpp, reset, core

	  files: BADNODES.TXT, DEVCONF.TXT, MAGIC.MASTER,
	  SYSCONFIG.TXT









Acknowledgement and Disclaimer