making floppy systems

Adi Linden [email protected]
Sat, 2 Sep 2000 11:38:20 -0500 (CDT)


Hi,

> So, assuming I have a bootable floppy and some means of transferring a
> tarred-up filesystem image to the embedded system's harddrive, how do I go
> about getting that image out of PWL?  Simply tar up the
> ./Embedded_Build/projects/blah/mnt directory?  Then once I partition and
> format the embedded system's hard drive, I untar the file system on to it,
> but how do I get a boot loader installed (lilo)?  Would I make the
> appropriate changes to the ramdisked /etc/lilo.conf and run lilo, or would
> I have to make a lilo boot disk to boot from the newly-created hard-drive
> filesystem first?
> 
> -fa

Ok, first off all of pwlconfig assumes and will assume in the future that
you intalled the target drive as a drive on your development system. 

In some instances you might be developing right on your target device. I.e
/dev/hda is your flash, hd, whatever and /dev/hdb is your development
system attached to your target platform. This arrangement is suitable for
dualbooting. However, the current scripts I am working on do not support
dualbooting at this time.

Assuming the first instance, a drive mounted on your development system is
what I find easiest. I now settled on using a USB flash reader (Sandisk
SDDR-31) which treats an inserted CF card like a SCSI hard disk drive. A
PentiumII 333 box with RedHat 6.2 is the development platform. Once the
flash has been loaded it is simply removed from the flash reader and
inserted in the CompactFlash-IDE adaptor on the target machine.

Another option I used with a target system that contains a floppy drive
(even if it's just temporarily) is to use a DOS floppy with a TCP/IP stack
for the network card used to copy the contents from the development system
(running SAMBA for filesharing with non-Linux machines) to the target. In
this case I use syslinux for a bootloader, a system that runs entirely in
ram and a fat12 or fat16 filesystem on the drive on the target machine.

An option I pursued briefly is to use a Linux bootfloppy with network
support and use nfs or ftp to copy the filesystem onto the target drive.
This allows a lot of flexibility depending on the tools available on the
floppy since you can implement almost any conceivable scheme to boot from
the target drive.

The disadvantage of not having your actual target drive mounted on the
development system to be loaded is that you need to build a special floppy
be it either DOS or Linux for every different platform you're working
with. Since the floppy is very likely a ramdisk based design this doen't
work well if your intended target machine has limited ram available. You
end up loading a kernel with approx 500k and a 3MB ramdisk on average.
Then you still need RAM to actually run things.

Anyways, got to go!

TTYL,
Adi



---------------------------------------------------
See the list archives at http://adis.on.ca/archives/
See the PWL homepage at  http://peeweelinux.com
---------------------------------------------------