NetBSD/sys/arch/sun3/stand
gwr 365e8c62da Remove temporary hack (now merged into src/sys/lib/libsa) 1995-07-03 02:56:52 +00:00
..
bootxx Add install target, etc. 1995-06-09 22:17:19 +00:00
installboot don't assume the f_fsnamelen is nul-truncated or longer than MFSNAMELEN 1995-06-18 14:45:14 +00:00
libsa Get things from libsa now. 1995-06-27 15:57:13 +00:00
netboot Remove temporary hack (../libnet) 1995-07-03 02:53:55 +00:00
ufsboot Add install target, etc. 1995-06-09 22:24:06 +00:00
Makefile Add install targets, etc. 1995-06-09 22:03:41 +00:00
Makefile.inc Add install targets, etc. 1995-06-09 22:03:41 +00:00
README Booting from ufs works now. 1995-06-01 20:37:44 +00:00

README

/*	$NetBSD: README,v 1.1.1.2 1995/06/01 20:37:47 gwr Exp $ */

The sun bootblocks are split into two parts: a small 1st-level program that
gets written right after the superblock in a partition (and is hence limited
in size to SBSIZE - DEV_BSIZE bytes), and a 2nd-level program that resides
in the filesystem proper.

The 1st-level program is loaded into memory by the PROM. It loads the second
stage program from a set of filesystem block numbers that are hard-coded
into it by the `installboot' program. The prototype code for the 1st-level
bootblocks are in `bootxx'.

The 2nd-level program (`boot') is normally installed in the root directory
as `/boot'. It uses the device drivers in the PROM and the stand-alone
filesystem code in `libsa.a' to locate and load the kernel.

Use the following command to install the 1st-level bootblocks in the
root filesystem (on `sd0a') using the file `/boot' as the second level
boot program:

	mount /dev/sd0a /mnt
	installboot /mnt/boot bootxx /dev/rsd0a

The above only works with securelevel <= 0 (see init.8 manual).

Status:

bootxx, installboot are tested and working.  It would be nice if
installboot would find the inumber for the 2nd stage boot program
without having the filesystem mounted so this command can work
with securelevel==1 (the default).  Doing this requies adding
code to read and do a directory lookup in the root...

netboot does not work yet... (netif_sun stuff in libsa not done)

Note:
Before installation, the second stage boot programs (ufsboot, ...)
need the a.out header stripped off.  For now I do this by hand
using the following command.  This needs to be automated...

dd ibs=32 skip=1 if=a.out.file | dd conv=sync of=no.header.file