La terminologie utilisée dans ce domaine varie d'une personne à l'autre, de sorte qu'il n'y a pas de consensus à 100 %, ce qui peut prêter à confusion. Cela dit....
-
Firmware -- Ce terme désigne généralement un logiciel stocké sur des puces sur une carte mère ou un autre dispositif matériel. (Les SSD, les lecteurs flash USB et autres dispositifs de stockage flash similaires constituent des exceptions notables ; les logiciels stockés sur ces dispositifs ne sont pas des micrologiciels, à l'exception du micrologiciel qui contrôle le SSD lui-même). Les cartes mères, certaines cartes enfichables (mais pas toutes), les disques durs, les routeurs, les commutateurs et de nombreux autres composants informatiques possèdent tous un micrologiciel. Les appareils modernes disposent souvent d'un micrologiciel pouvant être mis à jour par logiciel - vous pouvez exécuter un programme qui remplace l'ancien micrologiciel par un micrologiciel mis à jour.
-
BIOS -- Ce terme est généralement utilisé de deux façons :
- Étroitement -- Appliqué de façon étroite, BIOS fait référence au micrologiciel intégré dans le PC IBM original ou dans n'importe lequel de ses clones depuis les années 1980 jusqu'à récemment (environ 2011). Ce type de BIOS utilise un code 16 bits et un ensemble d'interfaces de contrôle qui permettent à l'ordinateur de démarrer DOS, Windows, OS/2, Linux et d'autres systèmes d'exploitation. Il s'agit d'un ensemble très spécifique de caractéristiques qui distinguent ce BIOS des micrologiciels utilisés sur d'autres ordinateurs, tels que les Apple II, les Apple Mac ou même les PC modernes basés sur EFI.
- Au sens large -- Dans son utilisation la plus large, BIOS fait référence au micrologiciel de la carte mère d'un ordinateur. Il peut s'agir d'un PC x86 d'il y a dix ans, d'un PC moderne, d'un Apple II, etc. Personnellement, je n'aime pas cette utilisation car le PC original IBM et ses clones sont devenus si dominants que lorsque le terme "BIOS" est utilisé, les gens pensent généralement en termes de son BIOS ; ainsi, lorsque le terme est utilisé en référence à un autre type de micrologiciel, les gens traînent des hypothèses incorrectes sur les BIOS de type PC IBM.
-
EFI -- L'EFI (ou EFI unifié [UEFI], qui n'est que la version 2.x de l'EFI) est un type moderne de micrologiciel pour les cartes mères d'ordinateurs. Bien qu'il soit présenté comme distinct du micrologiciel dans le diagramme que vous avez partagé, l'EFI est généralement stocké dans des puces sur la carte mère et la plupart des gens le considèrent comme faisant partie du micrologiciel ; cependant, il peut être exécuté comme un programme chargé à partir du disque dur. Il s'appuie également sur le code d'initialisation du matériel de base dans le microprogramme - c'est-à-dire que l'EFI n'est pas le programme de base du microprogramme. intégralité du firmware. (L'EFI est destinée à remplacer le BIOS, bien que certaines des premières implémentations x86/x86-64 utilisent le BIOS pour effectuer cette initialisation matérielle de bas niveau. La plupart des EFI modernes ne s'appuient pas sur le BIOS de cette manière, bien qu'il y ait une particularité : le Compatibility Support Module (CSM) est un composant EFI qui permet à l'EFI d'exécuter des chargeurs de démarrage conçus pour les ordinateurs basés sur le BIOS. Ainsi, la plupart des systèmes x86-64 basés sur l'EFI peuvent démarrer en utilisant soit des chargeurs d'amorçage BIOS, soit des chargeurs d'amorçage EFI. Bien que cette capacité soit indubitablement utile dans certains cas, elle peut aussi créer plus de problèmes qu'elle n'en résout dans d'autres cas, comme je le décris en détail sur cette page de moi.
Ainsi, la manière I utiliser ces conditions, BIOS y EFI sont deux types de microprogrammes différents. (Il y en a d'autres aussi, comme OpenFirmware ( wiki ).) Certaines personnes, cependant, utilisent BIOS y firmware comme étant plus ou moins synonymes, surtout lorsqu'il s'agit du micrologiciel d'une carte mère. Dans ce système, l'EFI est un type de BIOS. Je n'aime pas cette deuxième approche parce que les gens ont tendance à glisser des hypothèses basées sur les trente premières années de l'histoire du PC -- que le boot loader réside dans le MBR d'un disque dur, par exemple -- qui ne s'appliquent pas aux ordinateurs basés sur EFI. Malheureusement, de nombreux fabricants de PC utilisent BIOS y firmware comme synonymes.
Vous pouvez également consulter cette question et ma réponse, ce qui est lié mais pas identique à votre question.