SCO's Reply: (was: Xenix installation failed at "L" test)

Devon Tuck tuck at iris.ucdavis.edu
Fri Aug 24 02:17:20 AEST 1990


I am forwarding a response from SCO to my original question.  This explains
in detail each of the boot diagnostics that Xenix goes through.

Devon
-=-=-=-=-=-=-=-=-=-=-=-=-=- Here it is...  -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

|What is the meaning of the boot letter sequence displayed under SCO XENIX 2.3?
|
|KEYWORDS:  boot 2.3.1 23 letters install hang xenix 2.3.2
|
|RELEASE:   SCO XENIX 386 Operating System Release 2.3.1, 2.3.2
|
|PROBLEM:   What is the meaning of the boot letter sequence displayed
|           on bootup under Release 2.3 of the Operating System?
|
|SOLUTION:  Below is a list of the meanings of the kernel startup 
|	   letters for the SCO XENIX 386 Release 2.3 kernels, for AT class 
|	   machines.
|
|	A :	The kernel is in dinit(), calling all the driver 
|		init() routines as specified in master.
|		Currently this is 287 or 387, floppy, sio,
|		parallel, error, and console.
|
|	B-C :	Not used.
|
|        D%d:    The function startup() and the functions that startup calls, 
|		use this as follows:
|                D1: fpuinit	/* floating point coprocessor init */
|		D2: flinit	/* floppy driver init (/dev/[r]fd*) */
|		D3: sioinit	/* serial I/O driver init (/dev/tty*) */
|		D4: painit	/* parallel addapter init (/dev/lp?) */
|		D5: errinit	/* error device init (/dev/error) */
|		D6: cninit	/* console driver init (/dev/console) */
|		D7: (int(*)())0
|
|	E-G :   Not used.
|
|        H   :   Setting up process 0, the swapper.
|
|	I:	Printing out rootdev, pipedev, and swapdev
|                (signifies allocating memory for console
|                multiscreens and setting up data structures for
|                cached namei()).
|
|	J:	Initializing proc0 (the swapper).
|                (setting up cached nami() data structures.
|
|	K:	Letting the console driver grab some memory for
|		multiscreens.  The kernel is about to go through the init()
|                routines in /usr/include/sys/h/init.h
|
|	L%d:	Prints out a number (ie: starting at L0 and
|		incrementing by one to L1, L2, L3, etc) as
|		it goes through the table in /usr/include/sys/h/init.h.
|		Currently this includes the following:
|
|		L0:	turning on the clock
|		L1:	allocating clists
|		L2:	allocating disk buffers
|		L3:	iinit(first disk access, reads in fdisk
|			table, divvy & badtrk tables, mounts
|			root, sets up pipe/swap devs).  Hangs here
|			are typically due to incorrect disk params or
|			some sort of hardware disk, controller, or
|			cable problem.
|                L4:     streams initialization
|		L5:	meminit: throw all the memory pages into
|			the paging data structures for users to grab.
|			Maximum user process size is printed out here.
|		L6:	dfinit: set up the disk frame data structures
|			similar to the memory pages in L4.
|
|	M:	Message buffer memory grabbing
|	N, O:	Allow all interrupts
|
|	P:	Print out how much memory is being used by system, user,
|		reserved, drivers, buffers, and et cetera.
|
|	Q:	Semaphore and shared memory initialization.
|
|	R: 	Get the root inode.
|
|	S;	Load the floating point emulator.
|
|	T, U:	Creation of inir/init (proc 1).
|
|	V:	Network initialization (if present).
|
|	W:	Put the word "swapper" into the ps args field of proc0
|		for /bin/ps to see.
|
|	X:	Launching out to the swapper.
|
|	Y,Z:	The proc 1, inir/init is has been built, returning from
|		main() into _start who will then return to inir/init
|		and start executing.
|
|----------------------------------------------------------------------
|The above statements may or may not reflect the official views of SCO.
|jeremyb at sco.COM or ..!mcsun!ukc!scol!jeremyb   Tel: +44 (0)923-816344
|
|"Mach was the greatest intellectual fraud in the last ten years."
|"What about X ?" "I said intellectual." (anon, Usenix Standards BOF)
|----------------------------------------------------------------------



More information about the Comp.unix.xenix mailing list