Alors, que se passe-t-il, justement, pendant ce temps-là ? Entre l'allumage de l'ordinateur et celui où vous allez pouvoir commencer à lancer des commandes ?
1 - Au début, seule la carte mère de l'ordinateur est active. L'utilisateur peut afficher le menu
BIOS Setup en appuyant sur une certaine touche. S'il ne le fait pas, la carte-mère passe la main au chargeur d'amorçage, le
Boot Manager, situé sur le
Master Boot Record, c'est à dire les 512 premiers octets du disque dur. Je vous ai déjà expliqué ça.
2 - S'il y a plusieurs OS sur l'ordinateur, le
Boot Manager (GRUB ou
boot0, selon ce que vous avez installé) affiche un menu demandant à l'utilisateur lequel il veut utiliser. Si ce dernier choisit FreeBSD, le Boot Manager lance le programme
/boot/boot1.
3 -
/boot/boot1 est un tout petit programme

qui ne sait faire qu'une seule chose : lancer
/boot/boot2
4 -
/boot/boot2 est un programme un peu plus gros, qui va charger en mémoire le programme
/boot/loader (chargeur).
5 -
/boot/loader est un vrai programme bien complexe qui va examiner votre matériel

et préparer le démarrage du noyau. Pour mener sa tâche à bien, il consulte plusieurs fichiers de configuration :
/boot/loader.rc,
/boot/device.hints,
/boot/loader.conf,
/boot/defaults/loader.conf. Vous ne devrez jamais modifier ce dernier. Mais les données qu'il contient seront ignorées s'il y a des données contradictoires dans
/boot/loader.conf.
/boot/loader va aussi afficher le
Menu de boot (celui où il est écrit FreeBSD en très gros à droite), qui vous permet de choisir quelques options pour le chargement du noyau. La plupart du temps, il est inutile de préciser quelque option que ce soit.
6 -
/boot/loader charge finalement en mémoire le
noyau de FreeBSD. En Anglais, on utilise le mot
kernel, qui signifie
amande. Le noyau est un ensemble de
processus (= programmes) qui vont rester actifs aussi longtemps que l'OS et assureront son bon fonctionnement. C'est un peu son ange gardien.

L'utilisateur n'y aura d'ailleurs jamais accès. Pour l'instant, le noyau lance le programme
init.
7 -
init achève les préparatifs. Il consulte le fichier de configuration
/etc/fstab pour charger en mémoire l'arborescence des fichiers. Et il lance successivement les programmes
rc et
getty.
8 -
rc assure la
configuration des
ressources, à l'aide des fichiers
/etc/rc.conf et
/etc/defaults/rc.conf. Là encore, ce dernier ne doit jamais être modifié et ses données sont ignorées si elles sont contredites par celles de
/etc/rc.conf. En fonction du contenu de ces deux fichiers,
rc lance un certain nombre de
DAEMONs.

Les daemons sont des processus qui n'interagissent pas avec l'utilisateur. Mais contrairement à ceux du noyau, on peut leur envoyer occasionnellement des
signaux, pour leur demander de s'arrêter par exemple. Les noms de daemons finissent généralement par un
d, mais pas toujours. Il y a, entre autres,
moused, qui gère la souris, ou
cron, qui surveille l'horloge et se tient prêt à lancer des tâches programmées à l'avance pour une heure précise.
Le lancement de certains de ces DAEMONs peut être personnalisé en éditant les scripts situés dans le dossier /etc/rc.d/, mais c'est un peu compliqué.
9 -
getty configure la console en s'aidant du fichier
/etc/ttys et lance le programme
login, qui demande à l'utilisateur son identifiant et son mot de passe.
10 - Une fois rassuré sur votre identité,
login ouvre
csh, votre
shell. C'est ce dernier qui va vous permettre dans quelques instants de taper vos premières commandes.