An in-depth look at LILO
In a previous article, we saw how versatile the boot loader 'LILO' was. This session we get more technical and look at the internals of LILO, its primary boot time operation, functionality and a few nifty little arguments that can help us tune up our LILO installation. One of the plus points of LILO is that it is filesystem independent. It is able to boot operating systems from Microsoft, OS/2, SCO Unix, Unixware, PC-DOS to Linux.
LILO has the capability to handle a maximum of 16 different boot images. Not only can LILO be used as the primary boot manager, with LILO written onto the MBR, but also as a secondary boot loader with LILO written to the boot sector of an extended partition. There are a whole series of permutations and combinations to booting into their system, using LILO. So, LILO should be able to boot your system regardless of the configuration.
Let's take a general look at how a booting procedure really goes about. Data on our hard drives is laid out in a very precise and accurate manner and structured into "Tracks" and "Sectors". "Tracks" and "Sectors" are the fundamental locks that define the storage of data on the storage media. Consider a storage device like a hard drive. This hard drive on formatting consists of various tracks and sectors.
-----------------------------
|Boot Sector | FAT | |
|--------------------- |
| DATA AREA |
| |
| |
-----------------------------
Refer to the figure above. At the beginning of the hard drive, we have the boot sector. Immediately after the boot sector lies the File Allocation Table (FAT) and probably some other irrelevant data. Rest of the area on the hard drive is for the purpose of storing data.
Hard drives are generally broken into primary and extended partitions. Primary partitions are bootable partitions and can be made to boot through any boot loader. Many BIOS' prevent booting off logical partitions.