Page suivantePage pr�c�denteTable des mati�res

3. Que se passe-t-il lorsque vous allumez votre ordinateur ?

Un ordinateur sans programme qui s'ex�cute est juste un tas inerte d'�lectronique. La premi�re chose que doit faire un ordinateur lorsqu'il est allum� est de d�marrer un programme sp�cial appel� syst�me d'exploitation. Le travail du syst�me d'exploitation est d'aider les autres programmes de l'ordinateur � travailler, en traitant les d�tails m�prisables du contr�le du mat�riel de l'ordinateur.

Le processus de d�marrage du syst�me d'exploitation est appel� booting (originalement c'�tait bootstrapping (la�age des chaussures), allusion � la difficult� d'enfiler soi m�me ses chaussures `par les lacets'. Votre ordinateur sait comment booter car les instructions de boot sont stock�es dans un de ses composants, le composant BIOS (ou Basic Input/Output System).

Le composant BIOS dit o� aller chercher, � une place fixe sur le disque dur de plus basse adresse (le disque de boot), un programme sp�cial appel� chargeur de boot (boot loader) (sous Linux le chargeur de boot est appel� LILO). Le chargeur de boot est charg� en m�moire puis lanc�. Le travail du chargeur de boot est de d�marrer le syst�me d'exploitation r�el.

Le chargeur fait cela en allant chercher un noyau, en le chargeant en m�moire et en le d�marrant. Lorsque vous bootez Linux et voyez "LILO" sur l'�cran suivi par une succession de points, c'est qu'il charge le noyau. (Chaque point signifie qu'il vient de charger un autre bloc du disque du code du noyau.)

(Vous pouvez vous demander pourquoi le BIOS ne charge pas le noyau directement -- pourquoi ces deux �tapes du processus avec le chargeur de boot ? C'est que le BIOS n'est pas vraiment intelligent. En fait il est carr�ment stupide, et Linux ne l'utilise jamais apr�s avoir boot�. A l'origine, j'ai programm� sur des PC 8-bits primitifs avec de petits disques : litt�ralement ils ne pouvaient acc�der � suffisamment de disque pour charger le noyau directement. L'�tape du chargeur de boot vous permet de d�marrer plusieurs syst�mes d'exploitation � partir de diff�rents emplacements de votre disque, dans le cas o� Unix n'est pas assez bon pour vous.)

Une fois que le noyau d�marre, il doit chercher autour de lui, trouver le reste du mat�riel et �tre pr�t pour ex�cuter des programmes. Il fait cela non pas en fouillant � des adresses m�moire ordinaires, mais � des ports d'Entr�e/Sortie -- des adresses sp�ciales du bus, sens�es avoir une carte contr�leur de p�riph�riques en attente de commandes � cet endroit. Le noyau ne fouille pas au hasard ; il a un ensemble de connaissances qui lui permet de savoir ce qu'il est sens� trouver ici, et comment les contr�leurs r�pondraient s'ils �taient pr�sents. Ce processus est appel� Exploration automatique.

La plupart des messages que vous voyez au moment du boot sont l'exploration de votre mat�riel par le noyau � travers les ports d'Entr�e/Sortie, le chiffrage de ce qui est disponible et l'adaptation � votre machine. Le noyau Linux est extr�mement bon pour cela, meilleur que la plupart des autres Unix et tellement meilleur que DOS ou Windows. En fait, beaucoup de vieux adeptes de Linux pensent que l'ing�niosit� des explorations de Linux lors du boot (qui lui permettent de s'installer relativement simplement) ont �t� une raison de s'�panouir dans le monde des exp�riences des Unix libres pour attirer une masse critique d'utilisateurs.

Mais rendre le noyau compl�tement charg� et s'ex�cutant n'est pas la fin du processus de boot ; c'est juste la premi�re �tape (quelquefois appel�e niveau d'ex�cution 1 (run level 1)).

L'�tape suivante du noyau est de s'assurer que vos disques sont OK. Les syst�mes de fichiers sur disques sont des choses fragiles ; s'ils ont �t� endommag�s par une panne mat�rielle ou par une coupure soudaine d'alimentation �lectrique, il y a de bonnes raisons de r�tablir l'int�grit� avant que votre Unix ne puisse aller plus loin. Nous parlerons plus tard de ce que l'on dit � propos de comment les syst�mes de fichiers peuvent devenir mauvais.

L'�tape suivante du noyau est de lancer plusieurs d�mons. Un d�mon est un programme comme un spouleur d'imprimante, un serveur de mail ou un serveur WWW qui se cache en arri�re-plan en attendant d'avoir des choses � faire. Ces programmes sp�ciaux doivent coordonner plusieurs requ�tes qui peuvent entrer en conflit. Il y a des d�mons car il est souvent plus facile d'�crire un programme qui s'ex�cute constamment et qui sait tout des requ�tes, plut�t que d'essayer de s'assurer qu'un troupeau de copies (chacune traitant une requ�te et toutes s'ex�cutant en m�me temps) ne se g�neraient pas mutuellement. La collection particuli�re de d�mons que le syst�me d�marre peut varier, mais inclura presque toujours un spouleur d'imprimante (un d�mon garde-barri�re de votre imprimante).

Une fois que tous les d�mons ont d�marr�, nous sommes dans le niveau d'ex�cution 2 (run level 2). L'�tape suivante est la pr�paration pour les utilisateurs. Le noyau d�marre une copie d'un programme appel� getty pour surveiller votre console (et peut �tre d'autres copies pour surveiller des ports-s�rie entrants) Ce programme est celui duquel jaillit le prompt login sur votre console. Nous sommes maintenant dans le niveau d'ex�cution 3 (run level 3) et pr�ts pour votre connexion et l'ex�cution de vos programmes.

Quand vous vous connectez (en donnant un nom et un mot de passe), vous vous identifiez aupr�s de getty et de l'ordinateur. Il ex�cute maintenant un programme appel� (assez naturellement) login, qui r�alise des t�ches ancillaires et d�marre un interpr�teur de commandes, le shell. (Oui getty et login pourraient �tre un seul et m�me programme. Ils sont s�par�s pour des raisons historiques que nous n'expliciterons pas ici.)

Dans la section suivante, nous parlerons de ce qui se passe lorsque vous ex�cutez des programmes � partir du shell.


Page suivantePage pr�c�denteTable des mati�res

Hosting by: Hurra Communications GmbH
Generated: 2007-01-26 18:01:24