Au bord de l’UEFI
Les jours du bon vieux BIOS sont comptés. L’interface UEFI (Unified Extensible Firmware Interface) introduira une solution plus puissante capable de mieux répondre aux exigences du matériel diversifié d’aujourd’hui. En un mot, UEFI est une interface qui s’occupe de transmettre l’environnement de pré-démarrage au système d’exploitation. Nous avons jeté un coup d’œil rapide à UEFI et avons trouvé des problèmes imminents.
Vous avez peut-être déjà entendu parler de l’UEFI (ou EFI, qui était l’approche initiale). Intel a lancé EFI en 2003 avec l’architecture IA64 d’Itanium sous le titre Boot Initiative. Le concept a été confié au Forum EFI unifié, qui a géré et promu la nouvelle norme pour l’ensemble de l’industrie. AMD, AMI, Apple, Dell, HP, IBM, Insyde, Intel, Lenovo, Microsoft et Phoenix sont aujourd’hui les principaux membres. Un BIOS repose sur le mode réel 16 bits de l’architecture x86, mais UEFI introduit une indépendance matérielle totale et des interfaces divisées en services de démarrage et d’exécution. Celles-ci visent une standardisation élevée tout en introduisant suffisamment de flexibilité pour permettre aux fabricants de différencier leurs produits.
Le BIOS : antique et toujours répandu
Il y a 25 ans, le BIOS était conçu pour lancer des systèmes d’exploitation. Les premiers ordinateurs utilisaient des cartes perforées comme cible de lancement avant que celles-ci ne soient remplacées par des ROM avec des interpréteurs de base. Aujourd’hui, nous pouvons choisir une pléthore de cibles, y compris les disquettes, les disques durs, les lecteurs optiques et les emplacements réseau. Cependant, le fonctionnement réel des composants est toujours soumis au système d’exploitation particulier via les pilotes de périphérique, tandis que EFI permet la prise en charge des pilotes indépendants du système d’exploitation via son propre modèle de pilote.
Il y a eu plusieurs tentatives pour modifier le concept initial du BIOS. IBM a introduit une conception de système modifiée, le PS / 2, en 1988, en partie pour lutter contre les clones du BIOS. Son architecture multicanal (MCA) 32 bits avec ABIOS peut être considérée comme un moyen de contourner les implémentations BIOS imitées. Advanced RISC Computing (ARC) visait à unir les environnements de démarrage des plates-formes MIPS et Alpha dans les années 1990, mais il lui manquait une voie évolutive, une extensibilité et une éventuelle diversité de systèmes. PowerPC et SPARC ont leur micrologiciel ouvert (OF) et leur plate-forme de référence matérielle commune (CHRP), qui ont en quelque sorte fonctionné contre l’ACPI en ne l’adoptant pas.
En fin de compte, le BIOS est toujours là et fait toujours ce qu’il fait depuis 25 ans : s’assurer que votre système d’exploitation peut démarrer. Il n’a jamais été conçu pour la grande diversité de matériel d’aujourd’hui. Il est toujours bloqué avec des interfaces 16 bits et des interruptions logicielles, un routage des interruptions et des minuteries de précision maximale, un espace d’exécution ROM limité (1 Mo) et une taille d’image limitée, un nombre limité de périphériques initialisables (ce qui est critique dans l’espace serveur), des extensions propriétaires, et la modularité manquante, pour ne citer que quelques problèmes.
Prise en charge UEFI
Les systèmes d’exploitation ont commencé à prendre en charge la conception de l’interface de la plate-forme en 2007, mais la plupart des versions de Windows, telles que Vista avec SP1 et Windows Server 2008, n’offraient une prise en charge que sur les éditions 64 bits. Malheureusement, nous avons constaté que la prise en charge de l’UEFI par l’industrie est encore très faible et qu’il existe certaines lacunes du côté du stockage.