Hogyan képes a számítógép újraindítani magát?
Olyan gyakori helyaktivitás, hogy a legtöbbünk valószínűleg soha nem hagyta abba, hogy gondolkodjunk róla: az automatikus újraindítás. Függetlenül attól, hogy a felhasználó vagy az alkalmazás kezdeményezte-e, mi történik pontosan akkor, ha a számítógép saját erővel dolgozik?
A mai Kérdések és válaszok munkamenet jön számunkra a SuperUser-Stack Exchange alosztályának, a Q & A webhelyek közösségi meghajtó csoportosításának.
A kérdés
A SuperUser olvasó Seth Carnegie csodálkozik a számítógép energiagazdálkodásáról:
Hogyan indítható újra a számítógép? Miután leállt, hogyan mondja meg magát újra? Milyen szoftverrel lehet ezt megtenni?
Hogy valóban? Milyen kombinációja a szoftver / hardver varázslatnak?
A válasz
A SuperUser közreműködője, Jcrawfordor rövidített és részletes választ nyújt a kérdésre, amely több mint megfelelően foglalkozik a kérdéssel:
A túl hosszú, nem olvasta el a választ: A számítógépen lévő energiaállapotokat az ACPI (fejlett konfigurációs és hálózati interfész) implementációja szabályozza. A leállítási folyamat végén az operációs rendszer egy ACPI parancsot ad meg, jelezve, hogy a számítógépnek újra kell indítania. Válaszul az alaplap visszaállítja az összes összetevőt a megfelelő reset parancsokkal vagy sorokkal, majd követi a bootstrap folyamatot. Az alaplap soha nem kapcsol ki, csak visszaállítja a különböző összetevőket, és úgy viselkedik, mintha a tápkapcsolót éppen most lenyomnák.
Hosszú és zaklató, de (véleményem szerint) érdekesebb válasz:
Lágy energia és hogyan működik
A régi időkben (jól, oké, egy olyan főiskolai hallgatónak, mint én, a '90 -es évek már régen), AT (Advanced Technology) alaplapjaink voltak AT teljesítmény kezelése. Az AT táprendszer nagyon, nagyon egyszerű volt. A számítógépen lévő tápkapcsoló hardveres váltó volt (valószínűleg az ügy hátulján), és a 120vac-os bemenete végigment rajta. Fizikailag bekapcsolta és kikapcsolta a tápfeszültséget, és amikor ez a kapcsoló kikapcsolt állapotban volt, minden a számítógépben teljesen eltűnt (ez nagyon fontosvá tette a CMOS-akkumulátort, mert anélkül, hogy nem volt áramellátás a hardver megtartásához) órajel). Mivel a főkapcsoló fizikai mechanizmus volt, nem volt szoftveres mód a tápellátás be- és kikapcsolására. A Windows megmutatja a híres „Most már biztonságosan kikapcsolhatja a számítógépet” üzenetet, mert bár mindent parkolt és készen áll a kikapcsolásra, az operációs rendszer nem volt képes flip a tápkapcsolót. Ezt a konfigurációt néha „ kemény teljesítmény, mert ez minden hardver.
Napjainkban a dolgok eltérőek, mert az ATX alaplapjai és csodái ATX teljesítmény (ez az Advanced Technology eXtended, ha nyomon követi). Számos egyéb előrelépés mellett (mini-DIN PS / 2, bárki?), ATX hozta finom erő. A lágy energia azt jelenti, hogy a számítógép áramellátását szoftver segítségével lehet vezérelni. Ez néhány importváltozást hozott:
- Készenléti energia: előfordulhat, hogy látott egy „5v SB” vagy „5v készenléti” csatlakozót, amely a tápegység pinouts-jában van. A készenléti áramellátás egy 5v vonal az alaplaphoz, amely mindig be van kapcsolva, még akkor is, ha a számítógép ki van kapcsolva. Ezért fontos, hogy a modern számítógépek karbantartásakor húzza ki vagy kapcsolja ki a PSU merev kapcsolót (ha van), mert még akkor is, ha ki van kapcsolva, az esetlegesen rövidítheti az 5v SB-t és károsíthatja az alaplapot. Ez az oka annak is, hogy a CMOS akkumulátorok már nem is olyan fontosak - az 5v SB-t a CMOS akkumulátor cseréjére használják, amikor a tápegység hálózati árammal rendelkezik, így a CMOS akkumulátort csak akkor használja, ha teljesen kihúzza a számítógépet. Az 5v SB vonal lényegében lehetővé teszi a számítógép alkatrészeinek (ami a legfontosabb a BIOS és a hálózati adapterek) számára, hogy néhány egyszerű szoftvert futtasson még akkor is, ha a számítógép ki van kapcsolva.
- Intelligens tápegység vezérlés. Ha megnézi a tápegység alaplapjának (P1) csatlakozóját, akkor két tipusú címkét láthat PS_ON és PS_RDY. Ezek a tápellátás bekapcsolva és az áramellátás készen állnak. Ha szeretne kísérletezni, ne tápláljon egy számítógépet, csatlakoztassa azt, és óvatosan rövidítse le a földvonalat (az egyik fekete vezetéket) a PS_ON vonalhoz (a zöld vezetékhez). A tápegység láthatóan bekapcsol, a ventilátor felfelé fordul. Az alaplap összetevői, amelyek a + 5v SB-t futtatják, ténylegesen bekapcsolják és kikapcsolják a tápegységet a PS_ON pin-hez való csatlakoztatásával. Mivel vannak olyan kondenzátorok és egyéb alkatrészek a tápegységben, amelyek egy pillanatig töltik fel a töltést, a tápegység fő kimeneteiből származó feszültségek nem lehetnek stabilak a PSU bekapcsolása után. Ez az, amit a PS_RDY tűvel látunk el, amikor a tápegység belső logikája határozza meg, hogy a tápegység „kész” és stabil tápellátást biztosít. Az alaplap várja, amíg a PS_RDY be van kapcsolva az indítás folytatásához.
Tehát a tápkapcsoló már nem "bekapcsolja" a számítógépet. Ehelyett az alaplap alapvezérlőihez csatlakozik, amelyek észlelik, hogy a gombot megnyomták, és számos lépést hajtanak végre a rendszer elkészítéséhez, beleértve a PS_ON világítását is, hogy a teljesítmény elérhető legyen. A bekapcsoló gomb nem az egyetlen módja az indítási folyamat elindításának, de a bővítő buszon lévő eszközök ezt is megtehetik. Ez azért fontos, mert az Ethernet hálózati adapterek valójában maradnak, amikor a számítógép ki van kapcsolva, és egy nagyon specifikus csomagot keres, amelyet gyakran „varázscsomagnak” neveznek. Ha észlelik ezt a csomagot a MAC-címükhöz, akkor elindítják az indítási folyamatot . Így működik a „Wake-on-LAN” (WoL). Az óra is indíthat indítást (a legtöbb BIOS lehetővé teszi, hogy beállítson egy időt, ameddig a számítógépnek naponta el kell indítania), és az USB és a FireWire eszközök indíthatják a rendszerindítást, bár nem vagyok tisztában ezzel a megvalósítással.
A Power Control megértése
Nos, megmagyarázom a Soft Power dolgot, mert úgy gondolom, hogy érdekes (mindig kulcsfontosságú oka annak, hogy elmagyarázom a dolgokat), és mert lehetővé teszi, hogy megértsük, hogy a számítógép teljesítménye és futási / kikapcsolási állapota szoftverrel vezérelhető. A legtöbb jelenlegi számítógépen ez a szoftver rendszer a Speciális konfiguráció és hálózati interfész, vagy ACPI. Az ACPI egy szabványosított, egységes rendszer, amely lehetővé teszi a szoftver vezérlését a számítógép áramellátó rendszerében. Lehet, hogy hallottál a ACPI teljesítményállapotok. A hatalomszabályozás alapvető mechanizmusa ezek az „energiaállapotok”, az operációs rendszer átkapcsol a teljesítménymódok között a kapcsoló előkészítésével (a leállítás / hibernálás folyamatok, amelyek a bekapcsolás előtt bekapcsolódnak), majd az alaplap átkapcsolása a teljesítményállapotok váltására . A hatalmi állapotok így néznek ki:
- G0: Munka (a számítógép „bekapcsolt állapot”)
- G1: Alvás (a számítógép készenléti állapotai, az S alállomásokra osztva)
- S1: a CPU és a RAM teljesítménye továbbra is fennáll, de a CPU nem hajtja végre az utasításokat. A perifériák ki vannak kapcsolva.
- S2: A CPU kikapcsolt, a RAM megmarad
- S3: Az összes összetevő kikapcsol, kivéve a RAM-ot és az újraindítást kiváltó eszközöket (billentyűzet). Amikor elmondja az operációs rendszernek, hogy „Alvó”, akkor leállítja a folyamatokat, majd lépjen be az üzemmódba.
- S4: Hibernálás. Mindent teljesen kikapcsol. Ha azt mondja az operációs rendszernek, hogy hibernált állapotban van, leállítja a folyamatokat, elmenti a RAM tartalmát a lemezre, majd belép ez a módba.
- G2: Lágy kikapcsolás. ez a számítógép „kikapcsolt” állapota. A tápellátás mindentől eltekint, kivéve azokat az eszközöket, amelyek indíthatják a rendszerindítást.
- G3: Mechanikus kikapcsolás.
Hogyan történik a visszaállítás ténylegesen
Megfigyeljük, hogy az újraindítás nem az egyik ilyen állapot. Tehát mi történik, amikor a számítógép újraindul? A válasz meglepő lehet, mert az energiagazdálkodás szempontjából ez majdnem semmi. Van egy ACPI reset parancsot. Amikor megmondja az operációs rendszernek, hogy újraindítsa, követi a normál leállítási folyamatot (leállítja az összes folyamatot, végrehajt egy kis karbantartást, leállítja a fájlrendszereket, stb.), Majd végső lépésként, ahelyett, hogy a készüléket hatalmi állapotba küldené G2 (mintha csak le kellene állítanod, hogy leállítaná) beállítja a Reset parancsot. Ezt általában „Reset register” -nek nevezik, mert az ACPI-felület többségéhez hasonlóan csak egy olyan cím, amelyhez egy meghatározott értéket kell beírni a reset kéréséhez. Idézem a 2.0 specifikációt, hogy mit csinál:
Az opcionális ACPI visszaállítási mechanizmus egy szabványos mechanizmust határoz meg, amely teljes rendszer-visszaállítást biztosít. A mechanizmus végrehajtásakor a teljes rendszert vissza kell állítani. Ide tartoznak a processzorok, az alapvető logika, az összes busz és az összes periféria. OSPM perspektívából a visszaállítási mechanizmus érvényesítése logikusan egyenértékű a gép teljesítményciklusával. A visszaállítás után a vezérlés az OSPM hasonló módon hajtja végre a hidegbetétet.
Tehát, ha a reset regiszter be van állítva, néhány dolog sorrendben történik.
- Minden logika visszaáll. Ez azt jelenti, hogy a megfelelő visszaállítási parancsokat különböző hardverbitekre, például a CPU-ra, a memóriavezérlőre, a perifériás vezérlőkre stb. Elküldjük. A legtöbb esetben ez egyszerűen azt jelenti, hogy egy fizikai RST-vezetéket világítunk, ahogy AndrejaKo fentebb mutatta be.
- A számítógépet ezután betöltik. Ez a „hasonló műveletek végrehajtása a hideg boot” részhez. Az alaplap ugyanazokat a lépéseket hajtja végre, mintha a tápegység csak a bekapcsológomb megnyomása után lett volna kész.
Ezeknek a két lépésnek a végső hatása (ami valójában sokkal több lépésre bomlik) az, hogy mindent úgy néz ki, mint ahogy a számítógép éppen indult, de a hatalom valójában egész idő alatt volt. Ez azt jelenti, hogy kevesebb időre van szükség a leállításhoz és az indításhoz (mivel nem kell várni, amíg a tápegység készen áll a készenléti állapotra), és ami fontos, lehetővé teszi, hogy a rendszer leállítsa az indítást. Ez azt jelenti, hogy egy másik indítóindítót nem kell használni (WoL stb.), És lehetővé teszi, hogy a Reboot-ot hatékonyan lehessen visszaállítani a rendszer távolról, amikor nincs módja a rendszerindítás indítására.
Ez hosszú válasz volt. De hé, remélhetőleg most többet tudsz a számítógép energiagazdálkodásáról. Biztosan tanultam néhány dolgot, amelyek ezt kutatták.
.