web-dev-qa-db-ja.com

ウェイクタイマーはどのように機能しますか?

Windowsは最も一般的に、コンピューターをS3(スタンバイ/ RAMへの保存)モードにします。このモードでは、CPUから電力が遮断されますが、RAMからは電力が遮断されません。

CPUの電源が切れた場合、ウェイクタイマーはどのようにトリガーされますか?コンピュータを自動的にウェイクアップするタイミングを知っているコンポーネントはどれですか?

BIOSにある場合、WindowsはどのようにしてBIOSに次のウェイクアップ時間を通知しますか?

2
oldmud0

これは、 RTC(リアルタイムクロック) の「アラーム」レジスタを介して行われます。オリジナルのPC-ATでは、このチップはMotorolaMC146818でした。

スリープ状態になる前に(ACPI S3)、カーネルは次にスケジュールされたウェイクアップ時間をRTCの「アラーム」レジスタにプログラムします。RTCは常に電源がオンになっています。このウェイクアップ時間になると、RTCはチップセットをトリガーしてシステムの電源をオンにし、S3から再開します(最近のほとんどのシステムでは、RTCは実際にはサウスブリッジ自体の一部であるため、パワーオンシグナリングは内部で発生します)。

システムがスリープから再開した後、カーネルは保留中のウェイクイベントのリストを評価し、到着したイベントをディスパッチします。

Intelのこのペーパーでは、インターフェイス(x86システムの場合)について説明します。

これらのレジスタのプログラミングは、Linuxカーネルの cmos_set_alarm

3

ウェイクタイマーは、特定の時間にPCをスリープ状態からウェイクアップして休止状態にする時間指定イベントです。たとえば、[コンピューターを起動してこのタスクを実行する]チェックボックスがオンになっているタスクスケジューラのタスク。

重要なウェイクタイマーは、Windows 10の新しいクラスのウェイクタイマーであり、Windowsアップデート後の再起動などが含まれます。それらは他のすべての設定に優先します。

このチュートリアルでは、Windows10でスリープ解除タイマーがコンピューターをスリープ解除できるようにする方法を説明します。

電源オプションでウェイクタイマーを許可するを有効または無効にするには

  1. ウェイクタイマーを有効または無効にする電源プランの詳細な電源設定を開きます。

  2. 開いているスリープとスリープ解除タイマーを許可を展開します。必要に応じて、[有効]、[無効](デフォルトではバッテリー)、または[重要なウェイクタイマーのみ](デフォルトではプラグイン)を選択し、[OK]をクリック/タップします。

0
Bryan Greene