Comment mon ordinateur peut-il se redémarrer?
C'est une activité tellement banale que la plupart d'entre nous n'avons probablement jamais cessé d'y penser: le redémarrage automatique. Que ce soit par l'utilisateur ou par une application, que se passe-t-il exactement lorsque votre ordinateur se met automatiquement sous tension??
La session de questions et réponses d'aujourd'hui nous parvient avec la permission de SuperUser, une sous-division de Stack Exchange, un groupe de sites Web de questions-réponses animé par la communauté..
La question
Le lecteur de SuperUser, Seth Carnegie, s'interroge sur la gestion de l'alimentation des ordinateurs:
Comment un ordinateur peut-il redémarrer tout seul? Une fois éteint, comment se dit-il de se rallumer? Quel type de logiciel est ce qui peut faire cela?
Comment en effet? Quelle combinaison de magie logiciel / matériel est à l'origine de cette réalité?
La réponse
Jcrawfordor, contributeur à SuperUser, offre à la fois une réponse condensée et détaillée à la question, qui répond plus que adéquatement à la question:
Le trop long, ne l'a pas lu, répondez: Les états d'alimentation de votre ordinateur sont contrôlés par une implémentation d'ACPI (configuration avancée et interface d'alimentation). À la fin du processus d'arrêt, votre système d'exploitation définit une commande ACPI indiquant que l'ordinateur doit redémarrer. En réponse, la carte mère réinitialise tous les composants à l'aide de leurs commandes ou lignes de réinitialisation respectives, puis suit le processus d'amorçage. La carte mère ne s'éteint jamais, elle réinitialise différents composants, puis se comporte comme si le bouton d'alimentation venait juste d'être appuyé.
Réponse longue et décousue mais (à mon avis) plus intéressante:
Soft Power et son fonctionnement
Dans les temps anciens (bon d'accord, pour un étudiant comme moi, il y a très longtemps dans les années 90), nous avions des cartes mères AT (Advanced Technology) avec Au pouvoir la gestion. Le système d'alimentation AT était très, très simple. Le bouton d’alimentation de votre ordinateur était une bascule matérielle (probablement située à l’arrière du boîtier) et votre entrée 120vac le traversait. Cela allumait et éteignait physiquement votre alimentation, et lorsque cet interrupteur était en position Off, tout dans votre ordinateur était complètement à plat (cela rendait la pile CMOS très importante, car sans elle, il n'y avait pas d'alimentation pour conserver le matériel horloge qui tourne). Étant donné que l'interrupteur d'alimentation était un mécanisme physique, il n'existait aucun moyen logiciel d'allumer et d'éteindre l'alimentation. Windows afficherait le fameux message «Il est maintenant sûr d'éteindre votre ordinateur» car, bien que tout soit parqué et prêt à être éteint, il n'était pas possible pour le système d'exploitation d'inverser le commutateur d'alimentation. Cette configuration a parfois été appelée puissance dure, parce que c'est tout le matériel.
De nos jours, les choses sont différentes, à cause des merveilles des cartes mères ATX et Puissance ATX (C'est Advanced Technology eXtended si vous gardez la trace). Parallèlement à plusieurs autres avancées (mini-DIN PS / 2, ça vous tente?), ATX a douce puissance. Le soft power signifie que l’alimentation de l’ordinateur peut être contrôlée par un logiciel. Cela a entraîné quelques modifications d'importation:
- Veille: vous avez peut-être vu un connecteur «5v SB» ou «5v veille» étiqueté dans les broches de l'alimentation. le alimentation de secours est une ligne 5v sur votre carte mère qui est toujours allumée, même lorsque l’ordinateur est éteint. C'est pourquoi il est important de débrancher ou d'éteindre un commutateur matériel PSU (le cas échéant) lors de la maintenance d'ordinateurs modernes, car même éteint, vous pourriez potentiellement court-circuiter le SB 5v et endommager la carte mère. C’est aussi la raison pour laquelle les piles CMOS ne sont plus vraiment aussi importantes: le SB 5v est utilisé pour remplacer la pile CMOS chaque fois que l’alimentation est sous tension, de sorte que la pile CMOS n’est utilisée que lorsque vous débranchez complètement l’ordinateur. La ligne 5v SB permet surtout aux composants de votre ordinateur (principalement le BIOS et les adaptateurs réseau) de continuer à exécuter un logiciel simple, même lorsque l’ordinateur est éteint..
- Contrôle intelligent de l'alimentation. Si vous examinez un brochage du connecteur de la carte mère (P1) de votre bloc d'alimentation, vous remarquerez que deux broches sont généralement nommées PS_ON et PS_RDY. Celles-ci signifient «alimentation activée» et «alimentation prête». Si vous aimez expérimenter, prenez un bloc d’alimentation qui n’est pas dans un ordinateur, branchez-le et coupez soigneusement une ligne de terre (l’un des fils noirs) à la ligne PS_ON (le fil vert). L’alimentation s’allumera visiblement et le ventilateur tournera. Les composants de la carte mère alimentés par + 5V SB allument et éteignent votre alimentation en connectant l’alimentation à la broche PS_ON. Certains condensateurs et composants de l’alimentation prenant un moment pour se charger, il se peut que les tensions provenant des sorties principales de l’alimentation ne soient pas stables juste après la mise sous tension de l’alimentation. C’est à cela que sert la broche PS_RDY. Elle s’allume lorsque la logique interne de l’alimentation détermine que celle-ci est «prête» et fournira une alimentation stable. La carte mère attend que PS_RDY soit activé pour continuer à démarrer.
Votre interrupteur d'alimentation ne met donc plus l'ordinateur sous tension. Au lieu de cela, il est connecté aux contrôleurs de base de votre carte mère, qui détectent que le bouton a été enfoncé et exécutent un certain nombre d'étapes pour préparer le système, notamment en allumant PS_ON pour que l'alimentation soit disponible. Le bouton d'alimentation n'est pas le seul moyen de déclencher le processus de démarrage, les périphériques de votre bus d'extension peuvent également le faire. Cela est important car vos cartes réseau Ethernet restent allumées lorsque votre ordinateur est éteint et recherchent un paquet très spécifique, souvent appelé «paquet magique». S'ils détectent ce paquet adressé à leur adresse MAC, ils déclencheront le processus de démarrage. . Voici comment fonctionne «Wake-on-LAN» (WoL). L'horloge peut également initier un démarrage (la plupart des BIOS vous permettent de définir l'heure à laquelle l'ordinateur doit être démarré chaque jour), et les périphériques USB et FireWire peuvent déclencher un démarrage, bien que je ne sois au courant d'aucune implémentation de cette.
Comprendre le contrôle de puissance
Eh bien, j’explique le soft power à la fois parce que j’estime que c’est intéressant (c’est toujours une raison essentielle pour expliquer les choses) et parce que cela vous permet de comprendre comment l’alimentation et l’état de fonctionnement de votre ordinateur sont tous contrôlés par logiciel. Dans la plupart des ordinateurs actuels, ce système logiciel est une implémentation de la Configuration avancée et interface d'alimentation, ou ACPI. ACPI est un système normalisé et unifié permettant à un logiciel de contrôler le système d'alimentation de votre ordinateur. Vous avez peut-être entendu parler du États d'alimentation ACPI. Le mécanisme de base du contrôle de l'alimentation est constitué de ces «états d'alimentation», votre système d'exploitation bascule entre les modes d'alimentation en se préparant au basculement (processus d'arrêt / mise en veille prolongée qui se produisent avant la mise hors tension effective), puis en commandant à la carte mère de passer en mode d'alimentation. . Les états de puissance ressemblent à ceci:
- G0: en fonctionnement (l'état "allumé" de votre ordinateur)
- G1: en veille (l'état de veille de votre ordinateur, divisé en sous-états S)
- S1: le processeur et la RAM restent sous tension, mais le processeur n'exécute pas d'instructions. Les périphériques sont éteints.
- S2: CPU éteint, RAM conservée
- S3: Tous les composants sont mis hors tension, à l'exception de la RAM et des périphériques qui déclencheront une reprise (clavier). Lorsque vous dites à votre système d'exploitation de «mettre en veille», il arrête les processus, puis passe à ce mode..
- S4: Hibernation. Absolument tout est éteint. Lorsque vous indiquez à votre système d'exploitation Hibernate, il arrête les processus, enregistre le contenu de la RAM sur le disque, puis passe à ce mode..
- G2: Soft Off. c'est l'état "éteint" de votre ordinateur. Tout est hors tension, à l'exception des périphériques pouvant déclencher un démarrage.
- G3: arrêt mécanique.
Comment se passe la réinitialisation?
Vous remarquerez que le redémarrage n'est pas l'un de ces états. Alors, que se passe-t-il lorsque votre ordinateur redémarre? La réponse peut être surprenante, car du point de vue de la gestion de l’énergie, c’est presque rien. Il y a une commande de réinitialisation ACPI. Lorsque vous demandez à votre système d'exploitation de redémarrer l'ordinateur, celui-ci suit son processus d'arrêt normal (arrête tous vos processus, effectue un peu de maintenance, démonte vos systèmes de fichiers, etc.), puis effectue la dernière étape au lieu d'envoyer la machine à l'état d'alimentation. G2 (comme si vous aviez simplement dit de l'éteindre), la commande de réinitialisation est définie. C'est ce que l'on appelle généralement le «registre de réinitialisation», car comme la plupart des interfaces ACPI, il s'agit simplement d'une adresse sur laquelle une valeur spécifique doit être écrite pour demander une réinitialisation. Je vais citer la spécification 2.0 sur ce qu'il fait:
Le mécanisme de réinitialisation ACPI facultatif spécifie un mécanisme standard fournissant une réinitialisation complète du système. Une fois mis en œuvre, ce mécanisme doit réinitialiser l’ensemble du système. Cela inclut les processeurs, la logique principale, tous les bus et tous les périphériques. Du point de vue de l'OSPM, l'affirmation du mécanisme de réinitialisation est l'équivalent logique du cycle d'alimentation de la machine. Après avoir pris le contrôle après une réinitialisation, OSPM effectuera les actions de la même manière qu’un démarrage à froid..
Ainsi, lorsque le registre de réinitialisation est défini, quelques événements se produisent dans l'ordre.
- Toute la logique est réinitialisée. Cela signifie qu’il faut envoyer les commandes de réinitialisation respectives à divers éléments du matériel, y compris la CPU, le contrôleur de mémoire, les contrôleurs de périphériques, etc. Dans la plupart des cas, cela signifie simplement qu’il faut allumer un fil RST physique, comme l’a montré AndrejaKo ci-dessus..
- L'ordinateur est alors démarré. C’est la partie «effectuer les actions de la même manière que pour un démarrage à froid». La carte mère effectue les mêmes opérations que si l'alimentation venait juste d'être prête après l'activation du bouton d'alimentation..
L'effet final de ces deux étapes (qui se décomposent en beaucoup plus) est qu'il ressemble à tout, tout comme l'ordinateur qui vient de démarrer, mais que le courant a fonctionné. Cela signifie moins de temps d’arrêt et de démarrage (car il n’est pas nécessaire d’attendre que l’alimentation électrique soit prête), et surtout, le démarrage du démarrage est provoqué par l’arrêt du système d’exploitation. Cela signifie qu'un autre déclencheur de démarrage n'a pas besoin d'être utilisé (WoL, etc.) et vous permet d'utiliser le redémarrage comme moyen efficace de réinitialiser le système à distance, lorsque vous ne disposez pas d'un moyen de déclencher le démarrage..
C'était une longue réponse. Mais bon, j'espère que vous en savez plus sur la gestion de l'alimentation des ordinateurs maintenant. J'ai certainement appris certaines choses à la recherche de cette.
.