2 votes

Pourquoi le BIOS utilise-t-il la mémoire sur batterie au lieu de stocker les paramètres dans l'EEPROM ?

Lorsque vous retirez la batterie de la carte mère, le PC oublie ses paramètres BIOS. En même temps, le BIOS est stocké sur une EEPROM et peut être facilement mis à niveau sans outil supplémentaire. Pourquoi le BIOS n'utilise-t-il pas cette mémoire pour stocker les paramètres sans avoir recours à une batterie ?

5voto

Ana cleto Points 11

Bien qu'il puisse stocker paramètres dans une EEPROM, que doit-il faire à propos de l'heure ?

Le chronométrage nécessite toujours une solution de sauvegarde à long terme et vous ne pouvez pas vous contenter de dire "vous pouvez simplement obtenir le temps sur Internet", car dans de nombreuses situations, ce n'est pas possible. Certaines machines doivent être protégées par une cloison étanche et ne peuvent pas être connectées à Internet, mais elles ont quand même besoin d'un chronométrage raisonnablement précis. tout sur cette machine aura eu lieu le 1er janvier 1970.

Les supercondensateurs et les batteries au lithium-polymère sont chers par rapport à l'une des batteries les plus courantes de la planète et nous avons déjà une bonne solution pour faire fonctionner l'horloge pendant plusieurs années sans interférence.

Donc. Nous devons faire fonctionner l'horloge, et elle a également besoin d'une petite quantité de mémoire. Il y a une question qui se pose :

Étant donné que nous disposons déjà d'une mémoire alimentée par batterie qui est nécessaire au fonctionnement du système, est-il judicieux d'introduire un système d'alimentation en courant électrique dans le système ? encore une fois un dispositif de mémoire juste pour stocker les paramètres de base qui sont déjà "sûrs" tant que vous remplacez la batterie assez rapidement ?

Je suis sûr que beaucoup de systèmes UEFI stockent probablement les paramètres dans l'EEPROM de toute façon ces jours-ci.


Comme d'autres l'ont mentionné, il y a aussi le fait qu'un grand nombre des paramètres stockés dans cette zone sont tout à fait capables de rendre un système complètement inutilisable.

Par exemple, il stocke des paramètres tels que les timings forcés de la mémoire, l'overclocking du CPU, la tension du CPU et d'autres paramètres de bas niveau qui sont appliqués au démarrage du système.

Sans un moyen simple et rapide d'effacer ces paramètres, de préférence pendant que le système est arrêté pour réduire les risques de dommages, nous pourrions facilement arriver à un état où le système est complètement inutilisable et pourrait se causer plus de dommages simplement en étant allumé.

Le fait de disposer d'un moyen facile de réinitialiser les paramètres, en retirant la batterie ou en court-circuitant le cavalier de la batterie, vous offre une solution rapide et, surtout, efficace. sûr pour restaurer le système à ses valeurs par défaut.

Une EEPROM impliquerait de disposer d'un matériel et d'un code supplémentaires qui détectent la pression d'un interrupteur au démarrage et restaurent certains paramètres "connus". C'est beaucoup plus compliqué qu'il n'y paraît et le faire à un stade précoce du démarrage du système implique beaucoup de logique supplémentaire dans le matériel et le logiciel pour y faire face. L'effacement d'une EEPROM n'est pas réellement dass facile et pour le faire, le BIOS aurait beaucoup de travail à faire.

Il est beaucoup plus simple d'avoir une batterie qui, une fois retirée, efface simplement tous les paramètres pour vous.

1voto

wmjdgla Points 31

C'est parce que dans les premières années, le BIOS est stocké dans la ROM, et non dans l'EEPROM. Les données contenues dans ces puces ne peuvent pas être réécrites (les mises à jour du microprogramme impliquent de changer de puce), les paramètres doivent donc être stockés dans une puce séparée qui peut être réécrite. Comme d'autres l'ont dit, nous pouvons minimiser le coût et la complexité du matériel en réutilisant simplement la mémoire BIOS non volatile alimentée par batterie (alias CMOS) qui est déjà utilisée pour suivre l'heure du système.

L'industrie est ensuite passée à l'EPROM, qui peut être réécrite après avoir été effacée par exposition à la lumière UV. Évidemment, ces puces ne sont toujours pas adaptées au stockage des paramètres.

L'industrie a finalement opté pour l'EEPROM, qui peut être réécrite de manière programmée, et il est certainement possible d'y stocker les paramètres. Cependant, comme l'a indiqué Mokubai, le stockage des paramètres dans le CMOS permet aux utilisateurs de réinitialiser facilement les paramètres au cas où ils se seraient trompés. En outre, le code du BIOS pour la lecture/écriture des paramètres de/vers le CMOS est utilisé depuis de nombreuses années et est bien testé. Il n'y a donc pas beaucoup de raisons pour que les OEM réorganisent l'implémentation pour passer à l'EEPROM.

Néanmoins, les microprogrammes UEFI modernes stockent certains paramètres/configurations dans l'EEPROM ou flash ou NVRAM, par exemple les entrées de démarrage, l'ordre de démarrage et les clés de démarrage sécurisé. Ceux-ci ne sont pas stockés dans CMOS parce que :

  1. Contrairement aux paramètres tels que les timings de la mémoire, vous pouvez toujours démarrer dans le menu de configuration du firmware si vous vous trompez. Vous pouvez alors utiliser le menu pour restaurer les paramètres.
  2. Pour des raisons de sécurité, secure boot maintient une liste de hachages/certificats de composants de démarrage malveillants/vulnérables dont l'exécution est bloquée, et une liste similaire pour les bons composants qui sont autorisés à s'exécuter. La première liste est appelée dbx, et la seconde db. Toutes deux entrent dans la catégorie des clés de démarrage sécurisées. Si elles étaient stockées dans la CMOS, les clés seraient perdues lorsque la batterie s'épuise et que l'utilisateur redémarre l'ordinateur.
  3. Le CMOS a une capacité limitée. Il est facile de l'augmenter, mais plus de cellules de mémoire signifie une plus grande consommation de batterie pour maintenir les données.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X