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