SILO

From OSDev Wiki
Jump to navigation Jump to search

What is SILO

SILO stands for "Sparc Improved boot LOader", it is a Linux bootloader on SPARC and UltraSPARC platforms. SILO can load Linux, Solaris from ext2, ext3, FFS_(BSD), ISO_9660 and ROMFS

SILO is capable of booting uncompressed or gzipped kernel images from the filesystems it supports.

SILO usage

When SILO is loaded at the boot prompt the path to the image to be booted can be passed manually or via an alias from the silo.conf file. Pressing tab lists aliases in the silo.conf file. Typing "halt" sends you back to the boot prom. Pressing "enter" or "return" boots the defualt image.

Installation

To create a bootable cdrom image for QEMU or real hardware. Note that second.b (the secondary bootblock) and silo.conf need to be edited to reflect your target filesystem and should be in the boot directory of the target filesystem.

mkisofs -G /boot/isofs.b -B ... -r -o IMAGENAME DIRECTORY_TREE

For floppy drive images. The following should be done with silo on an actual SPARC or emulated machine. Another option is to try and get intelsilo to work. genromfs should be downloaded and installed if you have not already done so.

genromfs -d floppy/ -f /dev/ram -A 2048,/.. -a 512 -V 'My installation disk'
mount -t romfs /dev/ram /mnt
silo -r /mnt -F -i /boot/fd.b -b /boot/second.b -C /etc/silo.conf
umount /mnt
dd if=/dev/ram of=floppy.img bs=1440k count=1

Caveats

SILO can only load images within the first 1GB of a disk. This means that partitions and or files beyond 1GB are not bootable.

Links