2016-10-12 2 views
1

たとえば、プリンタがページを印刷する方法は? CPUはバイナリの8ビットコードをプリンタに転送しています......このように、コンピュータを起動またはシャットダウンするときに内部的に何が起こるのですか?シャットダウンオプションをクリックすると、コンピュータが自動的にシャットダウンするのでしょうか?バイナリシステムもありますか?

答えて

13

AT computersはオンとオフの電源をオンにのみメカニカルスイッチを有しAT PSUを使用:

初期マイコン電源があったいずれかの完全にオンまたはオフ、機械的ライン - によって制御電圧スイッチ、[...]。これらの電源は、一般に、スタンバイまたは「ソフトオフ」、またはスケジュールされたターンオン電力制御などの省電力モードが不可能であった。

であり、ソフトウェアによって電源が切られていません。 ATX PSUが人気となって1994年に

、そのようPSUは+ 5Vにプルアップされており、それはPSUをアクティブにするために、マザーボードによってプルダウンされなければならない(以下PWON)ON パワーと呼ばれるピンを導入。

PWONは電気信号であるため、マザーボードは異なる種類のロジックを実装して電源のオン/オフを切り替えることができます。

フロントパネルのスイッチが最初に導入された、それはPCのオン/オフを切り替えるための唯一の方法だった

Windows 95, Turn off screen

「ソフトオフ」モードは、次に紹介された、このモードでは、いくつかの低の葉PWONを引き下げることによって起動をトリガーします。例えば、Wake-on-LAN,Wake-on-ring,RTC alarm

APMが導入されるまで、ソフトウェアは標準的な方法でPCの電源を切ることができませんでした。

しかし、APMは最近、非常に複雑なシステムであるACPIによって置き換えられました。

PWON信号のおかげで、PCの電源を切るのに何が必要なのかをイメージするのは難しくありません。それに接続されているチップに+ 5Vに戻すことを伝えるだけです。
標準的な方法はありませんが、ACPIの目的はメーカー間の違いを克服することです。

特に、ACPIは、システムの電源を落として、状態に入れます.SSの場合、ソフトウェアは一定の手順を実行する必要があります。
すべての情報は、ACPIで公開されているDSDT (Differential System Descriptor Table)テーブルとFACP (Fixed ACPI descriptor table)テーブルにあります。

最初のステップは、私のシステムでは何もしません\_S5._PTSというメソッドを呼び出している:

Method (PTS, 1, NotSerialized) 
{ 
    If (Arg0) {} 
} 

これはマザーボードの設計者に、このメソッドはそれらによって書かれているので、複雑な操作を実行する機会を与えてくれます。

もう1つのステップは固定されています。これは実際にPCを停止させるステップで、に値を書き込むのはです。私のシステムは、それがIO空間で1804hに位置していることを教えている

[0ACh 0172 12]   PM1A Control Block : [Generic Address Structure] 
[0ACh 0172 1]      Space ID : 01 [SystemIO] 
[0ADh 0173 1]     Bit Width : 10 
[0AEh 0174 1]     Bit Offset : 00 
[0AFh 0175 1]   Encoded Access Width : 02 [Word Access:16] 
[0B0h 0176 8]      Address : 0000000000001804 

として宣伝さに
関心のレジスタは、(実際には二つありますが、我々はここでそれを議論していない)、PM1a_CNTです。このレジスタに書き込むための

値がSLP_TYPaと呼ばれ、_S5オブジェクトに位置しており、私のシステムのために:

Name (_S5, Package (0x04) // _S5_: S5 System State 
{ 
    0x07, 
    Zero, 
    Zero, 
    Zero 
}) 

SLP_TYPaは最初の数、07hです。
この数値をPM1a_CNTに書き込む前に、10だけ左にシフトしてbit13を設定する必要があります。実際に書き込む値は3c00hです。私はちょうどポート1804h3c00hを書くために必要なパワーを断る

あなたがGNDにショートPWON(緑)にペーパークリップを使用することができます
mov ax, 2007h 
mov dx, 1804h 
out dx, ax 

(黒)にして、PCに接続していないときはPSUをオンにします。
私のシステムはx86ですが、x86は2つのアドレス空間IOとメモリを持っています。
ACPIが有効になっています(0a0hから0b2hを書き込むと、私のシステムでACPIが有効になります)。

+3

すばらしい答えです。 –

+2

「安全にシャットダウンする」画面では、地雷探知機とLANパーティー(そして掃海隊員)の多くのメモリが呼び出されました。ノスタルジアに感謝します! – txtechhelp

関連する問題