Hvordan kan min datamaskin starte om igjen?
Det er slik en vanlig stedaktivitet som de fleste av oss sannsynligvis aldri har sluttet å tenke på selv: den automatiske omstart. Enten bruker eller applikasjonsinitiert, hva skjer akkurat når datamaskinen sykler sin egen strøm?
Dagens Spørsmål & Svar-sesjon kommer til oss med høflighet av SuperUser-en underavdeling av Stack Exchange, en gruppedriving av Q & A-nettsider.
Spørsmålet
SuperUser leser Seth Carnegie lurer på om datastyring:
Hvordan kan en datamaskin starte på nytt? Når det er av, hvordan forteller det seg selv å komme igjen på nytt? Hva slags programvare er det som kan gjøre dette?
Hvor sant? Hvilken kombinasjon av programvare / maskinvare magi gjør det skje?
Svaret
SuperUser bidragsyter Jcrawfordor tilbyr både en kondensert og detaljert respons på spørsmålet som mer enn tilstrekkelig adresserer spørsmålet:
For lenge, ikke lest det svar: Strømtilstandene i datamaskinen din styres av en implementering av ACPI (avansert konfigurasjon og strømgrensesnitt). På slutten av en nedleggingsprosess setter operativsystemet en ACPI-kommando som indikerer at datamaskinen skal starte på nytt. Som svar reagerer hovedkortet på alle komponenter ved hjelp av sine respektive tilbakestillingskommandoer eller linjer, og følger deretter oppstartsprosessen. Hovedkortet slår aldri av, det gjenoppretter bare ulike komponenter og oppfører seg så som om strømknappen bare har blitt trykket.
Lang og rambling men (etter min mening) mer interessant svar:
Soft Power og hvordan det fungerer
I gamle dager (vel, ok, til en høyskole student som meg var 90-tallet for lenge siden), vi hadde AT (Advanced Technology) hovedkort med Ved makten ledelse. AT-kraftsystemet var veldig, veldig enkelt. Strømknappen på datamaskinen din var en maskinvarebryter (sannsynligvis på baksiden av saken) og 120vac-inngangen gikk rett gjennom den. Det slått strømmen til strømtilførselen av og på, og når denne bryteren var i Off-posisjon, var alt i datamaskinen helt død (dette gjorde CMOS-batteriet svært viktig fordi det ikke var strømforsyning for å holde maskinvaren klokke tikkende). Fordi strømbryteren var en fysisk mekanisme, var det ingen programvare måte å slå på og av. Windows ville vise den berømte "Det er nå trygt å slå av datamaskinen" -meldingen fordi, selv om alt var parkert og klar til å slå av, var det ikke mulig for operativsystemet å faktisk slå av strømbryteren. Denne konfigurasjonen ble noen ganger referert til som hard kraft, fordi det er all maskinvare.
I dag er ting annerledes, på grunn av underverkerne til ATX-hovedkort og ATX-kraft (det er Avansert teknologi eXtended hvis du holder orden). Sammen med en rekke andre fremskritt (mini-DIN PS / 2, noen?), Brakte ATX myk makt. Soft power betyr at strøm til datamaskinen kan styres av programvare. Dette førte til noen importendringer:
- Standby-strøm: Du har kanskje sett en "5v SB" eller "5v standby" -kontakt merket i strømforsyningsstikkene. De standby strømforsyning er en 5v linje til hovedkortet ditt som alltid er på, selv når datamaskinen er slått av. Dette er grunnen til at det er viktig å koble fra eller slå av en PSU-hardbryter (hvis den er til stede) når du betjener moderne datamaskiner, for selv når den er av, kan du kortslutte 5v SB og skade hovedkortet. Dette er også grunnen til at CMOS-batterier ikke lenger er så viktige - 5v SB brukes til å erstatte CMOS-batteriet når strømforsyningen har strøm, så CMOS-batteriet brukes bare når du kobler datamaskinen helt ut. 5V SB-linjen tillater viktig at komponenter på datamaskinen din (viktigst BIOS og nettverkskortene) fortsetter å kjøre litt enkel programvare selv når datamaskinen er slått av.
- Intelligent strømforsyningskontroll. Hvis du ser på en pinout for strømforsyningens hovedkort (P1) -kontakt, vil du merke to pins som vanligvis er merket PS_ON og PS_RDY. Disse står for "strømforsyning på" og "strømforsyning klar". Hvis du liker å eksperimentere, ta en strømforsyning ikke i en datamaskin, sett den inn og forsiktig kort en jordlinje (en av de svarte ledningene) til PS_ON-linjen (den grønne ledningen). Strømforsyningen vil synlig slå på med viften spinner opp. Komponentene på hovedkortet som går av + 5v SB, slår faktisk strømforsyningen på og av ved å koble strøm til PS_ON-pin. Fordi det er noen kondensatorer og andre komponenter i strømforsyningen som tar et øyeblikk å lade opp, kan spenningene fra strømforsyningens hovedutganger ikke være stabile umiddelbart etter at PSUen slås på. Dette er hva PS_RDY-pin er for, det kommer på når strømforsyningens interne logikk bestemmer at strømforsyningen er "klar" og vil gi stabil strøm. Hovedkortet venter til PS_RDY er på for å fortsette oppstart.
Så slår strømbryteren din ikke lenger på datamaskinen. I stedet er det koblet til hovedkortets hovedkontroller, som oppdager at knappen har blitt trykket og utført en rekke trinn for å klare systemet, inkludert lys opp PS_ON, slik at strømmen vil være tilgjengelig. Strømknappen er ikke den eneste måten å utløse oppstartsprosessen, enheter på ekspansjonsbussen kan også gjøre det. Dette er viktig fordi nettverkskortene dine faktisk forblir på når datamaskinen er slått av og ser etter en veldig spesifikk pakke, ofte referert til som "Magic-pakken." Hvis de oppdager denne pakken adressert til MAC-adressen, vil de utløse oppstartsprosessen . Slik fungerer "Wake-on-LAN" (WoL). Klokken kan også starte en oppstart (de fleste BIOS gjør det mulig å sette en tid på at datamaskinen skal starte opp hver dag), og USB- og FireWire-enheter kan utløse en oppstart, selv om jeg ikke er klar over noen implementering av dette.
Forstå strømstyring
Vel, jeg forklarer Soft Power-saken både fordi jeg synes det er interessant (alltid en viktig årsak til at jeg forklarer ting), og fordi den lar deg forstå hvordan strømmen og kjørestatusen til datamaskinen din er styrt av programvare. I de fleste nåværende datamaskiner er dette programvaresystemet en implementering av Avansert konfigurasjon og strømgrensesnitt, eller ACPI. ACPI er et standardisert, enhetlig system som tillater programvare for å kontrollere datamaskinens strømsystem. Du har kanskje hørt om ACPI strømtilstander. Den grunnleggende mekanismen for strømstyring er disse "strømtilstandene", operativsystemet skifter gjennom strømmodus ved å forberede bryteren (avstanden / dvalemodusprosessene som oppstår før strømmen springer faktisk av) og deretter befaler hovedkortet for å bytte strømtilstander . Strømtilstandene ser slik ut:
- G0: Arbeide (datamaskinens "on" state)
- G1: Sleeping (datamaskinens standby-tilstand, delt inn i S-substatene)
- S1: Strøm til CPU og RAM forblir på, men CPU utfører ikke instruksjoner. Perifere enheter er slått av.
- S2: CPU slått av, RAM vedlikeholdt
- S3: Alle komponenter slås av med unntak av RAM og enheter som utløser et CV (tastatur). Når du forteller at operativsystemet din skal "Sove", stopper det prosesser, og deretter angir du denne modusen.
- S4: Dvalemodus. Absolutt er alt slått av. Når du forteller operativsystemet til dvalemodus, stopper det prosesser, lagrer innholdet av RAM til disk og går deretter inn i denne modusen.
- G2: Soft Off. Dette er datamaskinens "av" -status. Strømmen er slått av til alt bortsett fra enheter som kan utløse en oppstart.
- G3: Mekanisk av.
Hvordan tilbakestilling skjer faktisk
Du vil legge merke til at omstart ikke er en av disse statene. Så hva skjer faktisk når datamaskinen din starter på nytt? Svaret kan være overraskende, fordi det er fra et styringsperspektiv nesten ingenting. Det er en ACPI tilbakestilt kommando. Når du forteller at operativsystemet skal starte på nytt, følger det sin normale stoppprosess (stopper alle prosessene dine, utfører litt vedlikehold, fjerner filsystemene dine osv.), Og deretter som et siste skritt, i stedet for å sende maskinen til strømtilstand G2 (som det ville hvis du bare hadde sagt det til Shut Down), setter det Reset-kommandoen. Dette kalles vanligvis "Tilbakestillingsregisteret", for som det meste av ACPI-grensesnittet er det bare en adresse som en bestemt verdi skal skrives til for å be om tilbakestilling. Jeg vil sitere 2.0 spesifikasjonen på hva den gjør:
Den valgfrie ACPI-tilbakestillingsmekanismen angir en standardmekanisme som gir en komplett systemåterstilling. Når implementert, må denne mekanismen nullstille hele systemet. Dette inkluderer prosessorer, kjernelogikk, alle busser og alle eksterne enheter. Fra et OSPM-perspektiv er det hevdet at tilbakestillingsmekanismen er den logiske ekvivalenten til strømsyklusen på maskinen. Ved å få kontroll etter en tilbakestilling, vil OSPM utføre handlinger på samme måte som en kaldstart.
Så, når tilbakestillingsregisteret er innstilt, skjer noen få ting i rekkefølge.
- All logikk tilbakestilles. Dette betyr at du sender de respektive tilbakestillingskommandoene til forskjellige maskinvare, inkludert CPU, minnestyring, perifere kontroller osv. I de fleste tilfeller betyr dette bare at du opplyser en fysisk RST-tråd, som AndrejaKo dukket opp over.
- Datamaskinen startes deretter opp. Dette er "utføre handlinger på samme måte som en kald oppstart" del. Hovedkortet utfører de samme trinnene som det ville dersom strømforsyningen nettopp var ferdig når strømknappen ble trykket.
Slutten effekten av disse to trinnene (som faktisk bryter ned i til flere trinn) er at det ser ut til alt akkurat som datamaskinen bare startet, men strømmen var faktisk på hele tiden. Dette betyr mindre tid som kreves for å slå av og starte opp (siden du ikke må vente på at strømforsyningen blir klar), og det er viktigere at oppstarten startes av at operativsystemet slår seg av. Dette betyr at en annen oppstartstrykker ikke trenger å brukes (WoL etc), og lar deg bruke Reboot som en effektiv måte å tilbakestille systemet på eksternt når du ikke har mulighet til å utløse oppstart.
Det var et langt svar. Men hei, forhåpentligvis vet du mer om datastyring nå. Jeg har sikkert lært noen ting som forsker på dette.
.