Les fonctions du BIOS

Les fonctions du BIOS

Cet article est la partie 2 sur 3 du dossier Le BIOS

Les fonctions du BIOS servent à fournir la couche la plus basse possible entre le matériel et les logiciels. Ceci correspond aux programmes exécutés entre le moment où l’on appuie sur le bouton d’alimentation et le moment où le système d’exploitation démarre. Ils sont contenus dans la mémoire CMOS, et paramétrés selon le setup du BIOS. Le contenu des programmes est majoritairement sous licence propriétaire mais il est possible de trouver des BIOS open-source (Coreboot anciennement LinuxBios, OpenBIOS…). Il est également possible de trouver les BIOS très anciens (par exemple le BIOS IBM pour processeurs Intel 80286, sous langage assembleur).

Vérification des tensions

Lorsque le bouton d’alimentation est pressé, un premier programme de vérification des alimentations sortantes effectue en boucle un cycle de vérification. Ce programme provient de la CMOS. Lorsque l’ensemble des valeurs d’alimentation sont ok ; le CPU peut s’enclencher.

Première instruction processeur

Il s’agît souvent d’une instruction « Jump » redirigeant vers l’adresse mémoire de la CMOS contenant la suite des instructions du BIOS.

Le POST

Le « Power On Self Test » est un ensemble de programmes permettant de tester et d’initialiser les périphériques connectés. Il est variable suivant les versions de bios mais vérifie toujours :

  • CPU / Processeur logique
  • Circuit intégré de timer
  • Contrôleurs d’accès direct à la mémoire (DMA)
  • Contrôleurs des requêtes d’interruption (IRQ)[1]

Il contrôle ensuite s’il existe des ROM graphiques aux adresses C000:000h and C780:000h et exécute leurs BIOS le cas échant. C’est à ce moment que l’affichage est possible, et que l’on peut observer les logos constructeurs et les informations/erreurs. Les erreurs présentes avant cette étape sont souvent signalées par un bip.

Après l’affichage, une étape très importante est la vérification de la mémoire. S’ils sont présents, le BIOS contrôlera pour chaque zone mémoire la lecture, l’écriture et la fidélité. A cette étape, les erreurs sont critiques : elles aboutissent à l’arrêt du bios avec un message d’erreur.

Puis il contrôle et initialise les périphériques d’entrée sortie à l’aide de requêtes par les ports d’entrée/sortie via leurs contrôleurs: d’abord clavier et souris, puis les périphériques de stockage et d’extension :

  • Lecteurs de disquettes
  • Disques durs
  • Lecteur de CD/DVD-ROM
  • Réseau
  • Médias amovibles (clefs flash USB)
  • Cartes adaptateurs SCSI

Le POST va ensuite vérifier les adresses 0000:0472h pour chercher s’il doit démarrer d’un branchement à froid ou à chaud. La valeur de 1234h à cette adresse indique un démarrage à chaud, et apparait au format encodé en Little Endian (bit le moins significatif LSB, soit 3412). Dans ce cas le BIOS démarre le système d’exploitation.

Dans le cas d’un démarrage à froid, une valeur est envoyée sur un port à vérifier. Elle dépend du constructeur, allant de la souris à l’imprimante.

Le Lancement du système d'exploitation

Si aucune erreur n’a été renvoyée par le POST, le BIOS va rechercher des séquences de démarrage (dits « VOS » pour « Volume Boot Sector ») renvoyés par le MBR (pour « Master Boot Record ») des périphériques de stockage. Ces séquences de 512 octets contiennent les « Boostrap code », ce sont des instructions renvoyant la localisation des fichiers NTLDR permettant de lancer les systèmes d’exploitation.[2]

La procédure consiste à charger dans le registre de donnée du CPU le VOS du secteur de démarrage renvoyé par la requête de demande de donnée à l’adresse 7C00 du MBR. Ce secteur ne doit pas être vide et doit comporter sur ses deux derniers octets la signature « 0x55 0xAA ». Si une de ces conditions n’est pas remplie, le BIOS teste un autre périphérique de stockage. L’ordre de recherche est personnalisable dans le setup selon les BIOS.

Si aucun secteur de boot n’est trouvé, le BIOS renvoie généralement un message d’erreur comme « Error boot record » ou demande d’insérer un média démarrable.

L’ACPI ou gestion de l’énergie

Abréviation de « Advanced Configuration & power interface » ou OSPM (« OS-directed Power Management »). L’ACPI est paru pour la première fois en 1996 et réuni un ensemble de programmes issus des travaux fournis par Hewlett-Packard, Intel, Microsoft, Phœnix et Toshiba. Ce sont des programmes qui permettent de gérer l’alimentation des périphériques et du CPU en fonction de leur temps d’utilisation. Ils utilisent pour cela plusieurs états :

  • G0 (S0) – Etat allumé
  • G1 (« Endormissement ») (S1, S2, S3, S4) – Veilles :
    • - « Power on suspend » : Etat de veille commun où les processeurs ne sont plus alimentés pour le calcul et les disques sont stoppés. C’est un état de veille léger.
    • - « Suspend to RAM » : Etat peu utilisé par les systèmes d’exploitation, veille plus profonde où les
    • - « Standby » : L’alimentation principale est éteinte mais la mémoire vive est maintenue à l’aide de la source 5VBS, il s’agît de l’état provoqué par le « démarrer : mettre en veille » sur les systèmes d’exploitation Windows.
    • - « Hibernate » : veille prolongée
  • G2 (S5) Soft off – Arrêt piloté : « démarrer / arrêter »
  • Héritage
  • G3 : en cas d’échec d’alimentation, cet état permet de réalimenter vers l’état hérité ou l’état de travail.

Des programmes similaires à l’ACPI existaient (APM « Advanced Power Management », MPS « Multi-Processor Specification, PnP Bios Spec : spécifications Plug’n play »).

SLIC

La table SLIC (pour Software Licensing Description Table) est utilisée par les constructeurs pour stocker des informations relatives à l’authentification des systèmes d’exploitation. C’est le cas par exemple pour les PC ou netbook sous licence Windows avec une partition de restauration, pour lesquels il est nécessaire d’avoir en plus du SLIC, la clef d’activation OEM (Original Equipment Manufacturer).

Liens rapides du dossier<< 1 - Zoom sur le BIOS des IBM-PC3 - Le SETUP du BIOS >>

À propos de Dacendi

Dacendi sur google+ Suivre @Dacendi Etudiant en neurosciences, génétique et psychiatrie.
Ce contenu a été publié dans Informatique, avec comme mot(s)-clé(s) , , , , , , , . Vous pouvez le mettre en favoris avec ce permalien.

Recherches menant à cet article : différents types bios leurs fonctionnalités,fonction du bios

Découvrir d’autres articles en relation

  • Le SETUP du BIOS
    Le SETUP du BIOS
    Le SETUP du BIOS désigne l’interface graphique à partir de laquelle il est possible de configurer le matériel de l’ordinateur. De nombreuses options peuvent être modifiables à partir de cette interface, comme la séquence de boot.
  • Zoom sur le BIOS des IBM-PC
    Zoom sur le BIOS des IBM-PC
    Logiciel présent sur tous les ordinateurs PC, le BIOS est un élément indispensable à l’initialisation de l’ordinateur. Son évolution est liée aux ordinateurs PC d'IBM. Voici un petit point d'histoire sur l'évolution du BIOS.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *