- Firmware
-
Un firmware, parfois appelé micrologiciel, ou plus rarement logiciel interne ou logiciel embarqué, est un ensemble d'instructions et de structures de données qui sont intégrées dans du matériel informatique que ce soit un ordinateur, un disque dur ou un appareil photo numérique.
Sommaire
Origine du terme
Le mot « firmware » est issu de software (programme informatique) et firm (« ferme ») "l'état intermédiaire entre soft et hard"[1].
Description
Le firmware a été créé pour permettre une plus grande flexibilité du hardware afin de lui permettre d’évoluer en permettant d’intégrer de nouvelles fonctionnalité, non prévues initialement, sans avoir besoin de refaire le design du hardware.
La mémoire dans laquelle réside le firmware peut être :
- non volatile, donc stockant le programme et les données même lorsqu'elle n'est pas alimentée en électricité, c'est le cas le plus courant, avec des ROM ou des EPROM.
- volatile, donc effacée lorsqu'elle n'est plus alimentée en électricité. Dans ce cas, le firmware doit être chargé par un pilote à la mise sous tension, ce qui est peu pratique.
Dans la plupart des cas ce logiciel gère le fonctionnement internes du système électronique.
D'une manière générale, le firmware cumule les avantages du logiciel, qu'il est possible de modifier, et du matériel, plus efficace. De son côté, le firmware interagit avec des composants matériels qui ne peuvent plus être modifiés une fois fabriqués, ce qui réduit la nécessité de le mettre à jour.
On peut noter que:
- Le firmware des ordinateurs (BIOS) sont exécutés par son (ou ses) CPU interne (ex : code de gestion de la carte mère, d'une carte vidéo ou SCSI)
- le firmware interne a chaque périphériques sont exécutés par le matériel qu'ils contiennent (ex : lecteur DVD, IDE ou SCSI, employant des micro-contrôleurs ou circuits de diverses familles).
- cependant les deux cas, précédents, sont parfois réunis, par exemple, lorsque la ROM d'un périphérique contient une partie du BIOS de l'ordinateur ainsi que le firmware destiné à la gestion de ce périphérique. Accessoirement cela permet de mesurer le degré d'indépendance d'un périphérique vis-à-vis du type de machine hôte car toute extension munie d'un BIOS pour PC n'est utilisable que sur une machine de ce type alors que celles qui n'emploient qu'un firmware sont indépendantes de la machine hôte. C'est par exemple le cas des lecteurs/graveurs CD/DVD IDE, qui sont conformes à la norme ATAPI donc fonctionnent sur toute machine IDE (PC, Mac...)).
Mise à jour
L'utilisateur final n'a d'ordinaire pas accès directement au firmware mais peut parfois le modifier par l'installation de mises à jour pour profiter d'améliorations ou de corrections de bug. Pour cela il faut que le firmware réside dans certains types de mémoires ROM « reprogrammables », le plus souvent il s'agit de d'EEPROM ou, depuis le milieu des années 1990, de mémoire flash (c'est-à-dire des EEPROM rapides).
Sécurité
Les firmwares sont susceptibles d'être la cible d'actions malicieuses visant à rendre l'appareil inopérant ou à l'utiliser afin de s'introduire dans un réseau. Durant l'EUsecWest 2008, Rich Smith a mis en avant la possibilité de lancer une Attaque par déni de service permanent[2] via une faille de sécurité sur les systèmes de mises à jour des firmwares des équipements faibles[3].
Si une telle faille peut-être exploitée afin de déployer une attaque par déni de service permanente il est alors envisageable d'exploiter cette faille pour introduire une backdoor et s'introduire dans le système d'information[4]. Ce sont souvent des équipements constamment en fonctionnement qui sont la cible de telles attaques.
Exemples
Les BIOS
Article détaillé : BIOS.Les BIOS présents dans les ordinateurs de type PC sont des firmwares.
EFI
Article détaillé : Extensible Firmware Interface.Les firmwares EFI (de l'anglais Extensible Firmware Interface) sont amenés à remplacer les BIOS sur les futures cartes mères des PC car ils possèdent une simplicité de programmation que n'a pas le BIOS.
Son inconvénient étant de rajouter une couche supplémentaire entre le hardware et l'utilisateur, compensée par une plus grande rapidité des processeurs et des mémoires.
Autres exemples
- Open Firmware est un firmware présent dans les ordinateurs de type Macintosh basés sur un processeur PowerPC ;
- Les programmes qui gèrent les composants d'un téléphone mobile, d'un lecteur de DVD, d'un baladeur MP3 ou d'une console de jeux ;
- La gestion de l'injection électronique d'un moteur à explosion.
- Un programme stocké dans une clef USB équipée d'un microprocesseur
- Un programme stocké sur une machine à laver gérant les différents programmes
- Le programme gérant la couche réseau d'une imprimante
- Le programme faisant fonctionner la machine à voter ESF1
Notes et références
Voir aussi
Catégories :- Logiciel
- Matériel
- Système d'exploitation
- Micrologiciel
- Terminologie de l'informatique
Wikimedia Foundation. 2010.