[comp.unix.sysv386] How to build a kernel for a boot floppy for ISC 1.0.6

woods@eci386.uucp (Greg A. Woods) (02/28/91)

[ Hopefully our news feeds have settled down enough for this posting
to be worth-while to me!  If you are sure you know the answer, e-mail
would be appreciated. ]

I've been having absolutely no luck in building a kernel for a boot
floppy for ISC 386/ix 1.0.6.

I've tried everything I can think of, including all of the tricks I've
learned about building floppy or tape kernels for other systems.
(Although I've not gone so far as to write or port a RAM-disk driver
for use as a swap and/or root filesystem.)

Specifically, though I've been told that nothing special needs to be
done, and any kernel should boot from floppy, I have ensured that the
following ends up appearing in conf.c

	dev_t rootdev = makedev(1,4);
	dev_t pipedev = makedev(1,4);
	dev_t swapdev = NODEV;
	dev_t dumpdev = NODEV;

(Where my floppy driver is configured as major 1, and the particular
floppy type is minor 4, i.e. the floppy root filesystem was build by
mkfs'ing the character device associated with 1,4.)

What happens when I try to boot is all goes fine until the kernel
tries to do the mount of root and panics with "srmount: not a valid
root", which means it's not finding and trying to mount the floppy
root filesystem, which is absolutely OK, since when I put the original
floppy kernel on the same disk, all goes well.

Thank-you ISC for not documenting this procedure, and for not
providing the floppy boot track programme in any place other than on
the original boot floppy!
-- 
							Greg A. Woods
woods@{eci386,gate,robohack,ontmoh,tmsoft}.UUCP		ECI and UniForum Canada
+1-416-443-1734 [h]  +1-416-595-5425 [w]  VE3TCP	Toronto, Ontario CANADA
Political speech and writing are largely the defense of the indefensible-ORWELL

ts@cup.portal.com (Tim W Smith) (03/01/91)

Build a kernel that works on the hard disk.  Then simply copy it
to your boot floppy.  The boot code passes an argument to the
kernel telling it where it booted from, and the kernel at runtime
sees that it was booted from a floppy and does the right thing.

						Tim Smith

ps: it's been ages since I used 1.0.6, so everything I say might
be wrong, including this ps.