La vie de votre PC commence avec un petit programme implanté dans la ROM (BIOS) et qui charge le tout premier secteur du disque dur en mémoire. Ce secteur s'appelle le secteur d'amorçage (boot sector) du master boot record (MBR). Cette partie de code est de 512 octets et c'est sur elle que repose la mise en route du système d'exploitation. Dans le cas de LINUX, le secteur d'amorçage charge le fichier /boot/map qui contient une liste de la localisation précise des secteurs du disque que l'image du noyau LINUX (usuellement le fichier /boot/vmlinuz) occupe. Le secteur d'amorçage charge le contenu de chacun de ces secteurs de manière à reconstruire l'image du noyau dans la mémoire. Ensuite, la main est passée au noyau.
Vous pourriez vous demander comment il est possible de charger un fichier depuis un système de fichiers alors que ce dernier n'est pas monté. Retenons que la partition d'amorçage contient un programme à la fois simple et de petite taille qui ne supporte pas l'ensemble des systèmes de fichiers et périphériques où réside l'image du noyau. En fait, lilo ne doit pas supporter de système de fichiers pour accéder à un fichier donné, parce qu'il emploie une liste de secteurs que le fichier d'amorçage occupe et qu'il est programmé pour utiliser les interruptions du BIOS pour lire ces secteurs [le terme ``interruptions'' cité ici n'a rien à voir avec les interruptions matérielles. Il se rapporte à des fonctionnalités du BIOS mises à disposition du système d'exploitation. Les périphériques matériels peuvent prendre en compte des fonctions personnalisables du BIOS, support rudimentaire nécessaire au démarrage de ces périphériques. Ce support est à distinguer de celui fourni par les pilotes de périphériques, pilotes associés au noyau]. Si le fichier n'est jamais modifié, cette liste de secteurs ne changera pas. Telle est la manière dont /boot/map et /boot/vmlinuz sont chargés en mémoire.