Question:
Ne peut-on pas simplement connecter une batterie à une RAM pour éviter la perte de données lors de coupures de courant?
Vishal Dalwadi
2019-10-07 20:09:44 UTC
view on stackexchange narkive permalink

Donc, je me demandais simplement comment le stockage de mémoire volatile perd des données lorsque leur alimentation est coupée.Mais ne pouvons-nous pas résoudre ce problème en utilisant une batterie en conjonction avec une RAM et une ROM et en cas de coupure de courant, c'est-à-dire lorsque l'ordinateur n'a pas reçu de signal d'arrêt, la batterie se met en marche et un contrôleur transfère les données de la RAM vers une EEPROM?

EEPROM - parce que je suppose que les disques durs et les SSD consomment plus d'énergie.Je veux dire que si nous pouvions le faire, nous pourrions peut-être le programmer pour stocker explicitement des données dans EEPROM, sinon des données, puis le système d'exploitation (seulement une copie).De cette façon, nous pouvons également démarrer plus rapidement.Il y a peut-être des raisons très évidentes de ne pas le faire.Mais ils ne sont pas clairs pour moi.Alors pouvez-vous me dire pourquoi cela n'est pas fait?

Pourquoi se soucier de transférer vers EEPROM si la RAM est sauvegardée par batterie.
Absolument aucun point car les autres périphériques seront réinitialisés et ils n'ont rien à voir avec les données RAM sauvegardées au retour de RESET.Vous avez UPS pour éviter les coupures de courant soudaines pour l'ensemble du système.
Et l'idée eeprom ... Eh bien, aujourd'hui, un PC domestique de milieu de gamme typique a environ 8 Go de DRAM.EEPROM de 8 Go?Peut-être que vous vouliez dire flash après tout?
Ils le font déjà, mais pas pour la mémoire principale d'un ordinateur;le terme courant est «SRAM à batterie».La SRAM est de loin trop chère pour être utilisée comme mémoire principale, mais la SRAM à batterie a été utilisée historiquement pour des choses comme les paramètres du BIOS (vous avez déjà entendu parler de «la batterie CMOS»?), Et c'est ainsi que la sauvegarde de jeux fonctionnait sur NES, SNES, Game Boyet quelques premiers jeux vidéo Game Boy Advance.
Tout d'abord, vous n'avez pas besoin qu'il existe déjà des systèmes qui le font: https://www.avadirect.com/Battery-Backup-Unit-w-128-MB-DDR-ECC-Cache-Module-for-SRCU42E-RAID-Controller / Product / 2513 Deuxièmement, l'EEPROM est LENTE et prend beaucoup plus d'espace, vous n'avez donc pas besoin de le faire
https://en.wikipedia.org/wiki/Non-volatile_random-access_memory
Il convient de noter que vous devez également être en mesure de revenir à un état de fonctionnement après la coupure de courant.Si 100% du système est sauvegardé par batterie, vous n'avez aucun problème (nous appelons cela un UPS).Cependant, si une partie du système est sauvegardée, il doit être prêt à déterminer un état de fonctionnement pour tous les composants qui ont perdu leur état pendant la panne de courant.Cela peut être un exercice divertissant.
Sur les ordinateurs portables, le mode de suspension alimente (et actualise) uniquement la DRAM.Les besoins en énergie sont relativement faibles, généralement une semaine ou plus en mode veille est possible avant que la batterie de l'ordinateur portable ne soit vide et que le contenu de la RAM soit perdu.Certains ordinateurs portables / systèmes d'exploitation ont une fonction qui leur permet de se réveiller après un certain temps, d'écrire le contenu de la RAM sur le disque (mise en veille prolongée) et de s'éteindre complètement.
@Andyaka Il est sauvegardé en permanence mais nous ne saurons pas avec certitude combien de temps durera la coupure de courant.Donc, ce que je voulais dire, c'est que nous pouvons le sauvegarder sur une EEPROM et que nous n'aurons pas à nous soucier de l'alimentation et de l'épuisement de la batterie.De plus, je lis maintenant dans les réponses que les DRAM ont besoin de beaucoup d'énergie car il y a tellement de cycles de rafraîchissement, donc compter sur la batterie pour garder les données intactes dans la RAM serait une mauvaise décision de conception.
Certaines entreprises fabriquaient en fait des disques basés sur la RAM, vous deviez les alimenter en externe et ils étaient assez chers, référence [HyperDrive] (http://www.hyperossystems.co.uk/07042003/products.htm)
Cela a parfois été fait, mais cela n'a jamais été fait car c'est assez cher.Voir ici pour un exemple: https://arstechnica.com/information-technology/2013/04/memory-that-never-forgets-non-volatile-dimms-hit-the-market/
@VoltageSpike: Le cache RAID sauvegardé par batterie était ce à quoi je pensais immédiatement.Les contrôleurs RAID haute fiabilité vous permettent de remplacer à chaud un contrôleur défectueux, de replacer le module de cache et de continuer à travailler sans perte de données.
Vous voulez probablement toujours que l'option * * * efface la RAM.Rappelez-vous l'ancienne question de dépannage "Avez-vous essayé de l'éteindre puis de le rallumer?"Cela résout de nombreux problèmes de mauvais état car la RAM est effacée.La suppression du mauvais état est également l'idée derrière la supervision des processus et les redémarrages à Erlang.
Il y a toujours ceci: https://en.wikipedia.org/wiki/Uninterruptible_power_supply mais il semble que vous vouliez dire quelque chose de plus petit ou de plus localisé dans la mémoire uniquement.(Quel est votre cas d'utilisation ici?)
@JeffY C'était juste une question qui m'est venue à l'esprit.
Sept réponses:
rdtsc
2019-10-07 21:10:07 UTC
view on stackexchange narkive permalink

Réponse courte: Vous pourrez peut-être "connecter une batterie à une RAM pour éviter toute perte de données lors d'une panne de courant", mais cela dépend du type de RAM.

SRAM (mémoire statique à accès aléatoire) n'est pas une DRAM, comme expliqué ci-dessous. Les SRAM se trouvent dans de nombreux appareils électroniques tels qu'un thermostat moderne (domestique) (utilise une batterie pour conserver les paramètres en cas de panne de courant) et dans un réveil (la batterie garde l'heure et peut alimenter l'unité pendant une courte période), etc. . Les disques durs contiennent généralement de la SRAM qui se fait passer pour «32 Mo de cache disque». La SRAM spécialisée est même présente à l'intérieur du processeur, car c'est une mémoire cache L1, L2 et L3 ultra-rapide.

Les piles primaires (non rechargeables) au lithium à «pile bouton» sont couramment utilisées pour la rétention de la SRAM. Les SRAM modernes peuvent avoir des tensions de fonctionnement inférieures, telles que 1,8 V, nécessitant plus de circuits pour être alimentées par une batterie de 3,0 V. Le courant d'alimentation est très faible (même les nano-ampères), de sorte que les données peuvent être conservées longtemps à partir d'une petite batterie. De nombreuses machines industrielles (robots, variateurs de fréquence, contrôleurs logiques programmables, etc.) utilisent une batterie de secours SRAM pour conserver les données critiques lors de cycles d'alimentation (fréquents).

L'acronyme SRAM signifie " Mémoire statique d'accès aléatoire". Statique, car son contenu reste quel que soit l'état dans lequel il a été programmé, indéfiniment, mais seulement tant que l'alimentation est appliquée. SRAM est très rapide mais encombrant physiquement et est relativement cher, donc ne trouve que des rôles de niche, même aujourd'hui. La SRAM et la DRAM sont de type volatile, ce qui signifie que leur contenu est perdu en cas de coupure de courant.

L'EEPROM (mémoire morte programmable effaçable électriquement) est un ancien support de stockage numérique non volatile, ce qui signifie que les données persistent après la mise hors tension. Celles-ci étaient à l'origine "programmées" ou "fusionnées" au niveau du bit, mais les plus modernes sont un peu plus rapides et peuvent traiter les données par blocs. Celles-ci sont encore beaucoup plus lentes que SRAM ou DRAM. En raison de cette lenteur extrême, de cette capacité limitée et d'une capacité d'écriture / effacement limitée, ils ne trouvent une utilisation que dans des rôles tels que le stockage de paramètres et de petits programmes pour les microcontrôleurs, etc. de temps impliqué.

La mémoire

FLASH, généralement considérée comme une clé USB et dans les disques durs SSD, est un autre support de stockage non volatile. Il est également beaucoup plus lent que les autres types de RAM, et a une limite d'écriture finie, il n'est donc pas utilisé pour la mémoire principale. Un disque dur SSD n'est rien de plus que tout un tas de ces derniers, tous utilisés en parallèle, pour augmenter la vitesse et la capacité.

DRAM (Dynamic Random Access Memory) est une bête complètement différente. «Dynamique» car il est en constante évolution, et le contenu changera (sera perdu) sans intervention. La DRAM est relativement dense (en termes de capacité) et peu coûteuse, elle est donc utilisée pour la mémoire système principale de l'ordinateur. Malheureusement, il est également plus lent * que la SRAM et doit être «rafraîchi» en continu, sinon son contenu est perdu en peu de temps en fonction de la température. Le fonctionnement normal du contrôleur de mémoire du PC maintient les données dans la DRAM actualisées en permanence afin qu'elles soient toujours disponibles. Si l'alimentation est coupée, le contrôleur de mémoire doit toujours actualiser les données tout en fonctionnant sur la batterie de secours. Les ordinateurs portables, par exemple, font cela lors de la suspension de la RAM. Étant donné que ce rafraîchissement est un processus actif, il consomme plus de courant et, par conséquent, la batterie est généralement beaucoup plus grande qu'une pile bouton. Si la batterie est épuisée, le contenu de la DRAM est perdu et la machine est forcée de démarrer à froid.

Une nouvelle technologie prometteuse est la FeRAM.(Ferro-Electric RAM) est assez rapide, non volatile et a une endurance élevée.C'est une nouvelle technologie, donc assez chère et la capacité est limitée, donc les rôles sont très limités.

* A part: pour contourner la lenteur de la DRAM, un PC les utilise massivement en parallèle.Tout d'abord, un bâton entier est accédé à la fois (vitesse 8x puisqu'il y a 8 puces dessus), puis si la carte mère prend en charge le dual-banking, deux modules à la fois (2x8 = 16x), triple-banking = 24x, etc.comment un module marqué "PC3-10666" peut éventuellement fonctionner comme une puce fonctionnant à 10 666 MHz.Depuis un bus à 666 MHz: 666 * 2 (DDR signifie deux transferts par horloge) * 8 puces / module = 10 666.

Je vous remercie!Cela a été d'une grande aide.
Avant l'ère du SSD flash, n'y avait-il pas des périphériques de stockage qui n'étaient essentiellement que des boîtes de DRAM à batterie, avec des circuits dédiés pour le rafraîchir?
@grawity Il y en a eu (cf. https://images-na.ssl-images-amazon.com/images/I/41CVgprtpsL.jpg).Ils ont été vendus comme des "disques RAM".Bien que je ne les qualifie pas de "commun", il s'agit plutôt d'un matériel exotique vraiment spécialisé - et dans ce domaine pratiquement * tout * existait si vous y regardiez assez.
https://en.wikipedia.org/wiki/Memory_refresh dit: "Bien que dans certains systèmes anciens, l'actualisation commandée par microprocesseur, avec une minuterie déclenchant une interruption périodique qui exécutait un sous-programme qui effectuait l'actualisation, cela signifiait que le microprocesseur ne pouvait pas être mis en pause, en une seule étape ou mise en veille prolongée économe en énergie sans arrêter le processus de rafraîchissement et perdre les données en mémoire. Ainsi, dans les systèmes modernes, le rafraîchissement est géré par des circuits dans le contrôleur de mémoire, ou de plus en plus sur la puce elle-même. "
Il n'y a pas si longtemps, il y avait aussi le cache disque sauvegardé par batterie dans les contrôleurs de disque / RAID professionnels (appelé «Battery Backup Unit»).Lorsque l'alimentation est coupée, les données du cache disque non encore écrites sur le disque rotatif sont conservées pour plus tard.Les cartes plus récentes écrivent simplement les données sur une mémoire flash interne.Voir aussi: https://serverfault.com/questions/203355/why-do-i-need-a-raid-battery-pack
@RazvanSocol Seule la RAM dynamique (DRAM) doit être actualisée.La RAM statique (SRAM) n'a pas cette exigence, et le processeur peut être mis en pause ou même éteint si d'autres détails comme les tampons de bus sont conçus correctement.SRAM gardera sa mémoire intacte tant qu'elle sera alimentée.
@ReversedEngineer: bien sûr.Je faisais un commentaire à rdtsc, qui a écrit: «Pour" rafraîchir "correctement la DRAM, le CPU (traditionnellement) a été responsable.Il n'y a pas de puce dédiée uniquement pour le rafraîchir. »Ce n'est plus le cas dans les systèmes modernes.
@RazvanSocol Désolé, je vous ai mal compris.Informations utiles aussi, puisque je pensais que le CPU, même aujourd'hui, est utilisé pour rafraîchir la DRAM
@RazvanSocol ce que je voulais dire par "Il n'y a pas de puce dédiée uniquement pour la rafraîchir" était que Vishal n'avait pratiquement aucun espoir de conserver le contenu de la DRAM uniquement avec une alimentation CC.
@rdtsc: Selon https://user.eng.umd.edu/~blj/papers/ieeetc65-1.pdf, la DDR4 dispose d'un mécanisme d'auto-actualisation.
nitpick, mais "dans les millièmes de seconde" n'est pas vraiment correct.Le temps de rétention minimum est de 64 ms à la température nominale maximale, que je décrirais plutôt comme des «centièmes de seconde».Toujours à des températures plus normales, la rétention est de l'ordre de plusieurs secondes à quelques minutes.C'est une attaque bien connue pour refroidir considérablement la mémoire d'une machine cible avant de la supprimer et de l'installer sur une autre machine pour lire les données.(La dépendance à la température est exponentielle, permettant la rétention des données même des heures)
Sur la plupart des premiers micro-ordinateurs, le rafraîchissement de la DRAM était assuré par des circuits externes, souvent les circuits vidéo.Le Z80 a été le premier microprocesseur dont je me souviens avoir fait le rafraîchissement de la DRAM, mais même là, je pense qu'il serait plus clair de considérer que le rafraîchissement doit être effectué par un «contrôleur de mémoire» intégré dans le processeur, car c'était (et est toujours,la plupart du temps) invisible pour le programmeur et fonctionne de la même manière que le contrôleur de mémoire soit intégré ou non.
Le PC d'origine utilisait une puce de minuterie et une puce DMA pour rafraîchir sa mémoire.@CurtJ.Sampson - sur les premiers systèmes ou terminaux avec contrôleurs vidéo intégrés, l'accès à la mémoire du contrôleur vidéo pour mettre à jour l'écran était suffisant pour répondre aux besoins de rafraîchissement de la mémoire.
@rcgldr Eh bien, je pense que pour beaucoup de systèmes, le simple fait d'avoir de la vidéo n'était pas suffisant.Autant que je sache, toutes les machines Apple 8 bits et CBM autres que celles avec RAM statique nécessitaient une prise en charge supplémentaire spéciale pour l'actualisation DRAM conçue dans;la vidéo seule ne le ferait pas.(Ce qui est logique; sur beaucoup de ces systèmes, il n'y avait pas seulement des rangées de DRAM auxquelles les circuits de génération vidéo n'ont jamais accédé, mais même des banques entières de puces qui ne l'ont jamais été.)
Je pense qu'il pourrait être quelque peu inutile de sauvegarder le contenu de la RAM à moins que les registres du processeur et la mémoire cache puissent également être sauvegardés.Le processus de mise en veille prolongée sur un PC doit enregistrer quelque chose de plus que l'état exact de la RAM afin de permettre au PC de «restaurer» l'état de l'ordinateur lorsqu'il se réveille.
@rcgldr Non, je veux dire spécifiquement les machines non-Z80, non-CP / M qui au tout début des années 80 étaient de loin les systèmes 8 bits les plus courants.Pour presque aucun d'entre eux, il suffisait de disposer d'un contrôleur vidéo à lui seul pour effectuer un rafraîchissement;ils avaient tous besoin d'un circuit de rafraîchissement séparé (souvent ajouté ou intégré au contrôleur vidéo) pour le rafraîchissement.
@CurtJ.Sampson: Sur l'Apple II, la concaténation de (A0-A4, A7-A9) parcourra les 256 valeurs avec des récupérations vidéo effectuées toutes les ~ 4,4 ms.
@CurtJ.Sampson - Sur les Atari 8 bits, 400, 800, 65XE, 130XE (128 Ko de RAM), la puce ANTIC a fait le rafraîchissement de la DRAM, ainsi que le DMA et une partie de la vidéo avec la puce GTIA.Contrairement aux autres systèmes basés sur 6502 (Apple II, Commodore 64), les Atari exécutaient leur 6502 à environ 2 MHz (contre 1 MHz).
比尔盖子
2019-10-07 20:59:30 UTC
view on stackexchange narkive permalink

Ne peut-on pas simplement connecter une batterie à une RAM pour éviter la perte de données lors de coupures de courant? Alors pouvez-vous me dire pourquoi cela n'est pas fait?

Bien sûr que nous le faisons! C'est ce qu'on appelle la SRAM à batterie, et elle est largement utilisée dans les systèmes embarqués. De nos jours, le coût de la technologie NVRAM (comme l'EEPROM conventionnelle ou la nouvelle FRAM) est faible, ils peuvent faire la même chose sans alimentation, donc ce n'est pas aussi courant qu'avant, mais c'est toujours là. Et il est très probable que votre ordinateur de bureau still en ait un à l'intérieur pour conserver les paramètres du BIOS.

Battery-Backed SRAM

Source de l'image: Fiche technique ST M48T128Y

Les applications incluent:

  • Date / Heure. La pile bouton de la carte mère de votre ordinateur alimente la puce d'horloge en temps réel, qui contient de la SRAM qui garde l'heure. C'est la raison pour laquelle votre ordinateur de bureau se souvient de l'heure même si l'alimentation est coupée.

  • Paramètres de calibrage. Un équipement de test tel qu'un oscilloscope peut enregistrer les données d'étalonnage actuelles dans la SRAM (un problème courant des anciens équipements de test est la perte de toutes les données d'étalonnage lorsque la batterie est déchargée).

  • Paramètres d'exécution. Un microcontrôleur peut enregistrer des données d'exécution importantes dans une SRAM sauvegardée par batterie, de sorte que les données ne soient jamais perdues même si le microcontrôleur est réinitialisé en raison d'une panne de courant ou d'une panne. De même, une calculatrice scientifique portable peut enregistrer vos variables.

    • De nombreux ordinateurs de bureau utilisent encore cette technique pour conserver certains paramètres du BIOS, ainsi que la date et l'heure. Il est conservé car les gens ont constaté qu'il était facile de retirer la batterie et de tout réinitialiser si le paramètre du BIOS est mauvais. Les premiers PC utilisaient de véritables puces SRAM dédiées, les PC modernes utilisent une solution intégrée. Bien que le micrologiciel UEFI moderne utilise principalement la NVRAM, certains ont encore une SRAM sauvegardée par batterie en plus de la NVRAM.
  • Cryptographie et sécurité.Un matériel de sécurité peut enregistrer la clé privée dans une SRAM sauvegardée par batterie, avec un mécanisme de détection de sabotage tempéré qui efface et déconnecte la SRAM si une intrusion est détectée, détruisant définitivement la clé privée.De même, dans le cas extrême, le programme lui-même est enregistré dans SRAM pour contrecarrer les efforts de rétro-ingénierie des concurrents.

Nous ne faisons pas cela sur les ordinateurs de bureau.La grande DRAM sur les ordinateurs consomme beaucoup d'énergie.De plus, la plupart des systèmes d'exploitation et des logiciels ne sont pas conçus pour continuer à fonctionner après une coupure de courant.Vous pouvez implémenter quelque chose comme l'hibernation, mais si c'est le cas, pourquoi n'utilisez-vous pas simplement l'hibernation?Dans l'ensemble, ce n'est pas fait, non pas parce que c'est impossible, c'est simplement parce que personne ne veut vraiment le faire.

tAmper-détection.Bien que certaines personnes se fâchent quand elles ne peuvent pas déchiffrer leurs données.
@dave_thompson_085 Beaucoup de gens se mettent aussi en colère dans la communauté des jeux rétro / arcade, certains jeux sont définitivement perdus lorsque la batterie de la clé de cryptage SRAM est morte ;-(
Eh bien, il est largement disponible sur les ordinateurs portables: c'est exactement ce que signifie "suspendre vers la RAM", et je l'utilise tous les jours au lieu de l'hibernation profonde, car il est plus rapide de se réveiller.Je ne suis probablement pas le seul, et je peux vous dire que tous les principaux systèmes d'exploitation le prennent en charge depuis de nombreuses années.
"Et il est très probable que votre ordinateur de bureau en ait encore un à l'intérieur pour conserver les paramètres du BIOS."Est-ce cela la batterie CMOS?
J'ai récemment payé beaucoup d'argent pour remplacer la carte mémoire contenant les données de configuration de l'une de mes radios ([ICOM R-71A] (https://www.universal-radio.com/catalog/commrxvr/r71a.html)) après lela batterie est morte.J'aurais pu simplement remplacer la batterie, mais il n'y avait aucun moyen de ressaisir les données de configuration (et aucune source de données de configuration que je pourrais trouver à entrer).C'est impressionnant que la batterie ait duré 30 ans, j'aurais juste aimé savoir que je devais la remplacer avant qu'elle ne disparaisse.
@Cruncher Oui.Bien que le terme «batterie CMOS» soit un peu abusif.CMOS est le nom de la technologie semi-conductrice utilisée pour fabriquer toutes sortes de puces, appeler la batterie la "batterie CMOS" n'a pas plus de sens que de nommer un programme informatique le "programme C".Je suppose que le nom vient du fait que CMOS a activé la première génération de puces SRAM et RTC à très faible puissance et a rendu les solutions de sauvegarde de batterie plus pratiques, de sorte que les gens ont commencé à utiliser le nom de la technologie pour désigner la puce SRAM / RTCqui contient les paramètres du BIOS et l'heure.
pjc50
2019-10-07 20:57:47 UTC
view on stackexchange narkive permalink

Pour un PC, c'est plus ou moins ce que signifie «veille prolongée sur batterie faible».Le contenu de la RAM est écrit sur le disque dans le fichier d'hibernation.Comme vous avez besoin que tout le système soit allumé pendant cette opération, il a besoin de beaucoup d'énergie et ne convient donc qu'aux systèmes qui auraient de toute façon une batterie comme les ordinateurs portables.

De même, il est possible de démarrer rapidement à partir de l'hibernation;Intel appelle cela "démarrage rapide" et il est disponible sur certains systèmes depuis longtemps.

Le principal facteur limitant est que la RAM est si grande qu'il faut plusieurs secondes pour tout écrire dans Flash.

Dans le cas d'un PC, il peut arriver que l'O.S.fait une approche "hybride": écrire sur le disque, mais aussi garder en RAM.De cette façon, il peut démarrer très rapidement et est protégé en cas de panne de courant, car il a toutes les données d'hybernation sur le disque.C'est plus rapide qu'un démarrage à froid et restaure le contenu et les programmes en cours d'exécution, tout comme le ferait une suspension dans la RAM.
fraxinus
2019-10-08 22:33:10 UTC
view on stackexchange narkive permalink

EEPROM - parce que je suppose que les disques durs et les SDD consomment plus d'énergie.

Les SSD sont par définition EEPROM.

Ce que vous décrivez est exactement comment fonctionnent les fonctions de «suspension sur le disque» ou de «mise en veille prolongée» des ordinateurs modernes. Vous débranchez la prise, la batterie ou une batterie externe (UPS) commence à alimenter l'ordinateur et lorsque la batterie s'épuise à un certain point, le système d'exploitation (en fonction des paramètres) écrit simplement toute la RAM dans un fichier et s'éteint. Lorsque vous rallumez l'appareil, le système d'exploitation voit que le fichier "hibernation" existe et au lieu de démarrer normalement, il lit le fichier dans la RAM et commence là où il s'est arrêté auparavant (beaucoup de simplifications ici, bien sûr).

Il existe également une fonction "suspendre vers la RAM" - désactiver les périphériques, arrêter le processeur et alimenter uniquement la RAM et le contrôleur de RAM.

Les deux fonctions peuvent être enchaînées - vous suspendez d'abord la RAM, et lorsque la batterie s'épuise un peu plus, l'ordinateur se réveille brièvement afin de transférer le contenu de la RAM sur le disque et de s'éteindre complètement.

"Les deux fonctions peuvent être enchaînées - vous suspendez d'abord la RAM, et lorsque la batterie s'épuise un peu plus, l'ordinateur se réveille brièvement afin de transférer le contenu de la RAM sur le disque et de s'éteindre complètement."- Il est en fait plus logique d'écrire le contenu de la RAM sur le disque * d'abord *, car vous n'avez alors rien d'autre à faire que de mettre hors tension lorsque la batterie s'épuise.Cela s'appelle Hybrid Sleep sous Windows, Safe Sleep sous macOS («Safe» car vous pouvez retirer la batterie en toute sécurité / perdre de l'énergie) et existe également sous Linux.
@JörgWMittag Je pense que ce n'est pas exactement ce qui se passe.Ne me citez pas là-dessus, mais je crois que certains O.S.peut désactiver les périphériques et la plupart des périphériques (comme s'il était en suspension) et tout écrire sur le disque avant de passer aux états de faible puissance (alias: suspendre).Lorsque vous allumez le PC, il peut tout reprendre.En cas de panne de courant, tout est déjà dans le disque et il reprend juste.Je crois fermement que la copie est effectuée avant d'arrêter le processeur, mais après avoir éteint tous les périphériques (écran, clavier, souris, webcam, cartes réseau, gpu, autres).
Spehro Pefhany
2019-10-10 11:48:47 UTC
view on stackexchange narkive permalink

Pour ajouter aux autres réponses approfondies, permettez-moi de souligner que le simple fait d'avoir de l'énergie disponible pour la mémoire est insuffisant pour garantir un redémarrage correct là où vous vous êtes arrêté.Si vous laissez simplement la puissance dériver hors des spécifications du processeur, elle deviendra généralement folle à un moment donné, car la logique interne commence à échouer et un processeur à vitesse GHz peut créer beaucoup de corruption de données en quelques millisecondes.au point où il se tait complètement (et même un seul bit pourrait suffire à le faire planter).

Pour cette raison, vous voulez des circuits de supervision et généralement des logiciels qui surveillent les rails d'alimentation et permettent un démarrage et un arrêt ordonnés qui ne corrompent pas la SDRAM ou la RAM non volatile ou sauvegardée par batterie.

Mr. de Silva
2019-10-10 11:30:55 UTC
view on stackexchange narkive permalink

Puisque @rdtsc a fourni une excellente réponse, permettez-moi de partager une expérience qui pourrait être ce que vous pensez:

Dans une région reculée du Canada, un bâtiment utilisait un système de chauffage / climatisation d'une entreprise très réputée.Mais l'alimentation du réseau n'était pas fiable.En cas de coupure de courant, le redémarrage du système a pris plus de 2 heures (les coupures de courant se produisent plus d'une fois par jour en hiver).Imaginez prendre 2 heures quand il fait -50 ° C (brrr).Ce que j'ai fait, c'est «batterie de retour» (UPS) la carte informatique.Ainsi, lorsque le courant est revenu, le système a repris immédiatement.Je pense qu'il est toujours utilisé ...

Je n'étais pas au courant d'UPS avant de poser cette question.C'est pourquoi j'ai pensé que la RAM pouvait être sauvegardée par batterie afin que, lorsque les coupures de courant se produisent, les données qui se trouvent dans la mémoire principale puissent être conservées sur des EEPROM.Le point que j'essaie de faire valoir est que je pensais à la perte de données, mais si l'onduleur est utilisé, nous n'avons pas à nous soucier des coupures de courant, ils alimenteraient la machine.L'utilisation de RAM sauvegardée par batterie ne conserverait que les données, mais UPS vous permettrait d'utiliser le système informatique afin que vous puissiez effectuer des sauvegardes d'urgence.
Mon approche pour résoudre le problème des coupures d'électricité était étroite.
La plupart des onduleurs ont une fonction qui leur permet de communiquer avec votre ordinateur et de l'éteindre automatiquement lorsque la puissance est faible, etc ... Comme information supplémentaire, avant les EEPROMS, les stéréos avaient des puces mémoire qui avaient une broche spéciale pour connecter une batterie 9V.Cela a permis au MPU de `` se souvenir '' du réglage, etc. lorsque l'alimentation est coupée ...
cybernard
2019-10-10 01:15:08 UTC
view on stackexchange narkive permalink

Si vous cherchez vraiment à protéger votre appareil contre les coupures de courant, un UPS est la solution.APC et de nombreuses autres marques ont des onduleurs de 1500 VA qui permettront à la plupart des ordinateurs de fonctionner environ 10 minutes en fonction de la consommation électrique de l'appareil.

L'onduleur est une batterie, mais il est facile à mettre en œuvre et ne nécessite aucun violon sur le point de le souder ou etc.

Si vous prenez un ordinateur, vous pouvez le mettre en mode veille, l'onduleur durera beaucoup plus longtemps.

Pour le PC, vous pouvez mettre l'ordinateur en veille prolongée, il écrit le contenu de la RAM sur le disque dur et le recharge lorsque l'ordinateur il se rallume.



Ce Q&R a été automatiquement traduit de la langue anglaise.Le contenu original est disponible sur stackexchange, que nous remercions pour la licence cc by-sa 4.0 sous laquelle il est distribué.
Loading...