Booting SPIN on iX86

October 29, 1997


Overview

We prefer to boot kernels over the network rather than from the local file system as this drastically reduces the turnaround time of a build. The idea behind network booting is that some server listens out on the network for "bootp" requests on the same subnet. For the iX86 platform that server is yakko, and it begins looking for kernels starting from /afs/cs/project. Pathnames are specified relative to there.

If you've built a kernel, then just copy the kernel image (.../spin/kernel/sal/i386_freebsd/compile/SPIN/kernel) to your project directory (/afs/cs/project/spin/YOU/kernel). Most of us just make a symlink to our build tree. Assuming you build in .../spin, this would be:

	ln -s  /spin/YOU/spin/kernel/sal/i386_freebsd/compile/SPIN/kernel /spin/YOU/kernel
( Note that there exists a symlink   /spin -> /afs/cs/project/spin )

Using rconsole

We use rconsole to directly interact with the crash machines. See the rconsole page for a current list. Crash machines have a serial line connection to an rconsole server. You can run rconsole from anywhere in the network, and connect to the appropriate rconsole server.

You connect via rconsole to one of the crash machines listed on the rconsole page by typing:

	% rconsole (machinename)
For example,
	% rconsole loom12
	Attempting to connect to loom12 (via /dev/ttyC12) ... Connected
	Password:
	rconsole: Type '^_{q|e}' to exit.

	>>>

You will need to know the rconsole password. If you don't know it already, you will have to talk to one of us in person, as we don't send passwords via email. If all of them are taken you can zephyr to spin-m3 and ask if someone could make one available, since people just hang on to an rconsole. The escape sequence out of rconsole is (contrl)(shift)(dash) and then the char "q". Once you are at the boot prompt, which looks like:

	>>>
	>>> help
	?		this list
	help		this list
	init		restart netboot
	exit		restart netboot
	halt		restart netboot
	bootp		 retry bootp broadcast
	ip <addr>	set my IP addr
	server <addr>	set nfs server IP addr
	kernel <file>	set boot filename
	set <option>	set boot flag
	show		 show boot flag
	unset <option>	clear boot flag
	b		alias for boot
	boot [ [-fi] filename ]
type

	>>> b /spin/YOU/kernel

where YOU is YOU

This should boot spin over the network via http and/or nfs, and eventually you'll get to the spin shell. The spin shell has "!>" as its prompt.

Where to go from here?

Once you've booted, you can talk to the shell, or connect with the debugger.
The Shell
The SPIN CLI
M3GDBTTD
Debugging
Alpha boot page
If you're booting on the alpha


Copyright (c) 1997 The University of Washington. All rights reserved.