JPH0744286A - マルチレベル電源管理を有するコンピュータ・システム - Google Patents
マルチレベル電源管理を有するコンピュータ・システムInfo
- Publication number
- JPH0744286A JPH0744286A JP6138752A JP13875294A JPH0744286A JP H0744286 A JPH0744286 A JP H0744286A JP 6138752 A JP6138752 A JP 6138752A JP 13875294 A JP13875294 A JP 13875294A JP H0744286 A JPH0744286 A JP H0744286A
- Authority
- JP
- Japan
- Prior art keywords
- state
- computer system
- power
- cpu
- suspend
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/325—Power saving in peripheral device
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4418—Suspend and resume; Hibernate and awake
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Power Sources (AREA)
- Hardware Redundancy (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
(57)【要約】
【目的】電源管理の4つの状態、すなわち正常動作状
態、スタンバイ状態、サスペンド状態、およびオフ状態
を有するコンピュータ・システム。 【構成】スタンバイ状態は、オペレーティング・システ
ムに透過的な低出力モードにされるビデオ制御装置やハ
ード・ドライブなどの装置と、コンピュータ・システム
上で実行する適用業務とを特徴とする。サスペンド状態
は、コンピュータ・システムの状態をハード・ドライブ
に保存した後にシステム電源が除去されるように割り込
まれる実行コードと、ファイルに保存されるコンピュー
タ・システムの状態とを特徴とする。後に、システム電
源が復元された後、コンピュータ・システムの状態は、
オペレーティング・システムおよび適用業務プログラム
が悪影響を受けないようにハード・ドライブから読み取
り、ロードすることによってレジュームされる。
態、スタンバイ状態、サスペンド状態、およびオフ状態
を有するコンピュータ・システム。 【構成】スタンバイ状態は、オペレーティング・システ
ムに透過的な低出力モードにされるビデオ制御装置やハ
ード・ドライブなどの装置と、コンピュータ・システム
上で実行する適用業務とを特徴とする。サスペンド状態
は、コンピュータ・システムの状態をハード・ドライブ
に保存した後にシステム電源が除去されるように割り込
まれる実行コードと、ファイルに保存されるコンピュー
タ・システムの状態とを特徴とする。後に、システム電
源が復元された後、コンピュータ・システムの状態は、
オペレーティング・システムおよび適用業務プログラム
が悪影響を受けないようにハード・ドライブから読み取
り、ロードすることによってレジュームされる。
Description
【0001】
【産業上の利用分野】本発明は、全般的に、コンピュー
タ・システム・アーキテクチャに関し、さらに詳細に
は、通常の正常動作状態および通常のオフ状態の他に2
つのレベルの作動可能状態、すなわち電力をほとんど必
要としないサスペンド(中断)状態と、正常動作状態よ
りも少ない電力しか必要としないスタンバイ(待機)状
態とを、多数の標準構成要素を使用して低コストで実施
するデスクトップ・コンピュータ・システムに関する。
タ・システム・アーキテクチャに関し、さらに詳細に
は、通常の正常動作状態および通常のオフ状態の他に2
つのレベルの作動可能状態、すなわち電力をほとんど必
要としないサスペンド(中断)状態と、正常動作状態よ
りも少ない電力しか必要としないスタンバイ(待機)状
態とを、多数の標準構成要素を使用して低コストで実施
するデスクトップ・コンピュータ・システムに関する。
【0002】
【従来の技術】パーソナル・コンピュータ・システムは
当技術分野では周知である。パーソナル・コンピュータ
・システムは一般に、また、IBMパーソナル・コンピ
ュータは特に、今日の近代社会の多数の分野にコンピュ
ータの能力を提供するために幅広く使用されている。パ
ーソナル・コンピュータは通常、デスク・トップ型、床
置き型またはポータブル型のマイクロコンピュータと定
義でき、単一の中央演算処理装置(CPU)、すべての
RAMやBIOS ROMを含む関連する揮発性および不揮発性
メモリ、システム・モニタ、キーボード、1つまたは複
数のフレキシブル・ディスケット・ドライブ、固定ディ
スク記憶機構(「ハード・ドライブ」という)、いわゆ
る「マウス」ポインティング・デバイス、および任意選
択的なプリンタから構成されている。これらのシステム
の顕著な特性の1つは、マザーボードすなわちシステム
・プレーナを使用して、これらの構成要素を電気的に相
互接続することである。これらのシステムは主として、
単一のユーザに独立したコンピューティング能力を提供
するように設計され、個人や小企業が購入できるように
低価格が付けられている。そのようなパーソナル・コン
ピュータ・システムの例は、IBMのPERSONAL COMPUTE
R ATやIBMのPERSONAL SYSTEM/1(IBM PS/1)であ
る。
当技術分野では周知である。パーソナル・コンピュータ
・システムは一般に、また、IBMパーソナル・コンピ
ュータは特に、今日の近代社会の多数の分野にコンピュ
ータの能力を提供するために幅広く使用されている。パ
ーソナル・コンピュータは通常、デスク・トップ型、床
置き型またはポータブル型のマイクロコンピュータと定
義でき、単一の中央演算処理装置(CPU)、すべての
RAMやBIOS ROMを含む関連する揮発性および不揮発性
メモリ、システム・モニタ、キーボード、1つまたは複
数のフレキシブル・ディスケット・ドライブ、固定ディ
スク記憶機構(「ハード・ドライブ」という)、いわゆ
る「マウス」ポインティング・デバイス、および任意選
択的なプリンタから構成されている。これらのシステム
の顕著な特性の1つは、マザーボードすなわちシステム
・プレーナを使用して、これらの構成要素を電気的に相
互接続することである。これらのシステムは主として、
単一のユーザに独立したコンピューティング能力を提供
するように設計され、個人や小企業が購入できるように
低価格が付けられている。そのようなパーソナル・コン
ピュータ・システムの例は、IBMのPERSONAL COMPUTE
R ATやIBMのPERSONAL SYSTEM/1(IBM PS/1)であ
る。
【0003】パーソナル・コンピュータ・システムは通
常、ソフトウェアを実行して、ワード・プロセッシン
グ、スプレッド・シートによるデータの処理、データベ
ース中のデータの収集および比較、グラフィクスの表
示、システム設計ソフトウェアを使用した電気的または
機械的システムの設計などのいろいろな活動を行うため
に使用される。
常、ソフトウェアを実行して、ワード・プロセッシン
グ、スプレッド・シートによるデータの処理、データベ
ース中のデータの収集および比較、グラフィクスの表
示、システム設計ソフトウェアを使用した電気的または
機械的システムの設計などのいろいろな活動を行うため
に使用される。
【0004】IBM PS/1およびPS/2は、単一の場所で使用
するように設計されたデスクトップ・コンピュータであ
る。たとえば、今日の社会では、多数の個人が、自分の
机や、コンピュータ援用タスク専用の部屋にデスクトッ
プ・コンピュータを有する。デスクトップ・コンピュー
タは通常、ある場所でセットアップされ、それ以後は移
動せずに1人または多数のユーザによって使用される。
するように設計されたデスクトップ・コンピュータであ
る。たとえば、今日の社会では、多数の個人が、自分の
机や、コンピュータ援用タスク専用の部屋にデスクトッ
プ・コンピュータを有する。デスクトップ・コンピュー
タは通常、ある場所でセットアップされ、それ以後は移
動せずに1人または多数のユーザによって使用される。
【0005】デスクトップ・システムは、ネットワーク
化コンピュータ・システムと非ネットワーク化コンピュ
ータ・システムに分類することができる。ネットワーク
化コンピュータ・システムは、より大規模なコンピュー
タ・システムの一部であり、ローカル・エリア・ネット
ワーク(LAN)または広域ネットワーク(WAN)を
介して他のコンピュータやサーバと接続される。そのよ
うなネットワークは、特殊なインタフェースおよびプロ
トコルを使用して、コンピュータがデータとプログラム
を効率的に共用できるようにする。企業で使用されるデ
スクトップ・コンピュータ・システムは通常、ネットワ
ーク化コンピュータ・システムである。一方、非ネット
ワーク化コンピュータは、他のどのコンピュータにも接
続されない。1台のコンピュータから他のコンピュータ
へのデータ転送は、ある場所にあるコンピュータでフレ
キシブル・ディスケットにデータを書き込み、他の場所
にあるコンピュータでデータを読み取ることによって行
われる。家庭で使用されるデスクトップ・コンピュータ
は通常、非ネットワーク化コンピュータである。
化コンピュータ・システムと非ネットワーク化コンピュ
ータ・システムに分類することができる。ネットワーク
化コンピュータ・システムは、より大規模なコンピュー
タ・システムの一部であり、ローカル・エリア・ネット
ワーク(LAN)または広域ネットワーク(WAN)を
介して他のコンピュータやサーバと接続される。そのよ
うなネットワークは、特殊なインタフェースおよびプロ
トコルを使用して、コンピュータがデータとプログラム
を効率的に共用できるようにする。企業で使用されるデ
スクトップ・コンピュータ・システムは通常、ネットワ
ーク化コンピュータ・システムである。一方、非ネット
ワーク化コンピュータは、他のどのコンピュータにも接
続されない。1台のコンピュータから他のコンピュータ
へのデータ転送は、ある場所にあるコンピュータでフレ
キシブル・ディスケットにデータを書き込み、他の場所
にあるコンピュータでデータを読み取ることによって行
われる。家庭で使用されるデスクトップ・コンピュータ
は通常、非ネットワーク化コンピュータである。
【0006】単一の場所に置いたままにするよう設計さ
れたデスクトップ・コンピュータと異なり、IBMのPS
/2 L40 Think Padなどの、寸法に応じて「ラップトップ
・コンピュータ」または「ノートブック・コンピュー
タ」ともいわれるポータブル・コンピュータは、ユーザ
が持ち運び、任意の場所で使用するように設計されてい
る。たとえば、セールスマンは、自分の机でノートブッ
ク・コンピュータを使用して、予想売上に関する報告書
を作成することができる。セールスマンが、机での作業
中に会議に呼び出された場合は、現行のタスクをサスペ
ンドし、ノートブック・コンピュータを持ち上げ、会議
に持っていくことができる。会議の席上では、コンピュ
ータを取り出し、ソフトウェアの実行をレジュームし、
会議中にメモを取ったり、情報を呼び出したりすること
ができる。他の例として、学生が、授業が始まるまで家
庭で学期末リポートを作成し、授業の時間になったら、
ノートブック・コンピュータを教室に持ち込んでメモを
取ることが可能である。
れたデスクトップ・コンピュータと異なり、IBMのPS
/2 L40 Think Padなどの、寸法に応じて「ラップトップ
・コンピュータ」または「ノートブック・コンピュー
タ」ともいわれるポータブル・コンピュータは、ユーザ
が持ち運び、任意の場所で使用するように設計されてい
る。たとえば、セールスマンは、自分の机でノートブッ
ク・コンピュータを使用して、予想売上に関する報告書
を作成することができる。セールスマンが、机での作業
中に会議に呼び出された場合は、現行のタスクをサスペ
ンドし、ノートブック・コンピュータを持ち上げ、会議
に持っていくことができる。会議の席上では、コンピュ
ータを取り出し、ソフトウェアの実行をレジュームし、
会議中にメモを取ったり、情報を呼び出したりすること
ができる。他の例として、学生が、授業が始まるまで家
庭で学期末リポートを作成し、授業の時間になったら、
ノートブック・コンピュータを教室に持ち込んでメモを
取ることが可能である。
【0007】ポータブル・コンピュータは通常、非ネッ
トワーク化コンピュータである。ただし、一部のユーザ
は、ポータブル・コンピュータを事務所で使用する際
に、事務所のLANに接続する。
トワーク化コンピュータである。ただし、一部のユーザ
は、ポータブル・コンピュータを事務所で使用する際
に、事務所のLANに接続する。
【0008】ポータブル・コンピュータは、多数の点で
デスクトップ・コンピュータと異なる。ポータブル・コ
ンピュータは通常、再充電可能電池によって駆動され
る。ユーザは、壁コンセントからの電気を使用して電池
を充電し、電池の再充電が必要になるまでコンピュータ
を使用し、必要になった時点で再充電を行う。電池を再
充電している間、ポータブル・コンピュータを移動する
ことはできない。すなわち、コンピュータの移動は、電
源コードの長さによって制限される。したがって、充電
される電池を有するコンピュータは、事実上、電池を十
分に充電するまで可搬性を失う。懐中電灯やその他の電
力装置と同様に、ポータブル・コンピュータが多量の電
力を消費すればするほど、電池の再充電が必要となる前
にユーザがポータブル・コンピュータを使用できる時間
は短くなる。したがって、電力消費量は、ユーザがポー
タブル・コンピュータを購入する際に検討する因子であ
り、言うまでもなく、ポータブル・コンピュータ業界の
大きな問題である。ゆえに、コンピュータ業界は、より
少ない電力を使用するポータブル・コンピュータの設計
に長い時間と多額の金を費やしている。
デスクトップ・コンピュータと異なる。ポータブル・コ
ンピュータは通常、再充電可能電池によって駆動され
る。ユーザは、壁コンセントからの電気を使用して電池
を充電し、電池の再充電が必要になるまでコンピュータ
を使用し、必要になった時点で再充電を行う。電池を再
充電している間、ポータブル・コンピュータを移動する
ことはできない。すなわち、コンピュータの移動は、電
源コードの長さによって制限される。したがって、充電
される電池を有するコンピュータは、事実上、電池を十
分に充電するまで可搬性を失う。懐中電灯やその他の電
力装置と同様に、ポータブル・コンピュータが多量の電
力を消費すればするほど、電池の再充電が必要となる前
にユーザがポータブル・コンピュータを使用できる時間
は短くなる。したがって、電力消費量は、ユーザがポー
タブル・コンピュータを購入する際に検討する因子であ
り、言うまでもなく、ポータブル・コンピュータ業界の
大きな問題である。ゆえに、コンピュータ業界は、より
少ない電力を使用するポータブル・コンピュータの設計
に長い時間と多額の金を費やしている。
【0009】しかし、低電力を使用すると、他の要因と
の折合いの問題が生じる。すなわち、低電力コンピュー
タは、より高価な低電力構成要素を使用し、これらは高
速な高電力構成要素ほど迅速にコンピュータ・コマンド
を実行することができないが、さらに、ポータブル・シ
ステムは、より高価な構成要素を使用するだけでなく、
通常、より複雑な設計を使用し、それによってポータブ
ル・コンピュータ・システムのコストが増大する。
の折合いの問題が生じる。すなわち、低電力コンピュー
タは、より高価な低電力構成要素を使用し、これらは高
速な高電力構成要素ほど迅速にコンピュータ・コマンド
を実行することができないが、さらに、ポータブル・シ
ステムは、より高価な構成要素を使用するだけでなく、
通常、より複雑な設計を使用し、それによってポータブ
ル・コンピュータ・システムのコストが増大する。
【0010】これに対して、デスクトップ・コンピュー
タは通常、壁コンセントからの電気を使用して駆動され
る。すなわち、デスクトップ・コンピュータは、電圧の
下がる電池を有していない(実時間クロックをバックア
ップするために使用される非常に小形の電池を除く。こ
の電池は、再充電なしで何年も使用することができ
る)。したがって、デスクトップ・コンピュータは、よ
り高速、高出力で、より廉価な構成要素を使用すること
ができる。要するに、ポータブル・コンピュータが使用
する電力はデスクトップ・コンピュータよりも少ない
が、そのコンピューティング能力は通常、より多くの電
力を使用するデスクトップ・コンピュータほど高くはな
い。
タは通常、壁コンセントからの電気を使用して駆動され
る。すなわち、デスクトップ・コンピュータは、電圧の
下がる電池を有していない(実時間クロックをバックア
ップするために使用される非常に小形の電池を除く。こ
の電池は、再充電なしで何年も使用することができ
る)。したがって、デスクトップ・コンピュータは、よ
り高速、高出力で、より廉価な構成要素を使用すること
ができる。要するに、ポータブル・コンピュータが使用
する電力はデスクトップ・コンピュータよりも少ない
が、そのコンピューティング能力は通常、より多くの電
力を使用するデスクトップ・コンピュータほど高くはな
い。
【0011】省エネルギーを考えている今日の社会で
は、デスクトップ・コンピュータの電源を入れたままに
しておくことに対して、簡単な代替方法が存在してい
る。1つの代替方法は、ポータブル・コンピュータで見
い出された技術である。ポータブル・コンピュータを一
定期間の間、通常、数分間の間遊休状態にしておいた場
合、コンピュータは自動的に、固定ディスク記憶装置内
の固定ディスクの回転を停止し、コンピュータのディス
プレイの表示を停止する。これらの動作は共に、電力を
節約する。
は、デスクトップ・コンピュータの電源を入れたままに
しておくことに対して、簡単な代替方法が存在してい
る。1つの代替方法は、ポータブル・コンピュータで見
い出された技術である。ポータブル・コンピュータを一
定期間の間、通常、数分間の間遊休状態にしておいた場
合、コンピュータは自動的に、固定ディスク記憶装置内
の固定ディスクの回転を停止し、コンピュータのディス
プレイの表示を停止する。これらの動作は共に、電力を
節約する。
【0012】ポータブル・コンピュータはまた、電池の
電力を節約する他のより複雑な方法を有している。シス
テムを所与の期間の間遊休状態にしておいた場合、一部
のポータブル・コンピュータ設計は、構成要素を、デー
タを失わずに復元することができるような態様で停止し
始める。ポータブル・コンピュータは、メモリが失われ
ないようにするために、CPUやその他の回路への電力
なしでメモリへの電力を維持する特殊な電池回路を有す
る。この特殊な電池回路は、プリント回路板のコストと
複雑性を増大すると共に、システムの構成要素の数を増
やす。サスペンド(中断)/レジューム(再開)機能を
実施する他の方法は、"SL"ファミリと呼ばれる特殊な
プロセッサ・ファミリのメンバであるCPUを使用する
ことである。SL CPUは、特殊な設計をもつと共に、設計
者が電池電力節約機能を容易に実施できるようにする特
殊コマンドを有する。しかし、SLファミリはより高価
であり、SLファミリのプロセッサは通常、標準プロセ
ッサほどコンピューティング能力が高くない。また、ポ
ータブル・コンピュータは通常、典型的なコンピュータ
・システムに見られる複数の書込み専用レジスタを保存
する高価な「シャドー」レジスタを有する。そのような
特殊機能はプリント回路板設計の複雑さとコストを増大
すると共に、コンピュータ・システム構成要素の数を増
やす。さらに、一般に、非SL 80386または80486の状態
を保存することは不可能であると考えられている。
電力を節約する他のより複雑な方法を有している。シス
テムを所与の期間の間遊休状態にしておいた場合、一部
のポータブル・コンピュータ設計は、構成要素を、デー
タを失わずに復元することができるような態様で停止し
始める。ポータブル・コンピュータは、メモリが失われ
ないようにするために、CPUやその他の回路への電力
なしでメモリへの電力を維持する特殊な電池回路を有す
る。この特殊な電池回路は、プリント回路板のコストと
複雑性を増大すると共に、システムの構成要素の数を増
やす。サスペンド(中断)/レジューム(再開)機能を
実施する他の方法は、"SL"ファミリと呼ばれる特殊な
プロセッサ・ファミリのメンバであるCPUを使用する
ことである。SL CPUは、特殊な設計をもつと共に、設計
者が電池電力節約機能を容易に実施できるようにする特
殊コマンドを有する。しかし、SLファミリはより高価
であり、SLファミリのプロセッサは通常、標準プロセ
ッサほどコンピューティング能力が高くない。また、ポ
ータブル・コンピュータは通常、典型的なコンピュータ
・システムに見られる複数の書込み専用レジスタを保存
する高価な「シャドー」レジスタを有する。そのような
特殊機能はプリント回路板設計の複雑さとコストを増大
すると共に、コンピュータ・システム構成要素の数を増
やす。さらに、一般に、非SL 80386または80486の状態
を保存することは不可能であると考えられている。
【0013】ポータブル・コンピュータとデスクトップ
・コンピュータの多数の違いのために、消費者は、ラッ
プトップおよびノートブック・コンピュータをデスクト
ップ・コンピュータよりも高価なものとみなしている。
消費者は、デスクトップ・コンピュータを、コンピュー
ティング能力が非常に高いが、極めて安価なものとみな
している。したがって、ポータブル・コンピュータで使
用される高価で複雑な技術を使用してサスペンド/レジ
ューム方式を実施するデスクトップ・コンピュータは、
デスクトップ市場では高価すぎて販売することができな
い。よって、デスクトップ設計で電力節約を実施する場
合は通常、既存の構成要素を使用し、あるいは少なくと
も、デスクトップ・システムで使用されている標準構成
要素と同程度の能力のより新しい構成要素を使用してい
る。
・コンピュータの多数の違いのために、消費者は、ラッ
プトップおよびノートブック・コンピュータをデスクト
ップ・コンピュータよりも高価なものとみなしている。
消費者は、デスクトップ・コンピュータを、コンピュー
ティング能力が非常に高いが、極めて安価なものとみな
している。したがって、ポータブル・コンピュータで使
用される高価で複雑な技術を使用してサスペンド/レジ
ューム方式を実施するデスクトップ・コンピュータは、
デスクトップ市場では高価すぎて販売することができな
い。よって、デスクトップ設計で電力節約を実施する場
合は通常、既存の構成要素を使用し、あるいは少なくと
も、デスクトップ・システムで使用されている標準構成
要素と同程度の能力のより新しい構成要素を使用してい
る。
【0014】さらに、ネットワーク化デスクトップ・シ
ステムと非ネットワーク化デスクトップ・システムとで
は要件が異なっている。LANプロトコルの中には、コ
ンピュータ・システム内のLANハードウェアに電源を
投入したままにしておくことを必要とするものがある。
電力が供給されないと、ネットワークが障害を起こす。
非ネットワーク化デスクトップ・システムがLANハー
ドウェアを有していないのは明らかであるから、LAN
の故障は非ネットワーク化システムにとって問題になら
ない。
ステムと非ネットワーク化デスクトップ・システムとで
は要件が異なっている。LANプロトコルの中には、コ
ンピュータ・システム内のLANハードウェアに電源を
投入したままにしておくことを必要とするものがある。
電力が供給されないと、ネットワークが障害を起こす。
非ネットワーク化デスクトップ・システムがLANハー
ドウェアを有していないのは明らかであるから、LAN
の故障は非ネットワーク化システムにとって問題になら
ない。
【0015】
【発明が解決しようとする課題】したがって、ポータブ
ル・システムと同様な、またはそれよりも高度な電源管
理機能をデスクトップ・コンピュータ・システムに提供
することが望ましいと考えられている。
ル・システムと同様な、またはそれよりも高度な電源管
理機能をデスクトップ・コンピュータ・システムに提供
することが望ましいと考えられている。
【0016】また、同様な機能をもつポータブル・コン
ピュータ・システムで使用されるより複雑な設計と高価
な構成要素を使用せずに、電源管理機能をもつデスクト
ップ・システムを提供することが好ましいと考えられて
いる。
ピュータ・システムで使用されるより複雑な設計と高価
な構成要素を使用せずに、電源管理機能をもつデスクト
ップ・システムを提供することが好ましいと考えられて
いる。
【0017】また、同様な機能をもつポータブル・コン
ピュータ・システムで使用されるより複雑な設計と高価
な構成要素を使用せずに、非SL 80386または80486の状
態を保存することが望ましいと考えられている。
ピュータ・システムで使用されるより複雑な設計と高価
な構成要素を使用せずに、非SL 80386または80486の状
態を保存することが望ましいと考えられている。
【0018】EPA(米国環境保護庁)は、エネルギー
効率のよいコンピュータに対する指針を発表している。
EPAは、「グリーン」、すなわちエネルギー効率が高
いとみなされることを希望するコンピュータ・システム
に関するEPAエネルギー・スター要件を制定した。コ
ンピュータが30W未満の電力を消費するモードを有
し、あるいはモニタが30W未満の電力を消費し、ある
いはコンピュータとモニタの両方がそれぞれ、30W未
満の電力を消費する場合、コンピュータに「EPAエネ
ルギー・スター」ラベルを付けることができる。個々の
製造業者とのEPAの「合意の覚書」は、電力要件を記
載している。デスクトップ・コンピュータは通常、これ
らの機能を備えた設計になっていない。
効率のよいコンピュータに対する指針を発表している。
EPAは、「グリーン」、すなわちエネルギー効率が高
いとみなされることを希望するコンピュータ・システム
に関するEPAエネルギー・スター要件を制定した。コ
ンピュータが30W未満の電力を消費するモードを有
し、あるいはモニタが30W未満の電力を消費し、ある
いはコンピュータとモニタの両方がそれぞれ、30W未
満の電力を消費する場合、コンピュータに「EPAエネ
ルギー・スター」ラベルを付けることができる。個々の
製造業者とのEPAの「合意の覚書」は、電力要件を記
載している。デスクトップ・コンピュータは通常、これ
らの機能を備えた設計になっていない。
【0019】したがって、「グリーン」規格を満たすデ
スクトップ・コンピュータを提供することが好ましい。
スクトップ・コンピュータを提供することが好ましい。
【0020】また、エネルギー節約型コンピュータの設
計時にコンピュータ・システムをネットワーク化デスク
トップ・コンピュータとするか、非ネットワーク化デス
クトップ・コンピュータとするかを考慮することが望ま
しい。
計時にコンピュータ・システムをネットワーク化デスク
トップ・コンピュータとするか、非ネットワーク化デス
クトップ・コンピュータとするかを考慮することが望ま
しい。
【0021】コンピュータはオンになると、通常、「ブ
ート」プロセスを実行する。コンピュータはブート時
に、まず電源投入時自己診断(POST)を実行する。
この診断は、コンピュータが正常に機能していることを
確認する様々な試験の実行を含んでいる。コンピュータ
はPOSTを実行した後、通常、IBMのPC-DOSなどの
オペレーティング・システム(OS)をロードする。多
くのコンピュータは、OSをロードした後、マイクロソ
フト(Microsoft)社のウィンドウズ(Windows)などの
グラフィック・ユーザ・インタフェース(GUI)をロ
ードする。次に、ユーザは適用業務ソフトウェアをオー
プンして、作業ファイルをロードしなければならない。
このプロセス全体は、かなり長時間を要し、場合によっ
ては最大で数分間かかる。
ート」プロセスを実行する。コンピュータはブート時
に、まず電源投入時自己診断(POST)を実行する。
この診断は、コンピュータが正常に機能していることを
確認する様々な試験の実行を含んでいる。コンピュータ
はPOSTを実行した後、通常、IBMのPC-DOSなどの
オペレーティング・システム(OS)をロードする。多
くのコンピュータは、OSをロードした後、マイクロソ
フト(Microsoft)社のウィンドウズ(Windows)などの
グラフィック・ユーザ・インタフェース(GUI)をロ
ードする。次に、ユーザは適用業務ソフトウェアをオー
プンして、作業ファイルをロードしなければならない。
このプロセス全体は、かなり長時間を要し、場合によっ
ては最大で数分間かかる。
【0022】数分間が長時間とは思えないが、コンピュ
ータ・システムがブートし、OSをロードし、GUIを
ロードし、適用業務をロードするのを待つユーザにとっ
て、この時間は、非生産的でじれったいものであり、コ
ンピュータをオフにして電力を節約することをきわめて
不便なものとし、ユーザが電力を節約するのを事実上妨
げるものとなる。すなわち、そのような使用可能度上の
欠点によって、手動電源管理方式が非実際的なものにな
る。
ータ・システムがブートし、OSをロードし、GUIを
ロードし、適用業務をロードするのを待つユーザにとっ
て、この時間は、非生産的でじれったいものであり、コ
ンピュータをオフにして電力を節約することをきわめて
不便なものとし、ユーザが電力を節約するのを事実上妨
げるものとなる。すなわち、そのような使用可能度上の
欠点によって、手動電源管理方式が非実際的なものにな
る。
【0023】したがって、使用可能度上の重大な欠点の
ない電源管理機能をデスクトップ・コンピュータ・シス
テムに提供することが望ましい。すなわち、電力節約モ
ードを有しており、受け入れられる長さの時間でレジュ
ームすることができ、かついかなる場合でも、コンピュ
ータ・システムを再起動するのにかかるよりも短い時間
でレジュームすることのできるコンピュータ・システム
を提供するのが望ましい。
ない電源管理機能をデスクトップ・コンピュータ・シス
テムに提供することが望ましい。すなわち、電力節約モ
ードを有しており、受け入れられる長さの時間でレジュ
ームすることができ、かついかなる場合でも、コンピュ
ータ・システムを再起動するのにかかるよりも短い時間
でレジュームすることのできるコンピュータ・システム
を提供するのが望ましい。
【0024】ユーザはデスクトップ・コンピュータを、
該コンピュータ上で適用業務を実行している間、遊休状
態にしておくことがある。たとえば、ユーザがワード・
プロセッシング・プログラムとスプレッドシート・プロ
グラムを同時に使用して、売上報告書を作成中に電話が
なったり、あるいは机から離れたところへ呼び出された
場合、コンピュータはそのまま適用業務を実行し続ける
ことになる。任意の効果的な電源管理実施態様によっ
て、電力を節約し、同時に、たとえば、コンピュータが
適用業務の途中で電源をオフにした場合に、ユーザがデ
ータを失うのを防ぐことができるようにする必要があ
る。さらに、現行のソフトウェア適用業務は、サスペン
ドされた位置からレジュームできるような態様でその状
態を自動的に保存することはない。
該コンピュータ上で適用業務を実行している間、遊休状
態にしておくことがある。たとえば、ユーザがワード・
プロセッシング・プログラムとスプレッドシート・プロ
グラムを同時に使用して、売上報告書を作成中に電話が
なったり、あるいは机から離れたところへ呼び出された
場合、コンピュータはそのまま適用業務を実行し続ける
ことになる。任意の効果的な電源管理実施態様によっ
て、電力を節約し、同時に、たとえば、コンピュータが
適用業務の途中で電源をオフにした場合に、ユーザがデ
ータを失うのを防ぐことができるようにする必要があ
る。さらに、現行のソフトウェア適用業務は、サスペン
ドされた位置からレジュームできるような態様でその状
態を自動的に保存することはない。
【0025】したがって、システム上で適用業務を実行
している間に電力節約モードに入ることができるコンピ
ュータ・システムを提供することが望ましい。さらに、
そのような電力節約モードを適用業務ソフトウェアに対
して透過的にすることが望ましい。
している間に電力節約モードに入ることができるコンピ
ュータ・システムを提供することが望ましい。さらに、
そのような電力節約モードを適用業務ソフトウェアに対
して透過的にすることが望ましい。
【0026】デスクトップ・コンピュータのユーザに、
コンピュータがしばらくの間必要でなくなることが分か
っている場合がある。ユーザがコンピュータを手動で電
力節約モードに入らせ、コンピュータが、電力節約モー
ドに入ってもいいだけの期間遊休状態であったと判断す
るまでに使う電力を節約できるようにすることが望まし
い。
コンピュータがしばらくの間必要でなくなることが分か
っている場合がある。ユーザがコンピュータを手動で電
力節約モードに入らせ、コンピュータが、電力節約モー
ドに入ってもいいだけの期間遊休状態であったと判断す
るまでに使う電力を節約できるようにすることが望まし
い。
【0027】したがって、ユーザが、最初に適用業務を
終了しておかなくても、デスクトップ・コンピュータを
手動で電力節約モードに入らせることができるように
し、かつコンピュータをオフにしなかった場合と同様に
適用業務の使用をレジュームできることが望ましい。
終了しておかなくても、デスクトップ・コンピュータを
手動で電力節約モードに入らせることができるように
し、かつコンピュータをオフにしなかった場合と同様に
適用業務の使用をレジュームできることが望ましい。
【0028】典型的なポータブル・コンピュータは、コ
ンピュータの電源を制御するスイッチと、サスペンド/
レジューム機能を実施する別のスイッチとを有する。こ
れはユーザに混同させるものであり、ポータブル・コン
ピュータのコストと複雑度が増大する。したがって、複
数のボタンを使用せずに前記の電源節約機能をデスクト
ップ・コンピュータ・システムに提供することが望まし
い。
ンピュータの電源を制御するスイッチと、サスペンド/
レジューム機能を実施する別のスイッチとを有する。こ
れはユーザに混同させるものであり、ポータブル・コン
ピュータのコストと複雑度が増大する。したがって、複
数のボタンを使用せずに前記の電源節約機能をデスクト
ップ・コンピュータ・システムに提供することが望まし
い。
【0029】
【課題を解決するための手段】本発明によれば、コンピ
ュータ・システムは、正常動作状態、スタンバイ状態、
サスペンド状態、およびオフ状態という4つの状態をも
つように設計される。
ュータ・システムは、正常動作状態、スタンバイ状態、
サスペンド状態、およびオフ状態という4つの状態をも
つように設計される。
【0030】本発明のコンピュータ・システムの正常
(normal)動作状態は、典型的なデスクトップ・コンピ
ュータの正常動作状態とほとんど同じである。ユーザは
適用業務を使用することができ、基本的に、このコンピ
ュータを任意の他のコンピュータと同様に扱うことがで
きる。1つの違いは、電源管理ドライバの存在である。
電源管理ドライバはバックグラウンドで動作し(BIOSお
よびオペレーティング・システムでは)、ユーザに透過
的である。オペレーティング・システム(OS)中の電
源管理ドライバの部分は、インテル(Intel)社および
マイクロソフト社によって書かれたAPM拡張プログラ
ミング・インタフェースである。このインタフェースは
現在、インテル社の80X86プロセッサ・ファミリ上で動
作するように書かれた大部分のオペレーティング・シス
テムに存在する。BIOS(APM BIOS)中の電源管理ドライ
バの部分は、本発明に固有であり、APM OSドライバと通
信する。APM OSドライバとAPM BIOSルーチンは共に、コ
ンピュータの、他の3つの状態に対する遷移を制御す
る。
(normal)動作状態は、典型的なデスクトップ・コンピ
ュータの正常動作状態とほとんど同じである。ユーザは
適用業務を使用することができ、基本的に、このコンピ
ュータを任意の他のコンピュータと同様に扱うことがで
きる。1つの違いは、電源管理ドライバの存在である。
電源管理ドライバはバックグラウンドで動作し(BIOSお
よびオペレーティング・システムでは)、ユーザに透過
的である。オペレーティング・システム(OS)中の電
源管理ドライバの部分は、インテル(Intel)社および
マイクロソフト社によって書かれたAPM拡張プログラ
ミング・インタフェースである。このインタフェースは
現在、インテル社の80X86プロセッサ・ファミリ上で動
作するように書かれた大部分のオペレーティング・シス
テムに存在する。BIOS(APM BIOS)中の電源管理ドライ
バの部分は、本発明に固有であり、APM OSドライバと通
信する。APM OSドライバとAPM BIOSルーチンは共に、コ
ンピュータの、他の3つの状態に対する遷移を制御す
る。
【0031】第2の状態であるスタンバイ(standby)
状態は、正常動作状態よりも少ない電力を使用するが、
適用業務を、スタンバイ状態でない場合と同様に実行し
続ける。一般に、スタンバイ状態では、装置をそれぞれ
の低出力モードにすることによって電力が節約される。
たとえば、スタンバイ状態では、ハード・ドライブ内の
固定ディスクの回転を停止して、ビデオ信号の発生を停
止することによって電力が節約される。まず、正常動作
状態では、固定ディスク記憶装置内の固定ディスクが常
に、通常毎分3600回転(RPM)で回転する。スタ
ンバイ状態では、固定ディスク制御装置によって、固定
ディスク記憶装置内の固定ディスクが回転を停止し、そ
れによって、固定ディスク記憶装置内部のモータが通
常、固定ディスクを回転させる間に消費する電力を節約
する。
状態は、正常動作状態よりも少ない電力を使用するが、
適用業務を、スタンバイ状態でない場合と同様に実行し
続ける。一般に、スタンバイ状態では、装置をそれぞれ
の低出力モードにすることによって電力が節約される。
たとえば、スタンバイ状態では、ハード・ドライブ内の
固定ディスクの回転を停止して、ビデオ信号の発生を停
止することによって電力が節約される。まず、正常動作
状態では、固定ディスク記憶装置内の固定ディスクが常
に、通常毎分3600回転(RPM)で回転する。スタ
ンバイ状態では、固定ディスク制御装置によって、固定
ディスク記憶装置内の固定ディスクが回転を停止し、そ
れによって、固定ディスク記憶装置内部のモータが通
常、固定ディスクを回転させる間に消費する電力を節約
する。
【0032】第2に、正常動作状態では、コンピュータ
・システムのビデオ制御装置が常に、ビデオ表示端末上
で表示されるイメージに対応するビデオ信号を生成す
る。スタンバイ状態では、ビデオ制御装置がビデオ信号
の制御を停止する(HSYNC、VSYNC、R、G、およびBは
約DC0.00Vになされる)ことによって、ビデオ制御装置
で通常消費される電力を節約する。一部のシステムに
は、「スクリーン・セーバ」があることに留意された
い。スクリーン・セーバは、画面を暗くして、ビデオ表
示端末の前面の蛍光体の焼付きを防止する。大部分のそ
のようなシステムでは、ビデオ制御装置が引き続きビデ
オ信号を生成する。すなわち、ビデオ制御装置は暗い画
面に対応するビデオ信号だけを生成する。したがって、
スクリーン・セーバを実行するコンピュータ・システム
は引き続き、ビデオ信号を生成するのに必要な電力を消
費し、したがって、エネルギー節約状態にならない。
・システムのビデオ制御装置が常に、ビデオ表示端末上
で表示されるイメージに対応するビデオ信号を生成す
る。スタンバイ状態では、ビデオ制御装置がビデオ信号
の制御を停止する(HSYNC、VSYNC、R、G、およびBは
約DC0.00Vになされる)ことによって、ビデオ制御装置
で通常消費される電力を節約する。一部のシステムに
は、「スクリーン・セーバ」があることに留意された
い。スクリーン・セーバは、画面を暗くして、ビデオ表
示端末の前面の蛍光体の焼付きを防止する。大部分のそ
のようなシステムでは、ビデオ制御装置が引き続きビデ
オ信号を生成する。すなわち、ビデオ制御装置は暗い画
面に対応するビデオ信号だけを生成する。したがって、
スクリーン・セーバを実行するコンピュータ・システム
は引き続き、ビデオ信号を生成するのに必要な電力を消
費し、したがって、エネルギー節約状態にならない。
【0033】前記の例は、例示のためのものにすぎず、
限定することを所期したものではない。また、他の装置
をそれぞれの低出力モードにすることができる。たとえ
ば、VESA準拠モニタは、HSYNCおよびVSYNCが約DC0.00V
になった場合、それ自体をオフにする。スタンバイ状態
では、HSYNCおよびVSYNCは約DC0.00Vである。したがっ
て、VESA準拠モニタは、本発明のシステムによってスタ
ンバイ状態に入る。システムがスタンバイを終了し、正
常動作状態に入ると、VESA準拠モニタはそれぞれの正常
電力供給モードに入る。他の例として、スタンバイ中に
CPUクロックを低速化し、あるいは停止することが可
能である。スタンバイが終了すると、CPUクロックは
完全な速度に戻る。
限定することを所期したものではない。また、他の装置
をそれぞれの低出力モードにすることができる。たとえ
ば、VESA準拠モニタは、HSYNCおよびVSYNCが約DC0.00V
になった場合、それ自体をオフにする。スタンバイ状態
では、HSYNCおよびVSYNCは約DC0.00Vである。したがっ
て、VESA準拠モニタは、本発明のシステムによってスタ
ンバイ状態に入る。システムがスタンバイを終了し、正
常動作状態に入ると、VESA準拠モニタはそれぞれの正常
電力供給モードに入る。他の例として、スタンバイ中に
CPUクロックを低速化し、あるいは停止することが可
能である。スタンバイが終了すると、CPUクロックは
完全な速度に戻る。
【0034】すべてのデスクトップ・システムはスタン
バイ状態から便益を受ける。ただし、スタンバイ状態
は、大部分のネットワーク化システムなどの、たえず電
力を供給しておく必要があるシステムで電力を節約する
のに理想的である。システム・プレーナは電力を供給さ
れ続けるので、LANハードウェアは、固定ディスクが
もはや回転していないこと、ならびに、ビデオ制御装置
がビデオ信号を生成していないことによって影響を受け
ない。同様に、コンピュータ・システム上で実行するソ
フトウェア適用業務は、固定ディスクおよびビデオ制御
装置の状態を認識しない。適用業務は、表示するイメー
ジを変更する場合、その変更をビデオ・メモリで行う。
ビデオ制御装置がビデオ信号の生成を開始すると、新し
いイメージが表示される。また、スタンバイ状態のコン
ピュータ上で実行中の適用業務が固定ディスク記憶装置
にアクセスしようとすると、コンピュータ・システムは
固定ディスクの回転を再び開始し、固定ディスク記憶装
置にアクセスする。プロセス全体は、適用業務およびオ
ペレーティング・システムに透過的である。
バイ状態から便益を受ける。ただし、スタンバイ状態
は、大部分のネットワーク化システムなどの、たえず電
力を供給しておく必要があるシステムで電力を節約する
のに理想的である。システム・プレーナは電力を供給さ
れ続けるので、LANハードウェアは、固定ディスクが
もはや回転していないこと、ならびに、ビデオ制御装置
がビデオ信号を生成していないことによって影響を受け
ない。同様に、コンピュータ・システム上で実行するソ
フトウェア適用業務は、固定ディスクおよびビデオ制御
装置の状態を認識しない。適用業務は、表示するイメー
ジを変更する場合、その変更をビデオ・メモリで行う。
ビデオ制御装置がビデオ信号の生成を開始すると、新し
いイメージが表示される。また、スタンバイ状態のコン
ピュータ上で実行中の適用業務が固定ディスク記憶装置
にアクセスしようとすると、コンピュータ・システムは
固定ディスクの回転を再び開始し、固定ディスク記憶装
置にアクセスする。プロセス全体は、適用業務およびオ
ペレーティング・システムに透過的である。
【0035】第3の状態はサスペンド(suspend)状態
である。サスペンド状態では、コンピュータ・システム
が消費する電力は極めて少量である。サスペンドされた
コンピュータは、壁コンセントからの電力をごく少量消
費する。消費される唯一の電力は、コンピュータ・シス
テム内部の電池からの、スイッチ回路を維持するための
わずかな電力(システムが壁コンセントに差し込まれて
いない場合)、または電源によって生成されるわずかな
電力である(システムが壁コンセントに差し込まれてい
る場合)。
である。サスペンド状態では、コンピュータ・システム
が消費する電力は極めて少量である。サスペンドされた
コンピュータは、壁コンセントからの電力をごく少量消
費する。消費される唯一の電力は、コンピュータ・シス
テム内部の電池からの、スイッチ回路を維持するための
わずかな電力(システムが壁コンセントに差し込まれて
いない場合)、または電源によって生成されるわずかな
電力である(システムが壁コンセントに差し込まれてい
る場合)。
【0036】このような少量の電力使用は、電源を「オ
フ」にする前にコンピュータ・システムの状態を固定デ
ィスク記憶装置(ハード・ディスク)に保存することに
よって行われる。コンピュータ・システムは、サスペン
ド状態に入るために、実行中のCPUコードに割り込
み、コンピュータの制御を電源管理ドライバに転送す
る。電源管理ドライバは、コンピュータ・システムの状
態を確認し、該状態を固定ディスク記憶装置に書き込
む。CPUレジスタ、CPUキャッシュ、システム・メ
モリ、システム・キャッシュ、ビデオ・レジスタ、ビデ
オ・メモリ、およびその他の装置のレジスタの状態はす
べて、固定ディスクに書き込まれる。システムの状態全
体は、割込みによって適用業務が影響を受けずに復元で
きるように保存される。コンピュータは次に、システム
がサスペンドされたことを示すデータを不揮発性CMOSメ
モリに書き込む。最後に、コンピュータは電源に電力の
生成を停止させる。コンピュータの状態全体は、固定デ
ィスク記憶装置に安全に保存され、システム電源は現在
「オフ」であり、コンピュータは現在、わずかな調整さ
れた電力を電源から受け取り、スイッチ回路に供給して
いる。
フ」にする前にコンピュータ・システムの状態を固定デ
ィスク記憶装置(ハード・ディスク)に保存することに
よって行われる。コンピュータ・システムは、サスペン
ド状態に入るために、実行中のCPUコードに割り込
み、コンピュータの制御を電源管理ドライバに転送す
る。電源管理ドライバは、コンピュータ・システムの状
態を確認し、該状態を固定ディスク記憶装置に書き込
む。CPUレジスタ、CPUキャッシュ、システム・メ
モリ、システム・キャッシュ、ビデオ・レジスタ、ビデ
オ・メモリ、およびその他の装置のレジスタの状態はす
べて、固定ディスクに書き込まれる。システムの状態全
体は、割込みによって適用業務が影響を受けずに復元で
きるように保存される。コンピュータは次に、システム
がサスペンドされたことを示すデータを不揮発性CMOSメ
モリに書き込む。最後に、コンピュータは電源に電力の
生成を停止させる。コンピュータの状態全体は、固定デ
ィスク記憶装置に安全に保存され、システム電源は現在
「オフ」であり、コンピュータは現在、わずかな調整さ
れた電力を電源から受け取り、スイッチ回路に供給して
いる。
【0037】サスペンド状態は、悪影響を被らずにすべ
てのシステム電力を除去させることができるコンピュー
タ・システムに理想的である。電源がオフになった状態
から回復することができる非ネットワーク化コンピュー
タおよびネットワーク化コンピュータは通常、サスペン
ドされる。
てのシステム電力を除去させることができるコンピュー
タ・システムに理想的である。電源がオフになった状態
から回復することができる非ネットワーク化コンピュー
タおよびネットワーク化コンピュータは通常、サスペン
ドされる。
【0038】第4の、そして最後の状態はオフ状態であ
る。この状態では、電源が、コンピュータ・システムへ
の調整された電力の提供を停止するが、コンピュータ・
システムの状態は固定ディスクに保存されていない。オ
フ状態は、通常の方法でオフにされた典型的なデスクト
ップ・コンピュータとほとんど同じである。
る。この状態では、電源が、コンピュータ・システムへ
の調整された電力の提供を停止するが、コンピュータ・
システムの状態は固定ディスクに保存されていない。オ
フ状態は、通常の方法でオフにされた典型的なデスクト
ップ・コンピュータとほとんど同じである。
【0039】状態間の切替えは、電源管理ドライバによ
って処理され、通常、単一のスイッチの閉鎖イベント、
フラグ、および2つのタイマ、すなわち非活動タイマお
よび非活動サスペンド・タイマに基づいて行われる。両
方のタイマは共に、キーボード上でキーを押すこと、マ
ウスの移動、マウス・ボタンを押すこと、ハード・ファ
イル活動などのユーザ活動がないときにカウントする。
非活動スタンバイ・タイマが満了すると、システムは、
前述のようにスタンバイ状態に入る。非活動サスペンド
・タイマが満了すると、システムは、前述のようにサス
ペンド状態に入る。
って処理され、通常、単一のスイッチの閉鎖イベント、
フラグ、および2つのタイマ、すなわち非活動タイマお
よび非活動サスペンド・タイマに基づいて行われる。両
方のタイマは共に、キーボード上でキーを押すこと、マ
ウスの移動、マウス・ボタンを押すこと、ハード・ファ
イル活動などのユーザ活動がないときにカウントする。
非活動スタンバイ・タイマが満了すると、システムは、
前述のようにスタンバイ状態に入る。非活動サスペンド
・タイマが満了すると、システムは、前述のようにサス
ペンド状態に入る。
【0040】通常、非活動サスペンド・タイマは非活動
スタンバイ・タイマよりも長い期間に設定される。した
がって、コンピュータは通常、まず、正常動作状態から
スタンバイ状態に変わる。次に、コンピュータは、別の
非活動期間の後に、サスペンド状態に入る。サスペンド
状態を許容することができないネットワーク化システム
のユーザは、非活動サスペンド・タイマを選択的にサス
ペンド禁止に設定することができる。
スタンバイ・タイマよりも長い期間に設定される。した
がって、コンピュータは通常、まず、正常動作状態から
スタンバイ状態に変わる。次に、コンピュータは、別の
非活動期間の後に、サスペンド状態に入る。サスペンド
状態を許容することができないネットワーク化システム
のユーザは、非活動サスペンド・タイマを選択的にサス
ペンド禁止に設定することができる。
【0041】どのユーザ活動でも両方の非活動タイマが
共にリセットされ、それによって、ユーザがシステムを
操作している間にコンピュータがスタンバイ状態または
サスペンド状態に入ることが防がれる。
共にリセットされ、それによって、ユーザがシステムを
操作している間にコンピュータがスタンバイ状態または
サスペンド状態に入ることが防がれる。
【0042】システムがスタンバイ状態であり、かつユ
ーザがマウスを移動し、またはキーボードのキーに触
れ、あるいはCPU上で実行中のコードがハード・ドラ
イブにアクセスした場合には、システムはスタンバイ状
態を抜け出し、正常動作状態に変わる。こうする際に、
ビデオ制御装置は再びビデオ信号の生成を開始し、固定
ディスクは再び回転を開始する。しかし、システムがサ
スペンド状態であり、ユーザがマウスを移動し、または
キーボードのキーに触れた場合には、システムは自動的
に、正常動作状態に変わる。
ーザがマウスを移動し、またはキーボードのキーに触
れ、あるいはCPU上で実行中のコードがハード・ドラ
イブにアクセスした場合には、システムはスタンバイ状
態を抜け出し、正常動作状態に変わる。こうする際に、
ビデオ制御装置は再びビデオ信号の生成を開始し、固定
ディスクは再び回転を開始する。しかし、システムがサ
スペンド状態であり、ユーザがマウスを移動し、または
キーボードのキーに触れた場合には、システムは自動的
に、正常動作状態に変わる。
【0043】システムは単一の電源ボタンを有してい
る。このボタンを使用して、コンピュータ・システムを
オンにし、システムの状態をサスペンドし、システムの
状態を復元し、システムをオフにすることができる。コ
ンピュータが正常動作状態またはスタンバイ状態であ
り、かつユーザがボタンを押した場合には、コンピュー
タは、フラグの値に応じて、サスペンド状態またはオフ
状態に変わる。ボタンが押された時に、システムをサス
ペンドすべきであることをフラグが示すと、システムは
サスペンドを開始し、最終的にサスペンド状態に入る。
ボタンが押された時に、システムをオフにするだけであ
ることをフラグが示すと、コンピュータはオフ状態に入
るだけである。フラグは、ユーザが制御することができ
る。すなわち、ユーザは、正常動作状態の間にボタンを
押すとシステムがサスペンドされるか、オフにされるか
を決定することができる。また、オペレーティング・シ
ステム上に電源管理ドライバがないとき、スイッチは電
源用の単純なオン/オフ・スイッチとして機能する。
る。このボタンを使用して、コンピュータ・システムを
オンにし、システムの状態をサスペンドし、システムの
状態を復元し、システムをオフにすることができる。コ
ンピュータが正常動作状態またはスタンバイ状態であ
り、かつユーザがボタンを押した場合には、コンピュー
タは、フラグの値に応じて、サスペンド状態またはオフ
状態に変わる。ボタンが押された時に、システムをサス
ペンドすべきであることをフラグが示すと、システムは
サスペンドを開始し、最終的にサスペンド状態に入る。
ボタンが押された時に、システムをオフにするだけであ
ることをフラグが示すと、コンピュータはオフ状態に入
るだけである。フラグは、ユーザが制御することができ
る。すなわち、ユーザは、正常動作状態の間にボタンを
押すとシステムがサスペンドされるか、オフにされるか
を決定することができる。また、オペレーティング・シ
ステム上に電源管理ドライバがないとき、スイッチは電
源用の単純なオン/オフ・スイッチとして機能する。
【0044】コンピュータ・システムがオフ状態であ
り、電源ボタンが押された場合には、システムは通常ど
おり始動する。コンピュータ・システムがサスペンド状
態であり、電源ボタンが押された場合には、オペレータ
に、通常どおりシステムを始動するか、システムを、サ
スペンドされた時の状態に復元するかの選択肢が与えら
れる。明らかに、ユーザは、適用業務の使用中にシステ
ムをサスペンドした場合、コンピュータ・システムの状
態を復元したいとは考えない。しかし、ユーザが何らか
の理由でコンピュータを新たに始動し、サスペンド・シ
ステム状態をなくしたい場合には、オプションが存在す
る。
り、電源ボタンが押された場合には、システムは通常ど
おり始動する。コンピュータ・システムがサスペンド状
態であり、電源ボタンが押された場合には、オペレータ
に、通常どおりシステムを始動するか、システムを、サ
スペンドされた時の状態に復元するかの選択肢が与えら
れる。明らかに、ユーザは、適用業務の使用中にシステ
ムをサスペンドした場合、コンピュータ・システムの状
態を復元したいとは考えない。しかし、ユーザが何らか
の理由でコンピュータを新たに始動し、サスペンド・シ
ステム状態をなくしたい場合には、オプションが存在す
る。
【0045】システムは、サスペンド状態から正常動作
状態に変わる際に、適用業務が割込みによって影響を受
けないようにコンピュータ・システムの状態を復元する
必要がある。CPUレジスタ、CPUキャッシュ、シス
テム・メモリ、システム・キャッシュ、ビデオ・レジス
タ、およびビデオ・メモリの状態はすべて、固定ディス
クから読み取る必要がある。システムの状態全体は、適
用業務が割り込まれた位置から開始できるように復元す
る必要がある。
状態に変わる際に、適用業務が割込みによって影響を受
けないようにコンピュータ・システムの状態を復元する
必要がある。CPUレジスタ、CPUキャッシュ、シス
テム・メモリ、システム・キャッシュ、ビデオ・レジス
タ、およびビデオ・メモリの状態はすべて、固定ディス
クから読み取る必要がある。システムの状態全体は、適
用業務が割り込まれた位置から開始できるように復元す
る必要がある。
【0046】サスペンド/レジュームを使用すると、単
にシステムをオフにして電力を節約し、システムをオン
に戻すことに比べて、はるかに時間を節約することがで
きる。
にシステムをオフにして電力を節約し、システムをオン
に戻すことに比べて、はるかに時間を節約することがで
きる。
【0047】さらに、スタンバイ・レベルとサスペンド
・レベルは共に、「グリーン」コンピュータ・システム
についてのEPAエネルギー・スター要件を満たす。
・レベルは共に、「グリーン」コンピュータ・システム
についてのEPAエネルギー・スター要件を満たす。
【0048】本発明のこれらおよびその他の利点は、本
発明の詳細な説明から、より明らかになろう。
発明の詳細な説明から、より明らかになろう。
【0049】
【実施例】以下に、本発明を、その好ましい実施例が示
された添付の図面を参照して詳細に説明するが、以下の
説明を始めるにあたって、当業者は、本明細書に記載さ
れた発明を改変しても、本発明の好ましい結果を達成す
ることができる点に留意されたい。したがって、以下の
説明は、当業者に対する広範囲な教示的開示と解釈すべ
きであり、本発明に対する制限と解釈すべきではない。
本発明は、コンピュータ・アーキテクチャ設計、ディジ
タル設計、BIOS設計、プロテクト・モード80486コード
設計、適用業務コード設計、オペレーティング・システ
ム・コード設計、およびAPM拡張プログラミング・イ
ンタフェース使用法を制限なしに含む、コンピュータ・
システムの設計全般を扱っている。本出願は、コンピュ
ータ・システム設計のあらゆる態様を熟知している者を
対象として書かれている。
された添付の図面を参照して詳細に説明するが、以下の
説明を始めるにあたって、当業者は、本明細書に記載さ
れた発明を改変しても、本発明の好ましい結果を達成す
ることができる点に留意されたい。したがって、以下の
説明は、当業者に対する広範囲な教示的開示と解釈すべ
きであり、本発明に対する制限と解釈すべきではない。
本発明は、コンピュータ・アーキテクチャ設計、ディジ
タル設計、BIOS設計、プロテクト・モード80486コード
設計、適用業務コード設計、オペレーティング・システ
ム・コード設計、およびAPM拡張プログラミング・イ
ンタフェース使用法を制限なしに含む、コンピュータ・
システムの設計全般を扱っている。本出願は、コンピュ
ータ・システム設計のあらゆる態様を熟知している者を
対象として書かれている。
【0050】次に、添付の図面をより詳細に参照する
と、本発明を実施するマイクロコンピュータ・システム
が示され、全体的に10に示されている(図1)。前述
のように、コンピュータ・システム10は、関連するモ
ニタ11、キーボード12、マウス13、プリンタまた
はプロッタ14を有することができる。コンピュータ1
0は装飾外部部材16(図2)及び内部遮蔽部材18に
よって形成されたカバー15を有しており、外部部材及
び内部部材はディジタル・データの処理及び記憶を行う
ための電動データ処理及び記憶構成要素を受け入れるた
めの密閉された遮蔽容積を画定する際にシャシ19と協
働する。これらの構成要素の少なくとも一部は、シャシ
19上に取り付けられた多層プレーナ20すなわちマザ
ーボード上に取り付けられ、上記の構成要素、ならびに
フロッピィ・ディスク・ドライブ、様々な形式の直接ア
クセス記憶装置、アクセサリ・カードまたはボードなど
の他の関連要素を含むコンピュータ・システム10の構
成要素を電気的に相互接続する手段を提供する。以下に
詳細に指摘するように、プレーナ20には、入出力信号
をマイクロコンピュータの作動構成要素に行き来させる
ための装置が設けられている。
と、本発明を実施するマイクロコンピュータ・システム
が示され、全体的に10に示されている(図1)。前述
のように、コンピュータ・システム10は、関連するモ
ニタ11、キーボード12、マウス13、プリンタまた
はプロッタ14を有することができる。コンピュータ1
0は装飾外部部材16(図2)及び内部遮蔽部材18に
よって形成されたカバー15を有しており、外部部材及
び内部部材はディジタル・データの処理及び記憶を行う
ための電動データ処理及び記憶構成要素を受け入れるた
めの密閉された遮蔽容積を画定する際にシャシ19と協
働する。これらの構成要素の少なくとも一部は、シャシ
19上に取り付けられた多層プレーナ20すなわちマザ
ーボード上に取り付けられ、上記の構成要素、ならびに
フロッピィ・ディスク・ドライブ、様々な形式の直接ア
クセス記憶装置、アクセサリ・カードまたはボードなど
の他の関連要素を含むコンピュータ・システム10の構
成要素を電気的に相互接続する手段を提供する。以下に
詳細に指摘するように、プレーナ20には、入出力信号
をマイクロコンピュータの作動構成要素に行き来させる
ための装置が設けられている。
【0051】コンピュータ・システムは、電源17およ
び電源ボタン21を有している。電源ボタン21は以下
で、スイッチ21とも呼ぶ。以下に説明するように、電
源ボタン21は、典型的なシステムの通常の電源スイッ
チと異なり、無調整の回線電力と電源17の間の切替え
を行わない。シャシ19は、22に示されたベースと、
24に示されたフロント・パネルと、25に示されたリ
ア・パネルを有する(図2)。フロント・パネル24
は、磁気または光ディスク用のディスク・ドライブ、テ
ープ・バックアップ・ドライブなどのデータ記憶装置を
受け入れ少なくとも1つのオープン・ベイ(図示された
形式では、4つのベイ)を形成する。図示された形式で
は、1対の上部ベイ26、28と1対の下部ベイ29、
30が設けられている。一方の上部ベイ26は、第1の
寸法の周辺ドライブ(3.5インチ・ドライブといわれ
るもの)を受け入れるようになされ、他方の上部ベイ2
8は、2つのサイズ(3.5インチおよび5.25イン
チなど)のうち選択された一方のドライブを受け入れる
ようになされており、下部ベイは、1つのサイズだけ
(3.5インチ)のドライブを受け入れるようになされ
ている。1つのフロッピィ・ディスク・ドライブが、図
1の27で示されており、挿入されたディスケットを受
け入れると共に、ディスケットを使用して周知の方法で
データを受信し、記憶し、転送することができる取外し
可能媒体直接アクセス記憶装置である。1つのハード・
ディスク・ドライブが、31で示されており、周知の方
法でデータを記憶し、転送することができる固定媒体直
接アクセス記憶装置である。
び電源ボタン21を有している。電源ボタン21は以下
で、スイッチ21とも呼ぶ。以下に説明するように、電
源ボタン21は、典型的なシステムの通常の電源スイッ
チと異なり、無調整の回線電力と電源17の間の切替え
を行わない。シャシ19は、22に示されたベースと、
24に示されたフロント・パネルと、25に示されたリ
ア・パネルを有する(図2)。フロント・パネル24
は、磁気または光ディスク用のディスク・ドライブ、テ
ープ・バックアップ・ドライブなどのデータ記憶装置を
受け入れ少なくとも1つのオープン・ベイ(図示された
形式では、4つのベイ)を形成する。図示された形式で
は、1対の上部ベイ26、28と1対の下部ベイ29、
30が設けられている。一方の上部ベイ26は、第1の
寸法の周辺ドライブ(3.5インチ・ドライブといわれ
るもの)を受け入れるようになされ、他方の上部ベイ2
8は、2つのサイズ(3.5インチおよび5.25イン
チなど)のうち選択された一方のドライブを受け入れる
ようになされており、下部ベイは、1つのサイズだけ
(3.5インチ)のドライブを受け入れるようになされ
ている。1つのフロッピィ・ディスク・ドライブが、図
1の27で示されており、挿入されたディスケットを受
け入れると共に、ディスケットを使用して周知の方法で
データを受信し、記憶し、転送することができる取外し
可能媒体直接アクセス記憶装置である。1つのハード・
ディスク・ドライブが、31で示されており、周知の方
法でデータを記憶し、転送することができる固定媒体直
接アクセス記憶装置である。
【0052】前記の構造を本発明に関連付ける前に、パ
ーソナル・コンピュータ・システム10の一般的な動作
を要約しておくと有用である。図3を参照すると、プレ
ーナ20上に取り付けられた構成要素と、プレーナ20
とパーソナル・コンピュータ・システムの入出力スロッ
トおよびその他のハードウェアとの接続とを含む、本発
明に従ったコンピュータ・システム10などのコンピュ
ータ・システムの様々な構成要素を示すパーソナル・コ
ンピュータのブロック図が示されている。プレーナ20
には、本明細書ではCPU 40とも呼ばれ、マイクロ
プロセッサから構成されたシステム・プロセッサ40が
接続されている。システム・プロセッサ40は高速ロー
カル・バス42によってメモリ制御ユニット46を介し
て接続されており、メモリ制御ユニット46はさらに揮
発性ランダム・アクセス・メモリ(RAM)53に接続
されている。メモリ制御ユニット46はメモリ制御装置
48、アドレス・マルチプレクサ50、およびデータ・
バッファ52から構成される。メモリ制御ユニット46
はさらに、4つのRAMモジュール54によって代表さ
れるランダム・アクセス・メモリ53に接続されてい
る。メモリ制御装置48は、マイクロプロセッサ40と
の間でやり取りされるアドレスをRAM 53の特定の
領域にマッピングする論理機構を含む。この論理機構
は、前にBIOSによって占有されていたRAMを再利用す
るために使用される。メモリ制御装置48によってさら
に、ROM 88を使用可能または使用不能にするため
に使用されるROM select信号(ROMSEL)が生成される。
システム・プロセッサ40には任意の適切なマイクロプ
ロセッサを使用することができるが、1つの適切なマイ
クロプロセッサは、インテル社が販売している80486で
ある。Intel 80486は内部キャッシュを有し、したがっ
てIntel 80486であるどのCPU 40も、CPUキャ
ッシュ41を有する。
ーソナル・コンピュータ・システム10の一般的な動作
を要約しておくと有用である。図3を参照すると、プレ
ーナ20上に取り付けられた構成要素と、プレーナ20
とパーソナル・コンピュータ・システムの入出力スロッ
トおよびその他のハードウェアとの接続とを含む、本発
明に従ったコンピュータ・システム10などのコンピュ
ータ・システムの様々な構成要素を示すパーソナル・コ
ンピュータのブロック図が示されている。プレーナ20
には、本明細書ではCPU 40とも呼ばれ、マイクロ
プロセッサから構成されたシステム・プロセッサ40が
接続されている。システム・プロセッサ40は高速ロー
カル・バス42によってメモリ制御ユニット46を介し
て接続されており、メモリ制御ユニット46はさらに揮
発性ランダム・アクセス・メモリ(RAM)53に接続
されている。メモリ制御ユニット46はメモリ制御装置
48、アドレス・マルチプレクサ50、およびデータ・
バッファ52から構成される。メモリ制御ユニット46
はさらに、4つのRAMモジュール54によって代表さ
れるランダム・アクセス・メモリ53に接続されてい
る。メモリ制御装置48は、マイクロプロセッサ40と
の間でやり取りされるアドレスをRAM 53の特定の
領域にマッピングする論理機構を含む。この論理機構
は、前にBIOSによって占有されていたRAMを再利用す
るために使用される。メモリ制御装置48によってさら
に、ROM 88を使用可能または使用不能にするため
に使用されるROM select信号(ROMSEL)が生成される。
システム・プロセッサ40には任意の適切なマイクロプ
ロセッサを使用することができるが、1つの適切なマイ
クロプロセッサは、インテル社が販売している80486で
ある。Intel 80486は内部キャッシュを有し、したがっ
てIntel 80486であるどのCPU 40も、CPUキャ
ッシュ41を有する。
【0053】以下に、本発明を、特に図3のシステム・
ブロック図を参照して説明するが、以下の説明を始める
にあたって、本発明による装置および方法はプレーナの
他のハードウェア構成に使用できることに留意された
い。たとえば、システム・プロセッサ40は、Intel 80
286または80386マイクロプロセッサとすることができ
る。80286または80386または80486の参照を本明細書で
使用するときは一般に、インテル社から入手したマイク
ロプロセッサを所期している。しかし、最近、他の製造
業者が、Intel X86アーキテクチャの命令セットを実行
することができるマイクロプロセッサを開発しており、
前述の用語を使用するときは、その命令セットを実行で
きる任意のマイクロプロセッサを含めることを所期して
いる。当業者には周知なように、初期のパーソナル・コ
ンピュータは通常、当時広く使用されていたIntel 8088
または8086マイクロプロセッサをシステム・プロセッサ
として使用していた。これらのプロセッサは、1メガバ
イトのメモリにアドレスする能力を有している。より最
近では、パーソナル・コンピュータは通常、低速の8086
マイクロプロセッサをエミュレートする仮想またはリア
ル・モード、または一部のモデルについてアドレス範囲
を1メガバイトから4メガバイトに拡張するプロテクト
・モードで動作することができる高速なIntel 80286、8
0386、および80486マイクロプロセッサを使用してい
る。本質的に、80286、80386、80486プロセッサのリア
ル・モード機能は、8086および8088マイクロプロセッサ
用に書かれたソフトウェアとの互換性を提供する。前述
のインテル・ファミリのプロセッサは、"486"のよう
に、フル・タイプ指示子の最後の3桁だけの3桁参照符
号によって識別されることが多い。
ブロック図を参照して説明するが、以下の説明を始める
にあたって、本発明による装置および方法はプレーナの
他のハードウェア構成に使用できることに留意された
い。たとえば、システム・プロセッサ40は、Intel 80
286または80386マイクロプロセッサとすることができ
る。80286または80386または80486の参照を本明細書で
使用するときは一般に、インテル社から入手したマイク
ロプロセッサを所期している。しかし、最近、他の製造
業者が、Intel X86アーキテクチャの命令セットを実行
することができるマイクロプロセッサを開発しており、
前述の用語を使用するときは、その命令セットを実行で
きる任意のマイクロプロセッサを含めることを所期して
いる。当業者には周知なように、初期のパーソナル・コ
ンピュータは通常、当時広く使用されていたIntel 8088
または8086マイクロプロセッサをシステム・プロセッサ
として使用していた。これらのプロセッサは、1メガバ
イトのメモリにアドレスする能力を有している。より最
近では、パーソナル・コンピュータは通常、低速の8086
マイクロプロセッサをエミュレートする仮想またはリア
ル・モード、または一部のモデルについてアドレス範囲
を1メガバイトから4メガバイトに拡張するプロテクト
・モードで動作することができる高速なIntel 80286、8
0386、および80486マイクロプロセッサを使用してい
る。本質的に、80286、80386、80486プロセッサのリア
ル・モード機能は、8086および8088マイクロプロセッサ
用に書かれたソフトウェアとの互換性を提供する。前述
のインテル・ファミリのプロセッサは、"486"のよう
に、フル・タイプ指示子の最後の3桁だけの3桁参照符
号によって識別されることが多い。
【0054】次に、図3を参照する。CPUローカル・
バス42(データ、アドレス、および制御構成要素を備
えた)は、マイクロプロセッサ40、数値計算補助プロ
セッサ44、ビデオ制御装置56、システム・キャッシ
ュ・メモリ60、およびキャッシュ制御装置62を接続
するために設けられている。ビデオ制御装置56には、
モニタ(またはビデオ表示端末)57およびビデオ・メ
モリ58が関連付けられている。CPUローカル・バス
42上にはバッファ64も結合されている。バッファ6
4自体は、低速な(CPUローカル・バス42と比較し
て)システム・バス66に接続され、やはりアドレス、
データ、および制御構成要素を備えている。システム・
バス66は、バッファ64と次のバッファ68の間を伸
びている。システム・バス66はさらに、バス制御およ
びタイミング装置70と、DMA装置71に接続されて
いる。DMA装置71は、中央アービタ82およびDM
A制御装置72から構成される。追加バッファ74は、
システム・バスと、業界標準アーキテクチャ(ISA)
バス76などの選択機構バスとの間のインタフェースを
提供する。バス76には、ISAアダプタ・カード(図
示せず)を受け入れる複数の入出力スロット78が接続
されている。ISAアダプタ・カードは、入出力スロッ
ト78に差込み式に接続され、システム10用の追加入
出力装置またはメモリを提供することができる。
バス42(データ、アドレス、および制御構成要素を備
えた)は、マイクロプロセッサ40、数値計算補助プロ
セッサ44、ビデオ制御装置56、システム・キャッシ
ュ・メモリ60、およびキャッシュ制御装置62を接続
するために設けられている。ビデオ制御装置56には、
モニタ(またはビデオ表示端末)57およびビデオ・メ
モリ58が関連付けられている。CPUローカル・バス
42上にはバッファ64も結合されている。バッファ6
4自体は、低速な(CPUローカル・バス42と比較し
て)システム・バス66に接続され、やはりアドレス、
データ、および制御構成要素を備えている。システム・
バス66は、バッファ64と次のバッファ68の間を伸
びている。システム・バス66はさらに、バス制御およ
びタイミング装置70と、DMA装置71に接続されて
いる。DMA装置71は、中央アービタ82およびDM
A制御装置72から構成される。追加バッファ74は、
システム・バスと、業界標準アーキテクチャ(ISA)
バス76などの選択機構バスとの間のインタフェースを
提供する。バス76には、ISAアダプタ・カード(図
示せず)を受け入れる複数の入出力スロット78が接続
されている。ISAアダプタ・カードは、入出力スロッ
ト78に差込み式に接続され、システム10用の追加入
出力装置またはメモリを提供することができる。
【0055】アービトレーション制御バス80は、DM
A制御装置72および中央アービタ82を入出力スロッ
ト78、ディスケット・アダプタ84、およびIDE固
定ディスク制御装置86に結合する。
A制御装置72および中央アービタ82を入出力スロッ
ト78、ディスケット・アダプタ84、およびIDE固
定ディスク制御装置86に結合する。
【0056】コンピュータ・システム10を基本4メガ
バイトRAMモジュール53と共に示しているが、任意
に選択された高密度メモリ・モジュール54を追加する
ことによって、図3に表されたように追加メモリを相互
接続できることに留意されたい。本発明を、例示のため
だけに、基本4メガバイト・メモリ・モジュールを参照
して説明する。
バイトRAMモジュール53と共に示しているが、任意
に選択された高密度メモリ・モジュール54を追加する
ことによって、図3に表されたように追加メモリを相互
接続できることに留意されたい。本発明を、例示のため
だけに、基本4メガバイト・メモリ・モジュールを参照
して説明する。
【0057】ラッチ・バッファ68は、システム・バス
66とプレーナ入出力バス90の間に結合されている。
プレーナ入出力バス90は、アドレス、データ、および
制御構成要素をそれぞれ含む。プレーナ入出力バス90
に沿って、ディスケット・アダプタ84、IDEディス
ク・アダプタ86、割込み制御装置92、RS-232アダプ
タ94、本明細書ではNVRAMとも呼ぶ不揮発性CMOS RAM
96、CMOS実時間クロック98、並列アダプタ100、
複数のタイマ102、読取り専用メモリ(ROM)8
8、8042 104、電源管理回路106などの様々な入
出力アダプタやその他の構成要素が結合されている。1
04で示された8042は、キーボード12およびマウス1
3と相互接続するスレーブ・マイクロプロセッサであ
る。電源管理回路106を、図6に示し、図6および図
7に関連する本文でさらに詳細に説明している。読取り
専用メモリ88は、マイクロプロセッサ40の入出力装
置とオペレーティング・システムの間を相互接続するた
めに使用されるBIOSを含む。ROM 88中に記憶され
たBIOSをRAM 53にコピーして、BIOSの実行時間を
削減することができる。ROM 88はさらに、メモリ
制御装置48に応答する(ROMSEL信号を介して)。メモ
リ制御装置48によってROM 88を使用可能にする
と、ROMからBIOSが実行される。メモリ制御装置48
によってROM88を使用不能にすると、ROMはマイ
クロプロセッサ40からのアドレス照会に応答しなくな
る(すなわち、BIOSはRAMから実行される)。
66とプレーナ入出力バス90の間に結合されている。
プレーナ入出力バス90は、アドレス、データ、および
制御構成要素をそれぞれ含む。プレーナ入出力バス90
に沿って、ディスケット・アダプタ84、IDEディス
ク・アダプタ86、割込み制御装置92、RS-232アダプ
タ94、本明細書ではNVRAMとも呼ぶ不揮発性CMOS RAM
96、CMOS実時間クロック98、並列アダプタ100、
複数のタイマ102、読取り専用メモリ(ROM)8
8、8042 104、電源管理回路106などの様々な入
出力アダプタやその他の構成要素が結合されている。1
04で示された8042は、キーボード12およびマウス1
3と相互接続するスレーブ・マイクロプロセッサであ
る。電源管理回路106を、図6に示し、図6および図
7に関連する本文でさらに詳細に説明している。読取り
専用メモリ88は、マイクロプロセッサ40の入出力装
置とオペレーティング・システムの間を相互接続するた
めに使用されるBIOSを含む。ROM 88中に記憶され
たBIOSをRAM 53にコピーして、BIOSの実行時間を
削減することができる。ROM 88はさらに、メモリ
制御装置48に応答する(ROMSEL信号を介して)。メモ
リ制御装置48によってROM 88を使用可能にする
と、ROMからBIOSが実行される。メモリ制御装置48
によってROM88を使用不能にすると、ROMはマイ
クロプロセッサ40からのアドレス照会に応答しなくな
る(すなわち、BIOSはRAMから実行される)。
【0058】実時間クロック98は、時刻計算に使用さ
れ、NVRAM 96はシステム構成データを記憶するために
使用される。すなわち、NVRAM 96は、システムの現在
の構成を記述している値を含む。たとえば、NVRAM 96
は、固定ディスクまたはデイスケットの容量、表示の種
類、メモリの量、時間、日付などを記述した情報を含
む。特に重要なのは、メモリ制御装置48が、BIOSがR
OMまたはRAMを使い尽くしているか否かと、BIOS R
AMが使用することを所期されたRAMを再利用するか否
かを決定するために使うデータ(1ビットとすることが
できる)をNVRAM96が含むことである。さらに、これ
らのデータは、構成設定(SET Configuration)などの
特殊な構成プログラムを実行すると、NVRAMに記憶され
る。構成設定プログラムの目的は、システムの構成を特
徴付ける値をNVRAMに記憶することである。
れ、NVRAM 96はシステム構成データを記憶するために
使用される。すなわち、NVRAM 96は、システムの現在
の構成を記述している値を含む。たとえば、NVRAM 96
は、固定ディスクまたはデイスケットの容量、表示の種
類、メモリの量、時間、日付などを記述した情報を含
む。特に重要なのは、メモリ制御装置48が、BIOSがR
OMまたはRAMを使い尽くしているか否かと、BIOS R
AMが使用することを所期されたRAMを再利用するか否
かを決定するために使うデータ(1ビットとすることが
できる)をNVRAM96が含むことである。さらに、これ
らのデータは、構成設定(SET Configuration)などの
特殊な構成プログラムを実行すると、NVRAMに記憶され
る。構成設定プログラムの目的は、システムの構成を特
徴付ける値をNVRAMに記憶することである。
【0059】前記のほとんどすべての装置は、揮発性レ
ジスタを備えている。図面が雑然とするのを防ぐため
に、装置には特定の装置のレジスタを参照する。たとえ
ば、CPUレジスタは、CPU 40レジスタとして参
照し、ビデオ制御装置レジスタは、ビデオ制御装置56
レジスタとして参照している。
ジスタを備えている。図面が雑然とするのを防ぐため
に、装置には特定の装置のレジスタを参照する。たとえ
ば、CPUレジスタは、CPU 40レジスタとして参
照し、ビデオ制御装置レジスタは、ビデオ制御装置56
レジスタとして参照している。
【0060】前述のように、コンピュータは、マイクロ
コンピュータの上述の構成要素を収納するための密閉さ
れた遮蔽容積を形成する際にシャシ19と協動する、全
体的に15に示されたカバーを有する。カバー15は、
成形可能な合成材料から成る単体成形構成要素である外
側装飾カバー部材16と、装飾カバー部材の構成に適合
するように形成された金属薄板ライナ18とで形成する
ことが好ましい。しかし、カバーは他の周知の方法で製
造することができ、本発明の効用は、説明した種類の筐
体に限定されない。
コンピュータの上述の構成要素を収納するための密閉さ
れた遮蔽容積を形成する際にシャシ19と協動する、全
体的に15に示されたカバーを有する。カバー15は、
成形可能な合成材料から成る単体成形構成要素である外
側装飾カバー部材16と、装飾カバー部材の構成に適合
するように形成された金属薄板ライナ18とで形成する
ことが好ましい。しかし、カバーは他の周知の方法で製
造することができ、本発明の効用は、説明した種類の筐
体に限定されない。
【0061】動作の状態 図4を参照すると、本発明のコンピュータ・システムの
状態図が示されている。本発明のコンピュータ・システ
ム10は、正常動作状態150、スタンバイ状態15
2、サスペンド状態154、およびオフ状態156とい
う4つの状態を有する。図4に示された状態間の遷移
は、好ましい実施例を説明することを目的とするもので
あるが、限定的なものではない。したがって、追加事象
を使用して、状態変位を発生させることも可能である。
状態図が示されている。本発明のコンピュータ・システ
ム10は、正常動作状態150、スタンバイ状態15
2、サスペンド状態154、およびオフ状態156とい
う4つの状態を有する。図4に示された状態間の遷移
は、好ましい実施例を説明することを目的とするもので
あるが、限定的なものではない。したがって、追加事象
を使用して、状態変位を発生させることも可能である。
【0062】本発明のコンピュータ・システム10の正
常動作状態150は、典型的なデスクトップ・コンピュ
ータの正常動作状態とほとんど同じである。ユーザは適
用業務を使用することができ、基本的に、このコンピュ
ータを任意の他のコンピュータと同様に扱うことができ
る。ユーザに透過的な1つの違いは、バックグラウンド
で動作する、オペレーティング・システム中の電源管理
ドライバ(「APM OSドライバ」)と様々なAPM BIOSルー
チンの存在である。APM BIOSルーチンは、以下で検討さ
れるもので、サスペンド・ルーチン、レジューム・ルー
チン、Boot-Upルーチン、Supervisorルーチン、Save CP
U Stateルーチン、Restore CPU Stateルーチンを含む。
どの図にも示されていない1つのAPM BIOSルーチンは、
APM BIOS Routingルーチンである。APM BIOS Routingル
ーチンは本質的に、APM OSドライバからのコマンドを受
け入れ、適切なAPM BIOSルーチンを呼び出す。たとえ
ば、APM OSドライバがサスペンド・コマンドを発行する
と、APM BIOS Routingルーチンがサスペンド・ルーチン
を呼び出す。他の例として、APM OSドライバがGetEvent
コマンドを発行すると、APM BIOS RoutingルーチンがSu
pervisorルーチンを呼び出す。これらのルーチンは、BI
OS中に配置されており、BIOSがシャドーイングされる際
にシャドーイングされる。OS中の電源管理ドライバ
と、APM BIOSルーチンは、4つの状態間のコンピュータ
の遷移を制御する。用語「APM」の参照自体は一般
に、APM OSドライバの参照である。ただし、文脈によっ
て異なるものを指す場合もある。
常動作状態150は、典型的なデスクトップ・コンピュ
ータの正常動作状態とほとんど同じである。ユーザは適
用業務を使用することができ、基本的に、このコンピュ
ータを任意の他のコンピュータと同様に扱うことができ
る。ユーザに透過的な1つの違いは、バックグラウンド
で動作する、オペレーティング・システム中の電源管理
ドライバ(「APM OSドライバ」)と様々なAPM BIOSルー
チンの存在である。APM BIOSルーチンは、以下で検討さ
れるもので、サスペンド・ルーチン、レジューム・ルー
チン、Boot-Upルーチン、Supervisorルーチン、Save CP
U Stateルーチン、Restore CPU Stateルーチンを含む。
どの図にも示されていない1つのAPM BIOSルーチンは、
APM BIOS Routingルーチンである。APM BIOS Routingル
ーチンは本質的に、APM OSドライバからのコマンドを受
け入れ、適切なAPM BIOSルーチンを呼び出す。たとえ
ば、APM OSドライバがサスペンド・コマンドを発行する
と、APM BIOS Routingルーチンがサスペンド・ルーチン
を呼び出す。他の例として、APM OSドライバがGetEvent
コマンドを発行すると、APM BIOS RoutingルーチンがSu
pervisorルーチンを呼び出す。これらのルーチンは、BI
OS中に配置されており、BIOSがシャドーイングされる際
にシャドーイングされる。OS中の電源管理ドライバ
と、APM BIOSルーチンは、4つの状態間のコンピュータ
の遷移を制御する。用語「APM」の参照自体は一般
に、APM OSドライバの参照である。ただし、文脈によっ
て異なるものを指す場合もある。
【0063】第2の状態であるスタンバイ状態152
は、正常動作状態150よりも少ない電力を使用する
が、適用業務をスタンバイ状態でない場合と同様に実行
し続ける。一般に、スタンバイ状態152では、装置を
それぞれの低出力モードにすることによって電力が節約
される。好ましい実施例では、以下に詳細に説明するよ
うに、固定ディスク記憶装置31内の固定ディスク(図
示せず)の回転を停止し、ビデオ信号の生成を停止する
ことによって、スタンバイ状態152で電力が節約され
る。しかし、これは限定することを意図したものではな
く、CPUクロックを低速化または停止するなど、他の
方法を使用して電力消費量を削減することが可能であ
る。
は、正常動作状態150よりも少ない電力を使用する
が、適用業務をスタンバイ状態でない場合と同様に実行
し続ける。一般に、スタンバイ状態152では、装置を
それぞれの低出力モードにすることによって電力が節約
される。好ましい実施例では、以下に詳細に説明するよ
うに、固定ディスク記憶装置31内の固定ディスク(図
示せず)の回転を停止し、ビデオ信号の生成を停止する
ことによって、スタンバイ状態152で電力が節約され
る。しかし、これは限定することを意図したものではな
く、CPUクロックを低速化または停止するなど、他の
方法を使用して電力消費量を削減することが可能であ
る。
【0064】好ましい実施例では、電力が2つの別々の
方法で節約される。第1に、正常動作状態150では、
固定ディスク記憶装置31内の固定ディスクが常に、通
常毎分3600回転(RPM)で回転する。スタンバイ
状態152では、固定ディスク記憶装置31を低出力モ
ードに入らせ(固定ディスク記憶装置31内の固定ディ
スクが回転を停止する)、それによって、固定ディスク
記憶装置31内のモータ(図示せず)が通常、固定ディ
スクを回転させる間に消費する電力を節約するコマンド
がIDEディスク制御装置86に与えられる。
方法で節約される。第1に、正常動作状態150では、
固定ディスク記憶装置31内の固定ディスクが常に、通
常毎分3600回転(RPM)で回転する。スタンバイ
状態152では、固定ディスク記憶装置31を低出力モ
ードに入らせ(固定ディスク記憶装置31内の固定ディ
スクが回転を停止する)、それによって、固定ディスク
記憶装置31内のモータ(図示せず)が通常、固定ディ
スクを回転させる間に消費する電力を節約するコマンド
がIDEディスク制御装置86に与えられる。
【0065】第2に、正常動作状態150では、コンピ
ュータ・システムのビデオ制御装置56が常に、ビデオ
表示端末57上で表示されるイメージに対応するビデオ
信号(当技術分野で周知のHSYNC、VSYNC、R、G、Bな
ど)を生成する。スタンバイ状態152では、ビデオ制
御装置56はビデオ信号の制御を停止することによっ
て、ビデオ制御装置56で通常消費される電力を節約す
る。HSYNC、VSYNC、R、G、およびBはすべて、約DC0.
00Vになされる。VESA(ビデオ・エレクトロニクス標準
協会)準拠モニタを使用すると、HSYNCおよびVSYNCが約
DC0.00Vになったときに、該モニタがそれ自体をオフに
するため、さらに電力が節約される。
ュータ・システムのビデオ制御装置56が常に、ビデオ
表示端末57上で表示されるイメージに対応するビデオ
信号(当技術分野で周知のHSYNC、VSYNC、R、G、Bな
ど)を生成する。スタンバイ状態152では、ビデオ制
御装置56はビデオ信号の制御を停止することによっ
て、ビデオ制御装置56で通常消費される電力を節約す
る。HSYNC、VSYNC、R、G、およびBはすべて、約DC0.
00Vになされる。VESA(ビデオ・エレクトロニクス標準
協会)準拠モニタを使用すると、HSYNCおよびVSYNCが約
DC0.00Vになったときに、該モニタがそれ自体をオフに
するため、さらに電力が節約される。
【0066】一部のシステムには、「スクリーン・セー
バ」があることに留意されたい。スクリーン・セーバ
は、画面57を暗くして、ビデオ表示端末の前面の蛍光
体の焼付きを防止する。大部分のそのようなシステムで
は、ビデオ制御装置56が引き続きビデオ信号を生成す
る。すなわち、ビデオ制御装置は暗い画面または動的デ
ィスプレイに対応するビデオ信号だけを生成する。した
がって、スクリーン・セーバを実行するコンピュータ・
システムは引き続き、ビデオ信号を生成するのに必要な
電力を消費する。
バ」があることに留意されたい。スクリーン・セーバ
は、画面57を暗くして、ビデオ表示端末の前面の蛍光
体の焼付きを防止する。大部分のそのようなシステムで
は、ビデオ制御装置56が引き続きビデオ信号を生成す
る。すなわち、ビデオ制御装置は暗い画面または動的デ
ィスプレイに対応するビデオ信号だけを生成する。した
がって、スクリーン・セーバを実行するコンピュータ・
システムは引き続き、ビデオ信号を生成するのに必要な
電力を消費する。
【0067】第3の状態はサスペンド状態154であ
る。サスペンド状態154では、コンピュータ・システ
ムが消費する電力は極めて少量である。サスペンドされ
たコンピュータは、好ましい実施例では、壁コンセント
から5W未満の電力を消費する。以下の、図5に関する
記載で詳細に説明するように、消費される唯一の電力
は、電源17のAUX5出力またはコンピュータ・システム
内部の電池171から、スイッチ21を監視するために
使用されるわずかな電力である。
る。サスペンド状態154では、コンピュータ・システ
ムが消費する電力は極めて少量である。サスペンドされ
たコンピュータは、好ましい実施例では、壁コンセント
から5W未満の電力を消費する。以下の、図5に関する
記載で詳細に説明するように、消費される唯一の電力
は、電源17のAUX5出力またはコンピュータ・システム
内部の電池171から、スイッチ21を監視するために
使用されるわずかな電力である。
【0068】このような少量の電力使用は、電源を「オ
フ」にする前にコンピュータ・システムの状態を固定デ
ィスク記憶装置(ハード・ディスク)31に保存するこ
とによって行われる。CPU 40は、サスペンド状態
154に入るために、適用業務に割り込み、CPUのプ
ログラム実行制御を電力管理ドライバに転送する。電力
管理ドライバは、コンピュータ・システム10の状態を
確認し、コンピュータ・システム10の状態全体を固定
ディスク記憶装置31に書き込む。CPU 40レジス
タ、CPUキャッシュ41、システムRAM 53、シ
ステム・キャッシュ60、ビデオ制御装置56レジス
タ、ビデオ・メモリ56、および残りの揮発性レジスタ
の状態はすべて、固定ディスク・ドライブ31に書き込
まれる。コンピュータ・システム10の状態全体は、使
用可能度をさほど失わずに復元できるように保存され
る。すなわち、ユーザは、システムが、通常どおりオペ
レーティング・システムをロードし、グラフィカル・ユ
ーザ・インタフェースをロードするのを待つ必要がな
い。
フ」にする前にコンピュータ・システムの状態を固定デ
ィスク記憶装置(ハード・ディスク)31に保存するこ
とによって行われる。CPU 40は、サスペンド状態
154に入るために、適用業務に割り込み、CPUのプ
ログラム実行制御を電力管理ドライバに転送する。電力
管理ドライバは、コンピュータ・システム10の状態を
確認し、コンピュータ・システム10の状態全体を固定
ディスク記憶装置31に書き込む。CPU 40レジス
タ、CPUキャッシュ41、システムRAM 53、シ
ステム・キャッシュ60、ビデオ制御装置56レジス
タ、ビデオ・メモリ56、および残りの揮発性レジスタ
の状態はすべて、固定ディスク・ドライブ31に書き込
まれる。コンピュータ・システム10の状態全体は、使
用可能度をさほど失わずに復元できるように保存され
る。すなわち、ユーザは、システムが、通常どおりオペ
レーティング・システムをロードし、グラフィカル・ユ
ーザ・インタフェースをロードするのを待つ必要がな
い。
【0069】コンピュータは次に、システムがサスペン
ドされたことを示すデータを不揮発性CMOSメモリ96に
書き込む。最後に、CPU 40は電源17に、調整さ
れた電力の生成を停止させる。コンピュータ・システム
10は現在、電源を遮断されており、コンピュータの状
態全体は、固定ディスク記憶装置31に安全に保存され
ている。
ドされたことを示すデータを不揮発性CMOSメモリ96に
書き込む。最後に、CPU 40は電源17に、調整さ
れた電力の生成を停止させる。コンピュータ・システム
10は現在、電源を遮断されており、コンピュータの状
態全体は、固定ディスク記憶装置31に安全に保存され
ている。
【0070】「状態(state)」という用語は、本明細
書の全体にわたり、2つの似ているが、混乱を招く可能
性がある態様で使用されている。装置は、特定の状態に
「入る」ことができる。4つのシステム状態、正常15
0、スタンバイ152、サスペンド154、およびオフ
156は、本発明のコンピュータ・システム10の一般
的状態を指す。これらの「状態」は、コンピュータ・シ
ステム10を一般的な方法で記述する。たとえば、正常
動作状態150時に、CPU 40は引き続きコードを
実行し、コンピュータ・システム10内の複数のレジス
タを変更する。同様に、スタンバイ状態152時にも類
似の活動が行われる。したがって、コンピュータ・シス
テム10が正常動作状態150およびスタンバイ状態1
52のとき、コンピュータ・システム10のメモリおよ
びレジスタ構成は動的である。
書の全体にわたり、2つの似ているが、混乱を招く可能
性がある態様で使用されている。装置は、特定の状態に
「入る」ことができる。4つのシステム状態、正常15
0、スタンバイ152、サスペンド154、およびオフ
156は、本発明のコンピュータ・システム10の一般
的状態を指す。これらの「状態」は、コンピュータ・シ
ステム10を一般的な方法で記述する。たとえば、正常
動作状態150時に、CPU 40は引き続きコードを
実行し、コンピュータ・システム10内の複数のレジス
タを変更する。同様に、スタンバイ状態152時にも類
似の活動が行われる。したがって、コンピュータ・シス
テム10が正常動作状態150およびスタンバイ状態1
52のとき、コンピュータ・システム10のメモリおよ
びレジスタ構成は動的である。
【0071】他の装置も一定の状態に「入る」ことがで
きる。図7に関連する記載で説明するように、プログラ
ム可能論理アレイU2は複数の状態に入ることができ
る。
きる。図7に関連する記載で説明するように、プログラ
ム可能論理アレイU2は複数の状態に入ることができ
る。
【0072】前記内容と、装置の「状態」、たとえば
「コンピュータ・システム10の状態」や「CPU 4
0の状態」と比較されたい。装置の「状態」とは、特定
のコンピュータ・サイクルでのその装置の状態を指す。
すべてのメモリ位置およびレジスタは特定の2進値を有
する。装置の「状態」とは、その装置の内容の静的2進
スナップショットである。
「コンピュータ・システム10の状態」や「CPU 4
0の状態」と比較されたい。装置の「状態」とは、特定
のコンピュータ・サイクルでのその装置の状態を指す。
すべてのメモリ位置およびレジスタは特定の2進値を有
する。装置の「状態」とは、その装置の内容の静的2進
スナップショットである。
【0073】コンピュータ・システム10の「状態」と
は、動作相当物を指すもので、必ずしも正確な表現では
ない。たとえば、状態Aのコンピュータ・システム10
はCPUキャッシュ41またはシステム・キャッシュ6
0のいずれかに一定のメモリをもつことができる。どち
らかのキャッシュの内容をシステムRAM 53に「フ
ラッシュ」バックし、コンピュータ・システム10を状
態Bにすることが可能である。純粋に言えば、キャッシ
ュとシステムRAMの内容は異なるので、状態Aのコン
ピュータ・システム10の状態は、状態Bのコンピュー
タ・システム10の状態とは異なる。しかし、ソフトウ
ェア動作の観点から見ると、状態Aと状態Bは同じであ
る。なぜなら、システム速度のわずかな低下(キャッシ
ュから実行しても便益を受けないプログラムによって発
生する)は別として、実行プログラムは影響を受けない
からである。すなわち、キャッシュをフラッシュされた
コンピュータでは、キャッシュ領域に有用なコードが再
ロードされるまで、性能がわずかに下がるが、状態Aの
コンピュータと状態Bのコンピュータはソフトウェア動
作面では等価である。
は、動作相当物を指すもので、必ずしも正確な表現では
ない。たとえば、状態Aのコンピュータ・システム10
はCPUキャッシュ41またはシステム・キャッシュ6
0のいずれかに一定のメモリをもつことができる。どち
らかのキャッシュの内容をシステムRAM 53に「フ
ラッシュ」バックし、コンピュータ・システム10を状
態Bにすることが可能である。純粋に言えば、キャッシ
ュとシステムRAMの内容は異なるので、状態Aのコン
ピュータ・システム10の状態は、状態Bのコンピュー
タ・システム10の状態とは異なる。しかし、ソフトウ
ェア動作の観点から見ると、状態Aと状態Bは同じであ
る。なぜなら、システム速度のわずかな低下(キャッシ
ュから実行しても便益を受けないプログラムによって発
生する)は別として、実行プログラムは影響を受けない
からである。すなわち、キャッシュをフラッシュされた
コンピュータでは、キャッシュ領域に有用なコードが再
ロードされるまで、性能がわずかに下がるが、状態Aの
コンピュータと状態Bのコンピュータはソフトウェア動
作面では等価である。
【0074】用語"パワー"(power)も、2つの似てい
るが、混乱を招く可能性がある態様で使用される。"パ
ワー"は大部分の場合、電力を指す。しかし、"パワー"
は、コンピューティング能力を指すこともある。文脈に
よって、所期された使用法を明確にする必要がある。
るが、混乱を招く可能性がある態様で使用される。"パ
ワー"は大部分の場合、電力を指す。しかし、"パワー"
は、コンピューティング能力を指すこともある。文脈に
よって、所期された使用法を明確にする必要がある。
【0075】「回路」は一般に、物理的電子装置、また
は電気的に相互接続された複数の装置を指す。しかし、
「回路」という用語は、物理的電子装置のCPUコード
相当物を含めることも意図している。たとえば、一方で
は、2入力NANDゲートを、プログラム可能装置で、74LS
00を介し、あるいはそれに相当する方法で実施すること
ができる。これらの2つの装置は物理的電子装置であ
る。他方では、CPU40に、2つのCPU読取り可能
入力ポートから2つの入力を読み取らせ、CPUコマン
ドを使用してNAND結果を生成させ、CPU書込み可能出
力ポートを介して結果を出力させることによってNANDゲ
ートを実現することもできる。これらのCPUインタフ
ェース可能ポートは、復号ラッチや該ラッチのプログラ
ム可能相当物のように単純にするか、あるいは当技術分
野で周知のPLAのように複雑にすることが可能であ
る。「回路」は、NANDゲート実施態様の3つの例をすべ
て含めることを意図している。場合によっては、「回
路」が単に電気経路を指すこともある。電気経路の種類
は、プリント回路板上のワイヤ、トレース、またはビア
や、単一の電気的に接続された経路を形成する数種の電
気経路の組合せを含む。
は電気的に相互接続された複数の装置を指す。しかし、
「回路」という用語は、物理的電子装置のCPUコード
相当物を含めることも意図している。たとえば、一方で
は、2入力NANDゲートを、プログラム可能装置で、74LS
00を介し、あるいはそれに相当する方法で実施すること
ができる。これらの2つの装置は物理的電子装置であ
る。他方では、CPU40に、2つのCPU読取り可能
入力ポートから2つの入力を読み取らせ、CPUコマン
ドを使用してNAND結果を生成させ、CPU書込み可能出
力ポートを介して結果を出力させることによってNANDゲ
ートを実現することもできる。これらのCPUインタフ
ェース可能ポートは、復号ラッチや該ラッチのプログラ
ム可能相当物のように単純にするか、あるいは当技術分
野で周知のPLAのように複雑にすることが可能であ
る。「回路」は、NANDゲート実施態様の3つの例をすべ
て含めることを意図している。場合によっては、「回
路」が単に電気経路を指すこともある。電気経路の種類
は、プリント回路板上のワイヤ、トレース、またはビア
や、単一の電気的に接続された経路を形成する数種の電
気経路の組合せを含む。
【0076】「信号」は、単一の電気波形または複数の
波形を指す場合がある。たとえば、ビデオ制御装置は、
ビデオ信号を生成する。ビデオ信号は実際には、複数の
電気導体上の複数の信号であり、当技術分野で周知のHS
YNC、VSYNC、R、G、Bなどがある。
波形を指す場合がある。たとえば、ビデオ制御装置は、
ビデオ信号を生成する。ビデオ信号は実際には、複数の
電気導体上の複数の信号であり、当技術分野で周知のHS
YNC、VSYNC、R、G、Bなどがある。
【0077】ここで、図4に戻る。第4の、そして最後
の状態はオフ状態156である。オフ状態156は、通
常の意味でオフにされた典型的なコンピュータ・システ
ムとほとんど同じである。この状態では、電源17の一
次/調整装置172が、コンピュータ・システム10へ
の調整された電力の提供を停止するが(AUX5を通過する
わずかな調整された電力を除く。これについては、図5
に関連した記載で詳細に説明する)、コンピュータ・シ
ステム10の状態は固定ディスク31に保存されていな
い。サスペンド状態154とオフ状態156は、電源1
7がもはや、調整された電力を生成しないという点で似
ている。この2つの状態は、オフ状態156では、サス
ペンド状態154と異なり、コンピュータ・システム1
0の状態がハード・ドライブ31に保存されないという
点で異なる。さらに、コンピュータ・システム10は、
オフ状態156から抜け出す際に、オンにされる場合と
同様に「ブート」する。すなわち、ユーザが、あるいは
AUTOEXEC.BATファイルによって自動的に、実行コードを
開始しなければならない。しかし、コンピュータ・シス
テム10は、サスペンド状態154から抜け出す際に
は、割り込まれたときの位置から実行をレジュームす
る。
の状態はオフ状態156である。オフ状態156は、通
常の意味でオフにされた典型的なコンピュータ・システ
ムとほとんど同じである。この状態では、電源17の一
次/調整装置172が、コンピュータ・システム10へ
の調整された電力の提供を停止するが(AUX5を通過する
わずかな調整された電力を除く。これについては、図5
に関連した記載で詳細に説明する)、コンピュータ・シ
ステム10の状態は固定ディスク31に保存されていな
い。サスペンド状態154とオフ状態156は、電源1
7がもはや、調整された電力を生成しないという点で似
ている。この2つの状態は、オフ状態156では、サス
ペンド状態154と異なり、コンピュータ・システム1
0の状態がハード・ドライブ31に保存されないという
点で異なる。さらに、コンピュータ・システム10は、
オフ状態156から抜け出す際に、オンにされる場合と
同様に「ブート」する。すなわち、ユーザが、あるいは
AUTOEXEC.BATファイルによって自動的に、実行コードを
開始しなければならない。しかし、コンピュータ・シス
テム10は、サスペンド状態154から抜け出す際に
は、割り込まれたときの位置から実行をレジュームす
る。
【0078】図4は、4つの状態間の遷移を発生させる
事象の概要も示している。これらの事象については、図
6乃至図8に関連した記載でさらに説明する。しかし、
ここでおおざっぱに説明しておくと有用である。電源ボ
タン21、2つのタイマ(非活動スタンバイ・タイマお
よび非活動サスペンド・タイマ、図9とそれに関連した
記載を参照されたい)、およびサスペンド入フラグ(図
6および図7と、それに関連した記載を参照されたい)
はすべて、コンピュータがどの状態に入るかに影響を及
ぼす。一般に、2つのタイマは、ハードウェア・タイ
マ、またはCPU上でプログラムとして実行するCPU
コード・タイマとすることができる。好ましい実施例で
は、これらのタイマは共にCPUコード・タイマであ
り、BIOSデータ・セグメントから実行する。しかし、2
つのタイマをハードウェア・タイマとすることがおそら
く可能であり、システムのオーバヘッドが削減されると
いう点ではこの方がよりよい解決策である。これらのタ
イマについては、図9に関連した記載で詳細に説明す
る。両方のタイマは共に、コンピュータ・システム10
が正常動作状態150またはスタンバイ状態152のと
きに活動的になる。これらのタイマは、どちらかのタイ
マが満了することによって後述の遷移が発生するよう
に、他のルーチンと通信する。どちらかまたは両方のタ
イマを、ユーザの特定のニーズに応じて、一定期間の後
に満了するように構成することが可能である。好ましい
実施例では、非活動スタンバイ・タイマおよび非活動サ
スペンド・タイマを、15乃至90分後に満了するよう
に設定することができる。どちらかまたは両方のタイマ
を停止する、すなわち、絶対に満了しないように構成す
ることが可能である。タイマを「停止すること」は、タ
イマの増分カウント動作を実際に停止し、あるいは単に
タイマの満了を無視するという形式を取る。好ましい実
施例では、タイマ満了値にゼロ値を設定すると、タイマ
満了はテストされなくなる。ネットワーク化コンピュー
タのユーザは、たとえば、LANをコンピュータに対し
て故障させる可能性があるために、コンピュータをサス
ペンド状態154に入らせたくない場合がある。
事象の概要も示している。これらの事象については、図
6乃至図8に関連した記載でさらに説明する。しかし、
ここでおおざっぱに説明しておくと有用である。電源ボ
タン21、2つのタイマ(非活動スタンバイ・タイマお
よび非活動サスペンド・タイマ、図9とそれに関連した
記載を参照されたい)、およびサスペンド入フラグ(図
6および図7と、それに関連した記載を参照されたい)
はすべて、コンピュータがどの状態に入るかに影響を及
ぼす。一般に、2つのタイマは、ハードウェア・タイ
マ、またはCPU上でプログラムとして実行するCPU
コード・タイマとすることができる。好ましい実施例で
は、これらのタイマは共にCPUコード・タイマであ
り、BIOSデータ・セグメントから実行する。しかし、2
つのタイマをハードウェア・タイマとすることがおそら
く可能であり、システムのオーバヘッドが削減されると
いう点ではこの方がよりよい解決策である。これらのタ
イマについては、図9に関連した記載で詳細に説明す
る。両方のタイマは共に、コンピュータ・システム10
が正常動作状態150またはスタンバイ状態152のと
きに活動的になる。これらのタイマは、どちらかのタイ
マが満了することによって後述の遷移が発生するよう
に、他のルーチンと通信する。どちらかまたは両方のタ
イマを、ユーザの特定のニーズに応じて、一定期間の後
に満了するように構成することが可能である。好ましい
実施例では、非活動スタンバイ・タイマおよび非活動サ
スペンド・タイマを、15乃至90分後に満了するよう
に設定することができる。どちらかまたは両方のタイマ
を停止する、すなわち、絶対に満了しないように構成す
ることが可能である。タイマを「停止すること」は、タ
イマの増分カウント動作を実際に停止し、あるいは単に
タイマの満了を無視するという形式を取る。好ましい実
施例では、タイマ満了値にゼロ値を設定すると、タイマ
満了はテストされなくなる。ネットワーク化コンピュー
タのユーザは、たとえば、LANをコンピュータに対し
て故障させる可能性があるために、コンピュータをサス
ペンド状態154に入らせたくない場合がある。
【0079】理論上、タイマはカウント・アップまたは
カウント・ダウンすることができ、始動(または再始
動)時に、固定された所定の状態にリセットし、他の固
定された所定の状態までカウントさせることができる。
あるいは現在値を使用し、差または和をエンドポイント
満了トリガとして算出することが可能である。好ましい
実施例では、タイマをリセットすると、実時間クロック
98からの分変数の現在値が記憶される。タイマは、保
存された分値から現行の分値を減算し、その差を、ユー
ザが選択した値と比較することによって、満了したか否
かを検査される。
カウント・ダウンすることができ、始動(または再始
動)時に、固定された所定の状態にリセットし、他の固
定された所定の状態までカウントさせることができる。
あるいは現在値を使用し、差または和をエンドポイント
満了トリガとして算出することが可能である。好ましい
実施例では、タイマをリセットすると、実時間クロック
98からの分変数の現在値が記憶される。タイマは、保
存された分値から現行の分値を減算し、その差を、ユー
ザが選択した値と比較することによって、満了したか否
かを検査される。
【0080】両方のタイマは共に、一定のシステム活動
によって影響を受ける。たとえば、好ましい実施例で
は、図9に関連した記載で詳細に説明するように、キー
ボード12のキーを押すこと、マウス13を移動するこ
と、マウス13ボタンを押すこと、またはハード・ドラ
イブ31の活動という形式のユーザ活動によって、各タ
イマが再始動される。したがって、ユーザがキーボード
12のキーを押し、あるいはマウス13を使用している
ときは、どちらのタイマも満了しない。他のシステム事
象を使用して、タイマをリセットすることもできる。ど
のハードウェア割込みも、活動を監視することが可能で
ある。したがって、プリントによって、システムがサス
ペンド状態154に入るのを防止することが好ましい場
合がある。
によって影響を受ける。たとえば、好ましい実施例で
は、図9に関連した記載で詳細に説明するように、キー
ボード12のキーを押すこと、マウス13を移動するこ
と、マウス13ボタンを押すこと、またはハード・ドラ
イブ31の活動という形式のユーザ活動によって、各タ
イマが再始動される。したがって、ユーザがキーボード
12のキーを押し、あるいはマウス13を使用している
ときは、どちらのタイマも満了しない。他のシステム事
象を使用して、タイマをリセットすることもできる。ど
のハードウェア割込みも、活動を監視することが可能で
ある。したがって、プリントによって、システムがサス
ペンド状態154に入るのを防止することが好ましい場
合がある。
【0081】サスペンド入フラグは、プログラム可能論
理アレイU2内のCPU処理可能および読取り可能ラッ
チであり、該フラグについては図7に関連する記載で詳
細に説明する。手短に言うと、プログラム可能論理アレ
イをあるモードにすると、スイッチ21が押され、コン
ピュータ・システム10がオフ状態156に入り、プロ
グラム可能論理アレイU2を他のモードにすると、スイ
ッチ21が押され、コンピュータ・システム10がサス
ペンド状態154に入る。158に示すように、コンピ
ュータ・システム10が正常動作状態150であり、プ
ログラム可能論理アレイU2に書き込まれるサスペンド
入フラグが002のときに電源ボタン21が押される
と、コンピュータ・システム10はオフ状態156に入
る。コンピュータ・システム10がオフ状態156であ
り、電源ボタン21が押されると、コンピュータ・シス
テム10は正常動作状態に入る。
理アレイU2内のCPU処理可能および読取り可能ラッ
チであり、該フラグについては図7に関連する記載で詳
細に説明する。手短に言うと、プログラム可能論理アレ
イをあるモードにすると、スイッチ21が押され、コン
ピュータ・システム10がオフ状態156に入り、プロ
グラム可能論理アレイU2を他のモードにすると、スイ
ッチ21が押され、コンピュータ・システム10がサス
ペンド状態154に入る。158に示すように、コンピ
ュータ・システム10が正常動作状態150であり、プ
ログラム可能論理アレイU2に書き込まれるサスペンド
入フラグが002のときに電源ボタン21が押される
と、コンピュータ・システム10はオフ状態156に入
る。コンピュータ・システム10がオフ状態156であ
り、電源ボタン21が押されると、コンピュータ・シス
テム10は正常動作状態に入る。
【0082】コンピュータ・システム10が正常動作状
態150である場合、1つの事象によって、コンピュー
タをスタンバイ状態152に入らせることができる。1
62に示すように、非活動スタンバイ・タイマが満了す
ると、コンピュータ・システム10は、スタンバイ状態
152に変化する。164に示すように、スタンバイ状
態152のときには、前述の種類のシステム活動によっ
て、コンピュータ・システム10がスタンバイ状態15
2を抜け出し、再び正常動作状態150に入る。
態150である場合、1つの事象によって、コンピュー
タをスタンバイ状態152に入らせることができる。1
62に示すように、非活動スタンバイ・タイマが満了す
ると、コンピュータ・システム10は、スタンバイ状態
152に変化する。164に示すように、スタンバイ状
態152のときには、前述の種類のシステム活動によっ
て、コンピュータ・システム10がスタンバイ状態15
2を抜け出し、再び正常動作状態150に入る。
【0083】コンピュータ・システム10が正常動作状
態150である場合、2つの事象によって、コンピュー
タ・システム10をサスペンド状態154に入らせるこ
とができる。第1に、166に示すように、非活動サス
ペンド・タイマが満了すると、コンピュータ・システム
10がサスペンド状態154に変わる。第2に、やはり
166に示すように、ユーザは、プログラム可能論理ア
レイU2に書き込まれるサスペンド入フラグが012で
ある時に電源ボタン21を押すことによってコンピュー
タ・システム10をただちにサスペンド状態154に入
らせることができる。168に示すように、サスペンド
状態154のときには、ユーザが電源ボタン21を押す
ことによって正常動作状態150に変更することができ
る。
態150である場合、2つの事象によって、コンピュー
タ・システム10をサスペンド状態154に入らせるこ
とができる。第1に、166に示すように、非活動サス
ペンド・タイマが満了すると、コンピュータ・システム
10がサスペンド状態154に変わる。第2に、やはり
166に示すように、ユーザは、プログラム可能論理ア
レイU2に書き込まれるサスペンド入フラグが012で
ある時に電源ボタン21を押すことによってコンピュー
タ・システム10をただちにサスペンド状態154に入
らせることができる。168に示すように、サスペンド
状態154のときには、ユーザが電源ボタン21を押す
ことによって正常動作状態150に変更することができ
る。
【0084】168に示すように、複数の外部事象を使
用して、コンピュータ・システム10をサスペンド状態
154から正常動作状態150に変更することも可能で
ある。たとえば、電話リング検出回路を図6の回路に追
加して、接続された電話回線が活動したときにコンピュ
ータ・システム10がサスペンド状態154を抜け出し
て正常動作状態150に入るように構成することができ
る。そのような修正は、テレファックス・データやディ
ジタル・データを受け取るシステムに有用な場合があ
る。システムは、着信情報を受信する際に電力を消費す
るだけである。同様に、実時間クロックと図6の間のイ
ンタフェースでは、警告タイプの事象によって、コンピ
ュータ・システム10がサスペンド状態154から抜け
出し、正常動作状態150に入るようにすることが可能
である。そのようなシステムは、低電話使用率を利用す
るために一定の時刻にテレファックスまたはディジタル
・データを送信する際に有用な場合がある。
用して、コンピュータ・システム10をサスペンド状態
154から正常動作状態150に変更することも可能で
ある。たとえば、電話リング検出回路を図6の回路に追
加して、接続された電話回線が活動したときにコンピュ
ータ・システム10がサスペンド状態154を抜け出し
て正常動作状態150に入るように構成することができ
る。そのような修正は、テレファックス・データやディ
ジタル・データを受け取るシステムに有用な場合があ
る。システムは、着信情報を受信する際に電力を消費す
るだけである。同様に、実時間クロックと図6の間のイ
ンタフェースでは、警告タイプの事象によって、コンピ
ュータ・システム10がサスペンド状態154から抜け
出し、正常動作状態150に入るようにすることが可能
である。そのようなシステムは、低電話使用率を利用す
るために一定の時刻にテレファックスまたはディジタル
・データを送信する際に有用な場合がある。
【0085】最後に、170に示すように、コンピュー
タ・システム10がスタンバイ状態152であり、非活
動サスペンド・タイマが満了すると、コンピュータ・シ
ステム10はサスペンド状態154に変わる。コンピュ
ータ・システム10は、サスペンド状態154からスタ
ンバイ状態152に戻ることはできず、遷移168に関
連した記載で説明するように、正常動作状態150に遷
移することしかできない。
タ・システム10がスタンバイ状態152であり、非活
動サスペンド・タイマが満了すると、コンピュータ・シ
ステム10はサスペンド状態154に変わる。コンピュ
ータ・システム10は、サスペンド状態154からスタ
ンバイ状態152に戻ることはできず、遷移168に関
連した記載で説明するように、正常動作状態150に遷
移することしかできない。
【0086】コンピュータ・システム10が瞬間的に状
態を変更することはできないことは明らかである。4つ
の状態のうち1つから遷移を行うたびに、必要なシステ
ム変更を加えるために一定の時間が必要になる。各遷移
時間の詳細については、図6乃至図34に関連した記載
で説明する。
態を変更することはできないことは明らかである。4つ
の状態のうち1つから遷移を行うたびに、必要なシステ
ム変更を加えるために一定の時間が必要になる。各遷移
時間の詳細については、図6乃至図34に関連した記載
で説明する。
【0087】システム・ハードウェア CPU 40上で実行するコードの詳細について説明す
る前に、まず4つの状態を達成するのに必要なハードウ
ェアについて説明しておくと助けとなる。電源17のブ
ロックが図5に示されている。電源17は、制御装置1
74および一次/調整装置172という2つの装置を有
する。電源17は、典型的な壁コンセントからAC115Vを
受け入れるLine-In、電源17の調整活動を制御するON
という複数の入力を有している。電源17は、AC Line-
Out、±5 VDC、±12 VDC、AUX5、GND、およびPOWERGOOD
という複数の出力を有している。AC Line-Outは、無調
整のAC115Vであり、通常、ビデオ表示端末57の電力入
力(図示せず)に渡される。制御装置174は、ON入
力を受け入れ、POWERGOOD出力を生成する。一次/調整
装置172は、Line-In入力からのAC115Vを±DC5V、±D
C12Vに調整する。一次/調整装置172が電力を調整す
るか否かは、制御装置174によってインタフェースさ
れるONの値に依存する。好ましい実施例では、制御装
置174は、ON信号を生成する回路の絶縁、たとえば
適切な光学式アイソレータを備えている必要がある。
る前に、まず4つの状態を達成するのに必要なハードウ
ェアについて説明しておくと助けとなる。電源17のブ
ロックが図5に示されている。電源17は、制御装置1
74および一次/調整装置172という2つの装置を有
する。電源17は、典型的な壁コンセントからAC115Vを
受け入れるLine-In、電源17の調整活動を制御するON
という複数の入力を有している。電源17は、AC Line-
Out、±5 VDC、±12 VDC、AUX5、GND、およびPOWERGOOD
という複数の出力を有している。AC Line-Outは、無調
整のAC115Vであり、通常、ビデオ表示端末57の電力入
力(図示せず)に渡される。制御装置174は、ON入
力を受け入れ、POWERGOOD出力を生成する。一次/調整
装置172は、Line-In入力からのAC115Vを±DC5V、±D
C12Vに調整する。一次/調整装置172が電力を調整す
るか否かは、制御装置174によってインタフェースさ
れるONの値に依存する。好ましい実施例では、制御装
置174は、ON信号を生成する回路の絶縁、たとえば
適切な光学式アイソレータを備えている必要がある。
【0088】Line-In入力と、AC Line-Out、±5 VDC、
±12 VDC、GND、およびPOWERGOOD出力は、当技術分野で
は周知である。電源17が「オフ」、すなわち、Lin-In
からの調整された電圧を提供しないとき、POWERGOOD信
号は論理"0"である。電源17が「オン」のとき、電源
17は、AC115VのLine-Inからの、±DC5Vおよび±DC12V
に調整された電圧を生成する。これらの4つの調整され
た電圧とそれらに関連するGNDは、当技術分野で一般
に知られた「システム電源」である。調整された電圧が
許容公差内のレベルを達成すると、POWERGOOD信号が論
理"1"に変わる。
±12 VDC、GND、およびPOWERGOOD出力は、当技術分野で
は周知である。電源17が「オフ」、すなわち、Lin-In
からの調整された電圧を提供しないとき、POWERGOOD信
号は論理"0"である。電源17が「オン」のとき、電源
17は、AC115VのLine-Inからの、±DC5Vおよび±DC12V
に調整された電圧を生成する。これらの4つの調整され
た電圧とそれらに関連するGNDは、当技術分野で一般
に知られた「システム電源」である。調整された電圧が
許容公差内のレベルを達成すると、POWERGOOD信号が論
理"1"に変わる。
【0089】AUX5出力は、プレーナに補助+DC5Vを与え
る。電源17を、公称DC115Vを供給する典型的な壁コン
セントに差し込むと、電源が「オン」であるか、「オ
フ」であるかとは無関係に、一次/調整装置172はAU
X5で、調整された+DC5Vを提供する。したがって、電源
17は、壁コンセントに差し込まれているときは常に、
AUX5で公称+DC5Vを提供している。AUX5出力は、一次/
調整装置172が、+5出力を介して、電源17が「オ
ン」のときだけ、調整された+DC5Vを生成するという点
で、+5出力と異なる。AUX5出力はさらに、好ましい実
施例では、一次/調整装置172が+DC5Vで、+5出力
を介して数アンペアの電流を供給するが、AUX5出力を介
して1アンペア未満を供給するという点で、+5出力と
異なる。
る。電源17を、公称DC115Vを供給する典型的な壁コン
セントに差し込むと、電源が「オン」であるか、「オ
フ」であるかとは無関係に、一次/調整装置172はAU
X5で、調整された+DC5Vを提供する。したがって、電源
17は、壁コンセントに差し込まれているときは常に、
AUX5で公称+DC5Vを提供している。AUX5出力は、一次/
調整装置172が、+5出力を介して、電源17が「オ
ン」のときだけ、調整された+DC5Vを生成するという点
で、+5出力と異なる。AUX5出力はさらに、好ましい実
施例では、一次/調整装置172が+DC5Vで、+5出力
を介して数アンペアの電流を供給するが、AUX5出力を介
して1アンペア未満を供給するという点で、+5出力と
異なる。
【0090】典型的な従来の電源は、高アンペア2段階
スイッチを使用して、Line-In入力と電源の調整セクシ
ョンとの間の接続および切断を行う。本発明の電源17
は、高アンペア2段階スイッチを使用しない。その代わ
りに、スイッチ21はON信号を生成する回路を制御す
る。好ましい実施例では、スイッチ21は瞬間単極1段
階しボタンスイッチである。しかし、当業者は、単極2
段階スイッチなどの他の種類のスイッチを使用するよう
に図6の回路を適応することができる。AC Line-Inは常
に、壁コンセントから一次/調整装置172まで接続さ
れる。ONが論理"1"のとき(約AUX5、公称+DC5V)、一
次/調整装置172は、±5出力を介した場合も、±1
2出力を介した場合も、115 VAC Line-Inを±DC5Vまた
は±DC12Vに調整しない。一次/調整装置172は単
に、AUX5出力で低アンペア数公称+DC5Vを提供する。一
方、ONが論理"0"のときは(約GND)、一次/調整
装置172は、115 VAC Line-Inを4つの±5および±
12出力を介してそれぞれ±DC5Vおよび±DC12Vに調整
する。したがって、ONが"1"のとき、電源17は「オ
フ」であり、ONが"0"のとき、電源17は「オン」で
ある。
スイッチを使用して、Line-In入力と電源の調整セクシ
ョンとの間の接続および切断を行う。本発明の電源17
は、高アンペア2段階スイッチを使用しない。その代わ
りに、スイッチ21はON信号を生成する回路を制御す
る。好ましい実施例では、スイッチ21は瞬間単極1段
階しボタンスイッチである。しかし、当業者は、単極2
段階スイッチなどの他の種類のスイッチを使用するよう
に図6の回路を適応することができる。AC Line-Inは常
に、壁コンセントから一次/調整装置172まで接続さ
れる。ONが論理"1"のとき(約AUX5、公称+DC5V)、一
次/調整装置172は、±5出力を介した場合も、±1
2出力を介した場合も、115 VAC Line-Inを±DC5Vまた
は±DC12Vに調整しない。一次/調整装置172は単
に、AUX5出力で低アンペア数公称+DC5Vを提供する。一
方、ONが論理"0"のときは(約GND)、一次/調整
装置172は、115 VAC Line-Inを4つの±5および±
12出力を介してそれぞれ±DC5Vおよび±DC12Vに調整
する。したがって、ONが"1"のとき、電源17は「オ
フ」であり、ONが"0"のとき、電源17は「オン」で
ある。
【0091】前述の電源17などの、AUX5出力とON入
力をもつ電源は、指定すれば、従来の電源の供給業者か
ら入手することができる。
力をもつ電源は、指定すれば、従来の電源の供給業者か
ら入手することができる。
【0092】図6を参照する。本発明のコンピュータ・
システム10の電子回路の概略図が示されている。図6
の回路は、スイッチ21、電源17、ビデオ表示端末5
7、およびCPU40上で実行するコードの相互接続を
行う。
システム10の電子回路の概略図が示されている。図6
の回路は、スイッチ21、電源17、ビデオ表示端末5
7、およびCPU40上で実行するコードの相互接続を
行う。
【0093】この回路は、第1の事前にプログラムされ
たPAL16L8であるU1と、第2の事前にプログラムされ
たPAL16L8であるU2と、当技術分野で周知の74HC132で
あるU3という3つの集積回路を備えている。一般にPA
L U1およびU2は、図3のプレーナ入出力バス90と図6
の残りの回路を相互接続する。該回路はさらに、スイッ
チ21、抵抗R1乃至R10、5つのコンデンサC1乃
至C5、好ましい実施例で論理スイッチとして動作する
のに適した標準低電流NMOS FETである4つのN型MOSFET
Q1乃至Q4、および標準低電流ダイオード・パッケ
ージであるデュアル・ダイオード・パッケージCR1を
備えている。これらの装置はすべて、図6に示すように
構成され、接続されている。抵抗R1乃至R10は、1
/4W抵抗であり、図6に示す値の±5%の値である。
コンデンサC1乃至C2は、図6に示す値の±10%の値
をもつ電解コンデンサである。コンデンサC3乃至C5
は0.1 μF(±10%)セラミック・コンデンサである。
たPAL16L8であるU1と、第2の事前にプログラムされ
たPAL16L8であるU2と、当技術分野で周知の74HC132で
あるU3という3つの集積回路を備えている。一般にPA
L U1およびU2は、図3のプレーナ入出力バス90と図6
の残りの回路を相互接続する。該回路はさらに、スイッ
チ21、抵抗R1乃至R10、5つのコンデンサC1乃
至C5、好ましい実施例で論理スイッチとして動作する
のに適した標準低電流NMOS FETである4つのN型MOSFET
Q1乃至Q4、および標準低電流ダイオード・パッケ
ージであるデュアル・ダイオード・パッケージCR1を
備えている。これらの装置はすべて、図6に示すように
構成され、接続されている。抵抗R1乃至R10は、1
/4W抵抗であり、図6に示す値の±5%の値である。
コンデンサC1乃至C2は、図6に示す値の±10%の値
をもつ電解コンデンサである。コンデンサC3乃至C5
は0.1 μF(±10%)セラミック・コンデンサである。
【0094】第1のPAL U1は、アドレス線SA(1)乃至SA
(15)と、AEN(アドレス使用可能)線に接続されてい
る。SA(1)乃至SA(15)とAENは、図3に示すプレーナ
入出力バス90の一部である。第1のPAL U1は、単にア
ドレス・デコーダとなるようにプログラムされており、
アドレス回線SA(1)乃至SA(15)上に所定のアドレスが提
供され、AEN(アドレス使用可能)回線が活動的なと
きに、アクティブ・ロー信号のPM_PORT_DCD#を提供す
る。
(15)と、AEN(アドレス使用可能)線に接続されてい
る。SA(1)乃至SA(15)とAENは、図3に示すプレーナ
入出力バス90の一部である。第1のPAL U1は、単にア
ドレス・デコーダとなるようにプログラムされており、
アドレス回線SA(1)乃至SA(15)上に所定のアドレスが提
供され、AEN(アドレス使用可能)回線が活動的なと
きに、アクティブ・ロー信号のPM_PORT_DCD#を提供す
る。
【0095】第2のPAL U2は、読取り可能バイトと、本
明細書では「電源管理ポート」とも呼ぶ、前述の入出力
ポートの下位3ビット中の3つの書込み可能ビットとを
提供するようにプログラムされる。第2のPAL U2は、プ
レーナ入出力バス90からの8つの入力、SD(0)、SD
(1)、SD(2)、SA(0)、IOW#、IOR#、RESETDRV、およびIRQ
(1)を有する。第2のPAL U2は、ピン2でのアクティブ
・ハイ信号のRESETDRV入力によって周知の初期条件にリ
セットされる。この信号は、当技術分野に周知のメモリ
制御ユニット46によって生成される。第2のPAL U2に
ついては、図7と表1および2に関連した記載で詳細に
説明する。
明細書では「電源管理ポート」とも呼ぶ、前述の入出力
ポートの下位3ビット中の3つの書込み可能ビットとを
提供するようにプログラムされる。第2のPAL U2は、プ
レーナ入出力バス90からの8つの入力、SD(0)、SD
(1)、SD(2)、SA(0)、IOW#、IOR#、RESETDRV、およびIRQ
(1)を有する。第2のPAL U2は、ピン2でのアクティブ
・ハイ信号のRESETDRV入力によって周知の初期条件にリ
セットされる。この信号は、当技術分野に周知のメモリ
制御ユニット46によって生成される。第2のPAL U2に
ついては、図7と表1および2に関連した記載で詳細に
説明する。
【0096】第3の装置は、本明細書ではU3Aおよび
U3Bとして識別される2つの部分を有する。これらの
部分は、当技術分野で周知の、NANDラッチとしても知ら
れたSRラッチを形成する。SRラッチは、U3のピン
1および5を入力としてもち(ピン1はセット入力であ
り、ピン5はRESET入力である)、U3Aのピン3を出
力としてもつ。両方の入力が共に論理"1"のとき、出力
は、ラッチされた出力値を保持する。セットが論理"0"
になると、出力は論理"1"になる。セット入力が論理"1"
に戻ると、出力は論理"1"でラッチされる。RESET入力が
論理"0"になると、出力は論理"0"になる。RESET入力が
論理"1"に戻ると、出力は論理"0"でラッチされる。
U3Bとして識別される2つの部分を有する。これらの
部分は、当技術分野で周知の、NANDラッチとしても知ら
れたSRラッチを形成する。SRラッチは、U3のピン
1および5を入力としてもち(ピン1はセット入力であ
り、ピン5はRESET入力である)、U3Aのピン3を出
力としてもつ。両方の入力が共に論理"1"のとき、出力
は、ラッチされた出力値を保持する。セットが論理"0"
になると、出力は論理"1"になる。セット入力が論理"1"
に戻ると、出力は論理"1"でラッチされる。RESET入力が
論理"0"になると、出力は論理"0"になる。RESET入力が
論理"1"に戻ると、出力は論理"0"でラッチされる。
【0097】POWERGOOD信号が論理"1"であり、調整され
た電圧が適切なレベルであることを示す場合、本明細書
ではU3Cとして識別される第3の装置の第3の部分
が、第2のPAL U2のピン12出力用のインバータとして
動作する。POWERGOOD信号が論理"0"であり、VCCが接
地付近で浮動し、あるいは+DC5Vまでランプ・アップま
たは+DC5Vからランプ・ダウンしていることを示す場
合、第3の装置の第3の部分U3Cのピン8での出力は
論理"1"のままとなり、第2のPAL U2のピン12からの
雑音が、第3の装置の第1および第2の部分U3Aおよ
びU3Bによって作成されたSRラッチに影響を及ぼす
のを妨げる。
た電圧が適切なレベルであることを示す場合、本明細書
ではU3Cとして識別される第3の装置の第3の部分
が、第2のPAL U2のピン12出力用のインバータとして
動作する。POWERGOOD信号が論理"0"であり、VCCが接
地付近で浮動し、あるいは+DC5Vまでランプ・アップま
たは+DC5Vからランプ・ダウンしていることを示す場
合、第3の装置の第3の部分U3Cのピン8での出力は
論理"1"のままとなり、第2のPAL U2のピン12からの
雑音が、第3の装置の第1および第2の部分U3Aおよ
びU3Bによって作成されたSRラッチに影響を及ぼす
のを妨げる。
【0098】スイッチ21は、JP1で図6の回路に接
続される。抵抗/コンデンサ副回路R2およびC1は、
スイッチ21の閉鎖事象をディバウンスする。第3の装
置の第4の部分U3Dは、ピン12がR6を介してVBAT
にプルされた(AUX5が公称+DC5Vのとき約+DC4.3V)イン
バータとして構成される。このインバータは、ディバウ
ンスされたスイッチ閉鎖を反転する。電流制限抵抗器R
10は、第3の装置の第4の部分U3Dのピン11を、
その装置が電源を投入または遮断されるときに第2のPA
L U2のピン8から流れる電流から保護する。
続される。抵抗/コンデンサ副回路R2およびC1は、
スイッチ21の閉鎖事象をディバウンスする。第3の装
置の第4の部分U3Dは、ピン12がR6を介してVBAT
にプルされた(AUX5が公称+DC5Vのとき約+DC4.3V)イン
バータとして構成される。このインバータは、ディバウ
ンスされたスイッチ閉鎖を反転する。電流制限抵抗器R
10は、第3の装置の第4の部分U3Dのピン11を、
その装置が電源を投入または遮断されるときに第2のPA
L U2のピン8から流れる電流から保護する。
【0099】SRラッチについては、電源をオフにして
はならない。しかし、R7およびC3は、SRの電源が
オフになった場合、SRラッチを、それが電力を再供給
されるときに電源17が「オフ」状態になる電源投入時
状態にするように設計されている。
はならない。しかし、R7およびC3は、SRの電源が
オフになった場合、SRラッチを、それが電力を再供給
されるときに電源17が「オフ」状態になる電源投入時
状態にするように設計されている。
【0100】抵抗R1、R3、R4、R5、R6、R
8、およびR9はプルアップ抵抗であり、それぞれの回
線をVCC、VBAT、またはAUX5にプルする。トランジスタ
Q1、Q2、Q3、およびQ4はインバータである。R
4およびC2は、C2をVCCに達するまで充電させる
RC対を形成する。トランジスタQ5は、第2PAL U2の
ピン19出力が論理"1"のときにトランジスタC2をド
レーンする。C2に記憶された電圧が約+DC2.7Vよりも
低いとき、Q1は通電せず、R3は第2PAL U2のピン1
1入力を、VCCにプルして論理"1"にする。C2が約+
DC2.7V以上まで充電されると、Q1は通電し、ピン11
入力をGNDにプルして論理"0"にする。
8、およびR9はプルアップ抵抗であり、それぞれの回
線をVCC、VBAT、またはAUX5にプルする。トランジスタ
Q1、Q2、Q3、およびQ4はインバータである。R
4およびC2は、C2をVCCに達するまで充電させる
RC対を形成する。トランジスタQ5は、第2PAL U2の
ピン19出力が論理"1"のときにトランジスタC2をド
レーンする。C2に記憶された電圧が約+DC2.7Vよりも
低いとき、Q1は通電せず、R3は第2PAL U2のピン1
1入力を、VCCにプルして論理"1"にする。C2が約+
DC2.7V以上まで充電されると、Q1は通電し、ピン11
入力をGNDにプルして論理"0"にする。
【0101】第2のPAL U2のピン18出力が論理"0"の
とき、R8およびR9はBLNK#およびESYNC回線をそれぞ
れVCCにプルする。ESYNCおよびBLNK#回線がVCCの
とき、ビデオ制御装置56はビデオ信号を生成する。第
2のPAL U2のピン18出力が論理"1"のとき、トランジ
スタQ2およびQ3は通電して、BLNK#およびESYNCをそ
れぞれGNDにプルし、ビデオ制御装置56にビデオ信
号の生成を停止させる。
とき、R8およびR9はBLNK#およびESYNC回線をそれぞ
れVCCにプルする。ESYNCおよびBLNK#回線がVCCの
とき、ビデオ制御装置56はビデオ信号を生成する。第
2のPAL U2のピン18出力が論理"1"のとき、トランジ
スタQ2およびQ3は通電して、BLNK#およびESYNCをそ
れぞれGNDにプルし、ビデオ制御装置56にビデオ信
号の生成を停止させる。
【0102】図6に示す電子回路は、VCC、AUX5、およ
びVBATという3つの電源を有する。VCCおよびAUX5
は、電源17によって生成され、公称+DC5.0Vである。
VCCとそれに関連するGND戻り回線は、当技術分野
で周知の、プレーナ20上の主電源コネクタ(図示せ
ず)を介して入る。AUX5は、JP2のピン1で回路に接
続される。AUX5戻り回線は、JP2のピン3から入り、
GND回線に接続される。VBATは、電池171の電力出
力であり、公称DC3.5Vである。電池171は、リチウム
電池であり、当技術分野で周知である。
びVBATという3つの電源を有する。VCCおよびAUX5
は、電源17によって生成され、公称+DC5.0Vである。
VCCとそれに関連するGND戻り回線は、当技術分野
で周知の、プレーナ20上の主電源コネクタ(図示せ
ず)を介して入る。AUX5は、JP2のピン1で回路に接
続される。AUX5戻り回線は、JP2のピン3から入り、
GND回線に接続される。VBATは、電池171の電力出
力であり、公称DC3.5Vである。電池171は、リチウム
電池であり、当技術分野で周知である。
【0103】PAL U1およびU2は、ピン20でのVCC入
力をVCCに接続されている。複数の抵抗R3、R4、
R8、およびR9もVCCに接続される。電源17は、
それが「オン」であり、当技術分野で周知の、公称AC11
5Vを供給する典型的な壁コンセントに差し込まれたとき
だけ、調整された+DC5Vを供給する。電源が「オフ」で
あり、あるいは差し込まれていないとき、PAL U1および
U2と、抵抗R3、R4、R8、およびR9は+DC5Vを受
けない。
力をVCCに接続されている。複数の抵抗R3、R4、
R8、およびR9もVCCに接続される。電源17は、
それが「オン」であり、当技術分野で周知の、公称AC11
5Vを供給する典型的な壁コンセントに差し込まれたとき
だけ、調整された+DC5Vを供給する。電源が「オフ」で
あり、あるいは差し込まれていないとき、PAL U1および
U2と、抵抗R3、R4、R8、およびR9は+DC5Vを受
けない。
【0104】一方、公称AC115Vを供給する典型的な壁コ
ンセントに電源17を差し込むと、電源17は、「オ
ン」であるか、「オフ」であるかとは無関係に、AUX5
で、調整された+DC5Vを提供する。したがって、AUX5に
接続された装置は、電源17が差し込まれているときは
必ず+DC5Vを受ける。
ンセントに電源17を差し込むと、電源17は、「オ
ン」であるか、「オフ」であるかとは無関係に、AUX5
で、調整された+DC5Vを提供する。したがって、AUX5に
接続された装置は、電源17が差し込まれているときは
必ず+DC5Vを受ける。
【0105】さらに、U3と、抵抗R1、R2、および
R6は常に電力を受ける。なぜなら、CR1のダイオー
ドが、VBATに接続された装置が常に電力を受けるように
VBATおよびAUX5と相互接続されているからである。電源
17は、典型的な壁コンセントに差し込まれていると
き、AUX5で+DC5Vを提供し、VBATに接続された装置(U
3と、抵抗R1、R2、およびR6)は約+DC4.3V(AUX
5の+DC5Vから、AUX5とVBATの間のCR1内のダイオード
のダイオード・ドロップを引いた値)を受ける。電源1
7は、コンセントに差し込まれていないとき、AUX5回線
への調整された電力の提供を停止し、U3と抵抗R1、
R2、およびR6はVBATから電力を受ける。典型的な74
HC132には、+DC2.0Vの最小DC供給電圧が必要である。し
たがって、VBATが+DC2.0Vを提供するのに十分な電荷を
保持しているかぎり、U3は電力を十分に供給される。
R6は常に電力を受ける。なぜなら、CR1のダイオー
ドが、VBATに接続された装置が常に電力を受けるように
VBATおよびAUX5と相互接続されているからである。電源
17は、典型的な壁コンセントに差し込まれていると
き、AUX5で+DC5Vを提供し、VBATに接続された装置(U
3と、抵抗R1、R2、およびR6)は約+DC4.3V(AUX
5の+DC5Vから、AUX5とVBATの間のCR1内のダイオード
のダイオード・ドロップを引いた値)を受ける。電源1
7は、コンセントに差し込まれていないとき、AUX5回線
への調整された電力の提供を停止し、U3と抵抗R1、
R2、およびR6はVBATから電力を受ける。典型的な74
HC132には、+DC2.0Vの最小DC供給電圧が必要である。し
たがって、VBATが+DC2.0Vを提供するのに十分な電荷を
保持しているかぎり、U3は電力を十分に供給される。
【0106】図6の回路には多数の修正を加えることが
でき、そうしても本発明の範囲を逸脱しない。たとえ
ば、実時間クロック98を、図6の回路に電気的に接続
して、特定の時刻に、コンピュータ・システム10がサ
スペンド状態154から正常動作状態150に変わるよ
うに、ON#信号にダイオードOrされるように構成す
ることが可能である。同様に、電話リング検出回路を、
図6の回路に追加し、接続された電話回線の活動によっ
て、コンピュータ・システム10がサスペンド状態15
4を抜け出し、正常動作状態150に入るように、ON
#信号にダイオードOrされるように構成することも可
能である。
でき、そうしても本発明の範囲を逸脱しない。たとえ
ば、実時間クロック98を、図6の回路に電気的に接続
して、特定の時刻に、コンピュータ・システム10がサ
スペンド状態154から正常動作状態150に変わるよ
うに、ON#信号にダイオードOrされるように構成す
ることが可能である。同様に、電話リング検出回路を、
図6の回路に追加し、接続された電話回線の活動によっ
て、コンピュータ・システム10がサスペンド状態15
4を抜け出し、正常動作状態150に入るように、ON
#信号にダイオードOrされるように構成することも可
能である。
【0107】再び、図6を参照する。第2のPAL U2は2
つの状態マシンを有する。第2のPAL U2中の一方の状態
マシンの状態図を図7に示す。表1および表2は、他方
の状態マシンと、第2のPAL U2の一定のその他の態様に
ついて説明している。
つの状態マシンを有する。第2のPAL U2中の一方の状態
マシンの状態図を図7に示す。表1および表2は、他方
の状態マシンと、第2のPAL U2の一定のその他の態様に
ついて説明している。
【0108】図7は、第2のPAL U2内の一方の状態マシ
ンを示す。TE1およびTE0は共に、スイッチ状態0
02(「 2」は2進数を表す)176、スイッチ状態0
12178、スイッチ状態112 180、およびスイッ
チ状態102 182という4つの状態を許容する。
ンを示す。TE1およびTE0は共に、スイッチ状態0
02(「 2」は2進数を表す)176、スイッチ状態0
12178、スイッチ状態112 180、およびスイッ
チ状態102 182という4つの状態を許容する。
【0109】TE1およびTE0を第2のPAL U2に直接
書き込むことはできず、その代わりに状態は、スイッチ
21の閉鎖事象や、コンピュータ・システム10のリセ
ットなどのその他の事象に応じて変わる。システム電源
が電源17によって提供されていない場合、第2のPAL
U2は電力を供給されておらず、したがって、174では
第2のPAL U2の状態は無意味である。図6に関連した記
載で説明するように、スイッチ21を押すことや、(電
話リング検出器が電源17にシステム電源を提供させる
ことなどの)その他の事象によって、電源17にシステ
ム電源の提供を開始する。スイッチ21を押し、あるい
はRESETDRV信号が活動的である場合、第2のPAL U2はス
イッチ状態002 176に入る。スイッチ21を放
し、あるいはスイッチ21を押していないときにRESETD
RVが非活動的になると、第2のPALU2はスイッチ状態0
12 178に入る。再びスイッチ21を押すと、第2
のPALU2はスイッチ状態112 180に入る。再びスイ
ッチ21を放すと、第2のPAL U2はスイッチ状態102
182に入る。スイッチ21の以後の閉鎖によって、
第2のPAL U2は、図7に示すように4つの状態を循環す
る。第2のPAL U2は、コンピュータ・システム10が正
常動作状態150のときはスイッチ状態012178で
ある。
書き込むことはできず、その代わりに状態は、スイッチ
21の閉鎖事象や、コンピュータ・システム10のリセ
ットなどのその他の事象に応じて変わる。システム電源
が電源17によって提供されていない場合、第2のPAL
U2は電力を供給されておらず、したがって、174では
第2のPAL U2の状態は無意味である。図6に関連した記
載で説明するように、スイッチ21を押すことや、(電
話リング検出器が電源17にシステム電源を提供させる
ことなどの)その他の事象によって、電源17にシステ
ム電源の提供を開始する。スイッチ21を押し、あるい
はRESETDRV信号が活動的である場合、第2のPAL U2はス
イッチ状態002 176に入る。スイッチ21を放
し、あるいはスイッチ21を押していないときにRESETD
RVが非活動的になると、第2のPALU2はスイッチ状態0
12 178に入る。再びスイッチ21を押すと、第2
のPALU2はスイッチ状態112 180に入る。再びスイ
ッチ21を放すと、第2のPAL U2はスイッチ状態102
182に入る。スイッチ21の以後の閉鎖によって、
第2のPAL U2は、図7に示すように4つの状態を循環す
る。第2のPAL U2は、コンピュータ・システム10が正
常動作状態150のときはスイッチ状態012178で
ある。
【0110】スイッチ状態012 178は、TE1、
TE0状態マシンの正常オン状態に対応するスイッチ状
態である。適用業務プログラムは、スイッチ状態012
178のときに実行される。コンピュータ・システム
10は、その状態でスタンバイ状態152に入り、抜け
出すことができる。スイッチ状態012 178は、ユ
ーザ生成サスペンド中止要求にも対応する。スイッチ状
態102は、ユーザによるサスペンド要求に対応するス
イッチ状態である。すなわち、システムをオフ状態15
6から開始し、スイッチ21を1度押すと、コンピュー
タ・システム10は正常動作状態150になる。スイッ
チ21をもう1度押すと、サスペンド要求(電源管理ポ
ートでの0FFH)が生成される。サスペンド要求は、図9
に関連した記載で詳細に説明するSupervisorルーチンに
よって読み取られる。コンピュータ・システム10がサ
スペンド状態154になる前にスイッチ21をさらにも
う1度押すと、サスペンド中止要求(電源管理ポートで
の0FEH)が生成される。サスペンド中止要求はサスペン
ド・ルーチンによって読み取られる。
TE0状態マシンの正常オン状態に対応するスイッチ状
態である。適用業務プログラムは、スイッチ状態012
178のときに実行される。コンピュータ・システム
10は、その状態でスタンバイ状態152に入り、抜け
出すことができる。スイッチ状態012 178は、ユ
ーザ生成サスペンド中止要求にも対応する。スイッチ状
態102は、ユーザによるサスペンド要求に対応するス
イッチ状態である。すなわち、システムをオフ状態15
6から開始し、スイッチ21を1度押すと、コンピュー
タ・システム10は正常動作状態150になる。スイッ
チ21をもう1度押すと、サスペンド要求(電源管理ポ
ートでの0FFH)が生成される。サスペンド要求は、図9
に関連した記載で詳細に説明するSupervisorルーチンに
よって読み取られる。コンピュータ・システム10がサ
スペンド状態154になる前にスイッチ21をさらにも
う1度押すと、サスペンド中止要求(電源管理ポートで
の0FEH)が生成される。サスペンド中止要求はサスペン
ド・ルーチンによって読み取られる。
【0111】表1は、図7の4つの状態に複数の注釈を
追加する。スイッチ状態002 176、012 17
8、および112 180のとき、電源管理ポートは、
読取りに応じて0FFHを出力する。
追加する。スイッチ状態002 176、012 17
8、および112 180のとき、電源管理ポートは、
読取りに応じて0FFHを出力する。
【表1】 TE1 TE0 注釈 0 0 表示ブランキング・ビットをクリアする。 電源管理ポートの読取り=0FFH 0 1 SD(2)によって制御される表示ブランキング・ビット 電源管理ポートの読取り=0FFH 1 1 SD(2)によって制御される表示ブランキング・ビット 電源管理ポートの読取り=0FFH 1 0 表示ブランキング・ビットをセットする。 電源管理ポートの読取り=0FEH
【0112】一方、スイッチ状態102 182のと
き、電源管理ポートは読取りに応じて0FEHを出力する。
スイッチ21を押し、放すことによって、第2のPAL U2
はスイッチ状態012から抜け出し、スイッチ状態102
182に入る。スイッチ状態102 182は、ハー
ドウェア・サスペンド要求を発信する。Supervisorルー
チンは、電源管理ポートを読み取ることによってハード
ウェア・サスペンド要求を認識する。読取りに応じた0F
EHは、ハードウェア・サスペンド要求を示す。
き、電源管理ポートは読取りに応じて0FEHを出力する。
スイッチ21を押し、放すことによって、第2のPAL U2
はスイッチ状態012から抜け出し、スイッチ状態102
182に入る。スイッチ状態102 182は、ハー
ドウェア・サスペンド要求を発信する。Supervisorルー
チンは、電源管理ポートを読み取ることによってハード
ウェア・サスペンド要求を認識する。読取りに応じた0F
EHは、ハードウェア・サスペンド要求を示す。
【0113】TE1、TE0状態マシンは、ビデオ・ブ
ランキング回路にも影響を及ぼす。スイッチ状態002
176のとき、表示ブランキング・ビットがクリアさ
れ、ビデオ制御装置56はビデオ信号を生成する。スイ
ッチ状態102 182のときは、表示ブランキング・
ビットがセットされ、ビデオ制御装置56はビデオ信号
の生成を停止する。後述のように、スイッチ状態012
178および112180のとき、表示ブランキング
・ビットはD2への書込みによって制御される。
ランキング回路にも影響を及ぼす。スイッチ状態002
176のとき、表示ブランキング・ビットがクリアさ
れ、ビデオ制御装置56はビデオ信号を生成する。スイ
ッチ状態102 182のときは、表示ブランキング・
ビットがセットされ、ビデオ制御装置56はビデオ信号
の生成を停止する。後述のように、スイッチ状態012
178および112180のとき、表示ブランキング
・ビットはD2への書込みによって制御される。
【0114】表2は、第2のPAL U2の他方の状態マシン
を示し、SD2への書込みがビデオ信号にどのように影
響を及ぼすかを示す。
を示し、SD2への書込みがビデオ信号にどのように影
響を及ぼすかを示す。
【表2】 S2 S1 S0 注釈 X 0 0 スイッチ状態102のとき、ただちに電源を「オフ」にする 。X 0 1 スイッチ状態102のとき、フェールセーフ・タイマを起 動す る(C2が充電される)。 X 1 0 ただちに電源を「オフ」にする。 X 1 1 フェールセーフ・タイマをリセットする(C2がドレーンさ れる)。 0 X X ビデオ信号をオンにする。 1 X X ビデオ信号をオフにする。
【0115】PAL内のU2回路は、電源管理ポートで
3つのビット、SD(0)、SD(1)、SD(2)を提供する。3つ
のビットは、表2ではS0、S1、およびS2とラベル
付けされている。SD(2)は、第2のPAL U2のピン18 D
ISPLAY_OFF出力を制御することによってビデオ・ブラン
キングを制御する。電源管理ポートのSD(2)ビットに"1"
を書き込むと、ピン18 DISPLAY_OFF出力が論理"1"を
アサートし、トランジスタQ2およびQ3が通電し、BL
NK#およびESYNCがGNDにプルされ、そのためにビデオ
制御装置56がビデオ信号の生成を停止することによっ
てビデオ信号がオフになる。同様に、電源管理ポートの
SD(2)に"0"を書き込むと、ピン18 DISPLAY_OFF出力
が論理"0"をアサートし、トランジスタQ2およびQ3
が通電を停止し、抵抗R8およびR9がBLNK#およびESY
NCをVCCにプルし、それによって、ビデオ制御装置5
6はビデオ信号を生成する。
3つのビット、SD(0)、SD(1)、SD(2)を提供する。3つ
のビットは、表2ではS0、S1、およびS2とラベル
付けされている。SD(2)は、第2のPAL U2のピン18 D
ISPLAY_OFF出力を制御することによってビデオ・ブラン
キングを制御する。電源管理ポートのSD(2)ビットに"1"
を書き込むと、ピン18 DISPLAY_OFF出力が論理"1"を
アサートし、トランジスタQ2およびQ3が通電し、BL
NK#およびESYNCがGNDにプルされ、そのためにビデオ
制御装置56がビデオ信号の生成を停止することによっ
てビデオ信号がオフになる。同様に、電源管理ポートの
SD(2)に"0"を書き込むと、ピン18 DISPLAY_OFF出力
が論理"0"をアサートし、トランジスタQ2およびQ3
が通電を停止し、抵抗R8およびR9がBLNK#およびESY
NCをVCCにプルし、それによって、ビデオ制御装置5
6はビデオ信号を生成する。
【0116】IRQ(1)入力もビデオ・ブランキングを制御
する。IRQ(1)はキーボード・ハードウェア割込みであ
る。すなわち、キーボード12上のキーを押すと、IRQ
(1)がパルスする。ビデオ信号がオフのときにIRQ(1)上
にパルスが発生すると、ピン18DISPLAY_OFF出力が論
理"0"をアサートし、トランジスタQ2およびQ3が通
電を停止し、抵抗R8およびR9がBLNK#およびESYNCを
VCCにプルし、そのためにビデオ制御装置56がビデ
オ信号を生成することによって、ビデオ信号はただちに
オンに戻る。このようにIRQ(1)を使用すると、スタンバ
イ状態152から正常動作状態154に戻る際、ただち
に、復元されたビデオ表示の形式のフィードバックがユ
ーザに提供される。図9に関連した記載で説明するよう
に、IRQ(1)がないと、ユーザは、おそらく数秒後に、A
PMがユーザの活動を検査するまで、フィードバックを
受け取らない。
する。IRQ(1)はキーボード・ハードウェア割込みであ
る。すなわち、キーボード12上のキーを押すと、IRQ
(1)がパルスする。ビデオ信号がオフのときにIRQ(1)上
にパルスが発生すると、ピン18DISPLAY_OFF出力が論
理"0"をアサートし、トランジスタQ2およびQ3が通
電を停止し、抵抗R8およびR9がBLNK#およびESYNCを
VCCにプルし、そのためにビデオ制御装置56がビデ
オ信号を生成することによって、ビデオ信号はただちに
オンに戻る。このようにIRQ(1)を使用すると、スタンバ
イ状態152から正常動作状態154に戻る際、ただち
に、復元されたビデオ表示の形式のフィードバックがユ
ーザに提供される。図9に関連した記載で説明するよう
に、IRQ(1)がないと、ユーザは、おそらく数秒後に、A
PMがユーザの活動を検査するまで、フィードバックを
受け取らない。
【0117】SD(1)とSD(0)は協動して、002、012、
102、および112という4つの動作状態を提供する。
第2のPAL U2は、002状態へのRESETDRV入力によって
初期化される。また、4つの状態のうちどの状態のとき
でも、電源管理ポートにXXXXXX002を書き込むと、第2
のPAL U2は002状態になる。図5に関連した記載で説
明するように、002状態では、スイッチ21は、典型
的な電源の電源スイッチと同様に動作する。002状態
のときにスイッチ21を押すと、第2のPAL U2のピン1
2出力が論理"1"をアサートし、SRラッチの出力ピン
3が論理"0"状態にラッチされ、ONがR6によって"ハ
イ"にプルされ、電源17の一次/調整装置172が、
±5および±12回線に沿った調整された電圧の提供を
停止することによって、電源17がオフになる。この状
態では、以下のシステム・ソフトウェアの説明で詳細に
説明するようにAPMが切断される。002状態のとき
に電源管理ポートを読み取ると、回路は0FEHを返す。好
ましい実施例では、このバイトが読み取られ、ハードウ
ェアが存在することを確認するためにテストされる。
102、および112という4つの動作状態を提供する。
第2のPAL U2は、002状態へのRESETDRV入力によって
初期化される。また、4つの状態のうちどの状態のとき
でも、電源管理ポートにXXXXXX002を書き込むと、第2
のPAL U2は002状態になる。図5に関連した記載で説
明するように、002状態では、スイッチ21は、典型
的な電源の電源スイッチと同様に動作する。002状態
のときにスイッチ21を押すと、第2のPAL U2のピン1
2出力が論理"1"をアサートし、SRラッチの出力ピン
3が論理"0"状態にラッチされ、ONがR6によって"ハ
イ"にプルされ、電源17の一次/調整装置172が、
±5および±12回線に沿った調整された電圧の提供を
停止することによって、電源17がオフになる。この状
態では、以下のシステム・ソフトウェアの説明で詳細に
説明するようにAPMが切断される。002状態のとき
に電源管理ポートを読み取ると、回路は0FEHを返す。好
ましい実施例では、このバイトが読み取られ、ハードウ
ェアが存在することを確認するためにテストされる。
【0118】4つの状態のうちどの状態のときでも、電
源管理ポートにXXXXXX012を書き込むと、第2のPAL U2
は012状態に入る。012状態とは正常APM状態であ
る。012状態に入った直後からスイッチ21を押すま
での間に電源管理ポートを読み取ると、回路は0FFHを返
す。012状態のときにスイッチ21を押し、放すと、
次の2つの事象が発生する。(1)電源管理ポートの読
取りから返される値は、0FEHと0FFHの間で切り替わる。
(2)ピン18でアサートされる値が切り替わり、ビデ
オ制御装置56は、スイッチ21が押されるたびにビデ
オ信号のオンとオフを切り替える。さらに、スイッチ2
1を初めて押すときに、ピン19のTRIGGER#出力が論
理"0"をアサートし、Q5が通電を停止し、コンデンサ
C2が充電を開始することによって、フェールセーフ・
タイマが起動する。C2に記憶された電圧が約+DC2.7V
よりも低いとき、Q1は通電せず、R3は第2のPAL U2
のピン11入力をVCCにプルして論理"1"にする。C
2が充電されて約+DC2.7V以上になると、Q1が通電
し、ピン11入力がGNDにプルされて論理"0"にな
る。ピン11 DELAY_IN#が論理"0"のときは、第2のPAL
U2のピン12出力が論理"1"をアサートし、SRラッチ
の出力ピン3を論理"0"状態にラッチし、R6によって
ONを"ハイ"にプルして、電源17の一次/調整装置1
72に±5および±12回線に沿った調整された電圧の
提供を停止することによって、電源17が「オフ」にな
る。スイッチの閉鎖を繰り返すと、フェールセーフ・タ
イマのオンとオフが切り替わる。
源管理ポートにXXXXXX012を書き込むと、第2のPAL U2
は012状態に入る。012状態とは正常APM状態であ
る。012状態に入った直後からスイッチ21を押すま
での間に電源管理ポートを読み取ると、回路は0FFHを返
す。012状態のときにスイッチ21を押し、放すと、
次の2つの事象が発生する。(1)電源管理ポートの読
取りから返される値は、0FEHと0FFHの間で切り替わる。
(2)ピン18でアサートされる値が切り替わり、ビデ
オ制御装置56は、スイッチ21が押されるたびにビデ
オ信号のオンとオフを切り替える。さらに、スイッチ2
1を初めて押すときに、ピン19のTRIGGER#出力が論
理"0"をアサートし、Q5が通電を停止し、コンデンサ
C2が充電を開始することによって、フェールセーフ・
タイマが起動する。C2に記憶された電圧が約+DC2.7V
よりも低いとき、Q1は通電せず、R3は第2のPAL U2
のピン11入力をVCCにプルして論理"1"にする。C
2が充電されて約+DC2.7V以上になると、Q1が通電
し、ピン11入力がGNDにプルされて論理"0"にな
る。ピン11 DELAY_IN#が論理"0"のときは、第2のPAL
U2のピン12出力が論理"1"をアサートし、SRラッチ
の出力ピン3を論理"0"状態にラッチし、R6によって
ONを"ハイ"にプルして、電源17の一次/調整装置1
72に±5および±12回線に沿った調整された電圧の
提供を停止することによって、電源17が「オフ」にな
る。スイッチの閉鎖を繰り返すと、フェールセーフ・タ
イマのオンとオフが切り替わる。
【0119】したがって、012状態のとき、スイッチ
を押す前には、読取りから返される値は0FFHであり、ビ
デオ信号が生成される。スイッチ21を初めて押したと
きに、読取りから返される値が0FEHに変わり、ビデオ信
号が生成を停止し、ビデオ表示端末57がブランクにな
る。スイッチ21をもう1度押すと、読取りから返され
る値が0FFHに戻り、ビデオ制御装置56が再びビデオ信
号の生成を開始する。切替えの特性のために、スイッチ
21を押すことを繰り返すと、スイッチを押す回数の合
計が奇数である場合、値が0FEHになり、ビデオ信号がブ
ランキングされ、スイッチを押す回数の合計が偶数であ
る場合、値が0FFHになり、ビデオ信号が生成される。
を押す前には、読取りから返される値は0FFHであり、ビ
デオ信号が生成される。スイッチ21を初めて押したと
きに、読取りから返される値が0FEHに変わり、ビデオ信
号が生成を停止し、ビデオ表示端末57がブランクにな
る。スイッチ21をもう1度押すと、読取りから返され
る値が0FFHに戻り、ビデオ制御装置56が再びビデオ信
号の生成を開始する。切替えの特性のために、スイッチ
21を押すことを繰り返すと、スイッチを押す回数の合
計が奇数である場合、値が0FEHになり、ビデオ信号がブ
ランキングされ、スイッチを押す回数の合計が偶数であ
る場合、値が0FFHになり、ビデオ信号が生成される。
【0120】4つの状態のうちどの状態のときでも、電
源管理ポートにXXXXXX102を書き込むと、第2のPAL U2
は102状態に入る。102状態に入ると、第2のPAL U2
のピン12出力が論理"1"をアサートし、SRラッチの
出力ピン3が論理"0"状態にラッチされ、R6によって
ONが"ハイ"にプルされ、電源17の一次/調整装置1
72が±5および±12回線に沿った調整された電圧の
提供を停止することによって、電源17はただちに「オ
フ」になる。この状態では、コンピュータ・システム1
0が電源17に対する制御を獲得する。
源管理ポートにXXXXXX102を書き込むと、第2のPAL U2
は102状態に入る。102状態に入ると、第2のPAL U2
のピン12出力が論理"1"をアサートし、SRラッチの
出力ピン3が論理"0"状態にラッチされ、R6によって
ONが"ハイ"にプルされ、電源17の一次/調整装置1
72が±5および±12回線に沿った調整された電圧の
提供を停止することによって、電源17はただちに「オ
フ」になる。この状態では、コンピュータ・システム1
0が電源17に対する制御を獲得する。
【0121】4つの状態のうちどの状態のときでも、電
源管理ポートにXXXXXX112を書き込むと、第2のPAL U2
は112状態に入る。112状態に入ると、ピン19 TR
IGGER#出力が論理"1"をアサートし、Q5が通電し、コ
ンデンサC2をGNDまでドレーンすることによって、
フェールセーフ・タイマがリセットされる。この状態を
抜け出し、012状態に入ると、ピン19 TRIGGER#出
力が論理"0"をアサートし、トランジスタQ5が通電を
妨げられ、コンデンサC2が再び充電されることによっ
て、フェールセーフ・タイマが再始動する。
源管理ポートにXXXXXX112を書き込むと、第2のPAL U2
は112状態に入る。112状態に入ると、ピン19 TR
IGGER#出力が論理"1"をアサートし、Q5が通電し、コ
ンデンサC2をGNDまでドレーンすることによって、
フェールセーフ・タイマがリセットされる。この状態を
抜け出し、012状態に入ると、ピン19 TRIGGER#出
力が論理"0"をアサートし、トランジスタQ5が通電を
妨げられ、コンデンサC2が再び充電されることによっ
て、フェールセーフ・タイマが再始動する。
【0122】図6の回路の機能についての以下の説明
は、電源17が典型的な壁コンセントに差し込まれ、AU
X5で+DC5Vを生成しており、したがって、多数の装置、
特にU3が電力を十分に供給されていると仮定してい
る。
は、電源17が典型的な壁コンセントに差し込まれ、AU
X5で+DC5Vを生成しており、したがって、多数の装置、
特にU3が電力を十分に供給されていると仮定してい
る。
【0123】図6の回路についての説明は、電源17が
「オフ」のとき最初に回路を検針しておくと、より容易
に理解される。電源17を「オフ」にするには、JP2
のピン2での信号ONを論理"1"にしなければならな
い。したがって、Q4を通電してはならず、ゆえにU3
のピン3は論理"0"でなければならない。すなわち、U
3AおよびU3BのSRラッチは、論理"0"出力でラッ
チされる。POWERGOODが論理"0"であり、第2のPAL U2が
電力を供給されないため、U3Cのピン8出力は論理"
1"であり、したがってSRラッチのRESET入力は"1"であ
る。同様に、SRラッチセット入力、すなわちU3Aの
ピン1は、R1によって論理"1"にプルされる。この状
態では、SRラッチは論理"0"出力でラッチされる。
「オフ」のとき最初に回路を検針しておくと、より容易
に理解される。電源17を「オフ」にするには、JP2
のピン2での信号ONを論理"1"にしなければならな
い。したがって、Q4を通電してはならず、ゆえにU3
のピン3は論理"0"でなければならない。すなわち、U
3AおよびU3BのSRラッチは、論理"0"出力でラッ
チされる。POWERGOODが論理"0"であり、第2のPAL U2が
電力を供給されないため、U3Cのピン8出力は論理"
1"であり、したがってSRラッチのRESET入力は"1"であ
る。同様に、SRラッチセット入力、すなわちU3Aの
ピン1は、R1によって論理"1"にプルされる。この状
態では、SRラッチは論理"0"出力でラッチされる。
【0124】スイッチ21を押すと、R2およびC1に
よって閉鎖が立ち下がり、SRラッチセット入力、すな
わちU3Aのピン1がGND(論理"0")にプルされ
る。これによって、SRラッチ出力、すなわちU3Aの
ピン3が論理"1"に変わり、Q4が通電し、それによっ
てONがGNDにプルされ、電源17が、±5および±
12回線への調整された電力の提供を開始する。スイッ
チ21を放すと、SRスイッチセット入力、すなわちU
3Aのピン1が論理"1"に変わり、SRラッチが論理"1"
をU3Aピン3出力でラッチし、それによって電源17
を「オン」状態にラッチする。
よって閉鎖が立ち下がり、SRラッチセット入力、すな
わちU3Aのピン1がGND(論理"0")にプルされ
る。これによって、SRラッチ出力、すなわちU3Aの
ピン3が論理"1"に変わり、Q4が通電し、それによっ
てONがGNDにプルされ、電源17が、±5および±
12回線への調整された電力の提供を開始する。スイッ
チ21を放すと、SRスイッチセット入力、すなわちU
3Aのピン1が論理"1"に変わり、SRラッチが論理"1"
をU3Aピン3出力でラッチし、それによって電源17
を「オン」状態にラッチする。
【0125】POWERGOOD信号が論理"1"になった後、すべ
ての電圧は公差の範囲内になる。POWERGOODが論理"0"の
とき、第2のAPL U2は次のように初期化される。(1)
ピン12 OFF出力が論理"0"をアサートし、それに
よってSRラッチが現行のラッチされた状態のままにな
る。(2)ピン18 DISPLAY_OFF出力が論理"0"をアサ
ートし、それによってビデオ制御装置がビデオ信号を生
成する。(3)ピン19 TRIGGER#出力が論理"1"をア
サートして、Q5に、C2をGNDにドレーンさせ、そ
れによってピン11 DELAY_IN#入力をR3によって論
理"1"にプルされたままにする。
ての電圧は公差の範囲内になる。POWERGOODが論理"0"の
とき、第2のAPL U2は次のように初期化される。(1)
ピン12 OFF出力が論理"0"をアサートし、それに
よってSRラッチが現行のラッチされた状態のままにな
る。(2)ピン18 DISPLAY_OFF出力が論理"0"をアサ
ートし、それによってビデオ制御装置がビデオ信号を生
成する。(3)ピン19 TRIGGER#出力が論理"1"をア
サートして、Q5に、C2をGNDにドレーンさせ、そ
れによってピン11 DELAY_IN#入力をR3によって論
理"1"にプルされたままにする。
【0126】前述のように、図7中の第2のPAL U2回路
は、電源管理ポートで3つのビット、SD(0)、SD(1)、SD
(2)を提供する。SD(2)は、第2のPAL U2のピン18 DI
SPLAY_OFF出力を制御する。電源管理ポートのSD(2)に"
1"を書き込むと、ビデオ制御装置56はビデオ信号の生
成を停止する。同様に、電源管理ポートのSD(2)に"0"を
書き込むと、ビデオ制御装置56は、ビデオ信号を生成
する。
は、電源管理ポートで3つのビット、SD(0)、SD(1)、SD
(2)を提供する。SD(2)は、第2のPAL U2のピン18 DI
SPLAY_OFF出力を制御する。電源管理ポートのSD(2)に"
1"を書き込むと、ビデオ制御装置56はビデオ信号の生
成を停止する。同様に、電源管理ポートのSD(2)に"0"を
書き込むと、ビデオ制御装置56は、ビデオ信号を生成
する。
【0127】前述のように、SD(1)とSD(0)は協動して0
02、012、102、および112という4つの動作状態
を提供する。第2のPAL U2は002状態へのRESETDRV入
力によって初期化される。この状態のときに、スイッチ
21を押すと、電源17が「オフ」になるだけである。
コード実行中のある点で、ソフトウェアは、ユーザの所
望に応じて、電源管理ポートにXXXXXX012を書き込み、
第2のPAL U2を012状態に入らせる。012状態とは正
常APM状態である。各APM「取出し事象」時に、Su
pervisorルーチンは、非活動スタンバイ・タイマが満了
したか、あるいは非活動サスペンド・タイマが満了した
かを確認する。非活動スタンバイ・タイマが満了した場
合、Supervisorルーチンが入出力ポートにXXXXX1XX2を
書き込み、それによってビデオ信号がブランキングされ
る。コンピュータがスタンバイ状態から抜け出し、再び
正常動作状態に入ると、Supervisorルーチンが入出力ポ
ートにXXXXX0XX2を書き込み、それによってビデオ制御
装置56がビデオ信号を生成する。非活動サスペンド・
タイマが満了すると、Supervisorルーチンがサスペンド
・ルーチンを呼び出す。サスペンド・ルーチンについて
は、図10乃至図15に関連した記載で詳細に説明す
る。
02、012、102、および112という4つの動作状態
を提供する。第2のPAL U2は002状態へのRESETDRV入
力によって初期化される。この状態のときに、スイッチ
21を押すと、電源17が「オフ」になるだけである。
コード実行中のある点で、ソフトウェアは、ユーザの所
望に応じて、電源管理ポートにXXXXXX012を書き込み、
第2のPAL U2を012状態に入らせる。012状態とは正
常APM状態である。各APM「取出し事象」時に、Su
pervisorルーチンは、非活動スタンバイ・タイマが満了
したか、あるいは非活動サスペンド・タイマが満了した
かを確認する。非活動スタンバイ・タイマが満了した場
合、Supervisorルーチンが入出力ポートにXXXXX1XX2を
書き込み、それによってビデオ信号がブランキングされ
る。コンピュータがスタンバイ状態から抜け出し、再び
正常動作状態に入ると、Supervisorルーチンが入出力ポ
ートにXXXXX0XX2を書き込み、それによってビデオ制御
装置56がビデオ信号を生成する。非活動サスペンド・
タイマが満了すると、Supervisorルーチンがサスペンド
・ルーチンを呼び出す。サスペンド・ルーチンについて
は、図10乃至図15に関連した記載で詳細に説明す
る。
【0128】また、各APM「取出し事象」時に、Supe
rvisorルーチンは電源管理ポートを読み取る。0FFHが返
される場合、スイッチ21は押されていない。一方、0F
EHが返される場合、スイッチ21が押されており、コン
ピュータ・システム10はサスペンド・ルーチンを開始
する。サスペンド・ルーチンについては、図10乃至図
15に関連した記載で詳細に説明する。スイッチ21が
押されており、あるいは非活動タイマが満了している場
合、フェールセーフ・タイマが始動されており、C2が
充電されている。したがって、フェールセーフ・タイマ
が電源17をオフにするのを防止するために、サスペン
ド・ルーチンは入出力ポートにXXXXXX112に書き込み、
タイマをリセットし、次に、ただちに入出力ポートにXX
XXXX012を書き込み、012モードでレジュームする。シ
ステムをサスペンドするときは、サスペンド・ルーチン
が入出力ポートにXXXXXX112を書き込み、ただちに電源
17を「オフ」にする。
rvisorルーチンは電源管理ポートを読み取る。0FFHが返
される場合、スイッチ21は押されていない。一方、0F
EHが返される場合、スイッチ21が押されており、コン
ピュータ・システム10はサスペンド・ルーチンを開始
する。サスペンド・ルーチンについては、図10乃至図
15に関連した記載で詳細に説明する。スイッチ21が
押されており、あるいは非活動タイマが満了している場
合、フェールセーフ・タイマが始動されており、C2が
充電されている。したがって、フェールセーフ・タイマ
が電源17をオフにするのを防止するために、サスペン
ド・ルーチンは入出力ポートにXXXXXX112に書き込み、
タイマをリセットし、次に、ただちに入出力ポートにXX
XXXX012を書き込み、012モードでレジュームする。シ
ステムをサスペンドするときは、サスペンド・ルーチン
が入出力ポートにXXXXXX112を書き込み、ただちに電源
17を「オフ」にする。
【0129】システム・ソフトウェア 本発明のコンピュータ・システム10のハードウェア態
様について説明したので、引き続きコード態様について
説明する。
様について説明したので、引き続きコード態様について
説明する。
【0130】図8を参照すると、power-upルーチンの全
体図が示されている。このルーチンは200で、CPU
がリセット・ベクトルでポイントされたコードにジャン
プし、それを実行するときに開始する。これは、CPU
を電源投入するたびに行われると共に、ハードウェア・
リセット信号によって、あるいはリセット・ベクトルで
ポイントされたコードにジャンプすることによってRESE
T命令が実行されるときに、CPUがリセットされると
き行われる。そのようなリセット手順は当技術分野で周
知である。
体図が示されている。このルーチンは200で、CPU
がリセット・ベクトルでポイントされたコードにジャン
プし、それを実行するときに開始する。これは、CPU
を電源投入するたびに行われると共に、ハードウェア・
リセット信号によって、あるいはリセット・ベクトルで
ポイントされたコードにジャンプすることによってRESE
T命令が実行されるときに、CPUがリセットされると
き行われる。そのようなリセット手順は当技術分野で周
知である。
【0131】一般に、Power-Upルーチンの流れは、シス
テムがオフ状態156であるか、サスペンド状態154
であるかによって異なる。すなわち、CMOS NVRAM 96
でサスペンド・フラグがクリアされているか、セットさ
れているかによって異なる。202に示すように、コン
ピュータ・システム10は不揮発性CMOSメモリ96から
サスペンド・フラグを読み取ることによって、それ自体
がオフ状態156であるか、サスペンド状態154であ
るかを判断する。コンピュータ・システム10が正常動
作状態150を抜け出してオフ状態156またはサスペ
ンド状態154に入ると、各ルーチンはNVRAM 96中の
サスペンド・フラグをセットするか、あるいはクリアす
る。NVRAM 96中のサスペンド・フラグがセットの場
合、コンピュータ・システム10はサスペンド状態15
4であり、コンピュータ・システム10の状態は固定記
憶装置31に記憶されている。一方、NVRAM 96中のサ
スペンド・フラグがクリアの場合、コンピュータ・シス
テム10はオフ状態156であり、コンピュータ・シス
テム10の状態は固定記憶装置31に記憶されていな
い。したがって、NVRAM 96中のサスペンド・フラグが
クリアの場合、コンピュータは、タスク204乃至21
0に示す「正常」ブート・ルーチンを実行する。第1の
タスクは、204に示す電源オン自己試験(POST)
であり、これについては図16乃至図18に関連した記
載で詳細に説明する。206に示すように、CPU 4
0は、POSTから戻った後、PBOOTルーチンを呼び出し、
オペレーティング・システムをロードする。
テムがオフ状態156であるか、サスペンド状態154
であるかによって異なる。すなわち、CMOS NVRAM 96
でサスペンド・フラグがクリアされているか、セットさ
れているかによって異なる。202に示すように、コン
ピュータ・システム10は不揮発性CMOSメモリ96から
サスペンド・フラグを読み取ることによって、それ自体
がオフ状態156であるか、サスペンド状態154であ
るかを判断する。コンピュータ・システム10が正常動
作状態150を抜け出してオフ状態156またはサスペ
ンド状態154に入ると、各ルーチンはNVRAM 96中の
サスペンド・フラグをセットするか、あるいはクリアす
る。NVRAM 96中のサスペンド・フラグがセットの場
合、コンピュータ・システム10はサスペンド状態15
4であり、コンピュータ・システム10の状態は固定記
憶装置31に記憶されている。一方、NVRAM 96中のサ
スペンド・フラグがクリアの場合、コンピュータ・シス
テム10はオフ状態156であり、コンピュータ・シス
テム10の状態は固定記憶装置31に記憶されていな
い。したがって、NVRAM 96中のサスペンド・フラグが
クリアの場合、コンピュータは、タスク204乃至21
0に示す「正常」ブート・ルーチンを実行する。第1の
タスクは、204に示す電源オン自己試験(POST)
であり、これについては図16乃至図18に関連した記
載で詳細に説明する。206に示すように、CPU 4
0は、POSTから戻った後、PBOOTルーチンを呼び出し、
オペレーティング・システムをロードする。
【0132】PBOOTルーチンは、IBM PS/2コンピュータ
上で動作する典型的なルーチンに、以下で説明するわず
かな変更を加えたものである。PBOOTは、どこからブー
トするか(ハード・ドライブ31またはフロッピィ・ド
ライブ27内部のディスクから)を決定し、オペレーテ
ィング・システムをロードし、CONFIG.SYSファイルに命
令されたシステムの変更を分析して実行し、最後に、オ
ペレーティング・システムに制御を戻す前にAUTOEXEC.B
ATバッチ・ファイルを実行する。PBOOTルーチンは当技
術分野では周知である。しかし、本発明のコンピュータ
・システム10に固有の機能として、このブート・ルー
チンは、オペレーティング・システムに組み込まれた拡
張電源管理(APM)拡張プログラミング・インタフェ
ース(API)と通信する。APM APIはインテル社およ
びマイクロソフト社によって開発され、現在、多数のオ
ペレーティング・システムがAPM APIを実施している。
これらのオペレーティング・システムとしては、たとえ
ば、IBMのOS/2、IBMのPC-DOS、マイクロソフ
ト社のMS-DOS、マイクロソフト社のWindowsなどがあ
る。APM BIOSブート・ルーチンはAPM OSにSupervisorル
ーチンの存在を通知する。210に示すように、オペレ
ーティング・システムは、ユーザが命令したコードを無
限に実行する。しかし、APIにSupervisorルーチンに
ついて通知した結果は、212に示すように、APM BIOS
およびAPM OSが、Supervisorルーチンを、実行中のプロ
グラムと「並列」して実行することである。すなわち、
コンピュータ・システム10は時間多重化多重タスク・
システムであり、APM取出し事象、したがってSuperv
isorルーチンは定期的に実行される。結果として、Supe
rvisorにルーチンがほぼ毎秒実行されることになる。Su
pervisorルーチンについては、図9に関連した記載で詳
細に説明する。図4に関連した記載で説明するように、
normal bootルーチン204乃至210が終了した後、
コンピュータ・システム10は正常動作状態150にな
る。
上で動作する典型的なルーチンに、以下で説明するわず
かな変更を加えたものである。PBOOTは、どこからブー
トするか(ハード・ドライブ31またはフロッピィ・ド
ライブ27内部のディスクから)を決定し、オペレーテ
ィング・システムをロードし、CONFIG.SYSファイルに命
令されたシステムの変更を分析して実行し、最後に、オ
ペレーティング・システムに制御を戻す前にAUTOEXEC.B
ATバッチ・ファイルを実行する。PBOOTルーチンは当技
術分野では周知である。しかし、本発明のコンピュータ
・システム10に固有の機能として、このブート・ルー
チンは、オペレーティング・システムに組み込まれた拡
張電源管理(APM)拡張プログラミング・インタフェ
ース(API)と通信する。APM APIはインテル社およ
びマイクロソフト社によって開発され、現在、多数のオ
ペレーティング・システムがAPM APIを実施している。
これらのオペレーティング・システムとしては、たとえ
ば、IBMのOS/2、IBMのPC-DOS、マイクロソフ
ト社のMS-DOS、マイクロソフト社のWindowsなどがあ
る。APM BIOSブート・ルーチンはAPM OSにSupervisorル
ーチンの存在を通知する。210に示すように、オペレ
ーティング・システムは、ユーザが命令したコードを無
限に実行する。しかし、APIにSupervisorルーチンに
ついて通知した結果は、212に示すように、APM BIOS
およびAPM OSが、Supervisorルーチンを、実行中のプロ
グラムと「並列」して実行することである。すなわち、
コンピュータ・システム10は時間多重化多重タスク・
システムであり、APM取出し事象、したがってSuperv
isorルーチンは定期的に実行される。結果として、Supe
rvisorにルーチンがほぼ毎秒実行されることになる。Su
pervisorルーチンについては、図9に関連した記載で詳
細に説明する。図4に関連した記載で説明するように、
normal bootルーチン204乃至210が終了した後、
コンピュータ・システム10は正常動作状態150にな
る。
【0133】再びタスク202を参照する。NVRAM 96
にサスペンドフラグがセットされている場合、システム
状態はハード・ドライブ31に保存されており、コンピ
ュータ・システム10はタスク214乃至220に示す
レジューム・ ブート・ルーチンを実行する。まず、2
14に示すように、システムは簡略POSTを実行する。簡
略POSTについては、図16乃至図18に関連した記載で
詳細に説明する。216に示すように、システムは、簡
略POSTの後にレジューム・ルーチンを呼び出す。レジュ
ーム・ルーチンについては、図19乃至図23に関連し
た記載で詳述する。レジューム・ルーチンは、コンピュ
ータ・システム10の状態を該システム10がサスペン
ドされる前の構成に復元する、と言えば十分であろう。
レジューム・ ブート・ルーチンは、タスク204乃至
210に示すnormal bootルーチンと異なり、APM APIに
Supervisorルーチンの存在を通知する必要がない。とい
うのは、APMルーチンは、間違いなくシステムをサス
ペンドするために動作しており、システム状態が復元さ
れると、再びメモリにロードされるからである。したが
って、212および220に示すように、レジューム・
ルーチンがコンピュータ・システム10の状態の復元を
終了するとき、APMはすでに存在し、復元されたコー
ドと「並列的に」動作している。図4に関連した記載で
説明するように、レジューム・ ブート・ルーチン21
4乃至220が終了した後、コンピュータ・システム1
0は正常動作状態150になる。したがって、normal b
ootルーチン204乃至210またはレジューム・ ブー
ト・ルーチン214乃至220が実行された後、コンピ
ュータ・システム10は正常動作状態150になる。
にサスペンドフラグがセットされている場合、システム
状態はハード・ドライブ31に保存されており、コンピ
ュータ・システム10はタスク214乃至220に示す
レジューム・ ブート・ルーチンを実行する。まず、2
14に示すように、システムは簡略POSTを実行する。簡
略POSTについては、図16乃至図18に関連した記載で
詳細に説明する。216に示すように、システムは、簡
略POSTの後にレジューム・ルーチンを呼び出す。レジュ
ーム・ルーチンについては、図19乃至図23に関連し
た記載で詳述する。レジューム・ルーチンは、コンピュ
ータ・システム10の状態を該システム10がサスペン
ドされる前の構成に復元する、と言えば十分であろう。
レジューム・ ブート・ルーチンは、タスク204乃至
210に示すnormal bootルーチンと異なり、APM APIに
Supervisorルーチンの存在を通知する必要がない。とい
うのは、APMルーチンは、間違いなくシステムをサス
ペンドするために動作しており、システム状態が復元さ
れると、再びメモリにロードされるからである。したが
って、212および220に示すように、レジューム・
ルーチンがコンピュータ・システム10の状態の復元を
終了するとき、APMはすでに存在し、復元されたコー
ドと「並列的に」動作している。図4に関連した記載で
説明するように、レジューム・ ブート・ルーチン21
4乃至220が終了した後、コンピュータ・システム1
0は正常動作状態150になる。したがって、normal b
ootルーチン204乃至210またはレジューム・ ブー
ト・ルーチン214乃至220が実行された後、コンピ
ュータ・システム10は正常動作状態150になる。
【0134】図9は、Supervisorルーチンの詳細を示す
フローチャートである。このルーチンは、「取出し事
象」時にAPMによって約1秒に1回呼び出される。各
オペレーティング・システムは、それぞれの頻度で取出
し事象を実行する。
フローチャートである。このルーチンは、「取出し事
象」時にAPMによって約1秒に1回呼び出される。各
オペレーティング・システムは、それぞれの頻度で取出
し事象を実行する。
【0135】Supervisorルーチンは図9の222から始
まる。以下の記載では、コンピュータ・システム10が
正常動作状態150から開始するものと仮定している。
第1のタスクは、224で、ユーザがスイッチ21を押
したか否かを試験することである。図6および図7に関
連した記載で詳細に説明するように、スイッチ21は、
電源管理ポート・バイトを読み取ることによって試験さ
れる。電源管理ポートは、第2のPAL U2がスイッチ状態
012のときに読み取られると、スイッチ21が押され
ていない場合はFFHを返し、スイッチ21が押されて
いる場合はFEHを返す。
まる。以下の記載では、コンピュータ・システム10が
正常動作状態150から開始するものと仮定している。
第1のタスクは、224で、ユーザがスイッチ21を押
したか否かを試験することである。図6および図7に関
連した記載で詳細に説明するように、スイッチ21は、
電源管理ポート・バイトを読み取ることによって試験さ
れる。電源管理ポートは、第2のPAL U2がスイッチ状態
012のときに読み取られると、スイッチ21が押され
ていない場合はFFHを返し、スイッチ21が押されて
いる場合はFEHを返す。
【0136】タスク224での試験が、ユーザがスイッ
チ21を押したことを示す場合、Supervisorルーチン
は、226でサスペンド要求APMリターン・コードを
セットし、次に228でAPMに戻る。APMは、セッ
トされた"サスペンド要求"APMリターン・コードに応
じて、必要なシステム・タスク(ハード・ディスクの同
期化などの)を実行し、次に「サスペンド・コマンド」
を発行する。サスペンド・コマンドによって、APM BIOS
Routingルーチンは、サスペンド・ルーチンを呼び出
す。サスペンド・ルーチンについては、図10乃至図1
5に関連した記載で詳細に説明する。基本的に、サスペ
ンド・ルーチンによってコンピュータ・システム10は
正常動作状態150を終了し、サスペンド状態154に
入り、数命令後(システムのサスペンド準備が完了して
いない場合)、あるいは数分、数時間、数日、数週、ま
たは数年後(システムがサスペンドされ、レジュームさ
れる場合)にSupervisorルーチンに制御を返すことがで
きる。サスペンド・ルーチンは、サスペンドなしで戻る
か、サスペンドおよびレジュームの完了後に戻るかとは
無関係に、常に、"Normal サスペンド・"APMリター
ン・コードをセットする。
チ21を押したことを示す場合、Supervisorルーチン
は、226でサスペンド要求APMリターン・コードを
セットし、次に228でAPMに戻る。APMは、セッ
トされた"サスペンド要求"APMリターン・コードに応
じて、必要なシステム・タスク(ハード・ディスクの同
期化などの)を実行し、次に「サスペンド・コマンド」
を発行する。サスペンド・コマンドによって、APM BIOS
Routingルーチンは、サスペンド・ルーチンを呼び出
す。サスペンド・ルーチンについては、図10乃至図1
5に関連した記載で詳細に説明する。基本的に、サスペ
ンド・ルーチンによってコンピュータ・システム10は
正常動作状態150を終了し、サスペンド状態154に
入り、数命令後(システムのサスペンド準備が完了して
いない場合)、あるいは数分、数時間、数日、数週、ま
たは数年後(システムがサスペンドされ、レジュームさ
れる場合)にSupervisorルーチンに制御を返すことがで
きる。サスペンド・ルーチンは、サスペンドなしで戻る
か、サスペンドおよびレジュームの完了後に戻るかとは
無関係に、常に、"Normal サスペンド・"APMリター
ン・コードをセットする。
【0137】大部分の場合、スイッチ21は押されてお
らず、Supervisorルーチンはタスク230に移行し、シ
ステムがレジュームしたか否かを確認する。サスペンド
・ルーチンが呼び出されると、コンピュータ・システム
10は、該ルーチンがサスペンドなしで戻るか、サスペ
ンドおよびレジュームの完了後に戻るかとは無関係に、
それ自体がレジュームされたものとみなす。レジューム
については230で試験され、コンピュータ・システム
10がレジュームされた(または、ファイル活動のDM
Aによってサスペンドが実行されなかった)場合、正常
レジュームAPMリターン・コードが232でセットさ
れ、234でAPMに返される。APM OSドライバは、こ
れに応じて、サスペンドの間に無効になったシステム・
クロックおよびその他の値を更新する。
らず、Supervisorルーチンはタスク230に移行し、シ
ステムがレジュームしたか否かを確認する。サスペンド
・ルーチンが呼び出されると、コンピュータ・システム
10は、該ルーチンがサスペンドなしで戻るか、サスペ
ンドおよびレジュームの完了後に戻るかとは無関係に、
それ自体がレジュームされたものとみなす。レジューム
については230で試験され、コンピュータ・システム
10がレジュームされた(または、ファイル活動のDM
Aによってサスペンドが実行されなかった)場合、正常
レジュームAPMリターン・コードが232でセットさ
れ、234でAPMに返される。APM OSドライバは、こ
れに応じて、サスペンドの間に無効になったシステム・
クロックおよびその他の値を更新する。
【0138】大部分の場合、コンピュータ・システム1
0はレジュームされておらず、Supervisorルーチンはタ
スク236に移行し、ユーザ活動について試験する。タ
スク236で、3種類のユーザ活動、すなわちハードフ
ァイル31活動、キーボード12活動、およびマウス1
3活動が試験される。Supervisorルーチンは、あらゆる
APM取出し事象について、ハードファイル・ヘッド、
シリンダ、およびセクタの値を読み取り、マウス13が
最後に送信したバイトの1バイト値(垂直位置である)
を読み取り、キーボード・ポートでの1バイト値(最後
に押されたキーである)を読み取ると共に、実時間クロ
ック98から分値を読み取る。この分値は、0分から5
9分までの範囲であり、各時間の始めに0分に戻る。5
つの活動変数(ヘッド、シリンダ、セクタ、マウス・バ
イト、および、キーボード・バイト)および分値は一時
的に記憶される。5つの活動変数は次に、前の取出し事
象から保存された5つの活動変数と比較される。5つの
現行値が前の取出し事象の5つの値と同じである場合、
ユーザ活動は行われていない。値が異なる場合、ユーザ
活動が行われており、現行の活動変数が、次の取出し事
象時に読み取られる値と比較するために保存される。
0はレジュームされておらず、Supervisorルーチンはタ
スク236に移行し、ユーザ活動について試験する。タ
スク236で、3種類のユーザ活動、すなわちハードフ
ァイル31活動、キーボード12活動、およびマウス1
3活動が試験される。Supervisorルーチンは、あらゆる
APM取出し事象について、ハードファイル・ヘッド、
シリンダ、およびセクタの値を読み取り、マウス13が
最後に送信したバイトの1バイト値(垂直位置である)
を読み取り、キーボード・ポートでの1バイト値(最後
に押されたキーである)を読み取ると共に、実時間クロ
ック98から分値を読み取る。この分値は、0分から5
9分までの範囲であり、各時間の始めに0分に戻る。5
つの活動変数(ヘッド、シリンダ、セクタ、マウス・バ
イト、および、キーボード・バイト)および分値は一時
的に記憶される。5つの活動変数は次に、前の取出し事
象から保存された5つの活動変数と比較される。5つの
現行値が前の取出し事象の5つの値と同じである場合、
ユーザ活動は行われていない。値が異なる場合、ユーザ
活動が行われており、現行の活動変数が、次の取出し事
象時に読み取られる値と比較するために保存される。
【0139】前記の活動検出方式は、CPU上でルーチ
ンを実行するというものである。また、活動をハードウ
ェア的に監視することができる。たとえば、16本のハ
ードウェア割込み線を活動に関して監視することができ
る。
ンを実行するというものである。また、活動をハードウ
ェア的に監視することができる。たとえば、16本のハ
ードウェア割込み線を活動に関して監視することができ
る。
【0140】活動があった場合、Supervisorルーチンは
次に、238で、スタンバイ・フラグを試験することに
よってコンピュータ・システム10がスタンバイ状態1
52であるか否かを決定する。スタンバイ・フラグがセ
ットされており、コンピュータ・システム10がスタン
バイ状態152であることを示す場合、Supervisorルー
チンは240で、スタンバイ状態152を終了し、正常
動作状態150に入る。Supervisorルーチンは、スタン
バイ状態152に入ったときに電源を遮断された装置に
電源を再投入することによってスタンバイ状態152を
終了する。好ましい実施例では、これは以下の動作を含
む。(1)電源管理ポートに01Hが書き込まれ、ビデ
オ制御装置56がビデオ信号の生成を開始すると共に、
第2のPAL U2が012状態のままになる。(2)固定デ
ィスク制御装置86に適切な値が書き込まれ、ハード・
ドライブ31内のハード・ディスクが回転を開始する。
(3)スタンバイ・フラグがクリアされ、コンピュータ
・システム10が正常動作状態150になったことを示
す。
次に、238で、スタンバイ・フラグを試験することに
よってコンピュータ・システム10がスタンバイ状態1
52であるか否かを決定する。スタンバイ・フラグがセ
ットされており、コンピュータ・システム10がスタン
バイ状態152であることを示す場合、Supervisorルー
チンは240で、スタンバイ状態152を終了し、正常
動作状態150に入る。Supervisorルーチンは、スタン
バイ状態152に入ったときに電源を遮断された装置に
電源を再投入することによってスタンバイ状態152を
終了する。好ましい実施例では、これは以下の動作を含
む。(1)電源管理ポートに01Hが書き込まれ、ビデ
オ制御装置56がビデオ信号の生成を開始すると共に、
第2のPAL U2が012状態のままになる。(2)固定デ
ィスク制御装置86に適切な値が書き込まれ、ハード・
ドライブ31内のハード・ディスクが回転を開始する。
(3)スタンバイ・フラグがクリアされ、コンピュータ
・システム10が正常動作状態150になったことを示
す。
【0141】また、活動があった場合、実時間クロック
98の分値が、次の取出し事象時に読み取られる分値と
比較するために保存される。現行の分値を保存すると、
241で、非活動スタンバイ・タイマと非活動サスペン
ド・タイマが効果的にリセットされる。通常の使用時に
は、ユーザ活動があり、Supervisorルーチンは242で
事象なしAPMリターン・コードをセットし、243で
APM呼出しコードに戻る。APMはそれ以後、事象な
しリターン・コードに応じてルーチンを呼び出すことは
ない。
98の分値が、次の取出し事象時に読み取られる分値と
比較するために保存される。現行の分値を保存すると、
241で、非活動スタンバイ・タイマと非活動サスペン
ド・タイマが効果的にリセットされる。通常の使用時に
は、ユーザ活動があり、Supervisorルーチンは242で
事象なしAPMリターン・コードをセットし、243で
APM呼出しコードに戻る。APMはそれ以後、事象な
しリターン・コードに応じてルーチンを呼び出すことは
ない。
【0142】タスク236での試験が、ユーザ活動がな
かったことを示す場合、Supervisorルーチンは次に、2
45および247で、非活動スタンバイ・タイマおよび
非活動サスペンド・タイマがそれぞれ満了しているか否
かを試験する。コンピュータ・システム10がスタンバ
イ状態152の場合、非活動スタンバイ・タイマは満了
に関して検査されない。その代わり、試験はタスク24
4でスキップされる。
かったことを示す場合、Supervisorルーチンは次に、2
45および247で、非活動スタンバイ・タイマおよび
非活動サスペンド・タイマがそれぞれ満了しているか否
かを試験する。コンピュータ・システム10がスタンバ
イ状態152の場合、非活動スタンバイ・タイマは満了
に関して検査されない。その代わり、試験はタスク24
4でスキップされる。
【0143】2つのタイマは、保存された分値から現行
の分値を減算し、ユーザ活動が発生した時からの分数に
対応する値を得ることによって、満了に関して検査され
る。この値が、245で、非活動スタンバイ・タイムア
ウト値と、247で、非活動サスペンド・タイムアウト
値と比較される。2つのタイムアウト値は、ユーザによ
って選択可能であり、コンピュータ・システム10がス
タンバイ状態152に入ることがなく、あるいはサスペ
ンド状態154に入ることがなく、あるいは一方のタイ
マの満了によってスタンバイ状態152またはサスペン
ド状態154に入ることがないように設定することがで
きる。どちらかのタイムアウト値をゼロに設定するの
は、タイマが満了してはならないことを示す。
の分値を減算し、ユーザ活動が発生した時からの分数に
対応する値を得ることによって、満了に関して検査され
る。この値が、245で、非活動スタンバイ・タイムア
ウト値と、247で、非活動サスペンド・タイムアウト
値と比較される。2つのタイムアウト値は、ユーザによ
って選択可能であり、コンピュータ・システム10がス
タンバイ状態152に入ることがなく、あるいはサスペ
ンド状態154に入ることがなく、あるいは一方のタイ
マの満了によってスタンバイ状態152またはサスペン
ド状態154に入ることがないように設定することがで
きる。どちらかのタイムアウト値をゼロに設定するの
は、タイマが満了してはならないことを示す。
【0144】最後のユーザ活動からの分数が非活動スタ
ンバイ・タイムアウト値以上である場合、Supervisorル
ーチンは246で、コンピュータ・システム10をスタ
ンバイ状態152に入らせる。非活動スタンバイ・タイ
マが満了していない場合、Supervisorルーチンは次に、
247で非活動サスペンド・タイマを満了に関して試験
する。一方、非活動スタンバイ・タイマが満了している
場合、Supervisorルーチンは、一定の構成要素をそれぞ
れの低出力モードにすることによって、コンピュータ・
システム10を、スタンバイ状態152に入らせる。好
ましい実施例では、これは次の動作を含む。(1)電源
管理ポートに05Hが書き込まれ、ビデオ制御装置56
がビデオ信号の生成を停止すると共に、第2のPAL U2が
012状態のままになる。(2)固定ディスク制御装置
86に適切な値が書き込まれ、ハード・ドライブ31が
低出力モードに入る(ハード・ドライブ内のハード・デ
ィスクが回転を停止する)。(3)スタンバイ・フラグ
がセットされ、コンピュータ・システム10がスタンバ
イ状態152であることを示す。要するに、好ましい実
施例では、Supervisorルーチンがビデオ信号を空白化
し、ハード・ドライブ31内のハード・ディスクを回転
すると共に、コンピュータ・システム10がスタンバイ
状態152であることを示すフラグをセットする。Supe
rvisorルーチンは、コンピュータ・システム10をスタ
ンバイ状態152に入らせた後、247で、非活動サス
ペンド・タイマを満了に関して試験する。
ンバイ・タイムアウト値以上である場合、Supervisorル
ーチンは246で、コンピュータ・システム10をスタ
ンバイ状態152に入らせる。非活動スタンバイ・タイ
マが満了していない場合、Supervisorルーチンは次に、
247で非活動サスペンド・タイマを満了に関して試験
する。一方、非活動スタンバイ・タイマが満了している
場合、Supervisorルーチンは、一定の構成要素をそれぞ
れの低出力モードにすることによって、コンピュータ・
システム10を、スタンバイ状態152に入らせる。好
ましい実施例では、これは次の動作を含む。(1)電源
管理ポートに05Hが書き込まれ、ビデオ制御装置56
がビデオ信号の生成を停止すると共に、第2のPAL U2が
012状態のままになる。(2)固定ディスク制御装置
86に適切な値が書き込まれ、ハード・ドライブ31が
低出力モードに入る(ハード・ドライブ内のハード・デ
ィスクが回転を停止する)。(3)スタンバイ・フラグ
がセットされ、コンピュータ・システム10がスタンバ
イ状態152であることを示す。要するに、好ましい実
施例では、Supervisorルーチンがビデオ信号を空白化
し、ハード・ドライブ31内のハード・ディスクを回転
すると共に、コンピュータ・システム10がスタンバイ
状態152であることを示すフラグをセットする。Supe
rvisorルーチンは、コンピュータ・システム10をスタ
ンバイ状態152に入らせた後、247で、非活動サス
ペンド・タイマを満了に関して試験する。
【0145】247で、Supervisorルーチンは、非活動
タイマが満了したか否かを試験する。最後のユーザ活動
からの分数が非活動サスペンド・タイムアウト値以上の
場合、Supervisorルーチンは、248でサスペンド要求
APMリターン・コードをセットし、243でAPMに
戻る。タスク226に関連した記載で説明したように、
APMは、セットされたサスペンド要求APMリターン
・コードに応じて、必要なシステム・タスクを実行し、
次にサスペンド・ルーチンを呼び出す。サスペンド・ル
ーチンは、図10乃至図15に関連した記載で詳細に説
明するように、要するに、コンピュータ・システム10
に正常動作状態150を終了させ、サスペンド状態15
4に入らせる。タスク226に関連した記載で説明する
ように、サスペンド・ルーチンは、コンピュータ・シス
テム10のサスペンドの有無とは無関係にSupervisorル
ーチンに制御を返すことができる。一方、非活動サスペ
ンド・タイマが満了していない場合、Supervisorルーチ
ンは242で事象なしAPMリターン・コードをセット
し、243でAPM呼出しコードに戻る。
タイマが満了したか否かを試験する。最後のユーザ活動
からの分数が非活動サスペンド・タイムアウト値以上の
場合、Supervisorルーチンは、248でサスペンド要求
APMリターン・コードをセットし、243でAPMに
戻る。タスク226に関連した記載で説明したように、
APMは、セットされたサスペンド要求APMリターン
・コードに応じて、必要なシステム・タスクを実行し、
次にサスペンド・ルーチンを呼び出す。サスペンド・ル
ーチンは、図10乃至図15に関連した記載で詳細に説
明するように、要するに、コンピュータ・システム10
に正常動作状態150を終了させ、サスペンド状態15
4に入らせる。タスク226に関連した記載で説明する
ように、サスペンド・ルーチンは、コンピュータ・シス
テム10のサスペンドの有無とは無関係にSupervisorル
ーチンに制御を返すことができる。一方、非活動サスペ
ンド・タイマが満了していない場合、Supervisorルーチ
ンは242で事象なしAPMリターン・コードをセット
し、243でAPM呼出しコードに戻る。
【0146】大部分の場合、事象なしAPMリターン・
コードはAPMに返されるが、様々な他の事象をAPM
に返すこともできる。しかし、APMリターン・コード
は各APM取出し事象について1つしか指定できない。
たとえば、スタンバイ状態152に入った後、APMに
事象なしが返される。サスペンド状態154を終了した
後は、APMに"Normal Suspend"APMリターン・コー
ドが返される。APMの待ち行列に入る特定のメッセー
ジは、コンピュータ・システムの特性によって異なる。
Supervisorルーチンは、正常レジュームAPMリターン
・コードやサスペンド要求APMリターン・コードも返
す。
コードはAPMに返されるが、様々な他の事象をAPM
に返すこともできる。しかし、APMリターン・コード
は各APM取出し事象について1つしか指定できない。
たとえば、スタンバイ状態152に入った後、APMに
事象なしが返される。サスペンド状態154を終了した
後は、APMに"Normal Suspend"APMリターン・コー
ドが返される。APMの待ち行列に入る特定のメッセー
ジは、コンピュータ・システムの特性によって異なる。
Supervisorルーチンは、正常レジュームAPMリターン
・コードやサスペンド要求APMリターン・コードも返
す。
【0147】Power-Upおよびレジューム・ルーチンは、
サスペンド・ルーチンの知識があると最もよく理解され
る。したがって、APM BIOSルーチンについての説明は、
以下の順序で進めるのが最もよいと考えられる。本発明
のPower-Upルーチンの概要(前述の図8)、Supervisor
ルーチンの詳述(図9)、本発明のサスペンド・ルーチ
ンの詳述(図10乃至図15)、本発明のPower-Upルー
チンの詳述(図16乃至図18)、本発明のレジューム
・ルーチンの詳述(図19乃至図23)、SaveCPU Stat
eルーチンの詳述(図24乃至図27)、Restore CPU S
tateルーチンの詳述(図28乃至図31)、Save 8259
Stateルーチンの詳述(図32乃至図34)。
サスペンド・ルーチンの知識があると最もよく理解され
る。したがって、APM BIOSルーチンについての説明は、
以下の順序で進めるのが最もよいと考えられる。本発明
のPower-Upルーチンの概要(前述の図8)、Supervisor
ルーチンの詳述(図9)、本発明のサスペンド・ルーチ
ンの詳述(図10乃至図15)、本発明のPower-Upルー
チンの詳述(図16乃至図18)、本発明のレジューム
・ルーチンの詳述(図19乃至図23)、SaveCPU Stat
eルーチンの詳述(図24乃至図27)、Restore CPU S
tateルーチンの詳述(図28乃至図31)、Save 8259
Stateルーチンの詳述(図32乃至図34)。
【0148】本発明のコンピュータ・システム10の説
明は、大部分のルーチンが相互に作用しており、サスペ
ンド/レジュームプロセスが連続サイクルなので幾分循
環的あり、Bootルーチン(図16乃至図18)またはレ
ジューム・ルーチン(図19乃至図23)の前にサスペ
ンド・ルーチン(図10乃至図15)を説明しておく
と、最も有用であると考えられる。ここで、図10乃至
図15を参照すると、サスペンド・ルーチンのフローチ
ャートが示されている。normal bootルーチン204乃
至210またはレジューム・ ブート・ルーチン214
乃至220を実行した後、コンピュータ・システム10
が正常動作状態150になることに留意されたい。さら
に、図8に関連した記載で説明したように、コンピュー
タ・システム10が正常ブート(204乃至210)し
たか、レジュームブートしたか(214乃至220)と
は無関係に、どちらかのルーチンが終了した後、図8に
示すSupervisorルーチンなどのAPM OSドライバはAPM BI
OSルーチンを認識する。この結果、APMは約1秒おき
にSupervisorルーチンをポールする。
明は、大部分のルーチンが相互に作用しており、サスペ
ンド/レジュームプロセスが連続サイクルなので幾分循
環的あり、Bootルーチン(図16乃至図18)またはレ
ジューム・ルーチン(図19乃至図23)の前にサスペ
ンド・ルーチン(図10乃至図15)を説明しておく
と、最も有用であると考えられる。ここで、図10乃至
図15を参照すると、サスペンド・ルーチンのフローチ
ャートが示されている。normal bootルーチン204乃
至210またはレジューム・ ブート・ルーチン214
乃至220を実行した後、コンピュータ・システム10
が正常動作状態150になることに留意されたい。さら
に、図8に関連した記載で説明したように、コンピュー
タ・システム10が正常ブート(204乃至210)し
たか、レジュームブートしたか(214乃至220)と
は無関係に、どちらかのルーチンが終了した後、図8に
示すSupervisorルーチンなどのAPM OSドライバはAPM BI
OSルーチンを認識する。この結果、APMは約1秒おき
にSupervisorルーチンをポールする。
【0149】サスペンド・ルーチンは、図10乃至図1
5に示されており、250から始まる。サスペンド・ル
ーチンは、SupervisorルーチンがAPMにサスペンド要
求APMリターン・コードを返すことに応じて、APM
によって呼び出される。まず、252に示すように、Sa
ve CPU Stateルーチンが呼び出される。Save CPU State
ルーチンについては、図24乃至図27に関連した記載
で説明する。今のところ、サスペンド・ルーチンが最初
に呼び出されるときにCPU 40がどんなモードであ
ろうとも、サスペンド・ルーチンの残りは、CPU 4
0がリアル・モードの状態で実行され、したがって、許
容されたアドレス空間外で命令を実行しようとし、また
は特権をもつ命令を実行しようとすることによって起こ
る可能性があるエラーを発生させる恐れなしに実行する
ことができる、と言っておけば十分であろう。
5に示されており、250から始まる。サスペンド・ル
ーチンは、SupervisorルーチンがAPMにサスペンド要
求APMリターン・コードを返すことに応じて、APM
によって呼び出される。まず、252に示すように、Sa
ve CPU Stateルーチンが呼び出される。Save CPU State
ルーチンについては、図24乃至図27に関連した記載
で説明する。今のところ、サスペンド・ルーチンが最初
に呼び出されるときにCPU 40がどんなモードであ
ろうとも、サスペンド・ルーチンの残りは、CPU 4
0がリアル・モードの状態で実行され、したがって、許
容されたアドレス空間外で命令を実行しようとし、また
は特権をもつ命令を実行しようとすることによって起こ
る可能性があるエラーを発生させる恐れなしに実行する
ことができる、と言っておけば十分であろう。
【0150】253で、Save CPU Stateルーチンは固有
の方法で、サスペンド・ルーチンにプログラム制御を返
す。Save CPU Stateルーチンからサスペンド・ルーチン
への「リターン」は、CPUのリセットを伴う。「リタ
ーン」については、以下の、図24乃至図27のタスク
630および632に関連した記載に詳細に説明する。
サスペンド・ルーチンに関する重要な事項は、CPUレ
ジスタがセグメントE000Hに書き込まれており、CPU
40が現在、リアル・モードであることである。
の方法で、サスペンド・ルーチンにプログラム制御を返
す。Save CPU Stateルーチンからサスペンド・ルーチン
への「リターン」は、CPUのリセットを伴う。「リタ
ーン」については、以下の、図24乃至図27のタスク
630および632に関連した記載に詳細に説明する。
サスペンド・ルーチンに関する重要な事項は、CPUレ
ジスタがセグメントE000Hに書き込まれており、CPU
40が現在、リアル・モードであることである。
【0151】サスペンド・ルーチンは次に、254で、
スイッチ21が押されたか否かを確認する。スイッチ2
1の閉鎖は、図6および図7に関連した記載で説明する
ように試験される。簡単に言うと、スイッチ21が押さ
れている場合、電源管理ポートは、読み取られるとFE
Hを返す。押されていない場合は、読み取られるとFF
を返す。スイッチ21が押されていない場合、実行中の
サスペンドはソフトウェア・サスペンドであり、CMOS N
VRAM 96中でソフトウェア・サスペンド・フラグがセ
ットされる。これによって、ソフトウェア・サスペンド
が、スイッチ閉鎖によって開始されるハードウェア・サ
スペンドと混同されることはなくなる。サスペンドがソ
フトウェア・サスペンドである場合、次のスイッチ閉鎖
によってサスペンドはハードウェア・サスペンドにな
る。ソフトウェア・サスペンドをハードウェア・サスペ
ンドに変換した後の次のスイッチ閉鎖によって、サスペ
ンドは中止される。
スイッチ21が押されたか否かを確認する。スイッチ2
1の閉鎖は、図6および図7に関連した記載で説明する
ように試験される。簡単に言うと、スイッチ21が押さ
れている場合、電源管理ポートは、読み取られるとFE
Hを返す。押されていない場合は、読み取られるとFF
を返す。スイッチ21が押されていない場合、実行中の
サスペンドはソフトウェア・サスペンドであり、CMOS N
VRAM 96中でソフトウェア・サスペンド・フラグがセ
ットされる。これによって、ソフトウェア・サスペンド
が、スイッチ閉鎖によって開始されるハードウェア・サ
スペンドと混同されることはなくなる。サスペンドがソ
フトウェア・サスペンドである場合、次のスイッチ閉鎖
によってサスペンドはハードウェア・サスペンドにな
る。ソフトウェア・サスペンドをハードウェア・サスペ
ンドに変換した後の次のスイッチ閉鎖によって、サスペ
ンドは中止される。
【0152】次に、260に示すように、BIOS ROM 8
8がアンシャドウされる。BIOS ROM88は、まずセグメ
ントC000HおよびD000HへのISAアクセスをオフにする
ことによってアンシャドウされる。次に、BIOSベクトル
が、セグメントC000HおよびD000HではなくROM 88
を指すように変更される。次のタスクは、262に示
す、セグメントC000H中のスタックのセットアップであ
る。
8がアンシャドウされる。BIOS ROM88は、まずセグメ
ントC000HおよびD000HへのISAアクセスをオフにする
ことによってアンシャドウされる。次に、BIOSベクトル
が、セグメントC000HおよびD000HではなくROM 88
を指すように変更される。次のタスクは、262に示
す、セグメントC000H中のスタックのセットアップであ
る。
【0153】スタックがセットアップされた後、サスペ
ンド・ルーチンは264で、DMA制御装置72、ディ
スケット・アダプタ84、およびIDEディスク制御装
置86を検査し、DMA転送、フロッピィ・ドライブ転
送、またはハードファイル転送がそれぞれ、現在実行中
であるか否かを確認する。実行中である場合、これらの
3種の転送に固有の特性によって、十分なサスペンドを
実行することが妨げられるので、サスペンドを実行する
ことはできない。たとえば、ハード・ドライブ31から
のハードファイル転送を実行中の場合、データはすでに
IDE制御装置によって読み取られているが、まだシス
テム・メモリ53に転送されていない。このデータは、
CPUによってうまくアクセスすることはできず、した
がって、システムがハード・ファイル読取りの途中でサ
スペンドされた場合は脱落する。したがって、これらの
3種の転送のうちどれかを実行中の場合、サスペンド
は、次のAPM取出し事象で、DMAおよびディスケッ
ト制御装置が活動についてもう1度試験されるまで延期
される。
ンド・ルーチンは264で、DMA制御装置72、ディ
スケット・アダプタ84、およびIDEディスク制御装
置86を検査し、DMA転送、フロッピィ・ドライブ転
送、またはハードファイル転送がそれぞれ、現在実行中
であるか否かを確認する。実行中である場合、これらの
3種の転送に固有の特性によって、十分なサスペンドを
実行することが妨げられるので、サスペンドを実行する
ことはできない。たとえば、ハード・ドライブ31から
のハードファイル転送を実行中の場合、データはすでに
IDE制御装置によって読み取られているが、まだシス
テム・メモリ53に転送されていない。このデータは、
CPUによってうまくアクセスすることはできず、した
がって、システムがハード・ファイル読取りの途中でサ
スペンドされた場合は脱落する。したがって、これらの
3種の転送のうちどれかを実行中の場合、サスペンド
は、次のAPM取出し事象で、DMAおよびディスケッ
ト制御装置が活動についてもう1度試験されるまで延期
される。
【0154】したがって、252、260、および26
2で実行されるタスクは、制御をAPMに戻すことがで
きるように反転しなければならない。まず、265に示
すように、BIOSが読取り/書込みから読取り専用に変更
される。これは、依然として、シャドウされたデータを
含むセグメントC000HおよびD000Hをクローズすることに
よって行われる。次に、この2つのセグメントへのIS
Aアクセスが再びオンになる。タスク262で作成され
たスタックがポップされ、復元される。最後に、267
で、制御がAPMに戻される前に、266で、Restore
CPU StateルーチンによってCPU状態が復元される。
サスペンド・ルーチンは、APMによって、次の取出し
事象時に再び、約1秒おきにポールされる。その時まで
に、おそらく、サスペンド・プロセスを妨げた転送が完
了しており、サスペンドを続行することができる。
2で実行されるタスクは、制御をAPMに戻すことがで
きるように反転しなければならない。まず、265に示
すように、BIOSが読取り/書込みから読取り専用に変更
される。これは、依然として、シャドウされたデータを
含むセグメントC000HおよびD000Hをクローズすることに
よって行われる。次に、この2つのセグメントへのIS
Aアクセスが再びオンになる。タスク262で作成され
たスタックがポップされ、復元される。最後に、267
で、制御がAPMに戻される前に、266で、Restore
CPU StateルーチンによってCPU状態が復元される。
サスペンド・ルーチンは、APMによって、次の取出し
事象時に再び、約1秒おきにポールされる。その時まで
に、おそらく、サスペンド・プロセスを妨げた転送が完
了しており、サスペンドを続行することができる。
【0155】ここで、タスク264に戻る。現在、DM
A転送、フロッピィ・ドライブ転送、ハードファイル転
送をまったく実行していない場合、サスペンドを実行す
ることができる。268からサスペンド・ルーチンが続
行する。スイッチ21を押すと、フェールセーフ・タイ
マが使用可能になることに留意されたい。したがって、
第1のタスクは、268に示すように、図6に関連した
記載で説明するフェールセーフ・タイマのリセットであ
る。フェールセーフ・タイマは、図6および図7に関連
した記載で詳細に説明するように、電源管理ポートに0X
112を書き込むことによってリセットされる。これによ
って、第2のPAL U2のピン19(図6中の)は、C2乃
至R4で発生している電圧をドレーンし、それによっ
て、C2での約DC 2.7 Vの累積電圧がQ1を通電させる
のを防止する。図6および図7に関連した記載で詳細に
説明するように、Q1が通電し、第2のPAL U2のピン1
1を論理ゼロにプルすると、第2のPAL U2内の回路が第
2のPAL U2のピン12に論理"1"を出力させ、それによ
って、電源17がコンピュータ・システム10への調整
された電力の提供を停止することに留意されたい。した
がって、C2をサスペンド・ルーチンによって少なくと
も約10秒おきにドレーンして、電力がサスペンドの途
中で除去されるのを防がねばならない。
A転送、フロッピィ・ドライブ転送、ハードファイル転
送をまったく実行していない場合、サスペンドを実行す
ることができる。268からサスペンド・ルーチンが続
行する。スイッチ21を押すと、フェールセーフ・タイ
マが使用可能になることに留意されたい。したがって、
第1のタスクは、268に示すように、図6に関連した
記載で説明するフェールセーフ・タイマのリセットであ
る。フェールセーフ・タイマは、図6および図7に関連
した記載で詳細に説明するように、電源管理ポートに0X
112を書き込むことによってリセットされる。これによ
って、第2のPAL U2のピン19(図6中の)は、C2乃
至R4で発生している電圧をドレーンし、それによっ
て、C2での約DC 2.7 Vの累積電圧がQ1を通電させる
のを防止する。図6および図7に関連した記載で詳細に
説明するように、Q1が通電し、第2のPAL U2のピン1
1を論理ゼロにプルすると、第2のPAL U2内の回路が第
2のPAL U2のピン12に論理"1"を出力させ、それによ
って、電源17がコンピュータ・システム10への調整
された電力の提供を停止することに留意されたい。した
がって、C2をサスペンド・ルーチンによって少なくと
も約10秒おきにドレーンして、電力がサスペンドの途
中で除去されるのを防がねばならない。
【0156】次に、270で、8042補助プロセッサ10
4の状態が保存される。8042補助プロセッサ104レジ
スタは、当技術分野で周知である。このレジスタは、C
PU40によって直接読取り可能であり、その値はD000
Hのデータ構造に直接書き込まれる。
4の状態が保存される。8042補助プロセッサ104レジ
スタは、当技術分野で周知である。このレジスタは、C
PU40によって直接読取り可能であり、その値はD000
Hのデータ構造に直接書き込まれる。
【0157】次に、272で、8259割込み制御装置92
の状態が保存される。サスペンド・ルーチンは、図32
乃至図34に関連した記載で詳述する8259 Save State
ルーチンを呼び出す。今のところ、8259 Save Stateル
ーチンは、2つの8259割込み制御装置92の未知のレジ
スタの一部が書込み専用の場合でも、その内容を確認す
る、と言っておけば十分であろう。レジスタ値は、D000
Hのデータ構造に直接書き込まれる。
の状態が保存される。サスペンド・ルーチンは、図32
乃至図34に関連した記載で詳述する8259 Save State
ルーチンを呼び出す。今のところ、8259 Save Stateル
ーチンは、2つの8259割込み制御装置92の未知のレジ
スタの一部が書込み専用の場合でも、その内容を確認す
る、と言っておけば十分であろう。レジスタ値は、D000
Hのデータ構造に直接書き込まれる。
【0158】8259割込み制御装置92の状態を保存した
後、8259割込み制御装置92の構成を既知の状態に変更
して、サスペンド・ルーチンによって実行される様々な
割込み駆動タスクが正しく機能できるようにしなければ
ならない。したがって、274で、BIOSデータ領域およ
びベクトル・テーブルがスワップされる。サスペンド・
ルーチンは、セグメント0000H中の現在の状態のBIOSデ
ータ領域およびベクトル・テーブルの内容をセグメント
D000Hの位置にコピーする。次に、既知の状態のBIOSデ
ータ領域およびベクトル・テーブルの内容がセグメント
D000H中のデータ構造からセグメント0000Hにコピーされ
る。既知の状態のBIOSデータ領域およびベクトル・テー
ブルは、後述の、図16乃至図18に示すBoot-Upルー
チンのタスク414で、セグメントD000Hにコピーされ
る。最後に、現在の状態のBIOSデータ領域およびベクト
ル・テーブルが、セグメント0000HからセグメントD000H
のデータ構造にコピーされる。274でのルーチンが終
了すると、割込み13H(ディスク読取り/書込み)や
割込み10H(ビデオ・アクセス)などのすべての割込
みは、所期されたとおりに機能する。
後、8259割込み制御装置92の構成を既知の状態に変更
して、サスペンド・ルーチンによって実行される様々な
割込み駆動タスクが正しく機能できるようにしなければ
ならない。したがって、274で、BIOSデータ領域およ
びベクトル・テーブルがスワップされる。サスペンド・
ルーチンは、セグメント0000H中の現在の状態のBIOSデ
ータ領域およびベクトル・テーブルの内容をセグメント
D000Hの位置にコピーする。次に、既知の状態のBIOSデ
ータ領域およびベクトル・テーブルの内容がセグメント
D000H中のデータ構造からセグメント0000Hにコピーされ
る。既知の状態のBIOSデータ領域およびベクトル・テー
ブルは、後述の、図16乃至図18に示すBoot-Upルー
チンのタスク414で、セグメントD000Hにコピーされ
る。最後に、現在の状態のBIOSデータ領域およびベクト
ル・テーブルが、セグメント0000HからセグメントD000H
のデータ構造にコピーされる。274でのルーチンが終
了すると、割込み13H(ディスク読取り/書込み)や
割込み10H(ビデオ・アクセス)などのすべての割込
みは、所期されたとおりに機能する。
【0159】次に、276で、タイマ102の状態が保
存される。該タイマのレジスタは当技術分野で周知であ
る。これらのレジスタはすべて、CPU 40によって
直接読取り可能であり、レジスタの値はD000Hのデータ
構造に直接書き込まれる。276では、固定ディスク制
御装置86の状態も保存される。固定ディスク制御装置
86レジスタは当技術分野で周知である。これらのレジ
スタはすべて、CPU40によって直接読取り可能であ
り、レジスタの値はD000Hのデータ構造に直接書き込ま
れる。
存される。該タイマのレジスタは当技術分野で周知であ
る。これらのレジスタはすべて、CPU 40によって
直接読取り可能であり、レジスタの値はD000Hのデータ
構造に直接書き込まれる。276では、固定ディスク制
御装置86の状態も保存される。固定ディスク制御装置
86レジスタは当技術分野で周知である。これらのレジ
スタはすべて、CPU40によって直接読取り可能であ
り、レジスタの値はD000Hのデータ構造に直接書き込ま
れる。
【0160】次のステップは、ハード・ドライブ31上
のサスペンド・ファイルに書き込むシステム・メモリを
準備することである。システム・メモリは、システムR
AM53(メイン・メモリと拡張メモリを共に含む)と
ビデオ・メモリ58を備えている。このとき、システム
RAM 53の各部を外部キャッシュ60に入れること
ができる。CPUキャッシュは、以下の、図24乃至図
27に関連した記載で説明するタスク628でフラッシ
ュされている。したがって、システムRAM53をハー
ド・ドライブ31に書き込めるようにするには、外部キ
ャッシュをフラッシュしておかねばならない。ゆえに、
外部キャッシュ60は286でフラッシュされる。フラ
ッシュが完了した後、システムRAM 53は元のまま
であり、メモリ・データはCPUキャッシュ41にも外
部キャッシュ60にも残っていない。
のサスペンド・ファイルに書き込むシステム・メモリを
準備することである。システム・メモリは、システムR
AM53(メイン・メモリと拡張メモリを共に含む)と
ビデオ・メモリ58を備えている。このとき、システム
RAM 53の各部を外部キャッシュ60に入れること
ができる。CPUキャッシュは、以下の、図24乃至図
27に関連した記載で説明するタスク628でフラッシ
ュされている。したがって、システムRAM53をハー
ド・ドライブ31に書き込めるようにするには、外部キ
ャッシュをフラッシュしておかねばならない。ゆえに、
外部キャッシュ60は286でフラッシュされる。フラ
ッシュが完了した後、システムRAM 53は元のまま
であり、メモリ・データはCPUキャッシュ41にも外
部キャッシュ60にも残っていない。
【0161】コンピュータ・システム10上で実行中の
コードは、固定ディスク制御装置86を未知の状態にし
ている可能性がある。したがって、次のステップは、2
92で、固定ディスク制御装置86を既知の状態に初期
化することである。これは、固定ディスク制御装置86
内のレジスタに直接値を書き込むことによって行われ
る。
コードは、固定ディスク制御装置86を未知の状態にし
ている可能性がある。したがって、次のステップは、2
92で、固定ディスク制御装置86を既知の状態に初期
化することである。これは、固定ディスク制御装置86
内のレジスタに直接値を書き込むことによって行われ
る。
【0162】次に、294で、ハード・ドライブ31内
の固定ディスク上にサスペンド・ファイルを配置しなけ
ればならない。サスペンド・ファイルのヘッド、セク
タ、およびシリンダはCMOSメモリ96に記憶される。サ
スペンド・ファイルが配置されると、ファイル・サイズ
およびシグニチャが読み取られる。好ましい実施例で
は、シグニチャは、サスペンド・ファイルの存在を示す
任意の長さのASCIIコードである。ハード・ファイル・
システム上でランダムに見つかる確率が非常に低い2進
文字列を使用するなど、シグニチャの他の代替実施態様
が可能である。
の固定ディスク上にサスペンド・ファイルを配置しなけ
ればならない。サスペンド・ファイルのヘッド、セク
タ、およびシリンダはCMOSメモリ96に記憶される。サ
スペンド・ファイルが配置されると、ファイル・サイズ
およびシグニチャが読み取られる。好ましい実施例で
は、シグニチャは、サスペンド・ファイルの存在を示す
任意の長さのASCIIコードである。ハード・ファイル・
システム上でランダムに見つかる確率が非常に低い2進
文字列を使用するなど、シグニチャの他の代替実施態様
が可能である。
【0163】サスペンド・ファイル用のファイルサイズ
およびシグニチャを読み取った後、次のステップは、2
96で、シグニチャおよびファイルサイズが正しいこと
を確認することである。シグニチャが誤りであり、他の
プログラムがサスペンド・ファイルを修正した可能性が
あることを示し、あるいはファイルサイズが誤りであ
り、サスペンド・ファイル・サイズが修正されたことを
示す場合、サスペンド・ルーチンは、298で、図24
乃至図27のタスク652から開始するFatal Suspend
Errorルーチンを呼び出す。ユーザがスイッチ17を押
してFatal SuspendErrorルーチンを終了すると、プログ
ラム制御がタスク299からタスク506にジャンプす
る。
およびシグニチャを読み取った後、次のステップは、2
96で、シグニチャおよびファイルサイズが正しいこと
を確認することである。シグニチャが誤りであり、他の
プログラムがサスペンド・ファイルを修正した可能性が
あることを示し、あるいはファイルサイズが誤りであ
り、サスペンド・ファイル・サイズが修正されたことを
示す場合、サスペンド・ルーチンは、298で、図24
乃至図27のタスク652から開始するFatal Suspend
Errorルーチンを呼び出す。ユーザがスイッチ17を押
してFatal SuspendErrorルーチンを終了すると、プログ
ラム制御がタスク299からタスク506にジャンプす
る。
【0164】一方、シグニチャが正しく、サスペンド・
ファイルが十分な大きさである場合、サスペンド・ルー
チンは引き続き、コンピュータ・システム10の状態を
メモリに書き込むことができる。
ファイルが十分な大きさである場合、サスペンド・ルー
チンは引き続き、コンピュータ・システム10の状態を
メモリに書き込むことができる。
【0165】コンピュータ・システム10の状態をハー
ド・ドライブ31に書き込む前に、297で、フェール
セーフ・タイマC2がリセットされ、スイッチ21が、
再び押されたか否かを検出するために試験される。図6
および図7に関連した記載で詳細に説明するように、電
源管理ポートへの読取りがFEHを返す場合、スイッチ
21は再び押されてはおらず、サスペンドを続行する必
要がある。一方、電源管理ポートへの読取りがFFHを
返す場合、スイッチ21が再び押されており、サスペン
ドは中止される。サスペンド・ルーチンの幾つかの点
で、C2がドレーンされ、スイッチ21が閉鎖に関して
試験される。タスク297は、例示のためのものに過ぎ
ない。当技術分野の回路設計者は、C2ドレーンの数と
C2ドレーン間の時間を決定することができる。サスペ
ンド・ルーチンは、C2が、電源17を「オフ」にする
前にドレーンされ、それによってフェールセーフ・タイ
マがリセットされるようにする必要がある。同様に、ス
イッチ21を時々検査する必要がある。スイッチ21が
再び押されており、ユーザがサスペンドを中止したいこ
とを示している場合、コードはレジューム・ルーチン中
の適切な点にジャンプし、すでにサスペンド・ルーチン
によってサスペンドされているものをサスペンド解除す
る必要がある。
ド・ドライブ31に書き込む前に、297で、フェール
セーフ・タイマC2がリセットされ、スイッチ21が、
再び押されたか否かを検出するために試験される。図6
および図7に関連した記載で詳細に説明するように、電
源管理ポートへの読取りがFEHを返す場合、スイッチ
21は再び押されてはおらず、サスペンドを続行する必
要がある。一方、電源管理ポートへの読取りがFFHを
返す場合、スイッチ21が再び押されており、サスペン
ドは中止される。サスペンド・ルーチンの幾つかの点
で、C2がドレーンされ、スイッチ21が閉鎖に関して
試験される。タスク297は、例示のためのものに過ぎ
ない。当技術分野の回路設計者は、C2ドレーンの数と
C2ドレーン間の時間を決定することができる。サスペ
ンド・ルーチンは、C2が、電源17を「オフ」にする
前にドレーンされ、それによってフェールセーフ・タイ
マがリセットされるようにする必要がある。同様に、ス
イッチ21を時々検査する必要がある。スイッチ21が
再び押されており、ユーザがサスペンドを中止したいこ
とを示している場合、コードはレジューム・ルーチン中
の適切な点にジャンプし、すでにサスペンド・ルーチン
によってサスペンドされているものをサスペンド解除す
る必要がある。
【0166】同様に、350で、Ctrl-Alt-Delはサスペ
ンドを中止する。Ctrl-Alt-Deleteを押す(制御キー、
Altキー、および削除キーを同時に押す)ことは、IB
M BIOSおよびインテル80X86 CPUファミリに基づく典
型的なコンピュータ・システムをリセットする周知の方
法である。コンピュータ・システム10は、BIOS割込み
1ハンドラによって、当技術分野で周知の方法でCtrl-A
lt-Delを処理する。350で、コンピュータ・システム
10は、わずかに修正された割込み1ハンドラを有して
おり、352で、該ハンドラがCMOSメモリ96中のサス
ペンド・フラグをクリアし、354で、リセット時にBo
ot-Upルーチンにジャンプする。
ンドを中止する。Ctrl-Alt-Deleteを押す(制御キー、
Altキー、および削除キーを同時に押す)ことは、IB
M BIOSおよびインテル80X86 CPUファミリに基づく典
型的なコンピュータ・システムをリセットする周知の方
法である。コンピュータ・システム10は、BIOS割込み
1ハンドラによって、当技術分野で周知の方法でCtrl-A
lt-Delを処理する。350で、コンピュータ・システム
10は、わずかに修正された割込み1ハンドラを有して
おり、352で、該ハンドラがCMOSメモリ96中のサス
ペンド・フラグをクリアし、354で、リセット時にBo
ot-Upルーチンにジャンプする。
【0167】本発明のコンピュータ・システム10で
は、サスペンド・ルーチンの実行中にCtrl-Alt-Delを押
すと、コンピュータ・システム10はオフ状態156に
入る。これは、スイッチ21の閉鎖後に第2のPAL U2が
スイッチ状態102になり、Ctrl-Alt-Delを押すと、Boo
t-Upルーチンが呼び出され、Boot-Upルーチンが電源管
理ポートに00Hを書き込み、第2のPAL U2を既知の状
態にするために発生する。しかし、図6および図7に関
連した記載で説明するように、第2のPAL U2がスイッチ
状態102のときに第2のPAL U2に00Hを書き込む
と、第2のPAL U2は電源17にシステム電源の提供を停
止させる。このため、サスペンド・ルーチンのときにCt
rl-Alt-Delを押すと、コンピュータ・システム10はオ
フ状態156に入る。
は、サスペンド・ルーチンの実行中にCtrl-Alt-Delを押
すと、コンピュータ・システム10はオフ状態156に
入る。これは、スイッチ21の閉鎖後に第2のPAL U2が
スイッチ状態102になり、Ctrl-Alt-Delを押すと、Boo
t-Upルーチンが呼び出され、Boot-Upルーチンが電源管
理ポートに00Hを書き込み、第2のPAL U2を既知の状
態にするために発生する。しかし、図6および図7に関
連した記載で説明するように、第2のPAL U2がスイッチ
状態102のときに第2のPAL U2に00Hを書き込む
と、第2のPAL U2は電源17にシステム電源の提供を停
止させる。このため、サスペンド・ルーチンのときにCt
rl-Alt-Delを押すと、コンピュータ・システム10はオ
フ状態156に入る。
【0168】ここで、タスク300を参照する。300
で、サスペンド・ファイルが再び、ハード・ドライブ3
1上に配置され、サスペンド・ファイルの最初のバイト
にシグニチャ・フレーズが書き込まれる。次に、302
で、セグメントD000H中の64キロバイトのデータ全体
がサスペンド・ファイルに書き込まれる。D000Hのこの
64Kコピーは実際はプレース・ホルダに過ぎず、サス
ペンド・ルーチンの終りにこれと同じ位置に再書込みさ
れる。
で、サスペンド・ファイルが再び、ハード・ドライブ3
1上に配置され、サスペンド・ファイルの最初のバイト
にシグニチャ・フレーズが書き込まれる。次に、302
で、セグメントD000H中の64キロバイトのデータ全体
がサスペンド・ファイルに書き込まれる。D000Hのこの
64Kコピーは実際はプレース・ホルダに過ぎず、サス
ペンド・ルーチンの終りにこれと同じ位置に再書込みさ
れる。
【0169】次に、サスペンド・ファイルにシステム・
メモリが書き込まれる。これは、システムからデータを
読み取り、該データを圧縮してセグメントC000Hに書き
込み、最後に、圧縮されたデータをセグメントC000Hか
らサスペンド・ファイルに書き込むツイン・バッファ・
システムによって行われる。2つのルーチンが時間多重
化方式で動作し、一方はデータを圧縮してセグメントC0
00Hに書き込み、他方はサスペンド・ファイルに書き込
む。前者はフォアグラウンドで動作し、後者はバックグ
ラウンドで動作するinterrupt-drivenルーチンである。
言うまでもなく、CPU 40は1つしかないので、所
与の時間に1つのルーチンしか実行できない。しかし、
後者のルーチンは割込み駆動なので、必要に応じて前者
のルーチンの実行に割り込み、データのサスペンド・フ
ァイルへの転送速度を最適化することができる。2つの
バッファはそれぞれ、長さが8キロバイトである。この
長さは、ハード・ドライブ31への転送時間を最適化す
ると考えられる。
メモリが書き込まれる。これは、システムからデータを
読み取り、該データを圧縮してセグメントC000Hに書き
込み、最後に、圧縮されたデータをセグメントC000Hか
らサスペンド・ファイルに書き込むツイン・バッファ・
システムによって行われる。2つのルーチンが時間多重
化方式で動作し、一方はデータを圧縮してセグメントC0
00Hに書き込み、他方はサスペンド・ファイルに書き込
む。前者はフォアグラウンドで動作し、後者はバックグ
ラウンドで動作するinterrupt-drivenルーチンである。
言うまでもなく、CPU 40は1つしかないので、所
与の時間に1つのルーチンしか実行できない。しかし、
後者のルーチンは割込み駆動なので、必要に応じて前者
のルーチンの実行に割り込み、データのサスペンド・フ
ァイルへの転送速度を最適化することができる。2つの
バッファはそれぞれ、長さが8キロバイトである。この
長さは、ハード・ドライブ31への転送時間を最適化す
ると考えられる。
【0170】このプロセスは、304で、第1の8Kバ
ッファを充填するのに十分なデータの読取り、圧縮、C0
00Hへの書込みと共に開始する。このデータは、ラン・
レングス・コード化方式を使用して圧縮される。しか
し、任意の適切な圧縮方式を使用することが可能であ
る。このとき、306で、概略的に307に示されるWr
ite from Bufferルーチンが開始される。Write from Bu
fferルーチン307は、バックグラウンドで動作し、タ
スク308乃至310から構成されるinterrupt-driven
ルーチンである。概略的に311に示されるCompressio
nルーチンは、タスク312乃至318を備えており、
フォアグラウンド・ルーチンである。Writefrom Buffer
ルーチン307はまず、308で、タスク304によっ
て充填されたばかりのバッファをサスペンド・ファイル
に書き込む。Write from Bufferルーチン307がその
バッファの内容をサスペンド・ファイルに書き込む間
に、Compressionルーチン311は、312で引き続
き、システム・メモリから次のバイトを読み取り、圧縮
して、圧縮されたデータを2つの8Kバッファのうち他
方に書き込む。Compressionルーチン311がバッファ
を、圧縮されたデータで充填すると、次のステップは、
314で、システム・メモリ全体が圧縮されたか否かを
決定することになる。
ッファを充填するのに十分なデータの読取り、圧縮、C0
00Hへの書込みと共に開始する。このデータは、ラン・
レングス・コード化方式を使用して圧縮される。しか
し、任意の適切な圧縮方式を使用することが可能であ
る。このとき、306で、概略的に307に示されるWr
ite from Bufferルーチンが開始される。Write from Bu
fferルーチン307は、バックグラウンドで動作し、タ
スク308乃至310から構成されるinterrupt-driven
ルーチンである。概略的に311に示されるCompressio
nルーチンは、タスク312乃至318を備えており、
フォアグラウンド・ルーチンである。Writefrom Buffer
ルーチン307はまず、308で、タスク304によっ
て充填されたばかりのバッファをサスペンド・ファイル
に書き込む。Write from Bufferルーチン307がその
バッファの内容をサスペンド・ファイルに書き込む間
に、Compressionルーチン311は、312で引き続
き、システム・メモリから次のバイトを読み取り、圧縮
して、圧縮されたデータを2つの8Kバッファのうち他
方に書き込む。Compressionルーチン311がバッファ
を、圧縮されたデータで充填すると、次のステップは、
314で、システム・メモリ全体が圧縮されたか否かを
決定することになる。
【0171】固定ディスク制御装置86は、データをハ
ード・ドライブ31にさほど高速に書き込むことができ
ない。その結果、Compressionルーチン311は常に、W
ritefrom Bufferルーチン307がバッファのハード・
ドライブ31への書込みを終了する前に、ハード・ドラ
イブ31に書き込まれていない8Kバッファの充填を終
了することになる。したがって、Compressionルーチン
311は、Write fromBufferルーチン307がバッファ
のハード・ドライブ31への書込みを終了するのを待た
ねばならない。Compressionルーチン311は、圧縮お
よび書込みを終了していないシステム・メモリの部分が
ある場合、316で、Write from Bufferルーチン30
7を待つ。Compressionルーチン311とWrite from Bu
fferルーチン307は、1組のフラグを介して通信す
る。Write to Bufferルーチン307は、現行のバッフ
ァのサスペンド・ファイルへの書込みを終了すると、次
に、バッファ・フラグを切り替え、Compressionルーチ
ン311に、圧縮されたデータの、サスペンド・ファイ
ルに書き込まれたばかりのバッファへの充填を開始でき
ることを示す。次に、タスク297に関連した記載で説
明するように、309で、フェールセーフ・タイマC2
がリセットされ、スイッチ21が閉鎖事象に関して検査
される。
ード・ドライブ31にさほど高速に書き込むことができ
ない。その結果、Compressionルーチン311は常に、W
ritefrom Bufferルーチン307がバッファのハード・
ドライブ31への書込みを終了する前に、ハード・ドラ
イブ31に書き込まれていない8Kバッファの充填を終
了することになる。したがって、Compressionルーチン
311は、Write fromBufferルーチン307がバッファ
のハード・ドライブ31への書込みを終了するのを待た
ねばならない。Compressionルーチン311は、圧縮お
よび書込みを終了していないシステム・メモリの部分が
ある場合、316で、Write from Bufferルーチン30
7を待つ。Compressionルーチン311とWrite from Bu
fferルーチン307は、1組のフラグを介して通信す
る。Write to Bufferルーチン307は、現行のバッフ
ァのサスペンド・ファイルへの書込みを終了すると、次
に、バッファ・フラグを切り替え、Compressionルーチ
ン311に、圧縮されたデータの、サスペンド・ファイ
ルに書き込まれたばかりのバッファへの充填を開始でき
ることを示す。次に、タスク297に関連した記載で説
明するように、309で、フェールセーフ・タイマC2
がリセットされ、スイッチ21が閉鎖事象に関して検査
される。
【0172】Write to Bufferルーチン307は次に、
310で、サスペンド・ファイルに書き込まれたばかり
のバッファが、最後に書き込むバッファか否かを決定す
る。最後に書き込むバッファではない場合、Write from
Bufferルーチン307は、サスペンド・ファイルに、C
ompressionルーチン311によって充填されたばかりの
バッファを書き込む。その間に、Compressionルーチン
311は、バッファ・フラグを検査することによって、
バッファが、それ以上の圧縮されたシステム・メモリに
対する準備を完了したと決定している。すなわち、Comp
ressionルーチンは、316で、Write from Bufferルー
チン307が現行のバッファを終了するまで待つ。該ル
ーチン307が現行のバッファを終了すると、312か
ら圧縮ループが続行する。ビデオ・メモリ58は圧縮さ
れないことに留意されたい。その代わり、ビデオ・メモ
リ58は、VESA呼出しを使用し、ビデオ制御装置56を
介して読み取られ、上記で詳細に説明したツイン・バッ
ファ・システムを使用して圧縮なしで書き込まれる。
310で、サスペンド・ファイルに書き込まれたばかり
のバッファが、最後に書き込むバッファか否かを決定す
る。最後に書き込むバッファではない場合、Write from
Bufferルーチン307は、サスペンド・ファイルに、C
ompressionルーチン311によって充填されたばかりの
バッファを書き込む。その間に、Compressionルーチン
311は、バッファ・フラグを検査することによって、
バッファが、それ以上の圧縮されたシステム・メモリに
対する準備を完了したと決定している。すなわち、Comp
ressionルーチンは、316で、Write from Bufferルー
チン307が現行のバッファを終了するまで待つ。該ル
ーチン307が現行のバッファを終了すると、312か
ら圧縮ループが続行する。ビデオ・メモリ58は圧縮さ
れないことに留意されたい。その代わり、ビデオ・メモ
リ58は、VESA呼出しを使用し、ビデオ制御装置56を
介して読み取られ、上記で詳細に説明したツイン・バッ
ファ・システムを使用して圧縮なしで書き込まれる。
【0173】Compressionルーチン311は、すべての
システム・メモリの圧縮を終了すると、318で、Writ
e from Bufferルーチン307が最後のバッファのサス
ペンド・ファイルへの書込みを終了するのを待つ。Writ
e from Bufferルーチン307は、終了すると、310
から318に枝分かれして存在しなくなる。この時点
で、バックグラウンド・ルーチンはまったく実行してお
らず、320からメイン・プログラムが続行する。
システム・メモリの圧縮を終了すると、318で、Writ
e from Bufferルーチン307が最後のバッファのサス
ペンド・ファイルへの書込みを終了するのを待つ。Writ
e from Bufferルーチン307は、終了すると、310
から318に枝分かれして存在しなくなる。この時点
で、バックグラウンド・ルーチンはまったく実行してお
らず、320からメイン・プログラムが続行する。
【0174】次に、320で、ビデオ制御装置56の状
態が保存される。ビデオ制御装置56レジスタは当技術
分野で周知である。これらのレジスタはすべて、CPU
40から直接読取り可能であり、その値はD000Hのデ
ータ構造に直接書き込まれる。また、タスク320で、
DMA装置71(DMA制御装置72および中央アービ
タ82)、8277ディスケット制御装置84、およびRS-2
32 UART 94の状態が保存される。これらの装置は、当
技術分野で周知のレジスタを有する。8277デイスケット
制御装置84およびRS−232UART94内のすべ
てのレジスタは、CPU 40によって直接読取り可能
であり、その値はD000Hのデータ構造に直接書き込まれ
る。DMA装置71は読取りレジスタを有していない。
その代わり、通常、各DMA転送の前に書込み専用レジ
スタがセットアップされる。このため、サスペンド・ル
ーチンは、DMA転送を実行中の場合は停止する。
態が保存される。ビデオ制御装置56レジスタは当技術
分野で周知である。これらのレジスタはすべて、CPU
40から直接読取り可能であり、その値はD000Hのデ
ータ構造に直接書き込まれる。また、タスク320で、
DMA装置71(DMA制御装置72および中央アービ
タ82)、8277ディスケット制御装置84、およびRS-2
32 UART 94の状態が保存される。これらの装置は、当
技術分野で周知のレジスタを有する。8277デイスケット
制御装置84およびRS−232UART94内のすべ
てのレジスタは、CPU 40によって直接読取り可能
であり、その値はD000Hのデータ構造に直接書き込まれ
る。DMA装置71は読取りレジスタを有していない。
その代わり、通常、各DMA転送の前に書込み専用レジ
スタがセットアップされる。このため、サスペンド・ル
ーチンは、DMA転送を実行中の場合は停止する。
【0175】コンピュータ・システム10がサスペンド
・状態150に入った後、サスペンド・ファイルに対す
る干渉を検出できることが好ましいと考えられる。たと
えば、誰かが、修正されたサスペンド・ファイルを生成
して、そのサスペンド・ファイルをハード・ドライブ3
1に移動し、コンピュータ・システム10を保存された
状態と異なる状態で復元しようとする可能性がある。こ
の目的のために、セグメントD000Hデータ構造に擬似ラ
ンダム値が配置されている。328に示すように、タイ
マ102のうち1つから16ビット・タイムスタンプが
読み取られる。このタイムスタンプは次に、セグメント
D000Hデータ構造に書き込まれる。
・状態150に入った後、サスペンド・ファイルに対す
る干渉を検出できることが好ましいと考えられる。たと
えば、誰かが、修正されたサスペンド・ファイルを生成
して、そのサスペンド・ファイルをハード・ドライブ3
1に移動し、コンピュータ・システム10を保存された
状態と異なる状態で復元しようとする可能性がある。こ
の目的のために、セグメントD000Hデータ構造に擬似ラ
ンダム値が配置されている。328に示すように、タイ
マ102のうち1つから16ビット・タイムスタンプが
読み取られる。このタイムスタンプは次に、セグメント
D000Hデータ構造に書き込まれる。
【0176】次に、繰上りビットを考慮せずにD000H中
の各16ビット・ワードを加算することによって、D000
Hセグメント全体の16ビット・チェックサムが算出さ
れる。このチェックサムは、330で、セグメントD000
Hデータ・セグメントに書き込まれ、332で、CMOSメ
モリ96に書き込まれる。この後、334で、すべての
作業変数がCPU 40からセグメントD000Hデータ構
造に書き込まれ、336で、セグメントD000H全体が、
サスペンド・ファイルのシグニチャ・フレーズの後(シ
グニチャの直後)から再書込みされる。次に、338
で、CMOSメモリ96中でサスペンド・フラグがセットさ
れ、コンピュータ・システム10に、該システム10の
状態がサスペンド・ファイルに保存されたことを示す。
の各16ビット・ワードを加算することによって、D000
Hセグメント全体の16ビット・チェックサムが算出さ
れる。このチェックサムは、330で、セグメントD000
Hデータ・セグメントに書き込まれ、332で、CMOSメ
モリ96に書き込まれる。この後、334で、すべての
作業変数がCPU 40からセグメントD000Hデータ構
造に書き込まれ、336で、セグメントD000H全体が、
サスペンド・ファイルのシグニチャ・フレーズの後(シ
グニチャの直後)から再書込みされる。次に、338
で、CMOSメモリ96中でサスペンド・フラグがセットさ
れ、コンピュータ・システム10に、該システム10の
状態がサスペンド・ファイルに保存されたことを示す。
【0177】次に、CPU 40は、電源管理ポートに
X102を書き込むことによって電源を「オフ」にし、第2
のPAL U2を102状態に入らせる。第2のPAL U2が102
状態に入ると、第2のPAL U2のピン12出力が論理"1"
をアサートし、SRラッチの出力ピン3が論理"0"状態
にラッチされ、R6によってONが"ハイ"にプルされ、
電源17の一次/調整装置172が±5および±12回
線に沿った調整された電圧の供給を停止することによっ
て、ただちに電源17がオフになる。電圧が約ゼロまで
ランプ・ダウンするには数秒かかり、CPU 40に多
数のコマンドを実行する時間が与えられる。したがっ
て、CPU 40は、342で、電源17によって生成
されるシステム電源電圧が降下するのを待つ際に、CP
U 40自体が機能を停止するまでエンドレス・ループ
(「回転」)を実行する。
X102を書き込むことによって電源を「オフ」にし、第2
のPAL U2を102状態に入らせる。第2のPAL U2が102
状態に入ると、第2のPAL U2のピン12出力が論理"1"
をアサートし、SRラッチの出力ピン3が論理"0"状態
にラッチされ、R6によってONが"ハイ"にプルされ、
電源17の一次/調整装置172が±5および±12回
線に沿った調整された電圧の供給を停止することによっ
て、ただちに電源17がオフになる。電圧が約ゼロまで
ランプ・ダウンするには数秒かかり、CPU 40に多
数のコマンドを実行する時間が与えられる。したがっ
て、CPU 40は、342で、電源17によって生成
されるシステム電源電圧が降下するのを待つ際に、CP
U 40自体が機能を停止するまでエンドレス・ループ
(「回転」)を実行する。
【0178】ここで、図16乃至図18を参照すると、
Boot-Upルーチンの詳細が示されている。ブート・プロ
セスについては、図8に関連した記載で概説した。Boot
-Upルーチンは、380で、CPU 40が、リセット
・ベクトルの指すコードにジャンプし、それを実行する
ときに始まる。これは、CPU 40が電源を投入され
るたびに行われ、CPU 40が、リセット・ベクトル
の指すコードにジャンプすることによってリセットされ
るときに行われる。そのようなリセット手順は、当技術
分野で周知である。
Boot-Upルーチンの詳細が示されている。ブート・プロ
セスについては、図8に関連した記載で概説した。Boot
-Upルーチンは、380で、CPU 40が、リセット
・ベクトルの指すコードにジャンプし、それを実行する
ときに始まる。これは、CPU 40が電源を投入され
るたびに行われ、CPU 40が、リセット・ベクトル
の指すコードにジャンプすることによってリセットされ
るときに行われる。そのようなリセット手順は、当技術
分野で周知である。
【0179】第1のタスクは、382で、CPU 40
を試験し、メモリ制御ユニット46を初期化することで
ある。CPU 40は、POSTルーチンによって試験
される。メモリ制御ユニット46は、POSTルーチン
によって初期化される。
を試験し、メモリ制御ユニット46を初期化することで
ある。CPU 40は、POSTルーチンによって試験
される。メモリ制御ユニット46は、POSTルーチン
によって初期化される。
【0180】次に、シャドウ・メモリが試験され、BIOS
がROM 88からシステムRAM53のシャドウ・メ
モリ部分にコピーされる。実行されるコードの流れは、
CMOSメモリ96中でサスペンド・フラグがセットされて
いるか否かに依存する。サスペンド・フラグがセットさ
れている場合、コンピュータ・システム10はサスペン
ド状態150であり、コンピュータ・システム10を、
サスペンドされたときの状態に復元する必要がある。セ
グメントE000HおよびF000H中のシステムRAM 53に
は簡略試験が行われる。コンピュータがレジュームする
のにかかる時間を削減するために、メモリは、サイズが
丁度か否かに関してだけ検査され、ゼロ化される(各位
置に000Hが書き込まれる)。
がROM 88からシステムRAM53のシャドウ・メ
モリ部分にコピーされる。実行されるコードの流れは、
CMOSメモリ96中でサスペンド・フラグがセットされて
いるか否かに依存する。サスペンド・フラグがセットさ
れている場合、コンピュータ・システム10はサスペン
ド状態150であり、コンピュータ・システム10を、
サスペンドされたときの状態に復元する必要がある。セ
グメントE000HおよびF000H中のシステムRAM 53に
は簡略試験が行われる。コンピュータがレジュームする
のにかかる時間を削減するために、メモリは、サイズが
丁度か否かに関してだけ検査され、ゼロ化される(各位
置に000Hが書き込まれる)。
【0181】一方、CMOSメモリ96中でサスペンド・フ
ラグがクリアされている場合、セグメントE000HおよびF
000H中のシステムRAM 53に、(1)スティッキー
・ビット試験、(2)ダブル・ビット・メモリ試験、お
よび(3)クロス・アドレス回線試験が行われる。これ
らの試験は当技術分野で周知である。
ラグがクリアされている場合、セグメントE000HおよびF
000H中のシステムRAM 53に、(1)スティッキー
・ビット試験、(2)ダブル・ビット・メモリ試験、お
よび(3)クロス・アドレス回線試験が行われる。これ
らの試験は当技術分野で周知である。
【0182】セグメントE000HおよびF000Hを試験した
後、BIOSをシャドウすることができる。これは、ROM
88の内容をシステムRAM 53にコピーし、メモ
リ制御装置を、RAMからBIOSを実行するように構成す
ることを伴う。BIOSのシャドウイングは、システムの速
度を上げるために行われる。システム性能は、BIOSが遅
い方のROM 88(典型的なアクセス時間は250ナ
ノ秒)ではなく、速い方のシステムRAM 53(典型
的なアクセス時間は80ナノ秒)から動作するために拡
張される。BIOSのシャドウイングは、BIOSコピアーを、
下位メモリ中のアドレスにロードすること、BIOSをRO
M 88からシステムRAM 53のセグメントE000H
およびF000Hにコピーすること、およびシャドウRAM
を使用可能にすることから構成されている。
後、BIOSをシャドウすることができる。これは、ROM
88の内容をシステムRAM 53にコピーし、メモ
リ制御装置を、RAMからBIOSを実行するように構成す
ることを伴う。BIOSのシャドウイングは、システムの速
度を上げるために行われる。システム性能は、BIOSが遅
い方のROM 88(典型的なアクセス時間は250ナ
ノ秒)ではなく、速い方のシステムRAM 53(典型
的なアクセス時間は80ナノ秒)から動作するために拡
張される。BIOSのシャドウイングは、BIOSコピアーを、
下位メモリ中のアドレスにロードすること、BIOSをRO
M 88からシステムRAM 53のセグメントE000H
およびF000Hにコピーすること、およびシャドウRAM
を使用可能にすることから構成されている。
【0183】次に、384で、ビデオ制御装置56が試
験され、初期化されると共に、ビデオ・メモリ58が試
験される。これらの試験および初期化は、当技術分野で
周知である。
験され、初期化されると共に、ビデオ・メモリ58が試
験される。これらの試験および初期化は、当技術分野で
周知である。
【0184】実行されるコードの流れは、386で、CM
OSメモリ96中でサスペンド・フラグがセットされてい
るか否かによって異なる。サスペンド・フラグがセット
されている場合、残りのシステムRAM 53は、タス
ク383と同様に、サイズに関してだけ検査され、ゼロ
化される。しかし、CMOSメモリ96中でサスペンド・フ
ラグがクリアされている場合、残りのシステムRAM
53は、タスク398で、タスク383に関連した記載
で説明する3段階のインデプス・メモリ試験を使用して
試験される。
OSメモリ96中でサスペンド・フラグがセットされてい
るか否かによって異なる。サスペンド・フラグがセット
されている場合、残りのシステムRAM 53は、タス
ク383と同様に、サイズに関してだけ検査され、ゼロ
化される。しかし、CMOSメモリ96中でサスペンド・フ
ラグがクリアされている場合、残りのシステムRAM
53は、タスク398で、タスク383に関連した記載
で説明する3段階のインデプス・メモリ試験を使用して
試験される。
【0185】メモリが試験された後、400で、8259、
UART、8042、その他を含む補助装置が試験され、初期化
される。タスク408で、固定ディスク制御装置が初期
化される。
UART、8042、その他を含む補助装置が試験され、初期化
される。タスク408で、固定ディスク制御装置が初期
化される。
【0186】実行されるコードの流れは、409で、CM
OSメモリ96中でサスペンド・フラグがセットされてい
るか否かによって異なる。サスペンド・フラグがセット
されており、電力が最後に除去されたときにシステムの
状態が正常に保存されたことを示している場合、Boot-U
Pルーチンは固定ディスク制御装置86およびハード・
ドライブ31の試験をスキップする。一方、CMOSメモリ
96中でサスペンド・フラグがクリアされており、電力
が最後に除去されたときにシステムの状態が保存されな
かったことを示している場合、Boot-Upルーチンは、タ
スク410で、当技術分野で周知の方法で、固定ディス
ク制御装置86およびハード・ドライブ31の完全な試
験を実行する。
OSメモリ96中でサスペンド・フラグがセットされてい
るか否かによって異なる。サスペンド・フラグがセット
されており、電力が最後に除去されたときにシステムの
状態が正常に保存されたことを示している場合、Boot-U
Pルーチンは固定ディスク制御装置86およびハード・
ドライブ31の試験をスキップする。一方、CMOSメモリ
96中でサスペンド・フラグがクリアされており、電力
が最後に除去されたときにシステムの状態が保存されな
かったことを示している場合、Boot-Upルーチンは、タ
スク410で、当技術分野で周知の方法で、固定ディス
ク制御装置86およびハード・ドライブ31の完全な試
験を実行する。
【0187】次に、412で、8277ディスク制御装置8
4が試験され、初期化される。
4が試験され、初期化される。
【0188】この時点で、すべての装置が初期化されて
おり、ベクトルが既知の位置を指すので、すべての割込
みルーチンは所期されたとおりに動作する。したがっ
て、Boot-Upルーチンは、414で、BIOSデータ領域お
よびベクトル・テーブルをスナップショットし、BIOSデ
ータ領域およびベクトル・テーブルのコピーをセグメン
トD000Hのデータ構造に書き込む。BIOSデータ領域およ
びベクトル・テーブルのこのコピーは、タスク274
で、サスペンド・ルーチンによって、コンピュータ・シ
ステム10を既知の状態にするために使用され、すべて
の割込みは所期されたとおりに動作する。
おり、ベクトルが既知の位置を指すので、すべての割込
みルーチンは所期されたとおりに動作する。したがっ
て、Boot-Upルーチンは、414で、BIOSデータ領域お
よびベクトル・テーブルをスナップショットし、BIOSデ
ータ領域およびベクトル・テーブルのコピーをセグメン
トD000Hのデータ構造に書き込む。BIOSデータ領域およ
びベクトル・テーブルのこのコピーは、タスク274
で、サスペンド・ルーチンによって、コンピュータ・シ
ステム10を既知の状態にするために使用され、すべて
の割込みは所期されたとおりに動作する。
【0189】次に、416で、BIOS拡張機能が当技術分
野で周知の方法で「走査され」、初期化される。BIOS拡
張機能とは、ネットワーク・アダプタなどの周辺アダプ
タによってシステムに追加されたBIOSコード・ブロック
である。BIOS拡張機能は通常、ISAバス76上のセグ
メントC000HおよびD000Hに配置され、BIOS拡張機能を識
別する関連「シグニチャ」を有する。BIOS拡張機能が検
出されると、長さが検査されると共に、チェックサムが
算出され、検査される。シグニチャ、長さ、およびチェ
ックサムがすべて、有効なBIOS拡張機能が存在すること
を示す場合、プログラム制御は、シグニチャから3バイ
ト先に配置された命令に移り、BIOS拡張機能は、周辺ア
ダプタの初期化などの必要なタスクを実行することがで
きる。拡張機能が実行を終了すると、制御がBoot-Upル
ーチンに戻り、該ルーチンがそれ以上のBIOS拡張機能を
探索する。それ以上のBIOS拡張機能は、前述のBIOS拡張
機能と同様に処理される。それ以上BIOS拡張機能が検出
されない場合、Boot-Upルーチンはタスク417に移行
する。
野で周知の方法で「走査され」、初期化される。BIOS拡
張機能とは、ネットワーク・アダプタなどの周辺アダプ
タによってシステムに追加されたBIOSコード・ブロック
である。BIOS拡張機能は通常、ISAバス76上のセグ
メントC000HおよびD000Hに配置され、BIOS拡張機能を識
別する関連「シグニチャ」を有する。BIOS拡張機能が検
出されると、長さが検査されると共に、チェックサムが
算出され、検査される。シグニチャ、長さ、およびチェ
ックサムがすべて、有効なBIOS拡張機能が存在すること
を示す場合、プログラム制御は、シグニチャから3バイ
ト先に配置された命令に移り、BIOS拡張機能は、周辺ア
ダプタの初期化などの必要なタスクを実行することがで
きる。拡張機能が実行を終了すると、制御がBoot-Upル
ーチンに戻り、該ルーチンがそれ以上のBIOS拡張機能を
探索する。それ以上のBIOS拡張機能は、前述のBIOS拡張
機能と同様に処理される。それ以上BIOS拡張機能が検出
されない場合、Boot-Upルーチンはタスク417に移行
する。
【0190】417で、Boot-Upルーチンは、サスペン
ド・ファイルに特定的に割り振られたパーティションと
思われるハード・ドライブ31上のパーティションを探
索する。パーティション・テーブルでPS/1識別子("F
E")を備えたパーティションが見つかり、そのパーテ
ィションがこの特定のシステム用のサスペンド・ファイ
ルに適応するのに十分な大きさをもつ場合、そのパーテ
ィションはサスペンド・ファイル用のものと決定され
る。この結果、サスペンド・ファイルが、当技術分野に
周知の方法で、ファイル割振りテーブル(FAT)に割
り振られ、サスペンド・ファイル・シグニチャがファイ
ルの最初のバイトに書き込まれ、ファイルの開始ヘッ
ド、セクタ、およびシリンダがCMOSメモリ96に書き込
まれる。
ド・ファイルに特定的に割り振られたパーティションと
思われるハード・ドライブ31上のパーティションを探
索する。パーティション・テーブルでPS/1識別子("F
E")を備えたパーティションが見つかり、そのパーテ
ィションがこの特定のシステム用のサスペンド・ファイ
ルに適応するのに十分な大きさをもつ場合、そのパーテ
ィションはサスペンド・ファイル用のものと決定され
る。この結果、サスペンド・ファイルが、当技術分野に
周知の方法で、ファイル割振りテーブル(FAT)に割
り振られ、サスペンド・ファイル・シグニチャがファイ
ルの最初のバイトに書き込まれ、ファイルの開始ヘッ
ド、セクタ、およびシリンダがCMOSメモリ96に書き込
まれる。
【0191】実行されるコードの流れは次に、418
で、CMOSメモリ96中でサスペンド・フラグがセットさ
れているか否かに応じて枝分かれする。サスペンド・フ
ラグがクリアされている場合、Boot-Upルーチンは、4
20で、PBOOTルーチンに制御を渡す。PBOOTは、当技術
分野で周知であり、フロッピィ・ディスクまたはハード
・ドライブ31からオペレーティング・システム(O
S)とコマンド・インタプリタをロードする必要があ
る。本発明のnormal bootingルーチンは、OSをロード
するとき、タスク417でサスペンド・ファイル用のパ
ーティションが見つからなかった場合に、OSが、FA
Tに連続セクタのファイルを割り振る(必要に応じて領
域の断片化を解消する)特定のドライバを実行し、シグ
ニチャをサスペンド・ファイルの最初のバイトに書き込
み、CMOSメモリ96にサスペンド・ファイルの開始ヘッ
ド、セクタ、およびシリンダを書き込むという点でわず
かに修正されている。
で、CMOSメモリ96中でサスペンド・フラグがセットさ
れているか否かに応じて枝分かれする。サスペンド・フ
ラグがクリアされている場合、Boot-Upルーチンは、4
20で、PBOOTルーチンに制御を渡す。PBOOTは、当技術
分野で周知であり、フロッピィ・ディスクまたはハード
・ドライブ31からオペレーティング・システム(O
S)とコマンド・インタプリタをロードする必要があ
る。本発明のnormal bootingルーチンは、OSをロード
するとき、タスク417でサスペンド・ファイル用のパ
ーティションが見つからなかった場合に、OSが、FA
Tに連続セクタのファイルを割り振る(必要に応じて領
域の断片化を解消する)特定のドライバを実行し、シグ
ニチャをサスペンド・ファイルの最初のバイトに書き込
み、CMOSメモリ96にサスペンド・ファイルの開始ヘッ
ド、セクタ、およびシリンダを書き込むという点でわず
かに修正されている。
【0192】サスペンド・ファイルをいつ割り振るかと
は無関係に、FAT中の領域を連続セクタとし、ディス
クへの高速書込みおよびディスクからの高速読取りをそ
れぞれサスペンドおよびレジューム時に可能にする必要
がある。
は無関係に、FAT中の領域を連続セクタとし、ディス
クへの高速書込みおよびディスクからの高速読取りをそ
れぞれサスペンドおよびレジューム時に可能にする必要
がある。
【0193】PBOOTは次に、CONFIG.SYSファイルで見つ
けられる命令に基づき、システムを構成する。最後に、
PBOOTはAUTOEXEC.BATファイルに制御を渡し、該ファイ
ルは最終的に、オペレーティング・システムに実行制御
を渡す。CMOSメモリ96中でサスペンド・フラグがクリ
アされており、電力が最後に除去されたときにシステム
の状態が保存されなかったことを示している場合、42
1に関連した記載で詳細に説明するRESUME.EXEは無視さ
れる。
けられる命令に基づき、システムを構成する。最後に、
PBOOTはAUTOEXEC.BATファイルに制御を渡し、該ファイ
ルは最終的に、オペレーティング・システムに実行制御
を渡す。CMOSメモリ96中でサスペンド・フラグがクリ
アされており、電力が最後に除去されたときにシステム
の状態が保存されなかったことを示している場合、42
1に関連した記載で詳細に説明するRESUME.EXEは無視さ
れる。
【0194】再び、1番上のタスク418を参照する。
CMOSメモリ96中でサスペンド・フラグがセットされて
おり、電力が最後に除去されたときにシステムの状態が
保存されたことを示している場合、実行されるコードの
流れは、419で、CMOSメモリ96中で再初期化アダプ
タ・フラグがセットされているか否かに応じて枝分かれ
する。再初期化アダプタ・フラグがセットされている場
合、Boot-Upルーチンは、421で、PBOOTルーチンに制
御を渡す。本発明のPBOOTは、通常のPBOOTルーチンと同
様に、CONFIG.SYSおよびAUTOEXEC.BATファイルで見つけ
られるコマンドに従ってシステムを構成する。これらの
ファイルは、特に、当技術分野で周知の方法でドライバ
をロードし、システムを構成する。
CMOSメモリ96中でサスペンド・フラグがセットされて
おり、電力が最後に除去されたときにシステムの状態が
保存されたことを示している場合、実行されるコードの
流れは、419で、CMOSメモリ96中で再初期化アダプ
タ・フラグがセットされているか否かに応じて枝分かれ
する。再初期化アダプタ・フラグがセットされている場
合、Boot-Upルーチンは、421で、PBOOTルーチンに制
御を渡す。本発明のPBOOTは、通常のPBOOTルーチンと同
様に、CONFIG.SYSおよびAUTOEXEC.BATファイルで見つけ
られるコマンドに従ってシステムを構成する。これらの
ファイルは、特に、当技術分野で周知の方法でドライバ
をロードし、システムを構成する。
【0195】CONFIG.SYSおよびAUTOEXEC.BAT中のコマン
ドは、システム中のアダプタ・カードを初期化すること
ができる。この適用業務は、次の3種のアダプタ・カー
ドが存在するものと仮定している。タイプIアダプタは
初期化を必要としない。タイプIIアダプタは初期化を
必要とするが、BIOS拡張機能、あるいはCONFIG.SYSまた
はAUTOEXEC.BATファイルに従ってロードされるドライバ
によって既知の作業状態になる。タイプIIIアダプタ
は、システム上で実行するコードによって修正される。
タイプIおよびタイプIIアダプタを備えたシステムは
サスペンドし、復元することができる。しかし、タイプ
IIIアダプタを備えたシステムは、多数のネットワー
ク化アダプタを含み、カードが、エラーから回復するた
めのルーチンを有していないかぎり、復元することはで
きない。システムは、エラーから回復するタイプIII
カードをサスペンドすることができる。
ドは、システム中のアダプタ・カードを初期化すること
ができる。この適用業務は、次の3種のアダプタ・カー
ドが存在するものと仮定している。タイプIアダプタは
初期化を必要としない。タイプIIアダプタは初期化を
必要とするが、BIOS拡張機能、あるいはCONFIG.SYSまた
はAUTOEXEC.BATファイルに従ってロードされるドライバ
によって既知の作業状態になる。タイプIIIアダプタ
は、システム上で実行するコードによって修正される。
タイプIおよびタイプIIアダプタを備えたシステムは
サスペンドし、復元することができる。しかし、タイプ
IIIアダプタを備えたシステムは、多数のネットワー
ク化アダプタを含み、カードが、エラーから回復するた
めのルーチンを有していないかぎり、復元することはで
きない。システムは、エラーから回復するタイプIII
カードをサスペンドすることができる。
【0196】ファイルRESUME.EXEは、好ましい実施例で
はAUTOEXEC.BATに追加され、プログラム制御をPBOOTか
らレジューム・ルーチンに転送する必要がある。タスク
420でのPBOOTは、RESUME.EXEの存在を無視する。し
かし、タスク421のPBOOTはRESUME.EXEを実行し、RES
UME.EXEは、PBOOTによってCONFIG.SYSおよびAUTOEXEC.B
ATからロードされる装置ドライバによるタイプIIアダ
プタの初期化が終了した後に、レジューム・ルーチンに
制御を渡す。
はAUTOEXEC.BATに追加され、プログラム制御をPBOOTか
らレジューム・ルーチンに転送する必要がある。タスク
420でのPBOOTは、RESUME.EXEの存在を無視する。し
かし、タスク421のPBOOTはRESUME.EXEを実行し、RES
UME.EXEは、PBOOTによってCONFIG.SYSおよびAUTOEXEC.B
ATからロードされる装置ドライバによるタイプIIアダ
プタの初期化が終了した後に、レジューム・ルーチンに
制御を渡す。
【0197】再び、タスク419を参照する。CMOSメモ
リ96中で再初期化アダプタ・フラグがクリアされてい
る場合、Boot-Upは、422で、CONFIG.SYSまたはAUTOE
XEC.BATを処理せずに、制御を直接レジューム・ルーチ
ンに渡す。レジューム・ルーチンは、ハード・ドライブ
上のサスペンド・ファイルからシステム状態を復元す
る。このルーチンについては、図19乃至図23に関連
した記載で詳細に説明する。
リ96中で再初期化アダプタ・フラグがクリアされてい
る場合、Boot-Upは、422で、CONFIG.SYSまたはAUTOE
XEC.BATを処理せずに、制御を直接レジューム・ルーチ
ンに渡す。レジューム・ルーチンは、ハード・ドライブ
上のサスペンド・ファイルからシステム状態を復元す
る。このルーチンについては、図19乃至図23に関連
した記載で詳細に説明する。
【0198】ここで図19乃至図23を参照すると、レ
ジューム・ルーチンの詳細、すなわちタスク450乃至
530が示されている。構成プロセス時に、おそらく、
BIOSデータ領域およびベクトル・テーブルは未知の状態
に修正される。したがって、基本BIOSルーチンは、所期
されたとおりに機能する場合と、しない場合がある。こ
のため、レジューム・ルーチンは、454で、セグメン
トD000Hを読取り/書込みとして使用可能にし、456
で、Swap BIOS Data Area & Vector Tableルーチンを呼
び出す。このルーチンは、タスク414でセグメントD0
00Hにコピーされた既知の良好なBIOSデータ領域および
ベクトル・テーブルを、セグメント0000Hで現在活動的
である修正されたBIOSデータ領域およびベクトル・テー
ブルとスワップする。このルーチンが終了すると、既知
のBIOSデータ領域およびベクトル・テーブルはセグメン
トD000Hで活動的になり、修正されたBIOSデータ領域お
よびベクトル・テーブルはセグメントD000Hに入り、BIO
Sルーチンは所期されたとおりに機能する。
ジューム・ルーチンの詳細、すなわちタスク450乃至
530が示されている。構成プロセス時に、おそらく、
BIOSデータ領域およびベクトル・テーブルは未知の状態
に修正される。したがって、基本BIOSルーチンは、所期
されたとおりに機能する場合と、しない場合がある。こ
のため、レジューム・ルーチンは、454で、セグメン
トD000Hを読取り/書込みとして使用可能にし、456
で、Swap BIOS Data Area & Vector Tableルーチンを呼
び出す。このルーチンは、タスク414でセグメントD0
00Hにコピーされた既知の良好なBIOSデータ領域および
ベクトル・テーブルを、セグメント0000Hで現在活動的
である修正されたBIOSデータ領域およびベクトル・テー
ブルとスワップする。このルーチンが終了すると、既知
のBIOSデータ領域およびベクトル・テーブルはセグメン
トD000Hで活動的になり、修正されたBIOSデータ領域お
よびベクトル・テーブルはセグメントD000Hに入り、BIO
Sルーチンは所期されたとおりに機能する。
【0199】次に、レジューム・ルーチンは、458
で、キーボードおよびハード・ドライブをサポートする
ものを除くすべての割込みを使用不能にする。レジュー
ム・ルーチンは次に、460で、ハード・ドライブ31
上にサスペンド・ファイルを配置し、ファイル・サイズ
およびシグニチャを読み取る。シグニチャとは、前述の
ように、サスペンド・ファイル用のマルチバイト識別子
である。実行されるコードの流れは、462で、サスペ
ンド・ファイルが正しいサイズおよびシグニチャを有す
るか否かに応じて枝分かれする。サスペンド・ファイル
が正しいサイズおよびシグニチャを有していない場合、
464で、レジューム・ルーチンがCMOSメモリ96中の
サスペンド・フラグをクリアし、466で、プログラム
制御が、リセット・ベクトルの指す位置にあるコードに
渡され、それによってシステムは、サスペンドされなか
った場合と同様にブートする。一方、サスペンド・ファ
イルが正しいサイズおよびシグニチャを有する場合、レ
ジューム・ルーチンは、468で、シグニチャの次に配
置されたサスペンド・ファイルの64Kブロック(セグ
メントD000H情報に対応するサスペンド・ファイルの部
分)をセグメントC000Hに読み込む。
で、キーボードおよびハード・ドライブをサポートする
ものを除くすべての割込みを使用不能にする。レジュー
ム・ルーチンは次に、460で、ハード・ドライブ31
上にサスペンド・ファイルを配置し、ファイル・サイズ
およびシグニチャを読み取る。シグニチャとは、前述の
ように、サスペンド・ファイル用のマルチバイト識別子
である。実行されるコードの流れは、462で、サスペ
ンド・ファイルが正しいサイズおよびシグニチャを有す
るか否かに応じて枝分かれする。サスペンド・ファイル
が正しいサイズおよびシグニチャを有していない場合、
464で、レジューム・ルーチンがCMOSメモリ96中の
サスペンド・フラグをクリアし、466で、プログラム
制御が、リセット・ベクトルの指す位置にあるコードに
渡され、それによってシステムは、サスペンドされなか
った場合と同様にブートする。一方、サスペンド・ファ
イルが正しいサイズおよびシグニチャを有する場合、レ
ジューム・ルーチンは、468で、シグニチャの次に配
置されたサスペンド・ファイルの64Kブロック(セグ
メントD000H情報に対応するサスペンド・ファイルの部
分)をセグメントC000Hに読み込む。
【0200】次に、470で、C000H中のブロックのチ
ェックサムが算出され、472で、CMOS不揮発性メモリ
96から、前に記憶されたチェックサムが読み取られ、
474で、タスク470で算出されたチェックサムがタ
スク330で算出されたチェックサムと同じか否かに応
じて、実行されるコードの流れが枝分かれする。タスク
470で算出されたチェックサムがタスク330で算出
されたチェックサムと同じでない場合、サスペンド・フ
ァイルには何らかの欠陥があり(たとえば、変更された
可能性がある)、制御はタスク464に移る。タスク4
64は、タスク464および466に関連した記載で説
明するように、サスペンド・フラグをクリアし、システ
ムをリセットする。タスク470で算出されたチェック
サムがタスク330で算出されたチェックサムと同じで
ある場合、サスペンド・ファイルはサスペンド・ルーチ
ンで書かれたファイルと同じものと仮定され、476
で、セグメントC000H中のデータがセグメントD000Hにコ
ピーされる。C000HデータがD000Hにコピーされる際に、
修正されたBIOSデータ領域およびベクトル・テーブルが
上書きされ、したがって回復不能になることに留意され
たい。
ェックサムが算出され、472で、CMOS不揮発性メモリ
96から、前に記憶されたチェックサムが読み取られ、
474で、タスク470で算出されたチェックサムがタ
スク330で算出されたチェックサムと同じか否かに応
じて、実行されるコードの流れが枝分かれする。タスク
470で算出されたチェックサムがタスク330で算出
されたチェックサムと同じでない場合、サスペンド・フ
ァイルには何らかの欠陥があり(たとえば、変更された
可能性がある)、制御はタスク464に移る。タスク4
64は、タスク464および466に関連した記載で説
明するように、サスペンド・フラグをクリアし、システ
ムをリセットする。タスク470で算出されたチェック
サムがタスク330で算出されたチェックサムと同じで
ある場合、サスペンド・ファイルはサスペンド・ルーチ
ンで書かれたファイルと同じものと仮定され、476
で、セグメントC000H中のデータがセグメントD000Hにコ
ピーされる。C000HデータがD000Hにコピーされる際に、
修正されたBIOSデータ領域およびベクトル・テーブルが
上書きされ、したがって回復不能になることに留意され
たい。
【0201】ここで、レジューム・ルーチンは、478
で、システムを復元中であり、ユーザがCtrl-Alt-Delを
押してレジュームを中止する必要があることをユーザに
通知する特殊信号画面を画面に書き込む。サスペンド・
ルーチンの場合と同様に、Ctrl-Alt-Delを押すと、52
6でサスペンド・フラグがクリアされ、528で、シス
テムがリブートする。しかし、リブート時には第2のPA
L U2がスイッチ状態012であり、したがって、電源管
理ポートにX00Hを書き込んでも電源17はシステム電源
の供給を停止しない。ゆえに、システムは通常、Ctrl-A
lt-Delが押され、レジューム・ルーチンが実行中のとき
にリブートする。
で、システムを復元中であり、ユーザがCtrl-Alt-Delを
押してレジュームを中止する必要があることをユーザに
通知する特殊信号画面を画面に書き込む。サスペンド・
ルーチンの場合と同様に、Ctrl-Alt-Delを押すと、52
6でサスペンド・フラグがクリアされ、528で、シス
テムがリブートする。しかし、リブート時には第2のPA
L U2がスイッチ状態012であり、したがって、電源管
理ポートにX00Hを書き込んでも電源17はシステム電源
の供給を停止しない。ゆえに、システムは通常、Ctrl-A
lt-Delが押され、レジューム・ルーチンが実行中のとき
にリブートする。
【0202】次に、8277ディスケット制御装置84、D
MA装置71、およびRS-232 UART94がそれぞれ48
0、482、および484で、値をセグメントD000Hデ
ータ構造からそれぞれのレジスタに書き込むことによっ
て復元される。
MA装置71、およびRS-232 UART94がそれぞれ48
0、482、および484で、値をセグメントD000Hデ
ータ構造からそれぞれのレジスタに書き込むことによっ
て復元される。
【0203】次に、タスク486乃至500で、サスペ
ンド・ルーチン中のタスク304乃至318に関連した
記載で説明するルーチンに似たツイン・バッファ・ルー
チンを使用して、サスペンド・ファイルからシステム・
メモリが復元される。このツイン・バッファ・システム
は、圧縮されたデータを、サスペンド・ファイルから読
み取り、セグメントC000Hに書き込み、圧縮解除して、
システム・メモリに書き込む。2つのルーチンは、時間
多重化方式で動作し、一方は、サスペンド・ファイルか
らデータを読み取って、セグメントC000Hに書き込み、
他方は、データを圧縮解除し、圧縮解除されたデータを
システム・メモリに書き込む。後者はフォアグラウンド
で動作し、前者はバックグラウンドで動作するinterrup
t-drivenルーチンである。言うまでもなく、PU 40
は1つしかないので、所与の時間に1つのルーチンしか
実行できない。しかし、前者のルーチンは割込み駆動な
ので、必要に応じて後者のルーチンの実行に割り込み、
データのサスペンド・ファイルからの転送速度を最適化
することができる。2つのバッファはそれぞれ、長さが
8キロバイトである。この長さは、転送時間を最適化す
ると考えられる。
ンド・ルーチン中のタスク304乃至318に関連した
記載で説明するルーチンに似たツイン・バッファ・ルー
チンを使用して、サスペンド・ファイルからシステム・
メモリが復元される。このツイン・バッファ・システム
は、圧縮されたデータを、サスペンド・ファイルから読
み取り、セグメントC000Hに書き込み、圧縮解除して、
システム・メモリに書き込む。2つのルーチンは、時間
多重化方式で動作し、一方は、サスペンド・ファイルか
らデータを読み取って、セグメントC000Hに書き込み、
他方は、データを圧縮解除し、圧縮解除されたデータを
システム・メモリに書き込む。後者はフォアグラウンド
で動作し、前者はバックグラウンドで動作するinterrup
t-drivenルーチンである。言うまでもなく、PU 40
は1つしかないので、所与の時間に1つのルーチンしか
実行できない。しかし、前者のルーチンは割込み駆動な
ので、必要に応じて後者のルーチンの実行に割り込み、
データのサスペンド・ファイルからの転送速度を最適化
することができる。2つのバッファはそれぞれ、長さが
8キロバイトである。この長さは、転送時間を最適化す
ると考えられる。
【0204】このプロセスは、486で、第1の8Kバ
ッファを充填するのに十分なデータを、サスペンド・フ
ァイルから読み取り、セグメントC000Hに書き込むこと
から始まる。このとき、306で、概略的に489に示
されるRead from Bufferルーチンが開始される。Read f
rom Bufferルーチン489は、interrupt-drivenルーチ
ンであり、バックグラウンドで動作し、タスク490乃
至492から構成される。概略的に493に示されたDe
compressionルーチンは、タスク494乃至498を備
えており、フォアグラウンド・ルーチンである。Read f
rom Bufferルーチン489はまず、490で、サスペン
ド・ファイルの次の8Kの読取りを開始し、現在、現行
バッファである他方のバッファに書き込む。Read from
Bufferルーチン489がサスペンド・ファイルから次の
8Kを読み取り、現行のバッファに書き込む間に、Deco
mpressionルーチン493は、494で、圧縮されたデ
ータをタスク486で圧縮解除し、圧縮解除されたデー
タをシステム・メモリに書き込む。Decompressionルー
チン493がバッファ中のあらゆるデータを圧縮解除す
ると、次のステップは、496で、システム・メモリ全
体が圧縮解除されたか否かを決定することになる。
ッファを充填するのに十分なデータを、サスペンド・フ
ァイルから読み取り、セグメントC000Hに書き込むこと
から始まる。このとき、306で、概略的に489に示
されるRead from Bufferルーチンが開始される。Read f
rom Bufferルーチン489は、interrupt-drivenルーチ
ンであり、バックグラウンドで動作し、タスク490乃
至492から構成される。概略的に493に示されたDe
compressionルーチンは、タスク494乃至498を備
えており、フォアグラウンド・ルーチンである。Read f
rom Bufferルーチン489はまず、490で、サスペン
ド・ファイルの次の8Kの読取りを開始し、現在、現行
バッファである他方のバッファに書き込む。Read from
Bufferルーチン489がサスペンド・ファイルから次の
8Kを読み取り、現行のバッファに書き込む間に、Deco
mpressionルーチン493は、494で、圧縮されたデ
ータをタスク486で圧縮解除し、圧縮解除されたデー
タをシステム・メモリに書き込む。Decompressionルー
チン493がバッファ中のあらゆるデータを圧縮解除す
ると、次のステップは、496で、システム・メモリ全
体が圧縮解除されたか否かを決定することになる。
【0205】固定ディスク制御装置86は、ハード・ド
ライブ31からデータをさほど高速に読み取ることがで
きない。その結果、Decompressionルーチン493は常
に、Read from Bufferルーチン489がデータのハード
・ドライブ31から現行バッファへの読取りを終了する
前に、ハード・ドライブ31に書き込まれていない8K
バッファの圧縮解除を終了することになる。したがっ
て、Decompressionルーチン493は、Read from Buffe
rルーチン489がデータのハード・ドライブ31から
の読取りを終了するのを待たねばならない。Decompress
ionルーチン493は、圧縮および書込みを終了してい
ないシステム・メモリの部分がある場合、498で、Re
ad from Bufferルーチン489を待つ。Decompression
ルーチン493とRead from Bufferルーチン489は、
1組のフラグを介して通信する。Read from Bufferルー
チン489は、データのサスペンド・ファイルから現行
バッファへの読込みを終了すると、次に、490で、バ
ッファ・フラグを切り替え、Decompressionルーチン4
93に、サスペンド・ファイルから読み取られたばかり
のバッファ中のデータの圧縮解除を開始できることを示
す。Read from Bufferルーチン489は次に、492
で、サスペンド・ファイルから8Kブロックを引き続き
読み取るか否かを決定する。読み取らない場合、Read f
rom Bufferルーチンは、502で、サスペンド・ファイ
ルから残りのデータを読み取り、現行バッファに書き込
む。Read from Bufferルーチンは次に、バックグラウン
ドでの動作を停止し、500で、Decompressionルーチ
ン493が最後のメモリの圧縮解除を終了するのに待
つ。
ライブ31からデータをさほど高速に読み取ることがで
きない。その結果、Decompressionルーチン493は常
に、Read from Bufferルーチン489がデータのハード
・ドライブ31から現行バッファへの読取りを終了する
前に、ハード・ドライブ31に書き込まれていない8K
バッファの圧縮解除を終了することになる。したがっ
て、Decompressionルーチン493は、Read from Buffe
rルーチン489がデータのハード・ドライブ31から
の読取りを終了するのを待たねばならない。Decompress
ionルーチン493は、圧縮および書込みを終了してい
ないシステム・メモリの部分がある場合、498で、Re
ad from Bufferルーチン489を待つ。Decompression
ルーチン493とRead from Bufferルーチン489は、
1組のフラグを介して通信する。Read from Bufferルー
チン489は、データのサスペンド・ファイルから現行
バッファへの読込みを終了すると、次に、490で、バ
ッファ・フラグを切り替え、Decompressionルーチン4
93に、サスペンド・ファイルから読み取られたばかり
のバッファ中のデータの圧縮解除を開始できることを示
す。Read from Bufferルーチン489は次に、492
で、サスペンド・ファイルから8Kブロックを引き続き
読み取るか否かを決定する。読み取らない場合、Read f
rom Bufferルーチンは、502で、サスペンド・ファイ
ルから残りのデータを読み取り、現行バッファに書き込
む。Read from Bufferルーチンは次に、バックグラウン
ドでの動作を停止し、500で、Decompressionルーチ
ン493が最後のメモリの圧縮解除を終了するのに待
つ。
【0206】その間に、Decompressionルーチン493
は、バッファ・フラグを検査することによって、バッフ
ァが、システム・メモリに対する圧縮解除の準備を完了
したと決定している。すなわち、Decompressionルーチ
ンは、498で、Read from Bufferルーチンが現行のバ
ッファを終了するまで待つ。該ルーチンが現行のバッフ
ァを終了すると、494から圧縮解除ループが続行す
る。
は、バッファ・フラグを検査することによって、バッフ
ァが、システム・メモリに対する圧縮解除の準備を完了
したと決定している。すなわち、Decompressionルーチ
ンは、498で、Read from Bufferルーチンが現行のバ
ッファを終了するまで待つ。該ルーチンが現行のバッフ
ァを終了すると、494から圧縮解除ループが続行す
る。
【0207】Decompressionルーチン493がすべての
システム・メモリの圧縮解除を終了すると、504で、
バックグラウンド・ルーチンはまったく実行しておら
ず、メイン・プログラムが続行する。
システム・メモリの圧縮解除を終了すると、504で、
バックグラウンド・ルーチンはまったく実行しておら
ず、メイン・プログラムが続行する。
【0208】次に、504および506で、ビデオ制御
装置56および固定ディスク制御装置86が、D000Hデ
ータ構造から2つの装置のそれぞれのレジスタに値を書
き込むことによって復元される。次に、508で、CP
Uキャッシュ41および外部キャッシュ60がそれぞ
れ、CPU 40およびキャッシュ制御装置62に適切
な値を書き込むことによって使用可能になる。次に、レ
ジューム・ルーチンは、510乃至514で、D000Hデ
ータ構造からそれぞれの装置内のレジスタに値を書き込
むことによって、タイマ制御装置102、8042キーボー
ド・インタフェース・マイクロプロセッサ104、およ
び8259割込み制御装置92の状態を復元する。
装置56および固定ディスク制御装置86が、D000Hデ
ータ構造から2つの装置のそれぞれのレジスタに値を書
き込むことによって復元される。次に、508で、CP
Uキャッシュ41および外部キャッシュ60がそれぞ
れ、CPU 40およびキャッシュ制御装置62に適切
な値を書き込むことによって使用可能になる。次に、レ
ジューム・ルーチンは、510乃至514で、D000Hデ
ータ構造からそれぞれの装置内のレジスタに値を書き込
むことによって、タイマ制御装置102、8042キーボー
ド・インタフェース・マイクロプロセッサ104、およ
び8259割込み制御装置92の状態を復元する。
【0209】次に、レジューム・ルーチンは、516
で、Swap BIOS Data Area & Vector Tableルーチンを呼
び出す。このルーチンを呼び出す前には、既知のBIOSデ
ータ領域およびベクトル・テーブルはセグメント0000H
で活動的であり、サスペンド・ファイルから読み取られ
たBIOSデータ領域およびベクトル・テーブルはセグメン
トD000Hデータ構造で非活動的である。スワップ後、既
知のデータ領域およびベクトル・テーブルはセグメント
D000Hで非活動的になり、サスペンド・ルーチンで保存
されたデータ領域およびベクトル・テーブルはセグメン
ト0000Hで活動的になる。
で、Swap BIOS Data Area & Vector Tableルーチンを呼
び出す。このルーチンを呼び出す前には、既知のBIOSデ
ータ領域およびベクトル・テーブルはセグメント0000H
で活動的であり、サスペンド・ファイルから読み取られ
たBIOSデータ領域およびベクトル・テーブルはセグメン
トD000Hデータ構造で非活動的である。スワップ後、既
知のデータ領域およびベクトル・テーブルはセグメント
D000Hで非活動的になり、サスペンド・ルーチンで保存
されたデータ領域およびベクトル・テーブルはセグメン
ト0000Hで活動的になる。
【0210】最後に、レジューム・ルーチンは、518
で、Restore CPUルーチンにジャンプし、Restore CPUル
ーチンはCPU 40を、サスペンドされる前の状態に
復元する。Restore CPUルーチンについては、図28乃
至図31に関連した記載で詳細に説明する。Restore CP
Uルーチンは最終的に、APMに実行制御を戻す。
で、Restore CPUルーチンにジャンプし、Restore CPUル
ーチンはCPU 40を、サスペンドされる前の状態に
復元する。Restore CPUルーチンについては、図28乃
至図31に関連した記載で詳細に説明する。Restore CP
Uルーチンは最終的に、APMに実行制御を戻す。
【0211】最後に、CPU 40はRETURN命令を実行
し、システムをAPMに戻す。システムは現在、サスペ
ンドされなかった場合と同様にコードの実行を続けてい
る。あらゆる実用的な目的のために、システムはサスペ
ンド/レジューム手順の影響を受けない。
し、システムをAPMに戻す。システムは現在、サスペ
ンドされなかった場合と同様にコードの実行を続けてい
る。あらゆる実用的な目的のために、システムはサスペ
ンド/レジューム手順の影響を受けない。
【0212】ここで、図24乃至図27を参照すると、
Save CPU Stateルーチンのフローチャートが示されてい
る。サスペンド・ルーチンは、600で、Save CPU Sta
teルーチンにジャンプする。APMがセグメントE000H
およびF000Hを使用可能にしており、これらのルーチン
が該セグメントから読取り/書込みとして実行すること
に留意されたい。また、602に示すように、APMに
よってEFLAGSおよび8つの汎用レジスタが保存されてい
る。Save CPU Stateルーチンは、604で、まずDMA
が終了するのを待ち、マウス13データ・パケットに同
期化して、このルーチンがマウス・パケット伝送間に実
行することを保証する。以下のステップによって、DM
Aは終了し、マウス・パケットに同期化することができ
る。(1)割込みを使用可能にする。(2)DMAが終
了するまで7ミリ秒間待つ。(3)割込みを使用不能に
する。(4)マウス・パケット境界を5ミリ秒間待つ。
(5)割込みを使用可能にする。(6)マウス・パケッ
トが到着するまでさらに5ミリ秒間待つ。(7)割込み
を使用不能にする。これらのステップの後、マウス・パ
ケット間で安全にコードを実行することができる。
Save CPU Stateルーチンのフローチャートが示されてい
る。サスペンド・ルーチンは、600で、Save CPU Sta
teルーチンにジャンプする。APMがセグメントE000H
およびF000Hを使用可能にしており、これらのルーチン
が該セグメントから読取り/書込みとして実行すること
に留意されたい。また、602に示すように、APMに
よってEFLAGSおよび8つの汎用レジスタが保存されてい
る。Save CPU Stateルーチンは、604で、まずDMA
が終了するのを待ち、マウス13データ・パケットに同
期化して、このルーチンがマウス・パケット伝送間に実
行することを保証する。以下のステップによって、DM
Aは終了し、マウス・パケットに同期化することができ
る。(1)割込みを使用可能にする。(2)DMAが終
了するまで7ミリ秒間待つ。(3)割込みを使用不能に
する。(4)マウス・パケット境界を5ミリ秒間待つ。
(5)割込みを使用可能にする。(6)マウス・パケッ
トが到着するまでさらに5ミリ秒間待つ。(7)割込み
を使用不能にする。これらのステップの後、マウス・パ
ケット間で安全にコードを実行することができる。
【0213】次に、606で、アドレス回線20の状態
(入出力ポート92H)がスタック上にプッシュされ、
608で、数値演算プロセッサ44の状態がスタック上
にプッシュされる。次に、610で、フラグがセットま
たはクリアされ、それぞれ、CPUが32ビット・モー
ドで実行しているか、16ビット・モードで実行してい
るかを示す。
(入出力ポート92H)がスタック上にプッシュされ、
608で、数値演算プロセッサ44の状態がスタック上
にプッシュされる。次に、610で、フラグがセットま
たはクリアされ、それぞれ、CPUが32ビット・モー
ドで実行しているか、16ビット・モードで実行してい
るかを示す。
【0214】次に、612で、CPU 40がプロテク
ト・モードで実行しているか否かに応じて、実行される
コードの流れが枝分かれする。CPU 40は、プロテ
クト・モードで実行していない場合、間違いなくリアル
・モードで実行しており、レジスタを非常に単純な方法
で保存することができる。まず、614で、マシン状況
ワードおよびCR3の値がセグメントE000Hデータ構造
に書き込まれる。また、614で、TRおよびLDTRに対
応する領域中のセグメントE000Hデータ構造にゼロが書
き込まれる。なぜなら、TRとLDTRはリアル・モードで
はゼロだからである。
ト・モードで実行しているか否かに応じて、実行される
コードの流れが枝分かれする。CPU 40は、プロテ
クト・モードで実行していない場合、間違いなくリアル
・モードで実行しており、レジスタを非常に単純な方法
で保存することができる。まず、614で、マシン状況
ワードおよびCR3の値がセグメントE000Hデータ構造
に書き込まれる。また、614で、TRおよびLDTRに対
応する領域中のセグメントE000Hデータ構造にゼロが書
き込まれる。なぜなら、TRとLDTRはリアル・モードで
はゼロだからである。
【0215】次に、616で、コードが共通コード経路
とマージし、GDTRおよびLDTRに記憶された値がセグメン
トE000Hデータ構造に書き込まれる。次に、618で、
CPU 40が仮想8086モードで実行していたか否かに
応じて、実行されるコードの流れが枝分かれする。CP
U 40が仮想8086モードで実行していない場合、コー
ドは共通経路に沿って続行し、タスク620に至り、デ
バッグ・レジスタDR7、DR6、DR3、DR2、D
R1、およびDR0がスタック上にプッシュされる。こ
れらのレジスタは、デバッガおよびその他のルーチンに
よって使用されている。次に、622で、DS、ES、
FS、およびGSがスタック上にプッシュされる。次
に、CS、SS、およびESPの値がセグメントE000H
データ構造に書き込まれる。
とマージし、GDTRおよびLDTRに記憶された値がセグメン
トE000Hデータ構造に書き込まれる。次に、618で、
CPU 40が仮想8086モードで実行していたか否かに
応じて、実行されるコードの流れが枝分かれする。CP
U 40が仮想8086モードで実行していない場合、コー
ドは共通経路に沿って続行し、タスク620に至り、デ
バッグ・レジスタDR7、DR6、DR3、DR2、D
R1、およびDR0がスタック上にプッシュされる。こ
れらのレジスタは、デバッガおよびその他のルーチンに
よって使用されている。次に、622で、DS、ES、
FS、およびGSがスタック上にプッシュされる。次
に、CS、SS、およびESPの値がセグメントE000H
データ構造に書き込まれる。
【0216】この時点で、セグメントE000Hデータ構造
に書き込むすべての値が書き込まれており、したがっ
て、626で、シャドウRAMセグメントE000HおよびF
000Hを読取り専用に戻すことができる。次に、628
で、Write-BackおよびInvalidateCacheコマンドを使用
してCPUキャッシュ41がフラッシュされる。
に書き込むすべての値が書き込まれており、したがっ
て、626で、シャドウRAMセグメントE000HおよびF
000Hを読取り専用に戻すことができる。次に、628
で、Write-BackおよびInvalidateCacheコマンドを使用
してCPUキャッシュ41がフラッシュされる。
【0217】最後に、630で、CMOS不揮発性メモリ9
6中に固有のシャットドウン・フラグがセットされる。
最後に、632で、Save CPU Stateルーチンが事実上、
サスペンド・ルーチンに「戻る」。この「戻り」は実際
には、コード中のブランチが従うリセットである。CP
U 40は、リセット・ベクトルの指すコードにジャン
プすることによってリセットされる。CPU 40は、
リセットされると、強制的にリアル・モードになり、保
護障害を発生させる恐れなしにあらゆる装置およびメモ
リ位置にアクセスできるようになる。この時点で、CP
Uの状態は保存されており、サスペンド・ルーチンはシ
ステムの残りの状態を保存しなければならない。
6中に固有のシャットドウン・フラグがセットされる。
最後に、632で、Save CPU Stateルーチンが事実上、
サスペンド・ルーチンに「戻る」。この「戻り」は実際
には、コード中のブランチが従うリセットである。CP
U 40は、リセット・ベクトルの指すコードにジャン
プすることによってリセットされる。CPU 40は、
リセットされると、強制的にリアル・モードになり、保
護障害を発生させる恐れなしにあらゆる装置およびメモ
リ位置にアクセスできるようになる。この時点で、CP
Uの状態は保存されており、サスペンド・ルーチンはシ
ステムの残りの状態を保存しなければならない。
【0218】リセット・ベクトルの指すコード内では、
CMOSメモリ96中でシャットダウン・フラグがセットさ
れているか否かに応じてプログラム制御が枝分かれす
る。シャットダウン・フラグがクリアされている場合、
システムは通常どおりブートする。一方、シャットダウ
ン・フラグがセットされている場合、コードはサスペン
ド・ルーチンの残りに枝分かれする。すなわち、実行制
御はサスペンド・ルーチン内の図10乃至図15中のタ
スク253にジャンプし、サスペンド・ルーチンはコン
ピュータ・システム10のサスペンドを終了する。した
がって、632で、Save CPU Stateルーチンは、効果的
にサスペンド・ルーチンに「戻る」。
CMOSメモリ96中でシャットダウン・フラグがセットさ
れているか否かに応じてプログラム制御が枝分かれす
る。シャットダウン・フラグがクリアされている場合、
システムは通常どおりブートする。一方、シャットダウ
ン・フラグがセットされている場合、コードはサスペン
ド・ルーチンの残りに枝分かれする。すなわち、実行制
御はサスペンド・ルーチン内の図10乃至図15中のタ
スク253にジャンプし、サスペンド・ルーチンはコン
ピュータ・システム10のサスペンドを終了する。した
がって、632で、Save CPU Stateルーチンは、効果的
にサスペンド・ルーチンに「戻る」。
【0219】再び、タスク612を参照する。CPUが
プロテクト・モードの場合、タスク634で、CPU
40が仮想8086モードか否かに応じてコードが枝分かれ
する。CPU 40が仮想8086モードでない場合、タス
ク636で、現行の特権レベルがゼロか否かに応じてコ
ードが再び枝分かれする。現行の特権がゼロ以外である
場合、適切な特権のないルーチンがSave CPU Stateルー
チンを実行しており、Fatal Suspend Errorルーチン
(タスク652から始まる)が呼び出される。Fatal Su
spend Errorルーチンについては以下で説明する。プロ
グラム制御がFatalSuspend Errorルーチンから戻ると、
CPUはSave CPU Stateルーチンを呼び出す前の条件に
戻らなければならず、したがって、プログラム実行は図
28乃至図31中のタスク794に枝分かれする。タス
ク794は、CPUの部分的な復元を実行する。CPU
のほんの少しの部分しか修正されていないので、部分的
な修正だけが必要になる。
プロテクト・モードの場合、タスク634で、CPU
40が仮想8086モードか否かに応じてコードが枝分かれ
する。CPU 40が仮想8086モードでない場合、タス
ク636で、現行の特権レベルがゼロか否かに応じてコ
ードが再び枝分かれする。現行の特権がゼロ以外である
場合、適切な特権のないルーチンがSave CPU Stateルー
チンを実行しており、Fatal Suspend Errorルーチン
(タスク652から始まる)が呼び出される。Fatal Su
spend Errorルーチンについては以下で説明する。プロ
グラム制御がFatalSuspend Errorルーチンから戻ると、
CPUはSave CPU Stateルーチンを呼び出す前の条件に
戻らなければならず、したがって、プログラム実行は図
28乃至図31中のタスク794に枝分かれする。タス
ク794は、CPUの部分的な復元を実行する。CPU
のほんの少しの部分しか修正されていないので、部分的
な修正だけが必要になる。
【0220】再び、タスク636を参照する。呼出しコ
ードが適切な特権レベルを有する場合、642から、保
存が続行し、CR0、CR3、TR、およびLDTRの値が
セグメントE000Hデータ構造に保存される。次に、前述
のように、616で、このコード経路が共通コード経路
とマージし、GDTRおよびIDTRに記憶された値がセグメン
トE000Hデータ構造に保存される。コードは、ここか
ら、618から前述の632までの経路をたどり、残り
のサスペンド・ルーチン・コードに「戻る」(リセット
・プラス・ブランチ)ことになる。
ードが適切な特権レベルを有する場合、642から、保
存が続行し、CR0、CR3、TR、およびLDTRの値が
セグメントE000Hデータ構造に保存される。次に、前述
のように、616で、このコード経路が共通コード経路
とマージし、GDTRおよびIDTRに記憶された値がセグメン
トE000Hデータ構造に保存される。コードは、ここか
ら、618から前述の632までの経路をたどり、残り
のサスペンド・ルーチン・コードに「戻る」(リセット
・プラス・ブランチ)ことになる。
【0221】再び、タスク634を参照する。CPU
40が仮想8086モードの場合、644から実行が続行
し、マシン状況ワード(CR0の下位16ビット)の値
がE000Hデータ構造に保存されると共に、セグメントE00
0H中のフラグがセットされ、CPUが仮想8086モードで
あることを示す。このコードは次に、616で、転送6
46および648を介して共通コードとマージする。タ
スク618で、CPUが仮想8086モードだった場合、制
御は650に枝分かれし、DS、ES、FS、およびG
Sの値がセグメントE000Hデータ構造に保存される。こ
のコードは、624で、共通コードと再マージする。コ
ードは、ここから、624から前述の632までの経路
をたどり、残りのサスペンド・ルーチン・コードに「戻
る」(リセット・プラス・ブランチ)ことになる。
40が仮想8086モードの場合、644から実行が続行
し、マシン状況ワード(CR0の下位16ビット)の値
がE000Hデータ構造に保存されると共に、セグメントE00
0H中のフラグがセットされ、CPUが仮想8086モードで
あることを示す。このコードは次に、616で、転送6
46および648を介して共通コードとマージする。タ
スク618で、CPUが仮想8086モードだった場合、制
御は650に枝分かれし、DS、ES、FS、およびG
Sの値がセグメントE000Hデータ構造に保存される。こ
のコードは、624で、共通コードと再マージする。コ
ードは、ここから、624から前述の632までの経路
をたどり、残りのサスペンド・ルーチン・コードに「戻
る」(リセット・プラス・ブランチ)ことになる。
【0222】Fatal Suspend Errorルーチンは、タスク
652乃至664に示されており、638で、不適切な
特権レベルをもつコードがCPUの状態を保存しようと
すると呼び出される。まず、654で、図7に関連した
記載で説明するように、電源管理ポートに07H、次に
05Hを書き込むことによって、フェールセーフ・タイ
マがリセットされる。次に、タスク656で、スピーカ
が、886 Hzで、1/6秒の間隔をおいて0.25秒ずつ3度
ビープする。この3回のビープは、ユーザに、試みたサ
スペンドが実行されなかったことを警告する。ビープの
後、658で、フェールセーフ・タイマが再びリセット
され、ユーザに、フェールセーフ・タイマが満了して電
源17を遮断する前に、一貫して15乃至18秒の時間
が与えられる。
652乃至664に示されており、638で、不適切な
特権レベルをもつコードがCPUの状態を保存しようと
すると呼び出される。まず、654で、図7に関連した
記載で説明するように、電源管理ポートに07H、次に
05Hを書き込むことによって、フェールセーフ・タイ
マがリセットされる。次に、タスク656で、スピーカ
が、886 Hzで、1/6秒の間隔をおいて0.25秒ずつ3度
ビープする。この3回のビープは、ユーザに、試みたサ
スペンドが実行されなかったことを警告する。ビープの
後、658で、フェールセーフ・タイマが再びリセット
され、ユーザに、フェールセーフ・タイマが満了して電
源17を遮断する前に、一貫して15乃至18秒の時間
が与えられる。
【0223】次に、タスク660および662で、Fata
l Suspend Errorルーチンは、スイッチ21がユーザに
よって押され、ユーザがサスペンドを中止したいことを
示しているか否かを繰り返して確認する。図7に関連し
た記載で説明するように、スイッチは、電源管理ポート
の読取りの後にFFHが出現するのを待つことによって
閉鎖に関して検査される。ユーザがボタン21を押す
と、実行制御は前述のタスク640に戻る。ユーザが1
5乃至18秒以内にボタン21を押さない場合、フェー
ルセーフ・タイマが満了し、電源17が「オフ」にな
り、言うまでもなく、コードのあらゆる実行が停止す
る。
l Suspend Errorルーチンは、スイッチ21がユーザに
よって押され、ユーザがサスペンドを中止したいことを
示しているか否かを繰り返して確認する。図7に関連し
た記載で説明するように、スイッチは、電源管理ポート
の読取りの後にFFHが出現するのを待つことによって
閉鎖に関して検査される。ユーザがボタン21を押す
と、実行制御は前述のタスク640に戻る。ユーザが1
5乃至18秒以内にボタン21を押さない場合、フェー
ルセーフ・タイマが満了し、電源17が「オフ」にな
り、言うまでもなく、コードのあらゆる実行が停止す
る。
【0224】ここで、図28乃至図31を参照すると、
Restore CPUルーチンのフローチャートが700から示
されている。このルーチンは、ハードウェアおよびメモ
リの残りがサスペンド前の状態に復元された後にレジュ
ーム・ルーチンによって呼び出される。まず、セグメン
トE000HおよびF000Hがまだ読取り/書込みになっていな
い場合、702で、該セグメントを読取り/書込みにす
る必要がある。
Restore CPUルーチンのフローチャートが700から示
されている。このルーチンは、ハードウェアおよびメモ
リの残りがサスペンド前の状態に復元された後にレジュ
ーム・ルーチンによって呼び出される。まず、セグメン
トE000HおよびF000Hがまだ読取り/書込みになっていな
い場合、702で、該セグメントを読取り/書込みにす
る必要がある。
【0225】次に、704で、CPU 40が仮想8086
モードで実行しているか否かに応じて、実行されるコー
ドの流れが枝分かれする。コンピュータ・システム10
をサスペンドしたときにCPU 40が仮想8086モード
で実行していた場合、仮想8086 CPUに固有なタスク70
6から728までのコードが復元される。次に、コード
はタスク730から748までの共通経路とマージす
る。
モードで実行しているか否かに応じて、実行されるコー
ドの流れが枝分かれする。コンピュータ・システム10
をサスペンドしたときにCPU 40が仮想8086モード
で実行していた場合、仮想8086 CPUに固有なタスク70
6から728までのコードが復元される。次に、コード
はタスク730から748までの共通経路とマージす
る。
【0226】状態を保存する際にCPUが仮想8086モー
ドの場合は、Save CPU StateルーチンによってCD3、
LDTR、およびTRによってアクセスし、それらの値をE0
00Hデータ構造に保存することはできなかった。したが
って、706、708、および710でそれぞれCR
3、LDTR、およびTRを評価しなければならない。一般
に、これらの値は、システムRAM 53を介して、C
R3、LDTR、およびTRの指す構造を探索することによ
って評価される。たとえば、GDTでLDTエントリを
見つけることによって、LDTRを決定することができる。
ドの場合は、Save CPU StateルーチンによってCD3、
LDTR、およびTRによってアクセスし、それらの値をE0
00Hデータ構造に保存することはできなかった。したが
って、706、708、および710でそれぞれCR
3、LDTR、およびTRを評価しなければならない。一般
に、これらの値は、システムRAM 53を介して、C
R3、LDTR、およびTRの指す構造を探索することによ
って評価される。たとえば、GDTでLDTエントリを
見つけることによって、LDTRを決定することができる。
【0227】タスク706でCR3が評価される。CR
3はページ・ディレクトリ・ベース・レジスタ(PDBR)
を保持し、このレジスタは、ページ・ディレクトリのペ
ージ・フレーム・アドレス、ページ・レベル・キャッシ
ュ使用不能(PCD)ビット、およびページ・レベル・
ライト・スルー(PWT)ビットを保持する。PDBRの評
価は、ページ・ディレクトリがシステムRAM 53内
の4K境界から開始しなければならないことを認識し、
Save CPU SateルーチンによってセグメントE000Hデータ
構造に保存されたIDTRおよびGDTRの値を認識し、BIOSコ
ードをアドレス空間0E0000乃至0F0000から実行するもの
と仮定することによって行われる。この仮定は、BIOSコ
ードが常に、速度に関してシャドウRAMにシャドウされ
るので合理的である。オペレーティング・システムがBI
OSコードを異なる領域にコピーした場合、CR3の評価
は失敗する。
3はページ・ディレクトリ・ベース・レジスタ(PDBR)
を保持し、このレジスタは、ページ・ディレクトリのペ
ージ・フレーム・アドレス、ページ・レベル・キャッシ
ュ使用不能(PCD)ビット、およびページ・レベル・
ライト・スルー(PWT)ビットを保持する。PDBRの評
価は、ページ・ディレクトリがシステムRAM 53内
の4K境界から開始しなければならないことを認識し、
Save CPU SateルーチンによってセグメントE000Hデータ
構造に保存されたIDTRおよびGDTRの値を認識し、BIOSコ
ードをアドレス空間0E0000乃至0F0000から実行するもの
と仮定することによって行われる。この仮定は、BIOSコ
ードが常に、速度に関してシャドウRAMにシャドウされ
るので合理的である。オペレーティング・システムがBI
OSコードを異なる領域にコピーした場合、CR3の評価
は失敗する。
【0228】前述の認識および仮定のもとで、物理メモ
リが4Kページごとに、BIOSコード・セグメントに対応
するページ変換テーブルの存在について試験される。す
なわち、0380Hのページへのオフセットは、値000E0XX
X、000E1XXX、000E2XXX、、、000FFXXXを含む。そのペ
ージが見つかると、システムRAM 53で、すでに見
つかっているページ・テーブルの物理アドレスに第1の
エントリが対応するページ・ディレクトリが探索され
る。ページ・ディレクトリの物理アドレスは、PDBRの値
の適切な「評価」である。
リが4Kページごとに、BIOSコード・セグメントに対応
するページ変換テーブルの存在について試験される。す
なわち、0380Hのページへのオフセットは、値000E0XX
X、000E1XXX、000E2XXX、、、000FFXXXを含む。そのペ
ージが見つかると、システムRAM 53で、すでに見
つかっているページ・テーブルの物理アドレスに第1の
エントリが対応するページ・ディレクトリが探索され
る。ページ・ディレクトリの物理アドレスは、PDBRの値
の適切な「評価」である。
【0229】次に、PDBRがGDTRおよびIDTR用のアドレス
を正しく変換するか否かを確認することによって、仮説
的なPDBRが検証される。すなわち、PDBRが、GDTRの線形
アドレスを変換するために使用され、GDTの第1エン
トリが空であることが検証される(GDTの最初の8バ
イトはどのCPUモードでも常に00Hである)。次
に、返される物理アドレスが、物理メモリの境界内であ
ることが検証される。線形物理変換を実行するために、
CPUの変換方式を模倣するサブルーチンが使用され
る。すなわち、ESIで変換されたアドレスが返され、
物理メモリ中に物理ページが存在する場合は繰上げフラ
グCFがクリアされ、メモリ中に物理ページが存在しな
い場合はCFがセットされる。このtranslationルーチ
ンを使用して、システム・メモリ53からGDTの第1
のバイトが読み取られる。GDTの第1のエントリが空
の場合、仮説的なPDBRは第1の試験に合格しており、し
たがってもう1度試験される。次に、PDBRを使用し、tr
anslationルーチンによってIDTRが変換され、IDTが
求められる。次に、返される物理アドレスが、物理境界
内であることが検証される。IDTの第1の位置が物理
メモリに存在する場合、PDBRは第2の試験に合格してい
る。
を正しく変換するか否かを確認することによって、仮説
的なPDBRが検証される。すなわち、PDBRが、GDTRの線形
アドレスを変換するために使用され、GDTの第1エン
トリが空であることが検証される(GDTの最初の8バ
イトはどのCPUモードでも常に00Hである)。次
に、返される物理アドレスが、物理メモリの境界内であ
ることが検証される。線形物理変換を実行するために、
CPUの変換方式を模倣するサブルーチンが使用され
る。すなわち、ESIで変換されたアドレスが返され、
物理メモリ中に物理ページが存在する場合は繰上げフラ
グCFがクリアされ、メモリ中に物理ページが存在しな
い場合はCFがセットされる。このtranslationルーチ
ンを使用して、システム・メモリ53からGDTの第1
のバイトが読み取られる。GDTの第1のエントリが空
の場合、仮説的なPDBRは第1の試験に合格しており、し
たがってもう1度試験される。次に、PDBRを使用し、tr
anslationルーチンによってIDTRが変換され、IDTが
求められる。次に、返される物理アドレスが、物理境界
内であることが検証される。IDTの第1の位置が物理
メモリに存在する場合、PDBRは第2の試験に合格してい
る。
【0230】仮説的なPDBRがGDTRおよびIDTRに正しく変
換される場合、その値はPDBRであると仮定され、セグメ
ントE000Hデータ構造内のCR3領域に書き込まれる。
一方、仮説的なCR3がどの試験にも合格しない場合、
ルーチンがレジュームし、システム・メモリで他のBIOS
コード・セグメント・ページ変換テーブルを探索する。
このテーブルによって有効なCR3が見つかる。
換される場合、その値はPDBRであると仮定され、セグメ
ントE000Hデータ構造内のCR3領域に書き込まれる。
一方、仮説的なCR3がどの試験にも合格しない場合、
ルーチンがレジュームし、システム・メモリで他のBIOS
コード・セグメント・ページ変換テーブルを探索する。
このテーブルによって有効なCR3が見つかる。
【0231】PCDおよびPWTは常に、通常のプレー
ナ操作用に00Hに固定されていると仮定される。これ
らの値は、ゼロにセットされ、セグメントE000Hデータ
構造内のCR3領域にPDBRと共に書き込まれる。
ナ操作用に00Hに固定されていると仮定される。これ
らの値は、ゼロにセットされ、セグメントE000Hデータ
構造内のCR3領域にPDBRと共に書き込まれる。
【0232】CR3が評価されると、708で、LDTRが
評価される。LDTRは、CR3が評価されており、LDT
がGDT内のどこかにあることが認識され、LDTが間
違いなくメモリに存在していることが認識されている場
合に評価することができる。LDTRを評価するために、G
DTで、存在するとマーク付けされているLDTが探索
される。物理メモリに存在し(タスク706に関連した
記載で説明するtranslationルーチンを使用して試験さ
れる)、存在するとマーク付けされている第1のLDT
は、LDTRの指すテーブルであると仮定される。そのテー
ブルの始めの物理アドレスは、セグメントE000Hデータ
構造中のLDTR領域に保存される。
評価される。LDTRは、CR3が評価されており、LDT
がGDT内のどこかにあることが認識され、LDTが間
違いなくメモリに存在していることが認識されている場
合に評価することができる。LDTRを評価するために、G
DTで、存在するとマーク付けされているLDTが探索
される。物理メモリに存在し(タスク706に関連した
記載で説明するtranslationルーチンを使用して試験さ
れる)、存在するとマーク付けされている第1のLDT
は、LDTRの指すテーブルであると仮定される。そのテー
ブルの始めの物理アドレスは、セグメントE000Hデータ
構造中のLDTR領域に保存される。
【0233】OS/2のもとでは、物理メモリに複数のLD
Tが存在するとマーク付けされ、かつ実際に存在する可
能性があるが、LDTRを評価する前述の方法は、実用でき
るだけの信頼性があると考えられる。EMM386は、common
Virtual 8086 Modeルーチンであり、したがって、問題
を起こす可能性があると思われる。しかし、EMM386は1
つのCR3および1つのLDTRしか有していないので、EM
M386のCR3およびLDTRは評価が容易である。
Tが存在するとマーク付けされ、かつ実際に存在する可
能性があるが、LDTRを評価する前述の方法は、実用でき
るだけの信頼性があると考えられる。EMM386は、common
Virtual 8086 Modeルーチンであり、したがって、問題
を起こす可能性があると思われる。しかし、EMM386は1
つのCR3および1つのLDTRしか有していないので、EM
M386のCR3およびLDTRは評価が容易である。
【0234】CR3およびLDTRが評価されると、710
で、TRが評価される。基本的に、GDTおよびLDT
内の各タスク・セレクタ・エントリで、ビジー・ビット
をセットされたタスク状態セレクタが探索される。各エ
ントリのタイプ・フィールドは、ビジー80286タスク状
態セレクタであるか、ビジー80486タスク状態セレクタ
であるかを確認するために試験される。ビジー286 TSS
またはビジー486 TSSをもつ第1のエントリは、TRの
指すアドレスであると仮定される。ビジー286または486
TSSをもつエントリの物理アドレスは、セグメントE000
Hデータ構造内のTR領域に保存される。ビジー286また
は486 TSSをもつエントリがない場合、セグメントE000H
データ構造内のTR領域にゼロが保存される。
で、TRが評価される。基本的に、GDTおよびLDT
内の各タスク・セレクタ・エントリで、ビジー・ビット
をセットされたタスク状態セレクタが探索される。各エ
ントリのタイプ・フィールドは、ビジー80286タスク状
態セレクタであるか、ビジー80486タスク状態セレクタ
であるかを確認するために試験される。ビジー286 TSS
またはビジー486 TSSをもつ第1のエントリは、TRの
指すアドレスであると仮定される。ビジー286または486
TSSをもつエントリの物理アドレスは、セグメントE000
Hデータ構造内のTR領域に保存される。ビジー286また
は486 TSSをもつエントリがない場合、セグメントE000H
データ構造内のTR領域にゼロが保存される。
【0235】コードは、CR3、LDTR、およびTRを評
価した後、タスク712から続行する。712で、TR
が有効なTSSを指す場合、714で、TRの指すTS
S中のビジー・ビットがクリアされる。いずれの場合
も、コードは716から続行し、DS、ES、FS、お
よびGSにGDTに有効なセレクタがロードされる。次
に、718で、CR3およびCR0にセグメントE000H
データ構造からの値がロードされる。次に、720で、
ページングが使用可能になり、したがって、線形アドレ
スが物理アドレスに等しい領域だけが、セグメントE000
HおよびF000H中の領域になる。次に、722で、IDTR、
GDTR、LDTR、およびTRに、セグメントE000Hデータ構
造に記憶された値がロードされる。
価した後、タスク712から続行する。712で、TR
が有効なTSSを指す場合、714で、TRの指すTS
S中のビジー・ビットがクリアされる。いずれの場合
も、コードは716から続行し、DS、ES、FS、お
よびGSにGDTに有効なセレクタがロードされる。次
に、718で、CR3およびCR0にセグメントE000H
データ構造からの値がロードされる。次に、720で、
ページングが使用可能になり、したがって、線形アドレ
スが物理アドレスに等しい領域だけが、セグメントE000
HおよびF000H中の領域になる。次に、722で、IDTR、
GDTR、LDTR、およびTRに、セグメントE000Hデータ構
造に記憶された値がロードされる。
【0236】最後に、724および726で、GS、F
S、DS、ES、SS、ESP、EFLAGS(VMビットを
セット後の)、およびCSに対応する値をセグメントE0
00Hデータ構造からスタック上にプッシュすることによ
って、仮想8086割込みスタックが作成される。また、7
26で、タスク730でのコードに対応するリターン・
アドレスがスタック上にプッシュされる。最後に、IRET
D命令が実行され、CPU 40が仮想8086モードに戻
されると共に、実行がタスク730に対応するコードに
転送される。
S、DS、ES、SS、ESP、EFLAGS(VMビットを
セット後の)、およびCSに対応する値をセグメントE0
00Hデータ構造からスタック上にプッシュすることによ
って、仮想8086割込みスタックが作成される。また、7
26で、タスク730でのコードに対応するリターン・
アドレスがスタック上にプッシュされる。最後に、IRET
D命令が実行され、CPU 40が仮想8086モードに戻
されると共に、実行がタスク730に対応するコードに
転送される。
【0237】タスク730は、図28乃至図31中の様
々なスレッドがそれぞれ使用する共通スレッドを開始す
る。タスク730で、セグメントE000Hデータ構造に保
存された値から数値演算プロセッサ44が復元される。
次に、732で、アドレス回線20の状態(入出力ポー
ト92H)がスタックからポップされる。次に、734
で、シャドウRAMセグメントC000Hが再び、読取り専
用になる。736で、図7に関連した記載で説明するよ
うに、電源管理ポートに01Hを書き込むことによっ
て、APMがハードウェアに接続される。次に、738
で、シャドウRAMセグメントE000HおよびF000Hが読取
り専用になる。最後に、740で、Restore CPU State
ルーチンが、正常のレジュームが行われたことを示すフ
ラグをセットする。タスク742、744、および74
6は、Restore CPU Stateルーチンでは実行されず、サ
スペンド事象によって割り込まれたコードに戻る前のあ
る時点で、8つの汎用レジスタがスタックからポップさ
れ、マスク可能割込みが使用可能になり(コードが割り
込まれたときに使用可能になった場合)、フラグがスタ
ックからポップされることを示すためだけに使用され
る。最後に、Restore CPU StateルーチンがSupervisor
ルーチンに戻り、SupervisorルーチンがAPMに制御を
戻し、APMが無効なシステム値を更新すると共に、割
り込まれたコードに制御を戻す。
々なスレッドがそれぞれ使用する共通スレッドを開始す
る。タスク730で、セグメントE000Hデータ構造に保
存された値から数値演算プロセッサ44が復元される。
次に、732で、アドレス回線20の状態(入出力ポー
ト92H)がスタックからポップされる。次に、734
で、シャドウRAMセグメントC000Hが再び、読取り専
用になる。736で、図7に関連した記載で説明するよ
うに、電源管理ポートに01Hを書き込むことによっ
て、APMがハードウェアに接続される。次に、738
で、シャドウRAMセグメントE000HおよびF000Hが読取
り専用になる。最後に、740で、Restore CPU State
ルーチンが、正常のレジュームが行われたことを示すフ
ラグをセットする。タスク742、744、および74
6は、Restore CPU Stateルーチンでは実行されず、サ
スペンド事象によって割り込まれたコードに戻る前のあ
る時点で、8つの汎用レジスタがスタックからポップさ
れ、マスク可能割込みが使用可能になり(コードが割り
込まれたときに使用可能になった場合)、フラグがスタ
ックからポップされることを示すためだけに使用され
る。最後に、Restore CPU StateルーチンがSupervisor
ルーチンに戻り、SupervisorルーチンがAPMに制御を
戻し、APMが無効なシステム値を更新すると共に、割
り込まれたコードに制御を戻す。
【0238】ここで再び、タスク704を参照する。C
PU 40が割り込まれたときに仮想8086モードでなか
った場合、コードは750から792までの経路に従
い、この経路で、タスク730乃至748の共通スレッ
ドとマージする。750で、セグメントE000Hデータ構
造中のTR値が、TRが有効なTSSを指すことを示す
場合、752で、そのTSS中のビジー・ビットがクリ
アされる。いずれの場合も、次に、754で、GDTRおよ
びCR0に、セグメントE000Hデータ構造からの値がロ
ードされる。
PU 40が割り込まれたときに仮想8086モードでなか
った場合、コードは750から792までの経路に従
い、この経路で、タスク730乃至748の共通スレッ
ドとマージする。750で、セグメントE000Hデータ構
造中のTR値が、TRが有効なTSSを指すことを示す
場合、752で、そのTSS中のビジー・ビットがクリ
アされる。いずれの場合も、次に、754で、GDTRおよ
びCR0に、セグメントE000Hデータ構造からの値がロ
ードされる。
【0239】次に、タスク756乃至764で、ダミー
・ページ・ディレクトリ・テーブルおよびページ変換テ
ーブルがセグメントC000Hにロードされる。まず、75
6で、シャドウRAMセグメントC000Hが読取り/書込
みになる。2番目に、758で、アドレス0C0000Hに新
しいページ・ディレクトリ・テーブルが作成される。3
番目に、760で、その新しいページ・ディレクトリ・
テーブル中の第1のエントリが0C1000Hを指すように修
正される。4番目に、762で、アドレス0E0000乃至0F
FFFFが存在し、このアドレス範囲に関して線形アドレス
が物理アドレスに等しくなるように、0C1000Hに新しい
ページ変換テーブルが作成される。最後に、アドレス変
換が0C0000H中の新しいダミー・ページ・ディレクトリ
およびページ変換テーブルを介して行われるように、C
R3中のページ・ディレクトリ・ベース・レジスタに0C
0000Hがロードされる。ページングは、タスク754で
CR0がロードされたときに再活動化されている(適用
可能な場合)。
・ページ・ディレクトリ・テーブルおよびページ変換テ
ーブルがセグメントC000Hにロードされる。まず、75
6で、シャドウRAMセグメントC000Hが読取り/書込
みになる。2番目に、758で、アドレス0C0000Hに新
しいページ・ディレクトリ・テーブルが作成される。3
番目に、760で、その新しいページ・ディレクトリ・
テーブル中の第1のエントリが0C1000Hを指すように修
正される。4番目に、762で、アドレス0E0000乃至0F
FFFFが存在し、このアドレス範囲に関して線形アドレス
が物理アドレスに等しくなるように、0C1000Hに新しい
ページ変換テーブルが作成される。最後に、アドレス変
換が0C0000H中の新しいダミー・ページ・ディレクトリ
およびページ変換テーブルを介して行われるように、C
R3中のページ・ディレクトリ・ベース・レジスタに0C
0000Hがロードされる。ページングは、タスク754で
CR0がロードされたときに再活動化されている(適用
可能な場合)。
【0240】次に、766で、シャドウRAMセグメン
トE000HおよびF000Hが読取り/書込みになる。次に、C
PU 40は、サスペンドされたときに16ビット・コ
ードを実行していた場合、その時点では16ビット・モ
ードであり、770で、セグメントE000Hデータ構造に
16ビット・コード経路を指すオフセットが保存され
る。一方、CPU40が、16ビット・モードでなかっ
た場合、その時点では32ビット・モードであり、77
2で、セグメントE000Hデータ構造に、16ビット・オ
フセットではなく、32ビット・コード経路を指すオフ
セットが保存される。いずれの場合も、これらの経路は
並列しており、一方が16ビット・オペランドを使用
し、他方が32ビット・オペランドを使用するという点
で異なる。タスク770および772は、どちらかの並
列経路へのオフセットをセットアップするに過ぎない。
以下のタスク782で、経路の1つ(オフセットに対応
するもの)に入る。
トE000HおよびF000Hが読取り/書込みになる。次に、C
PU 40は、サスペンドされたときに16ビット・コ
ードを実行していた場合、その時点では16ビット・モ
ードであり、770で、セグメントE000Hデータ構造に
16ビット・コード経路を指すオフセットが保存され
る。一方、CPU40が、16ビット・モードでなかっ
た場合、その時点では32ビット・モードであり、77
2で、セグメントE000Hデータ構造に、16ビット・オ
フセットではなく、32ビット・コード経路を指すオフ
セットが保存される。いずれの場合も、これらの経路は
並列しており、一方が16ビット・オペランドを使用
し、他方が32ビット・オペランドを使用するという点
で異なる。タスク770および772は、どちらかの並
列経路へのオフセットをセットアップするに過ぎない。
以下のタスク782で、経路の1つ(オフセットに対応
するもの)に入る。
【0241】次に、ステップ774で、セグメントE000
Hデータ構造からのCR3値がEDXに、セグメントE00
0Hデータ構造からのSS値がCXに、セグメントE000H
からのESP値がEBPに、セグメントE000Hデータ構
造からのTR値がESIの上半分に、セグメントE000H
データ構造からのLDTR値がESIの下半分(SI)にロ
ードされる。これらの値は、その下にある適切な位置に
シフトされる。次に、776で、GDTR、LDTR、およびC
R0にセグメントE000Hデータ構造からの値がロードさ
れる。778で、LDTRに、SIに記憶されたLDTR値がロ
ードされる。次に、コードは、タスク770または77
2に配置されたオフセットまでファー・ジャンプする。
ファー・ジャンプは、ソース・コード内に命令コードを
直接配置し、770または772からのオフセットを使
用することによってコード化される。コードは次に、7
82から、16ビット命令コード経路または32ビット
命令コード経路で続行する。
Hデータ構造からのCR3値がEDXに、セグメントE00
0Hデータ構造からのSS値がCXに、セグメントE000H
からのESP値がEBPに、セグメントE000Hデータ構
造からのTR値がESIの上半分に、セグメントE000H
データ構造からのLDTR値がESIの下半分(SI)にロ
ードされる。これらの値は、その下にある適切な位置に
シフトされる。次に、776で、GDTR、LDTR、およびC
R0にセグメントE000Hデータ構造からの値がロードさ
れる。778で、LDTRに、SIに記憶されたLDTR値がロ
ードされる。次に、コードは、タスク770または77
2に配置されたオフセットまでファー・ジャンプする。
ファー・ジャンプは、ソース・コード内に命令コードを
直接配置し、770または772からのオフセットを使
用することによってコード化される。コードは次に、7
82から、16ビット命令コード経路または32ビット
命令コード経路で続行する。
【0242】次に、784で、CR3に、EDXに記憶
されたCR3値が、SSに、CXに記憶されたSS値
が、ESPに、EBPに記憶されたESP値がロードさ
れる。次に、786で、GS、FS、ES、およびDS
がスタックからポップされる。788で、割り込まれた
CPU 40がプロテクト・モードで実行していた場
合、790で、TRに、ESIの上半分に記憶されたT
R値がロードされる。いずれの場合も、コードはタスク
792から続行し、デバッグ・レジスタDR0、DR
1、DR2、DR3、DR6、およびDR7がスタック
からポップされる。
されたCR3値が、SSに、CXに記憶されたSS値
が、ESPに、EBPに記憶されたESP値がロードさ
れる。次に、786で、GS、FS、ES、およびDS
がスタックからポップされる。788で、割り込まれた
CPU 40がプロテクト・モードで実行していた場
合、790で、TRに、ESIの上半分に記憶されたT
R値がロードされる。いずれの場合も、コードはタスク
792から続行し、デバッグ・レジスタDR0、DR
1、DR2、DR3、DR6、およびDR7がスタック
からポップされる。
【0243】この時点で、このコード経路は、前述のタ
スク730乃至748の共通コード経路とマージする。
794で、error-recoveryルーチンもSave CPU Stateル
ーチンのタスク640からの共通コード経路と連結す
る。
スク730乃至748の共通コード経路とマージする。
794で、error-recoveryルーチンもSave CPU Stateル
ーチンのタスク640からの共通コード経路と連結す
る。
【0244】ここで、図32乃至図34を参照すると、
Save 8259 Stateルーチンのフローチャートが800か
ら示されている。8259の状態の保存は、802で、実時
間クロック98によって使用される定期的割込み値を保
存し、804で、他のすべての読取り可能レジスタをセ
グメントE000Hデータ構造に保存することによって実行
される。当技術分野で周知のように、コンピュータ・シ
ステム10が固定値をもつには一定の8259読取り専用レ
ジスタが必要である。これらの値は既知であり、求める
必要はない。取得するのが困難な8259値は、8259ベース
・アドレス、8259スレーブ・アドレス、および2つの82
59が保留中を示すように設定されているか、OSによる
インサービス割込みを示すように設定されているかにつ
いての値である。
Save 8259 Stateルーチンのフローチャートが800か
ら示されている。8259の状態の保存は、802で、実時
間クロック98によって使用される定期的割込み値を保
存し、804で、他のすべての読取り可能レジスタをセ
グメントE000Hデータ構造に保存することによって実行
される。当技術分野で周知のように、コンピュータ・シ
ステム10が固定値をもつには一定の8259読取り専用レ
ジスタが必要である。これらの値は既知であり、求める
必要はない。取得するのが困難な8259値は、8259ベース
・アドレス、8259スレーブ・アドレス、および2つの82
59が保留中を示すように設定されているか、OSによる
インサービス割込みを示すように設定されているかにつ
いての値である。
【0245】前記の4つの項目は、図32乃至図34中
の残りのコードで確認される。806で、8259がマスク
され、キーボード12およびマウス13割込みだけがマ
スクされないままになる。
の残りのコードで確認される。806で、8259がマスク
され、キーボード12およびマウス13割込みだけがマ
スクされないままになる。
【0246】次に、808で、物理メモリの下位1Kを
セグメントC000Hデータ構造にコピーすることによっ
て、割込みベクトル・テーブルが保存される。次に、8
10で、セグメントC800Hから始まる256個のダミー
割込みサービス・ルーチンを指す256個の固有のダミ
ー・ベクトルをロードすることによって、物理メモリの
下位1Kに新しい「ダミー」割込みベクトル・テーブル
がロードされる。812で、セグメントC800Hに256
個のダミー割込みサービス・ルーチンが生成される。
セグメントC000Hデータ構造にコピーすることによっ
て、割込みベクトル・テーブルが保存される。次に、8
10で、セグメントC800Hから始まる256個のダミー
割込みサービス・ルーチンを指す256個の固有のダミ
ー・ベクトルをロードすることによって、物理メモリの
下位1Kに新しい「ダミー」割込みベクトル・テーブル
がロードされる。812で、セグメントC800Hに256
個のダミー割込みサービス・ルーチンが生成される。
【0247】次に、814で、キーボード12およびマ
ウス13割込みが使用不能になる。816で、応答され
なかったキーボード12およびマウス13割込みが肯定
応答される。
ウス13割込みが使用不能になる。816で、応答され
なかったキーボード12およびマウス13割込みが肯定
応答される。
【0248】次に、818で、キーボード割込みが生成
され、820で、該割込みが試験され、基底8259が保留
とセットされているか、インサービスとセットされてい
るかが確認される。この値は次に、セグメントE000Hデ
ータ構造に書き込まれる。822で、コードは、割込み
が実行されるのを待つ。824で、ダミー・サービス・
ルーチンのうち1つを呼び出すことによって割込みが実
行される。ダミー・サービス・ルーチンを呼び出すと、
8259基底アドレスが決定され、8259が保留モードである
か、インサービス・モードであるかが決定される。基底
アドレスおよびモードは、セグメントE000Hデータ構造
に保存される。
され、820で、該割込みが試験され、基底8259が保留
とセットされているか、インサービスとセットされてい
るかが確認される。この値は次に、セグメントE000Hデ
ータ構造に書き込まれる。822で、コードは、割込み
が実行されるのを待つ。824で、ダミー・サービス・
ルーチンのうち1つを呼び出すことによって割込みが実
行される。ダミー・サービス・ルーチンを呼び出すと、
8259基底アドレスが決定され、8259が保留モードである
か、インサービス・モードであるかが決定される。基底
アドレスおよびモードは、セグメントE000Hデータ構造
に保存される。
【0249】タスク826、828、830、および8
32で、スレーブ8259に対して類似した手順が実行され
る。
32で、スレーブ8259に対して類似した手順が実行され
る。
【0250】834で、値をC000Hデータ構造から物理
メモリの下位1Kにコピーし直すことによって、割込み
ベクトル・テーブルが復元される。次に、836で、セ
グメントC000Hが再び、読取り専用になり、838で、
840で呼出しプログラムに戻るのに備えてすべての割
込みがマスクされる。
メモリの下位1Kにコピーし直すことによって、割込み
ベクトル・テーブルが復元される。次に、836で、セ
グメントC000Hが再び、読取り専用になり、838で、
840で呼出しプログラムに戻るのに備えてすべての割
込みがマスクされる。
【0251】本発明をその実施例を説明することによっ
て例示し、実施例をかなり詳細に説明したが、特許請求
の範囲をそのような詳細に制限、または何らかの点で限
定することは、本出願人の意図するところではない。当
業者には、他の利点または修正が容易に理解されよう。
たとえば、前述のように、電話リング検出回路を追加し
て、接続された電話回線が作動したときにコンピュータ
・システム10をサスペンド状態154から正常動作状
態150に変更することができる。したがって、より広
い態様での本発明は、特定の詳細、代表的な装置および
方法、ならびに図示し、説明した例に限定されない。よ
って、本出願人の全般的な発明の概念から逸脱せずに、
そのような詳細から逸脱することができる。
て例示し、実施例をかなり詳細に説明したが、特許請求
の範囲をそのような詳細に制限、または何らかの点で限
定することは、本出願人の意図するところではない。当
業者には、他の利点または修正が容易に理解されよう。
たとえば、前述のように、電話リング検出回路を追加し
て、接続された電話回線が作動したときにコンピュータ
・システム10をサスペンド状態154から正常動作状
態150に変更することができる。したがって、より広
い態様での本発明は、特定の詳細、代表的な装置および
方法、ならびに図示し、説明した例に限定されない。よ
って、本出願人の全般的な発明の概念から逸脱せずに、
そのような詳細から逸脱することができる。
【0252】まとめとして、本発明の構成に関して以下
の事項を開示する。
の事項を開示する。
【0253】(1)3つの電源管理状態、すなわち、通
常、コンピュータ・システムによってコードが実行され
る正常動作状態と、スタンバイ状態と、サスペンド状態
のうち任意の選択された1つの状態で動作することがで
きるコンピュータ・システムにおいて、複数の事前選択
された事象のうち少なくとも1つに応じて、前記コンピ
ュータ・システムを前記状態のそれぞれと前記状態の少
なくとも他の1つとの間で切り替える制御装置を備える
ことを特徴とする前記コンピュータ・システム。 (2)さらに、第4の電源管理状態、すなわちオフ状態
で動作する機能を有し、さらに、前記制御装置が、複数
の事前選択された事象のうち少なくとも1つに応じて、
前記コンピュータ・システムを前記状態のそれぞれと前
記状態の少なくとも他の1つとの間で切り替えるために
機能することを特徴とする上記(1)に記載のコンピュ
ータ・システム。 (3)3つの電源管理状態、すなわち、通常、コンピュ
ータ・システムによってコードが実行される正常動作状
態と、スタンバイ状態と、サスペンド状態のうち任意の
選択された1つの状態で動作することができるコンピュ
ータ・システムにおいて、コードを実行することができ
るCPUと、複数の事前選択された事象のうち少なくと
も1つに応じて、前記コンピュータ・システムを前記状
態のそれぞれと前記状態の少なくとも他の1つとの間で
切り替えるために前記CPUと回線通信する制御装置
と、前記CPUおよび前記制御装置と回線通信し、高電
力使用状態と低電力使用状態のうち選択された1つで動
作することができ、前記制御装置に応じて高電力使用状
態と低電力使用状態の間で切り替わる周辺装置と、前記
CPUおよび前記制御装置および前記周辺装置と回線通
信し、システム電力を外部源から前記コンピュータ・シ
ステムに選択的に提供するための電力選択回路を備え、
第1の電源状態と第2の電源状態のうち選択された1つ
で動作することができ、前記制御装置に応じて前記第1
の電源状態と第2の電源状態の間で切り替わる電源とか
らなり、前記正常動作状態が、前記電源が前記第1の電
源状態であり、前記周辺装置が前記高電力使用状態であ
ることを特徴とし、前記スタンバイ状態が、前記電源が
第1の電源状態であり、前記周辺装置が前記低電力使用
状態であることを特徴とし、前記サスペンド状態が、前
記電源が第2の電源状態であり、前記CPU上で実行す
るコードが、前記CPU上でのコードの実行を、前記電
源が前記第1の電源状態に切り替わった後にレジューム
できるように、反転可能に割り込まれていることを特徴
とする前記コンピュータ・システム。 (4)前記第1の電源状態が、前記電源選択回路がシス
テム電力を前記外部源から前記CPUおよび前記制御装
置および前記周辺装置にもたらすことを特徴とし、さら
に、前記外部源から前記CPUへのシステム電力がサス
ペンドされることを前記第2の電源状態が特徴としてい
る上記(3)に記載のコンピュータ・システム。 (5)前記電源がさらに、補助電力を供給する二次回路
を備え、さらに、前記第1の電源状態が、前記電源選択
回路がシステム電力を前記外部源から前記CPUおよび
前記制御装置および前記周辺装置にもたらすことを特徴
とし、さらに、前記二次回路が補助電力を前記外部源か
ら前記制御装置に供給し続ける間に前記外部源から前記
CPUへのシステム電力がサスペンドされることを前記
第2の電源状態が特徴としている、上記(3)に記載の
コンピュータ・システム。 (6)さらに、第4の電源管理状態、すなわちオフ状態
で動作する機能を有し、さらに、前記電源が前記第2の
電源状態であり、前記CPU上で実行するコードが反転
不能に割り込まれていることを前記オフ状態が特徴とし
ている上記(3)に記載のコンピュータ・システム。 (7)3つの電源管理状態、すなわち、通常、コンピュ
ータ・システムによってコードが実行される正常動作状
態と、前記コンピュータ・システムによってコードが実
行され続け、前記コンピュータ・システムが前記正常動
作状態の場合よりも少ない電力を消費するスタンバイ状
態と、前記コンピュータ・システムによるコードの実行
が割り込まれ、前記コンピュータ・システムが前記スタ
ンバイ状態の場合よりも少ない電力を消費するサスペン
ド状態のうち任意の選択された1つで動作することがで
きるコンピュータ・システムにおいて、コードを実行す
ることができるCPUと、複数の事前選択された事象の
うち少なくとも1つに応じて、前記コンピュータ・シス
テムを前記状態のそれぞれと前記状態の少なくとも他の
1つとの間で切り替えるために前記CPUと回線通信す
る制御装置と、データを受信し、記憶し、転送するため
に前記CPUおよび前記制御装置と回線通信する不揮発
性記憶装置と、メモリ・データを記憶し、前記CPUお
よび前記制御装置および前記不揮発性記憶装置と回線通
信する揮発性メモリと、レジスタ・データを記憶し、前
記CPUおよび前記制御装置および前記不揮発性記憶装
置および前記揮発性メモリと回線通信する揮発性レジス
タとからなり、前記制御装置が、メモリ・データを前記
揮発性メモリと前記不揮発性記憶装置の間で転送し、レ
ジスタ・データを前記揮発性レジスタと前記不揮発性記
憶装置の間で転送し、かつ前記コンピュータ・システム
が前記サスペンド状態に入るときにメモリ・データおよ
びレジスタ・データを前記不揮発性記憶装置に記憶さ
せ、前記コンピュータが前記正常動作状態に入るときに
メモリ・データおよびレジスタ・データを前記不揮発性
記憶装置から前記揮発性メモリまで転送させるために、
複数の事前選択された事象のうち前記少なくとも1つに
応じて動作することができることを特徴とする前記コン
ピュータ・システム。 (8)さらに、第4の電源管理状態、すなわちオフ状態
で動作する機能を有し、さらに、メモリ・データおよび
レジスタ・データが前記不揮発性記憶装置に記憶され
ず、前記コンピュータ・システムが前記オフ状態で前記
サスペンド状態の場合よりも少ない電力を消費すること
を前記オフ状態が特徴としている、上記(7)に記載の
コンピュータ・システム。 (9)3つの電源管理状態、すなわち、通常、コンピュ
ータ・システムによってコードが実行される正常動作状
態と、前記コンピュータ・システムによってコードが実
行され続け、前記コンピュータ・システムが前記正常動
作状態の場合よりも少ない電力を消費するスタンバイ状
態と、前記コンピュータ・システムによるコードの実行
が割り込まれ、前記コンピュータ・システムが前記スタ
ンバイ状態の場合よりも少ない電力を消費するサスペン
ド状態のうち任意の選択された1つで動作することがで
き、中央処理システムと、揮発性メモリと、システム電
力を供給する電源と、筐体の内部で回転する固定媒体を
有する固定ディスク記憶装置と、ビデオ信号を生成する
ビデオ表示制御装置と、ビデオ信号に対応する光イメー
ジを表示するビデオ表示端末と、非活動サスペンド・タ
イマと、非活動スタンバイ・タイマと、第1の電源管理
コマンドおよび第2の電源管理コマンドを生成すること
ができる電源管理制御装置を有するコンピュータ・シス
テムにおいて、第1の事前選択された時間間隔の後に満
了するようにスタンバイ・タイマを始動するステップ
と、第2の事前選択された時間間隔の後に満了するよう
にサスペンド・タイマを始動するステップと、第1およ
び第2の時間間隔のうち一方が満了するまでコンピュー
タ・システムを正常動作状態で作動させるステップと、
スタンバイ・タイマおよびサスペンド・タイマを再始動
することによって、コンピュータ・システムが正常動作
状態のときに行われるユーザ活動に応答するステップ
と、コンピュータ・システムを正常動作状態から抜け出
させ、スタンバイ状態にすることによって、コンピュー
タ・システムの正常動作時に第1の時間間隔の満了に応
答するステップと、コンピュータ・システムをサスペン
ド状態にすることによって第2の時間間隔の満了に応答
するステップと、コンピュータ・システムを正常動作状
態にすることによって、コンピュータ・システムがスタ
ンバイ状態のときに行われるユーザ活動に応答するステ
ップと、スタンバイ・タイマを再始動し、コンピュータ
・システムの状態をスタンバイ状態から正常動作状態に
切り替えることによって、コンピュータ・システムがス
タンバイ状態のときに行われるユーザ活動に応答するス
テップと、コンピュータ・システムの状態を1つの状態
からサスペンド状態に切り替えることによって、コンピ
ュータ・システムが正常動作状態およびスタンバイ状態
のうち一方のときに第1の電源管理コマンドの発生に応
答するステップと、コンピュータ・システムを正常動作
状態に切り替えることによって、コンピュータ・システ
ムがサスペンド状態のときに第2の電源管理コマンドの
発生に応答するステップとからなることを特徴とする前
記コンピュータ・システムによる電力の使用状況を管理
する方法。 (10)コンピュータ・システムが、電源管理制御装置
と通信するための瞬間プッシュボタン・スイッチを有
し、さらに、スイッチの閉鎖事象によって第1および第
2の電源管理コマンドを生成するステップを備えている
ことを特徴とする上記(9)に記載の方法。 (11)コンピュータ・システムが、電源管理制御装置
と通信するために第1のスイッチ位置と第2のスイッチ
位置の間で移動可能なトグル・スイッチを有し、さら
に、前記スイッチを第1および第2のスイッチ位置のう
ち対応する一方にすることによって第1および第2の電
源管理コマンドを生成するステップを備えていることを
特徴とする上記(9)に記載の方法。 (12)コンピュータ・システムを正常動作状態から抜
け出させ、スタンバイ状態にすることによって、コンピ
ュータ・システムの正常動作時に第1の時間間隔の満了
に応答する前記ステップが、ビデオ表示制御装置による
ビデオ信号の生成を停止するステップと、固定ディスク
記憶装置による固定媒体の回転を停止するステップとを
備えていることを特徴とする上記(9)に記載の方法。 (13)コンピュータ・システムをサスペンド状態にす
ることによって第2の時間間隔の満了に応答するステッ
プが、コンピュータ・システムのシステム状態を確認す
るステップと、次にシステム状態を固定ディスク記憶装
置に保存するステップと、次にシステム電力の電源から
の供給を停止するステップとを備えていることを特徴と
する上記(9)に記載の方法。 (14)コンピュータ・システムを正常動作状態にする
ことによって、コンピュータ・システムがスタンバイ状
態のとき第2の電源管理コマンドの発生に応答するステ
ップが、 システム電力の電源からの供給をレジューム
するステップと、次に簡略電源オン試験を実行するステ
ップと、次に前記固定ディスク記憶装置から保存された
システム状態を読み取るステップと、次に前記コンピュ
ータ・システムのシステム状態を復元するステップとを
備えていることを特徴とする上記(13)に記載の方
法。 (15)中央演算処理装置(CPU)と、CPUと回線
通信するメモリと、CPUと回線通信する割込み制御装
置とを有し、割込み制御装置が、CPUと協調して複数
の割込み事象を処理することができることを特徴とし、
割込み制御装置がメモリに配置され、メモリに関連づけ
られている第1の組の割込みベクトルを有し、割込み制
御装置がメモリに配置され、メモリに関連づけられてい
る第1の組の割込みサービス・ルーチンを有し、割込み
制御装置が第1の組の割込みサービス・ルーチンに対応
する1つまたは複数の基底アドレスを有するコンピュー
タ・システムにおいて、第2の組の割込みベクトルをメ
モリに書き込むステップと、それぞれが、第2の組の割
込みベクトルの1つまたは複数の割込みベクトルに対応
する第2の組の割込みサービス・ルーチンをメモリに書
き込むステップと、第2の組の割込みベクトルの1つま
たは複数の割込みベクトルに対応する割込みサービス・
ルーチンのうち1つによって実行される割込み事象を生
成するステップと、割込み制御装置と共同でCPU中の
割込み事象を処理するステップと、第2の組の割込みベ
クトルの1つまたは複数の割込みベクトルに対応する割
込みサービス・ルーチンのうち1つで割込みを実行する
ステップと、割込みを実行する前記ステップの後に、メ
モリの状態から割込み制御装置の1つまたは複数の基底
アドレスの状態を決定するステップとを備えることを特
徴とする割込み制御装置の1つまたは複数の基底アドレ
スの状態を確認する方法。 (16)割込み制御装置が8259であることを特徴とする
上記(15)に記載の方法。 (17)割込み制御装置が、回線通信で8259の1つまた
は複数の回路相当物を備えたチップセットであることを
特徴とする上記(15)に記載の方法。 (18)さらに、第2の組の割込みベクトルをメモリに
書き込む前記ステップと、第2の組の割込みサービス・
ルーチンをメモリに書き込む前記ステップの両方の前
に、第1の組の割込みベクトルおよび第1の組の割込み
サービス・ルーチンをメモリ中のそれぞれの位置からメ
モリ中の異なる位置にコピーするステップを備えている
ことを特徴とする上記(15)に記載の方法。 (19)BIOSを含み、オペレーティング・システムおよ
び適用業務プログラムを実行することができるコンピュ
ータ・システムにおいて、CPUと、システム電力を外
部源から前記コンピュータ・システムに選択的にもたら
す回路を備え、第1の電源状態および第2の電源状態を
有することを特徴とする電源と、前記CPUと回線通信
する不揮発性記憶装置と、前記CPUと回線通信し、メ
モリ・データを記憶する揮発性システム・メモリと、前
記CPUと回線通信し、レジスタ・データを記憶する揮
発性システム・レジスタと、前記CPUと回線通信し、
事前選択されたサスペンド事象に応じて、前記コンピュ
ータ・システムの状態を正常動作状態とサスペンド状態
の間で選択的に切り替える制御装置とからなり、前記正
常動作状態が、前記電源が前記第1の電源状態であり、
前記コンピュータ・システムがユーザ・コマンドまたは
前記オペレーティング・システムまたは前記BIOSに応じ
て前記適用業務プログラムを実行することができること
を特徴とし、前記サスペンド状態が、レジスタ・データ
およびメモリ・データが前記不揮発性記憶装置上に記憶
され、前記電源が前記第2の電源状態であることを特徴
とし、前記正常動作状態と前記サスペンド状態の間の前
記切替えが、前記制御装置が、前記事前選択されたサス
ペンド事象に応じて、前記システム・メモリと前記シス
テム・レジスタと前記不揮発性記憶装置の間でメモリ・
データおよびレジスタ・データのコピーを行うことから
なり、前記電源が前記制御装置に応じて前記電源状態間
で切り替わり、前記正常動作状態と前記サスペンド状態
の間の切替えがさらに、前記制御装置が、前記事前選択
されたサスペンド事象に応じて、前記電源に、それぞれ
前記第1の電源状態と前記第2の電源状態の間で切り替
わらせることからなることを特徴とする前記コンピュー
タ・システム。 (20)前記第1の電源状態が、前記電源がシステム電
力を前記外部源から前記コンピュータ・システムにもた
らすことを特徴とし、前記第2の電源状態が、システム
電力を前記外部源から前記コンピュータ・システムに提
供しないことを特徴とする上記(19)に記載のコンピ
ュータ・システム。 (21)前記電源がさらに、前記コンピュータ・システ
ムに補助電力を提供する回路を備え、前記第1の電源状
態が、前記電源がシステム電力および補助電力を前記外
部源から前記コンピュータ・システムに提供することを
特徴とし、前記第2の電源状態が、前記電源がシステム
電力を前記外部源から前記コンピュータ・システムに提
供せず、補助電力を前記外部源から前記コンピュータ・
システムに提供することを特徴とする上記(19)に記
載のコンピュータ・システム。 (22)前記不揮発性記憶装置が固定ディスク記憶装置
であることを特徴とする上記(19)、(20)、また
は(21)に記載のコンピュータ・システム。 (23)前記不揮発性記憶装置が電池付き読取り専用メ
モリであることを特徴とする上記(19)、(20)、
または(21)に記載のコンピュータ・システム。 (24)さらに、事前選択された時間の後に満了するよ
うに設定された非活動サスペンド・タイマを備え、前記
事前選択されたサスペンド事象が前記非活動サスペンド
・タイマの満了を備えることを特徴とする上記(19)
に記載のコンピュータ・システム。 (25)さらに、前記CPUと回線通信し、前記スイッ
チが押されることに応じて閉鎖事象を生成する瞬間プッ
シュボタン・スイッチを備え、前記事前選択されたサス
ペンド事象が前記スイッチの閉鎖事象を備えることを特
徴とする上記(19)に記載のコンピュータ・システ
ム。 (26)さらに、前記CPUと回線通信し、前記スイッ
チが押されることに応じて閉鎖事象を生成する瞬間プッ
シュボタン・スイッチを備え、さらに、第1のフラグ状
態および第2のフラグ状態を備え、前記CPU上で実行
するコードによって状態を処理することができる処理可
能フラグを備え、前記事前選択されたサスペンド事象の
うち1つまたは複数が、前記フラグが前記第1のフラグ
状態であるときの前記スイッチの閉鎖事象を備えること
を特徴とする上記(19)に記載のコンピュータ・シス
テム。 (27)メモリ・データを記憶するシステム・メモリ
と、不揮発性記憶装置と、コードの命令がシステム・メ
モリ内の不適切な領域にアクセスしようとし、あるいは
命令が、特権をもつ命令を実行しようとした場合にCP
Uに保護障害を生成させるプロテクト・モードでコード
を実行することができ、選択されたシステム・メモリ領
域への書込みを可能にし、保護障害を生成せずに特権を
もつ命令の実行を可能にする非障害モードで実行するこ
とができ、レジスタ値を記憶する揮発性レジスタを有す
るCPUと、ROM中のBIOSと、BIOSのコピー先であ
り、かつ実行元であるシャドウRAMと、CPUでのコ
ードの実行に割り込むことができ、サスペンド事象に応
じてサスペンド・ルーチンを呼び出すことができるオペ
レーティング・システムと、1つまたは複数の事前選択
された条件に応じてサスペンド事象を生成するコントロ
ール・ルーチンとを有し、サスペンド・ルーチンが、オ
ペレーティング・システムによって選択的に呼出し可能
であり、保護障害を生成せずにレジスタ値をCPUから
スタックまたはシャドウRAMに転送する能力と、CP
Uを非障害モードにする能力と、レジスタ値をスタック
またはシャドウRAMから不揮発性記憶装置に転送する
能力を特徴とするコンピュータ・システムにおいて、サ
スペンド事象に応じて、オペレーティング・システムに
よるCPU上でのコードの実行に割り込むステップと、
サスペンド・ルーチンを活動化するステップと、シャド
ウRAM中またはスタック上にレジスタ値を一時的に記
憶するステップと、CPUを、レジスタ値をシャドウR
AMまたはスタックから不揮発性記憶装置にコピーして
もCPU内で保護障害が生成されないことを特徴とする
非障害モードにするステップと、レジスタ値をスタック
またはシャドウRAMから不揮発性記憶装置に転送する
ステップとからなることを特徴とするCPUがプロテク
ト・モードでコードを実行する状態を保存する方法。 (28)メモリ・データを記憶するシステム・メモリ
と、不揮発性記憶装置と、コードの命令がシステム・メ
モリ内の不適切な領域にアクセスしようとし、あるいは
命令が、特権をもつ命令を実行しようとした場合にCP
Uに保護障害を生成させるプロテクト・モードでコード
を実行することができ、選択されたシステム・メモリ領
域への書込みを可能にし、保護障害を生成せずに特権を
もつ命令の実行を可能にする非障害モードで実行するこ
とができ、レジスタ値を記憶する揮発性レジスタを有す
るCPUと、ROM中のBIOSと、BIOSのコピー先であ
り、かつ実行元であるシャドウRAMと、CPUでのコ
ードの実行を復元することができ、レジューム事象に応
じてレジューム・ルーチンを呼び出すことができるオペ
レーティング・システムと、1つまたは複数の事前選択
された条件に応じてレジューム事象を生成するコントロ
ール・ルーチンとを有し、レジューム・ルーチンが、オ
ペレーティング・システムによって選択的に呼出し可能
であり、CPUを非障害モードにする能力と、CPUか
らのレジスタ値を不揮発性記憶装置からスタックまたは
シャドウRAMに転送する能力と、CPUを障害モード
にする能力と、レジスタ値をスタックまたはシャドウR
AMからCPUに転送する能力を特徴とするコンピュー
タ・システムにおいて、レジューム事象に応じてレジュ
ーム・ルーチンを活動化するステップと、CPUを、レ
ジスタ値を不揮発性記憶装置からシャドウRAMまたは
スタックにコピーしてもCPU内で保護障害が生成され
ないことを特徴とする非障害モードにするステップと、
CPUのレジスタを不揮発性記憶装置からスタックまた
はシャドウRAMに転送するステップと、CPUページ
ングを活動化した後にシャドウRAM中のBIOSにアクセ
スできることを特徴とする、1組のページ・テーブルを
シャドウRAMにロードするステップと、CPUを障害
モードにするステップと、レジスタ値をスタックまたは
シャドウRAMからCPUに転送するステップと、オペ
レーティング・システムによるCPU上での割り込まれ
たコードの実行をレジュームするステップとからなるこ
とを特徴とするCPUの状態を不揮発性記憶装置から復
元する方法。 (29)シャドウRAMが、線形アドレスが物理アドレ
スに等しいシステム・メモリの部分で動作することを特
徴とする上記(27)または(28)に記載の方法。 (30)CPUを非障害モードにする前記ステップが、
CPUをリセットするステップを備えることを特徴とす
る上記(27)または(28)に記載の方法。 (31)オペレーティング・システムがAPM仕様に準
拠することを特徴とする上記(27)または(28)に
記載の方法。 (32)不揮発性記憶装置が固定ディスク記憶装置であ
ることを特徴とする上記(27)または(28)に記載
の方法。 (33)CPUが386または486マイクロプロセッ
サ・ファミリの1つであることを特徴とする上記(2
7)または(28)に記載の方法。 (34)3つの電源管理状態、すなわち、通常、コンピ
ュータ・システムによってコードが実行される正常動作
状態と、オフ状態と、サスペンド状態のうち任意の選択
された1つの状態で動作することができるコンピュータ
システムにおいて、スイッチと、コードを実行すること
ができるCPUと、複数の事前選択された事象のうち少
なくとも1つに応じて、前記コンピュータ・システムを
前記状態のそれぞれと前記状態の少なくとも他の1つと
の間で切り替えるために前記CPUおよび前記スイッチ
と回線通信する制御装置と、前記CPU上で実行される
コードに応じて、複数の事前選択されたフラグ状態のう
ち1つを仮定することができる、前記CPUおよび前記
制御装置と回線通信するフラグと、前記CPUおよび前
記制御装置と回線通信し、システム電力を外部源から前
記コンピュータ・システムに選択的に提供する電力選択
回路を備え、第1の電源状態と第2の電源状態のうち選
択された1つで動作することができ、前記制御装置に応
じて前記第1の電源状態と第2の電源状態の間で切り替
わる電源とからなり、前記正常動作状態が、前記電源が
前記第1の電源状態であり、コードが通常は前記CPU
上で実行されることを特徴とし、前記サスペンド状態
が、前記電源が第2の電源状態であり、前記CPU上で
実行するコードが、前記CPU上でのコードの実行を、
前記電源が前記第1の電源状態に切り替わった後にレジ
ュームできるように、反転可能に割り込まれていること
を特徴とし、前記オフ状態が、前記電源が前記第2の電
源状態であり、前記CPU上で実行中のコードが反転不
能に割り込まれていることを特徴とする前記コンピュー
タ・システム。 (35)前記スイッチが瞬間プッシュボタン・スイッチ
であり、さらに、前記フラグが前記フラグ状態のうち第
1の状態である場合、前記制御装置が前記スイッチの閉
鎖事象に応じて、前記コンピュータ・システムを前記正
常動作状態と前記オフ状態の間で切り替え、さらに、前
記フラグが前記フラグ状態のうち第2の状態である場
合、前記制御装置が前記スイッチの閉鎖事象に応じて、
前記コンピュータ・システムを前記正常動作状態と前記
サスペンド状態の間で切り替えることを特徴とする上記
(34)に記載のコンピュータ・システム。 (36)前記スイッチが第1のスイッチ位置と第2のス
イッチ位置の間で移動可能なトグル・スイッチであり、
さらに、前記フラグが前記フラグ状態のうち第1の状態
である場合、前記制御装置が、前記スイッチが前記第1
のスイッチ位置に入ることに応じて、前記コンピュータ
・システムを前記正常動作状態と前記オフ状態の間で切
り替え、さらに、前記フラグが前記フラグ状態のうち第
1の状態である場合、前記制御装置が、前記スイッチが
前記第2のスイッチ位置に入ることに応じて、前記コン
ピュータ・システムを前記正常動作状態と前記オフ状態
の間で切り替え、さらに、前記フラグが前記フラグ状態
のうち第2の状態である場合、前記制御装置が、前記ス
イッチが前記第1のスイッチ位置に入ることに応じて、
前記コンピュータ・システムを前記正常動作状態と前記
サスペンド状態の間で切り替え、さらに、前記フラグが
前記フラグ状態のうち第2の状態である場合、前記制御
装置が、前記スイッチが前記第2のスイッチ位置に入る
ことに応じて、前記コンピュータ・システムを前記正常
動作状態と前記サスペンド状態の間で切り替えることを
特徴とする上記(34)に記載のコンピュータ・システ
ム。
常、コンピュータ・システムによってコードが実行され
る正常動作状態と、スタンバイ状態と、サスペンド状態
のうち任意の選択された1つの状態で動作することがで
きるコンピュータ・システムにおいて、複数の事前選択
された事象のうち少なくとも1つに応じて、前記コンピ
ュータ・システムを前記状態のそれぞれと前記状態の少
なくとも他の1つとの間で切り替える制御装置を備える
ことを特徴とする前記コンピュータ・システム。 (2)さらに、第4の電源管理状態、すなわちオフ状態
で動作する機能を有し、さらに、前記制御装置が、複数
の事前選択された事象のうち少なくとも1つに応じて、
前記コンピュータ・システムを前記状態のそれぞれと前
記状態の少なくとも他の1つとの間で切り替えるために
機能することを特徴とする上記(1)に記載のコンピュ
ータ・システム。 (3)3つの電源管理状態、すなわち、通常、コンピュ
ータ・システムによってコードが実行される正常動作状
態と、スタンバイ状態と、サスペンド状態のうち任意の
選択された1つの状態で動作することができるコンピュ
ータ・システムにおいて、コードを実行することができ
るCPUと、複数の事前選択された事象のうち少なくと
も1つに応じて、前記コンピュータ・システムを前記状
態のそれぞれと前記状態の少なくとも他の1つとの間で
切り替えるために前記CPUと回線通信する制御装置
と、前記CPUおよび前記制御装置と回線通信し、高電
力使用状態と低電力使用状態のうち選択された1つで動
作することができ、前記制御装置に応じて高電力使用状
態と低電力使用状態の間で切り替わる周辺装置と、前記
CPUおよび前記制御装置および前記周辺装置と回線通
信し、システム電力を外部源から前記コンピュータ・シ
ステムに選択的に提供するための電力選択回路を備え、
第1の電源状態と第2の電源状態のうち選択された1つ
で動作することができ、前記制御装置に応じて前記第1
の電源状態と第2の電源状態の間で切り替わる電源とか
らなり、前記正常動作状態が、前記電源が前記第1の電
源状態であり、前記周辺装置が前記高電力使用状態であ
ることを特徴とし、前記スタンバイ状態が、前記電源が
第1の電源状態であり、前記周辺装置が前記低電力使用
状態であることを特徴とし、前記サスペンド状態が、前
記電源が第2の電源状態であり、前記CPU上で実行す
るコードが、前記CPU上でのコードの実行を、前記電
源が前記第1の電源状態に切り替わった後にレジューム
できるように、反転可能に割り込まれていることを特徴
とする前記コンピュータ・システム。 (4)前記第1の電源状態が、前記電源選択回路がシス
テム電力を前記外部源から前記CPUおよび前記制御装
置および前記周辺装置にもたらすことを特徴とし、さら
に、前記外部源から前記CPUへのシステム電力がサス
ペンドされることを前記第2の電源状態が特徴としてい
る上記(3)に記載のコンピュータ・システム。 (5)前記電源がさらに、補助電力を供給する二次回路
を備え、さらに、前記第1の電源状態が、前記電源選択
回路がシステム電力を前記外部源から前記CPUおよび
前記制御装置および前記周辺装置にもたらすことを特徴
とし、さらに、前記二次回路が補助電力を前記外部源か
ら前記制御装置に供給し続ける間に前記外部源から前記
CPUへのシステム電力がサスペンドされることを前記
第2の電源状態が特徴としている、上記(3)に記載の
コンピュータ・システム。 (6)さらに、第4の電源管理状態、すなわちオフ状態
で動作する機能を有し、さらに、前記電源が前記第2の
電源状態であり、前記CPU上で実行するコードが反転
不能に割り込まれていることを前記オフ状態が特徴とし
ている上記(3)に記載のコンピュータ・システム。 (7)3つの電源管理状態、すなわち、通常、コンピュ
ータ・システムによってコードが実行される正常動作状
態と、前記コンピュータ・システムによってコードが実
行され続け、前記コンピュータ・システムが前記正常動
作状態の場合よりも少ない電力を消費するスタンバイ状
態と、前記コンピュータ・システムによるコードの実行
が割り込まれ、前記コンピュータ・システムが前記スタ
ンバイ状態の場合よりも少ない電力を消費するサスペン
ド状態のうち任意の選択された1つで動作することがで
きるコンピュータ・システムにおいて、コードを実行す
ることができるCPUと、複数の事前選択された事象の
うち少なくとも1つに応じて、前記コンピュータ・シス
テムを前記状態のそれぞれと前記状態の少なくとも他の
1つとの間で切り替えるために前記CPUと回線通信す
る制御装置と、データを受信し、記憶し、転送するため
に前記CPUおよび前記制御装置と回線通信する不揮発
性記憶装置と、メモリ・データを記憶し、前記CPUお
よび前記制御装置および前記不揮発性記憶装置と回線通
信する揮発性メモリと、レジスタ・データを記憶し、前
記CPUおよび前記制御装置および前記不揮発性記憶装
置および前記揮発性メモリと回線通信する揮発性レジス
タとからなり、前記制御装置が、メモリ・データを前記
揮発性メモリと前記不揮発性記憶装置の間で転送し、レ
ジスタ・データを前記揮発性レジスタと前記不揮発性記
憶装置の間で転送し、かつ前記コンピュータ・システム
が前記サスペンド状態に入るときにメモリ・データおよ
びレジスタ・データを前記不揮発性記憶装置に記憶さ
せ、前記コンピュータが前記正常動作状態に入るときに
メモリ・データおよびレジスタ・データを前記不揮発性
記憶装置から前記揮発性メモリまで転送させるために、
複数の事前選択された事象のうち前記少なくとも1つに
応じて動作することができることを特徴とする前記コン
ピュータ・システム。 (8)さらに、第4の電源管理状態、すなわちオフ状態
で動作する機能を有し、さらに、メモリ・データおよび
レジスタ・データが前記不揮発性記憶装置に記憶され
ず、前記コンピュータ・システムが前記オフ状態で前記
サスペンド状態の場合よりも少ない電力を消費すること
を前記オフ状態が特徴としている、上記(7)に記載の
コンピュータ・システム。 (9)3つの電源管理状態、すなわち、通常、コンピュ
ータ・システムによってコードが実行される正常動作状
態と、前記コンピュータ・システムによってコードが実
行され続け、前記コンピュータ・システムが前記正常動
作状態の場合よりも少ない電力を消費するスタンバイ状
態と、前記コンピュータ・システムによるコードの実行
が割り込まれ、前記コンピュータ・システムが前記スタ
ンバイ状態の場合よりも少ない電力を消費するサスペン
ド状態のうち任意の選択された1つで動作することがで
き、中央処理システムと、揮発性メモリと、システム電
力を供給する電源と、筐体の内部で回転する固定媒体を
有する固定ディスク記憶装置と、ビデオ信号を生成する
ビデオ表示制御装置と、ビデオ信号に対応する光イメー
ジを表示するビデオ表示端末と、非活動サスペンド・タ
イマと、非活動スタンバイ・タイマと、第1の電源管理
コマンドおよび第2の電源管理コマンドを生成すること
ができる電源管理制御装置を有するコンピュータ・シス
テムにおいて、第1の事前選択された時間間隔の後に満
了するようにスタンバイ・タイマを始動するステップ
と、第2の事前選択された時間間隔の後に満了するよう
にサスペンド・タイマを始動するステップと、第1およ
び第2の時間間隔のうち一方が満了するまでコンピュー
タ・システムを正常動作状態で作動させるステップと、
スタンバイ・タイマおよびサスペンド・タイマを再始動
することによって、コンピュータ・システムが正常動作
状態のときに行われるユーザ活動に応答するステップ
と、コンピュータ・システムを正常動作状態から抜け出
させ、スタンバイ状態にすることによって、コンピュー
タ・システムの正常動作時に第1の時間間隔の満了に応
答するステップと、コンピュータ・システムをサスペン
ド状態にすることによって第2の時間間隔の満了に応答
するステップと、コンピュータ・システムを正常動作状
態にすることによって、コンピュータ・システムがスタ
ンバイ状態のときに行われるユーザ活動に応答するステ
ップと、スタンバイ・タイマを再始動し、コンピュータ
・システムの状態をスタンバイ状態から正常動作状態に
切り替えることによって、コンピュータ・システムがス
タンバイ状態のときに行われるユーザ活動に応答するス
テップと、コンピュータ・システムの状態を1つの状態
からサスペンド状態に切り替えることによって、コンピ
ュータ・システムが正常動作状態およびスタンバイ状態
のうち一方のときに第1の電源管理コマンドの発生に応
答するステップと、コンピュータ・システムを正常動作
状態に切り替えることによって、コンピュータ・システ
ムがサスペンド状態のときに第2の電源管理コマンドの
発生に応答するステップとからなることを特徴とする前
記コンピュータ・システムによる電力の使用状況を管理
する方法。 (10)コンピュータ・システムが、電源管理制御装置
と通信するための瞬間プッシュボタン・スイッチを有
し、さらに、スイッチの閉鎖事象によって第1および第
2の電源管理コマンドを生成するステップを備えている
ことを特徴とする上記(9)に記載の方法。 (11)コンピュータ・システムが、電源管理制御装置
と通信するために第1のスイッチ位置と第2のスイッチ
位置の間で移動可能なトグル・スイッチを有し、さら
に、前記スイッチを第1および第2のスイッチ位置のう
ち対応する一方にすることによって第1および第2の電
源管理コマンドを生成するステップを備えていることを
特徴とする上記(9)に記載の方法。 (12)コンピュータ・システムを正常動作状態から抜
け出させ、スタンバイ状態にすることによって、コンピ
ュータ・システムの正常動作時に第1の時間間隔の満了
に応答する前記ステップが、ビデオ表示制御装置による
ビデオ信号の生成を停止するステップと、固定ディスク
記憶装置による固定媒体の回転を停止するステップとを
備えていることを特徴とする上記(9)に記載の方法。 (13)コンピュータ・システムをサスペンド状態にす
ることによって第2の時間間隔の満了に応答するステッ
プが、コンピュータ・システムのシステム状態を確認す
るステップと、次にシステム状態を固定ディスク記憶装
置に保存するステップと、次にシステム電力の電源から
の供給を停止するステップとを備えていることを特徴と
する上記(9)に記載の方法。 (14)コンピュータ・システムを正常動作状態にする
ことによって、コンピュータ・システムがスタンバイ状
態のとき第2の電源管理コマンドの発生に応答するステ
ップが、 システム電力の電源からの供給をレジューム
するステップと、次に簡略電源オン試験を実行するステ
ップと、次に前記固定ディスク記憶装置から保存された
システム状態を読み取るステップと、次に前記コンピュ
ータ・システムのシステム状態を復元するステップとを
備えていることを特徴とする上記(13)に記載の方
法。 (15)中央演算処理装置(CPU)と、CPUと回線
通信するメモリと、CPUと回線通信する割込み制御装
置とを有し、割込み制御装置が、CPUと協調して複数
の割込み事象を処理することができることを特徴とし、
割込み制御装置がメモリに配置され、メモリに関連づけ
られている第1の組の割込みベクトルを有し、割込み制
御装置がメモリに配置され、メモリに関連づけられてい
る第1の組の割込みサービス・ルーチンを有し、割込み
制御装置が第1の組の割込みサービス・ルーチンに対応
する1つまたは複数の基底アドレスを有するコンピュー
タ・システムにおいて、第2の組の割込みベクトルをメ
モリに書き込むステップと、それぞれが、第2の組の割
込みベクトルの1つまたは複数の割込みベクトルに対応
する第2の組の割込みサービス・ルーチンをメモリに書
き込むステップと、第2の組の割込みベクトルの1つま
たは複数の割込みベクトルに対応する割込みサービス・
ルーチンのうち1つによって実行される割込み事象を生
成するステップと、割込み制御装置と共同でCPU中の
割込み事象を処理するステップと、第2の組の割込みベ
クトルの1つまたは複数の割込みベクトルに対応する割
込みサービス・ルーチンのうち1つで割込みを実行する
ステップと、割込みを実行する前記ステップの後に、メ
モリの状態から割込み制御装置の1つまたは複数の基底
アドレスの状態を決定するステップとを備えることを特
徴とする割込み制御装置の1つまたは複数の基底アドレ
スの状態を確認する方法。 (16)割込み制御装置が8259であることを特徴とする
上記(15)に記載の方法。 (17)割込み制御装置が、回線通信で8259の1つまた
は複数の回路相当物を備えたチップセットであることを
特徴とする上記(15)に記載の方法。 (18)さらに、第2の組の割込みベクトルをメモリに
書き込む前記ステップと、第2の組の割込みサービス・
ルーチンをメモリに書き込む前記ステップの両方の前
に、第1の組の割込みベクトルおよび第1の組の割込み
サービス・ルーチンをメモリ中のそれぞれの位置からメ
モリ中の異なる位置にコピーするステップを備えている
ことを特徴とする上記(15)に記載の方法。 (19)BIOSを含み、オペレーティング・システムおよ
び適用業務プログラムを実行することができるコンピュ
ータ・システムにおいて、CPUと、システム電力を外
部源から前記コンピュータ・システムに選択的にもたら
す回路を備え、第1の電源状態および第2の電源状態を
有することを特徴とする電源と、前記CPUと回線通信
する不揮発性記憶装置と、前記CPUと回線通信し、メ
モリ・データを記憶する揮発性システム・メモリと、前
記CPUと回線通信し、レジスタ・データを記憶する揮
発性システム・レジスタと、前記CPUと回線通信し、
事前選択されたサスペンド事象に応じて、前記コンピュ
ータ・システムの状態を正常動作状態とサスペンド状態
の間で選択的に切り替える制御装置とからなり、前記正
常動作状態が、前記電源が前記第1の電源状態であり、
前記コンピュータ・システムがユーザ・コマンドまたは
前記オペレーティング・システムまたは前記BIOSに応じ
て前記適用業務プログラムを実行することができること
を特徴とし、前記サスペンド状態が、レジスタ・データ
およびメモリ・データが前記不揮発性記憶装置上に記憶
され、前記電源が前記第2の電源状態であることを特徴
とし、前記正常動作状態と前記サスペンド状態の間の前
記切替えが、前記制御装置が、前記事前選択されたサス
ペンド事象に応じて、前記システム・メモリと前記シス
テム・レジスタと前記不揮発性記憶装置の間でメモリ・
データおよびレジスタ・データのコピーを行うことから
なり、前記電源が前記制御装置に応じて前記電源状態間
で切り替わり、前記正常動作状態と前記サスペンド状態
の間の切替えがさらに、前記制御装置が、前記事前選択
されたサスペンド事象に応じて、前記電源に、それぞれ
前記第1の電源状態と前記第2の電源状態の間で切り替
わらせることからなることを特徴とする前記コンピュー
タ・システム。 (20)前記第1の電源状態が、前記電源がシステム電
力を前記外部源から前記コンピュータ・システムにもた
らすことを特徴とし、前記第2の電源状態が、システム
電力を前記外部源から前記コンピュータ・システムに提
供しないことを特徴とする上記(19)に記載のコンピ
ュータ・システム。 (21)前記電源がさらに、前記コンピュータ・システ
ムに補助電力を提供する回路を備え、前記第1の電源状
態が、前記電源がシステム電力および補助電力を前記外
部源から前記コンピュータ・システムに提供することを
特徴とし、前記第2の電源状態が、前記電源がシステム
電力を前記外部源から前記コンピュータ・システムに提
供せず、補助電力を前記外部源から前記コンピュータ・
システムに提供することを特徴とする上記(19)に記
載のコンピュータ・システム。 (22)前記不揮発性記憶装置が固定ディスク記憶装置
であることを特徴とする上記(19)、(20)、また
は(21)に記載のコンピュータ・システム。 (23)前記不揮発性記憶装置が電池付き読取り専用メ
モリであることを特徴とする上記(19)、(20)、
または(21)に記載のコンピュータ・システム。 (24)さらに、事前選択された時間の後に満了するよ
うに設定された非活動サスペンド・タイマを備え、前記
事前選択されたサスペンド事象が前記非活動サスペンド
・タイマの満了を備えることを特徴とする上記(19)
に記載のコンピュータ・システム。 (25)さらに、前記CPUと回線通信し、前記スイッ
チが押されることに応じて閉鎖事象を生成する瞬間プッ
シュボタン・スイッチを備え、前記事前選択されたサス
ペンド事象が前記スイッチの閉鎖事象を備えることを特
徴とする上記(19)に記載のコンピュータ・システ
ム。 (26)さらに、前記CPUと回線通信し、前記スイッ
チが押されることに応じて閉鎖事象を生成する瞬間プッ
シュボタン・スイッチを備え、さらに、第1のフラグ状
態および第2のフラグ状態を備え、前記CPU上で実行
するコードによって状態を処理することができる処理可
能フラグを備え、前記事前選択されたサスペンド事象の
うち1つまたは複数が、前記フラグが前記第1のフラグ
状態であるときの前記スイッチの閉鎖事象を備えること
を特徴とする上記(19)に記載のコンピュータ・シス
テム。 (27)メモリ・データを記憶するシステム・メモリ
と、不揮発性記憶装置と、コードの命令がシステム・メ
モリ内の不適切な領域にアクセスしようとし、あるいは
命令が、特権をもつ命令を実行しようとした場合にCP
Uに保護障害を生成させるプロテクト・モードでコード
を実行することができ、選択されたシステム・メモリ領
域への書込みを可能にし、保護障害を生成せずに特権を
もつ命令の実行を可能にする非障害モードで実行するこ
とができ、レジスタ値を記憶する揮発性レジスタを有す
るCPUと、ROM中のBIOSと、BIOSのコピー先であ
り、かつ実行元であるシャドウRAMと、CPUでのコ
ードの実行に割り込むことができ、サスペンド事象に応
じてサスペンド・ルーチンを呼び出すことができるオペ
レーティング・システムと、1つまたは複数の事前選択
された条件に応じてサスペンド事象を生成するコントロ
ール・ルーチンとを有し、サスペンド・ルーチンが、オ
ペレーティング・システムによって選択的に呼出し可能
であり、保護障害を生成せずにレジスタ値をCPUから
スタックまたはシャドウRAMに転送する能力と、CP
Uを非障害モードにする能力と、レジスタ値をスタック
またはシャドウRAMから不揮発性記憶装置に転送する
能力を特徴とするコンピュータ・システムにおいて、サ
スペンド事象に応じて、オペレーティング・システムに
よるCPU上でのコードの実行に割り込むステップと、
サスペンド・ルーチンを活動化するステップと、シャド
ウRAM中またはスタック上にレジスタ値を一時的に記
憶するステップと、CPUを、レジスタ値をシャドウR
AMまたはスタックから不揮発性記憶装置にコピーして
もCPU内で保護障害が生成されないことを特徴とする
非障害モードにするステップと、レジスタ値をスタック
またはシャドウRAMから不揮発性記憶装置に転送する
ステップとからなることを特徴とするCPUがプロテク
ト・モードでコードを実行する状態を保存する方法。 (28)メモリ・データを記憶するシステム・メモリ
と、不揮発性記憶装置と、コードの命令がシステム・メ
モリ内の不適切な領域にアクセスしようとし、あるいは
命令が、特権をもつ命令を実行しようとした場合にCP
Uに保護障害を生成させるプロテクト・モードでコード
を実行することができ、選択されたシステム・メモリ領
域への書込みを可能にし、保護障害を生成せずに特権を
もつ命令の実行を可能にする非障害モードで実行するこ
とができ、レジスタ値を記憶する揮発性レジスタを有す
るCPUと、ROM中のBIOSと、BIOSのコピー先であ
り、かつ実行元であるシャドウRAMと、CPUでのコ
ードの実行を復元することができ、レジューム事象に応
じてレジューム・ルーチンを呼び出すことができるオペ
レーティング・システムと、1つまたは複数の事前選択
された条件に応じてレジューム事象を生成するコントロ
ール・ルーチンとを有し、レジューム・ルーチンが、オ
ペレーティング・システムによって選択的に呼出し可能
であり、CPUを非障害モードにする能力と、CPUか
らのレジスタ値を不揮発性記憶装置からスタックまたは
シャドウRAMに転送する能力と、CPUを障害モード
にする能力と、レジスタ値をスタックまたはシャドウR
AMからCPUに転送する能力を特徴とするコンピュー
タ・システムにおいて、レジューム事象に応じてレジュ
ーム・ルーチンを活動化するステップと、CPUを、レ
ジスタ値を不揮発性記憶装置からシャドウRAMまたは
スタックにコピーしてもCPU内で保護障害が生成され
ないことを特徴とする非障害モードにするステップと、
CPUのレジスタを不揮発性記憶装置からスタックまた
はシャドウRAMに転送するステップと、CPUページ
ングを活動化した後にシャドウRAM中のBIOSにアクセ
スできることを特徴とする、1組のページ・テーブルを
シャドウRAMにロードするステップと、CPUを障害
モードにするステップと、レジスタ値をスタックまたは
シャドウRAMからCPUに転送するステップと、オペ
レーティング・システムによるCPU上での割り込まれ
たコードの実行をレジュームするステップとからなるこ
とを特徴とするCPUの状態を不揮発性記憶装置から復
元する方法。 (29)シャドウRAMが、線形アドレスが物理アドレ
スに等しいシステム・メモリの部分で動作することを特
徴とする上記(27)または(28)に記載の方法。 (30)CPUを非障害モードにする前記ステップが、
CPUをリセットするステップを備えることを特徴とす
る上記(27)または(28)に記載の方法。 (31)オペレーティング・システムがAPM仕様に準
拠することを特徴とする上記(27)または(28)に
記載の方法。 (32)不揮発性記憶装置が固定ディスク記憶装置であ
ることを特徴とする上記(27)または(28)に記載
の方法。 (33)CPUが386または486マイクロプロセッ
サ・ファミリの1つであることを特徴とする上記(2
7)または(28)に記載の方法。 (34)3つの電源管理状態、すなわち、通常、コンピ
ュータ・システムによってコードが実行される正常動作
状態と、オフ状態と、サスペンド状態のうち任意の選択
された1つの状態で動作することができるコンピュータ
システムにおいて、スイッチと、コードを実行すること
ができるCPUと、複数の事前選択された事象のうち少
なくとも1つに応じて、前記コンピュータ・システムを
前記状態のそれぞれと前記状態の少なくとも他の1つと
の間で切り替えるために前記CPUおよび前記スイッチ
と回線通信する制御装置と、前記CPU上で実行される
コードに応じて、複数の事前選択されたフラグ状態のう
ち1つを仮定することができる、前記CPUおよび前記
制御装置と回線通信するフラグと、前記CPUおよび前
記制御装置と回線通信し、システム電力を外部源から前
記コンピュータ・システムに選択的に提供する電力選択
回路を備え、第1の電源状態と第2の電源状態のうち選
択された1つで動作することができ、前記制御装置に応
じて前記第1の電源状態と第2の電源状態の間で切り替
わる電源とからなり、前記正常動作状態が、前記電源が
前記第1の電源状態であり、コードが通常は前記CPU
上で実行されることを特徴とし、前記サスペンド状態
が、前記電源が第2の電源状態であり、前記CPU上で
実行するコードが、前記CPU上でのコードの実行を、
前記電源が前記第1の電源状態に切り替わった後にレジ
ュームできるように、反転可能に割り込まれていること
を特徴とし、前記オフ状態が、前記電源が前記第2の電
源状態であり、前記CPU上で実行中のコードが反転不
能に割り込まれていることを特徴とする前記コンピュー
タ・システム。 (35)前記スイッチが瞬間プッシュボタン・スイッチ
であり、さらに、前記フラグが前記フラグ状態のうち第
1の状態である場合、前記制御装置が前記スイッチの閉
鎖事象に応じて、前記コンピュータ・システムを前記正
常動作状態と前記オフ状態の間で切り替え、さらに、前
記フラグが前記フラグ状態のうち第2の状態である場
合、前記制御装置が前記スイッチの閉鎖事象に応じて、
前記コンピュータ・システムを前記正常動作状態と前記
サスペンド状態の間で切り替えることを特徴とする上記
(34)に記載のコンピュータ・システム。 (36)前記スイッチが第1のスイッチ位置と第2のス
イッチ位置の間で移動可能なトグル・スイッチであり、
さらに、前記フラグが前記フラグ状態のうち第1の状態
である場合、前記制御装置が、前記スイッチが前記第1
のスイッチ位置に入ることに応じて、前記コンピュータ
・システムを前記正常動作状態と前記オフ状態の間で切
り替え、さらに、前記フラグが前記フラグ状態のうち第
1の状態である場合、前記制御装置が、前記スイッチが
前記第2のスイッチ位置に入ることに応じて、前記コン
ピュータ・システムを前記正常動作状態と前記オフ状態
の間で切り替え、さらに、前記フラグが前記フラグ状態
のうち第2の状態である場合、前記制御装置が、前記ス
イッチが前記第1のスイッチ位置に入ることに応じて、
前記コンピュータ・システムを前記正常動作状態と前記
サスペンド状態の間で切り替え、さらに、前記フラグが
前記フラグ状態のうち第2の状態である場合、前記制御
装置が、前記スイッチが前記第2のスイッチ位置に入る
ことに応じて、前記コンピュータ・システムを前記正常
動作状態と前記サスペンド状態の間で切り替えることを
特徴とする上記(34)に記載のコンピュータ・システ
ム。
【0254】
【発明の効果】上述のように、デスクトップ・コンピュ
ータにスタンバイ状態とサスペンド状態を導入すること
により、従来より消費電力の少ないコンピュータが実現
できた。
ータにスタンバイ状態とサスペンド状態を導入すること
により、従来より消費電力の少ないコンピュータが実現
できた。
【図1】本発明を実施するパーソナル・コンピュータの
斜視図である。
斜視図である。
【図2】シャーシ、カバー、直接アクセス記憶装置、お
よびプレーナを含み、それらの要素間の一定の関係を示
す、図1のパーソナル・コンピュータの一定の要素の分
解斜視図である。
よびプレーナを含み、それらの要素間の一定の関係を示
す、図1のパーソナル・コンピュータの一定の要素の分
解斜視図である。
【図3】図1および2のパーソナル・コンピュータの一
定の構成要素のブロック図である。
定の構成要素のブロック図である。
【図4】正常、スタンバイ、サスペンド、およびオフと
いう4つのシステム状態を示す、本発明のコンピュータ
・システムの状態図である。
いう4つのシステム状態を示す、本発明のコンピュータ
・システムの状態図である。
【図5】電源の関連部分を示すブロック図である。
【図6】他の図との様々なインタフェースを示す、本発
明の単一スイッチ・サスペンド/レジューム機能を実行
するのに必要なハードウェアの概略図である。
明の単一スイッチ・サスペンド/レジューム機能を実行
するのに必要なハードウェアの概略図である。
【図7】図6に示すプログラム可能アレイ論理(PA
L)装置U2の状態マシンのうち1つの状態図である。
L)装置U2の状態マシンのうち1つの状態図である。
【図8】本発明のpower-upルーチンを概略的に示すフロ
ーチャートである。
ーチャートである。
【図9】APMによって約1秒ごとに呼び出されるSupe
rvisorルーチンの詳細を示すフローチャートである。
rvisorルーチンの詳細を示すフローチャートである。
【図10】本発明のサスペンド・ルーチンの詳細を示す
フローチャートである。
フローチャートである。
【図11】本発明のサスペンド・ルーチンの詳細を示す
フローチャートである。
フローチャートである。
【図12】本発明のサスペンド・ルーチンの詳細を示す
フローチャートである。
フローチャートである。
【図13】本発明のサスペンド・ルーチンの詳細を示す
フローチャートである。
フローチャートである。
【図14】本発明のサスペンド・ルーチンの詳細を示す
フローチャートである。
フローチャートである。
【図15】本発明のサスペンド・ルーチンの詳細を示す
フローチャートである。
フローチャートである。
【図16】本発明のBoot-Upルーチンの詳細を示すフロ
ーチャートである。
ーチャートである。
【図17】本発明のBoot-Upルーチンの詳細を示すフロ
ーチャートである。
ーチャートである。
【図18】本発明のBoot-Upルーチンの詳細を示すフロ
ーチャートである。
ーチャートである。
【図19】本発明のレジューム・ルーチンの詳細を示す
フローチャートである。
フローチャートである。
【図20】本発明のレジューム・ルーチンの詳細を示す
フローチャートである。
フローチャートである。
【図21】本発明のレジューム・ルーチンの詳細を示す
フローチャートである。
フローチャートである。
【図22】本発明のレジューム・ルーチンの詳細を示す
フローチャートである。
フローチャートである。
【図23】本発明のレジューム・ルーチンの詳細を示す
フローチャートである。
フローチャートである。
【図24】本発明のSave CPU Stateルーチンの詳細を示
すフローチャートである。
すフローチャートである。
【図25】本発明のSave CPU Stateルーチンの詳細を示
すフローチャートである。
すフローチャートである。
【図26】本発明のSave CPU Stateルーチンの詳細を示
すフローチャートである。
すフローチャートである。
【図27】本発明のSave CPU Stateルーチンの詳細を示
すフローチャートである。
すフローチャートである。
【図28】本発明のRestore CPU Stateルーチンの詳細
を示すフローチャートである。
を示すフローチャートである。
【図29】本発明のRestore CPU Stateルーチンの詳細
を示すフローチャートである。
を示すフローチャートである。
【図30】本発明のRestore CPU Stateルーチンの詳細
を示すフローチャートである。
を示すフローチャートである。
【図31】本発明のRestore CPU Stateルーチンの詳細
を示すフローチャートである。
を示すフローチャートである。
【図32】本発明のSave 8959 Stateルーチンの詳細を
示すフローチャートである。
示すフローチャートである。
【図33】本発明のSave 8959 Stateルーチンの詳細を
示すフローチャートである。
示すフローチャートである。
【図34】本発明のSave 8959 Stateルーチンの詳細を
示すフローチャートである。
示すフローチャートである。
10 コンピュータ・システム 12 キーボード 13 マウス 21 スイッチ 31 ハード・ドライブ 40 CPU 52 システムRAM 53 システム・メモリ 56 ビデオ制御装置 58 ビデオ・メモリ 60 外部キャッシュ 84 8277ディスケット制御装置 86 固定ディスク制御装置 88 ROM 92 8259割込み制御装置 94 RS-232 UART 96 CMOSメモリ 98 実時間クロック 150 正常動作状態 152 スタンバイ状態 154 サスペンド状態 156 オフ状態 172 一次/調整装置
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ドウェイン・ティー・クランプ アメリカ合衆国40503 ケンタッキー州レ キシントン ウッドバイン・ドライブ538 (72)発明者 スティーブン・ティー・パンコースト アメリカ合衆国40503 ケンタッキー州レ キシントン パスターン・コート3325
Claims (36)
- 【請求項1】3つの電源管理状態、すなわち、通常、コ
ンピュータ・システムによってコードが実行される正常
動作状態と、スタンバイ状態と、サスペンド状態のうち
任意の選択された1つの状態で動作することができるコ
ンピュータ・システムにおいて、複数の事前選択された
事象のうち少なくとも1つに応じて、前記コンピュータ
・システムを前記状態のそれぞれと前記状態の少なくと
も他の1つとの間で切り替える制御装置を備えることを
特徴とする前記コンピュータ・システム。 - 【請求項2】さらに、第4の電源管理状態、すなわちオ
フ状態で動作する機能を有し、さらに、前記制御装置
が、複数の事前選択された事象のうち少なくとも1つに
応じて、前記コンピュータ・システムを前記状態のそれ
ぞれと前記状態の少なくとも他の1つとの間で切り替え
るために機能することを特徴とする請求項1に記載のコ
ンピュータ・システム。 - 【請求項3】3つの電源管理状態、すなわち、通常、コ
ンピュータ・システムによってコードが実行される正常
動作状態と、スタンバイ状態と、サスペンド状態のうち
任意の選択された1つの状態で動作することができるコ
ンピュータ・システムにおいて、 コードを実行することができるCPUと、 複数の事前選択された事象のうち少なくとも1つに応じ
て、前記コンピュータ・システムを前記状態のそれぞれ
と前記状態の少なくとも他の1つとの間で切り替えるた
めに前記CPUと回線通信する制御装置と、 前記CPUおよび前記制御装置と回線通信し、高電力使
用状態と低電力使用状態のうち選択された1つで動作す
ることができ、前記制御装置に応じて高電力使用状態と
低電力使用状態の間で切り替わる周辺装置と、 前記CPUおよび前記制御装置および前記周辺装置と回
線通信し、システム電力を外部源から前記コンピュータ
・システムに選択的に提供するための電力選択回路を備
え、第1の電源状態と第2の電源状態のうち選択された
1つで動作することができ、前記制御装置に応じて前記
第1の電源状態と第2の電源状態の間で切り替わる電源
とからなり、 前記正常動作状態が、前記電源が前記第1の電源状態で
あり、前記周辺装置が前記高電力使用状態であることを
特徴とし、 前記スタンバイ状態が、前記電源が第1の電源状態であ
り、前記周辺装置が前記低電力使用状態であることを特
徴とし、 前記サスペンド状態が、前記電源が第2の電源状態であ
り、前記CPU上で実行するコードが、前記CPU上で
のコードの実行を、前記電源が前記第1の電源状態に切
り替わった後にレジュームできるように、反転可能に割
り込まれていることを特徴とする前記コンピュータ・シ
ステム。 - 【請求項4】前記第1の電源状態が、前記電源選択回路
がシステム電力を前記外部源から前記CPUおよび前記
制御装置および前記周辺装置にもたらすことを特徴と
し、さらに、前記外部源から前記CPUへのシステム電
力がサスペンドされることを前記第2の電源状態が特徴
としている請求項3に記載のコンピュータ・システム。 - 【請求項5】前記電源がさらに、補助電力を供給する二
次回路を備え、さらに、前記第1の電源状態が、前記電
源選択回路がシステム電力を前記外部源から前記CPU
および前記制御装置および前記周辺装置にもたらすこと
を特徴とし、さらに、前記二次回路が補助電力を前記外
部源から前記制御装置に供給し続ける間に前記外部源か
ら前記CPUへのシステム電力がサスペンドされること
を前記第2の電源状態が特徴としている、請求項3に記
載のコンピュータ・システム。 - 【請求項6】さらに、第4の電源管理状態、すなわちオ
フ状態で動作する機能を有し、さらに、前記電源が前記
第2の電源状態であり、前記CPU上で実行するコード
が反転不能に割り込まれていることを前記オフ状態が特
徴としている請求項3に記載のコンピュータ・システ
ム。 - 【請求項7】3つの電源管理状態、すなわち、通常、コ
ンピュータ・システムによってコードが実行される正常
動作状態と、前記コンピュータ・システムによってコー
ドが実行され続け、前記コンピュータ・システムが前記
正常動作状態の場合よりも少ない電力を消費するスタン
バイ状態と、前記コンピュータ・システムによるコード
の実行が割り込まれ、前記コンピュータ・システムが前
記スタンバイ状態の場合よりも少ない電力を消費するサ
スペンド状態のうち任意の選択された1つで動作するこ
とができるコンピュータ・システムにおいて、 コードを実行することができるCPUと、 複数の事前選択された事象のうち少なくとも1つに応じ
て、前記コンピュータ・システムを前記状態のそれぞれ
と前記状態の少なくとも他の1つとの間で切り替えるた
めに前記CPUと回線通信する制御装置と、 データを受信し、記憶し、転送するために前記CPUお
よび前記制御装置と回線通信する不揮発性記憶装置と、 メモリ・データを記憶し、前記CPUおよび前記制御装
置および前記不揮発性記憶装置と回線通信する揮発性メ
モリと、 レジスタ・データを記憶し、前記CPUおよび前記制御
装置および前記不揮発性記憶装置および前記揮発性メモ
リと回線通信する揮発性レジスタとからなり、 前記制御装置が、メモリ・データを前記揮発性メモリと
前記不揮発性記憶装置の間で転送し、レジスタ・データ
を前記揮発性レジスタと前記不揮発性記憶装置の間で転
送し、かつ前記コンピュータ・システムが前記サスペン
ド状態に入るときにメモリ・データおよびレジスタ・デ
ータを前記不揮発性記憶装置に記憶させ、前記コンピュ
ータが前記正常動作状態に入るときにメモリ・データお
よびレジスタ・データを前記不揮発性記憶装置から前記
揮発性メモリまで転送させるために、複数の事前選択さ
れた事象のうち前記少なくとも1つに応じて動作するこ
とができることを特徴とする前記コンピュータ・システ
ム。 - 【請求項8】さらに、第4の電源管理状態、すなわちオ
フ状態で動作する機能を有し、さらに、メモリ・データ
およびレジスタ・データが前記不揮発性記憶装置に記憶
されず、前記コンピュータ・システムが前記オフ状態で
前記サスペンド状態の場合よりも少ない電力を消費する
ことを前記オフ状態が特徴としている、請求項7に記載
のコンピュータ・システム。 - 【請求項9】3つの電源管理状態、すなわち、通常、コ
ンピュータ・システムによってコードが実行される正常
動作状態と、前記コンピュータ・システムによってコー
ドが実行され続け、前記コンピュータ・システムが前記
正常動作状態の場合よりも少ない電力を消費するスタン
バイ状態と、前記コンピュータ・システムによるコード
の実行が割り込まれ、前記コンピュータ・システムが前
記スタンバイ状態の場合よりも少ない電力を消費するサ
スペンド状態のうち任意の選択された1つで動作するこ
とができ、中央処理システムと、揮発性メモリと、シス
テム電力を供給する電源と、筐体の内部で回転する固定
媒体を有する固定ディスク記憶装置と、ビデオ信号を生
成するビデオ表示制御装置と、ビデオ信号に対応する光
イメージを表示するビデオ表示端末と、非活動サスペン
ド・タイマと、非活動スタンバイ・タイマと、第1の電
源管理コマンドおよび第2の電源管理コマンドを生成す
ることができる電源管理制御装置を有するコンピュータ
・システムにおいて、 第1の事前選択された時間間隔の後に満了するようにス
タンバイ・タイマを始動するステップと、 第2の事前選択された時間間隔の後に満了するようにサ
スペンド・タイマを始動するステップと、 第1および第2の時間間隔のうち一方が満了するまでコ
ンピュータ・システムを正常動作状態で作動させるステ
ップと、 スタンバイ・タイマおよびサスペンド・タイマを再始動
することによって、コンピュータ・システムが正常動作
状態のときに行われるユーザ活動に応答するステップ
と、 コンピュータ・システムを正常動作状態から抜け出さ
せ、スタンバイ状態にすることによって、コンピュータ
・システムの正常動作時に第1の時間間隔の満了に応答
するステップと、 コンピュータ・システムをサスペンド状態にすることに
よって第2の時間間隔の満了に応答するステップと、 コンピュータ・システムを正常動作状態にすることによ
って、コンピュータ・システムがスタンバイ状態のとき
に行われるユーザ活動に応答するステップと、 スタンバイ・タイマを再始動し、コンピュータ・システ
ムの状態をスタンバイ状態から正常動作状態に切り替え
ることによって、コンピュータ・システムがスタンバイ
状態のときに行われるユーザ活動に応答するステップ
と、 コンピュータ・システムの状態を1つの状態からサスペ
ンド状態に切り替えることによって、コンピュータ・シ
ステムが正常動作状態およびスタンバイ状態のうち一方
のときに第1の電源管理コマンドの発生に応答するステ
ップと、 コンピュータ・システムを正常動作状態に切り替えるこ
とによって、コンピュータ・システムがサスペンド状態
のときに第2の電源管理コマンドの発生に応答するステ
ップとからなることを特徴とする前記コンピュータ・シ
ステムによる電力の使用状況を管理する方法。 - 【請求項10】コンピュータ・システムが、電源管理制
御装置と通信するための瞬間プッシュボタン・スイッチ
を有し、さらに、スイッチの閉鎖事象によって第1およ
び第2の電源管理コマンドを生成するステップを備えて
いることを特徴とする請求項9に記載の方法。 - 【請求項11】コンピュータ・システムが、電源管理制
御装置と通信するために第1のスイッチ位置と第2のス
イッチ位置の間で移動可能なトグル・スイッチを有し、
さらに、前記スイッチを第1および第2のスイッチ位置
のうち対応する一方にすることによって第1および第2
の電源管理コマンドを生成するステップを備えているこ
とを特徴とする請求項9に記載の方法。 - 【請求項12】コンピュータ・システムを正常動作状態
から抜け出させ、スタンバイ状態にすることによって、
コンピュータ・システムの正常動作時に第1の時間間隔
の満了に応答する前記ステップが、 ビデオ表示制御装置によるビデオ信号の生成を停止する
ステップと、 固定ディスク記憶装置による固定媒体の回転を停止する
ステップとを備えていることを特徴とする請求項9に記
載の方法。 - 【請求項13】コンピュータ・システムをサスペンド状
態にすることによって第2の時間間隔の満了に応答する
ステップが、 コンピュータ・システムのシステム状態を確認するステ
ップと、次にシステム状態を固定ディスク記憶装置に保
存するステップと、次にシステム電力の電源からの供給
を停止するステップとを備えていることを特徴とする請
求項9に記載の方法。 - 【請求項14】コンピュータ・システムを正常動作状態
にすることによって、コンピュータ・システムがスタン
バイ状態のとき第2の電源管理コマンドの発生に応答す
るステップが、 システム電力の電源からの供給をレジ
ュームするステップと、次に簡略電源オン試験を実行す
るステップと、次に前記固定ディスク記憶装置から保存
されたシステム状態を読み取るステップと、次に前記コ
ンピュータ・システムのシステム状態を復元するステッ
プとを備えていることを特徴とする請求項13に記載の
方法。 - 【請求項15】中央演算処理装置(CPU)と、CPU
と回線通信するメモリと、CPUと回線通信する割込み
制御装置とを有し、割込み制御装置が、CPUと協調し
て複数の割込み事象を処理することができることを特徴
とし、割込み制御装置がメモリに配置され、メモリに関
連づけられている第1の組の割込みベクトルを有し、割
込み制御装置がメモリに配置され、メモリに関連づけら
れている第1の組の割込みサービス・ルーチンを有し、
割込み制御装置が第1の組の割込みサービス・ルーチン
に対応する1つまたは複数の基底アドレスを有するコン
ピュータ・システムにおいて、 第2の組の割込みベクトルをメモリに書き込むステップ
と、 それぞれが、第2の組の割込みベクトルの1つまたは複
数の割込みベクトルに対応する第2の組の割込みサービ
ス・ルーチンをメモリに書き込むステップと、 第2の組の割込みベクトルの1つまたは複数の割込みベ
クトルに対応する割込みサービス・ルーチンのうち1つ
によって実行される割込み事象を生成するステップと、 割込み制御装置と共同でCPU中の割込み事象を処理す
るステップと、 第2の組の割込みベクトルの1つまたは複数の割込みベ
クトルに対応する割込みサービス・ルーチンのうち1つ
で割込みを実行するステップと、 割込みを実行する前記ステップの後に、メモリの状態か
ら割込み制御装置の1つまたは複数の基底アドレスの状
態を決定するステップとを備えることを特徴とする割込
み制御装置の1つまたは複数の基底アドレスの状態を確
認する方法。 - 【請求項16】割込み制御装置が8259であることを特徴
とする請求項15に記載の方法。 - 【請求項17】割込み制御装置が、回線通信で8259の1
つまたは複数の回路相当物を備えたチップセットである
ことを特徴とする請求項15に記載の方法。 - 【請求項18】さらに、第2の組の割込みベクトルをメ
モリに書き込む前記ステップと、第2の組の割込みサー
ビス・ルーチンをメモリに書き込む前記ステップの両方
の前に、第1の組の割込みベクトルおよび第1の組の割
込みサービス・ルーチンをメモリ中のそれぞれの位置か
らメモリ中の異なる位置にコピーするステップを備えて
いることを特徴とする請求項15に記載の方法。 - 【請求項19】BIOSを含み、オペレーティング・システ
ムおよび適用業務プログラムを実行することができるコ
ンピュータ・システムにおいて、 CPUと、 システム電力を外部源から前記コンピュータ・システム
に選択的にもたらす回路を備え、第1の電源状態および
第2の電源状態を有することを特徴とする電源と、 前記CPUと回線通信する不揮発性記憶装置と、 前記CPUと回線通信し、メモリ・データを記憶する揮
発性システム・メモリと、 前記CPUと回線通信し、レジスタ・データを記憶する
揮発性システム・レジスタと、 前記CPUと回線通信し、事前選択されたサスペンド事
象に応じて、前記コンピュータ・システムの状態を正常
動作状態とサスペンド状態の間で選択的に切り替える制
御装置とからなり、 前記正常動作状態が、前記電源が前記第1の電源状態で
あり、前記コンピュータ・システムがユーザ・コマンド
または前記オペレーティング・システムまたは前記BIOS
に応じて前記適用業務プログラムを実行することができ
ることを特徴とし、 前記サスペンド状態が、レジスタ・データおよびメモリ
・データが前記不揮発性記憶装置上に記憶され、前記電
源が前記第2の電源状態であることを特徴とし、 前記正常動作状態と前記サスペンド状態の間の前記切替
えが、前記制御装置が、前記事前選択されたサスペンド
事象に応じて、前記システム・メモリと前記システム・
レジスタと前記不揮発性記憶装置の間でメモリ・データ
およびレジスタ・データのコピーを行うことからなり、 前記電源が前記制御装置に応じて前記電源状態間で切り
替わり、 前記正常動作状態と前記サスペンド状態の間の切替えが
さらに、前記制御装置が、前記事前選択されたサスペン
ド事象に応じて、前記電源に、それぞれ前記第1の電源
状態と前記第2の電源状態の間で切り替わらせることか
らなることを特徴とする前記コンピュータ・システム。 - 【請求項20】前記第1の電源状態が、前記電源がシス
テム電力を前記外部源から前記コンピュータ・システム
にもたらすことを特徴とし、 前記第2の電源状態が、システム電力を前記外部源から
前記コンピュータ・システムに提供しないことを特徴と
する請求項19に記載のコンピュータ・システム。 - 【請求項21】前記電源がさらに、前記コンピュータ・
システムに補助電力を提供する回路を備え、 前記第1の電源状態が、前記電源がシステム電力および
補助電力を前記外部源から前記コンピュータ・システム
に提供することを特徴とし、 前記第2の電源状態が、前記電源がシステム電力を前記
外部源から前記コンピュータ・システムに提供せず、補
助電力を前記外部源から前記コンピュータ・システムに
提供することを特徴とする請求項19に記載のコンピュ
ータ・システム。 - 【請求項22】前記不揮発性記憶装置が固定ディスク記
憶装置であることを特徴とする請求項19、20、また
は21に記載のコンピュータ・システム。 - 【請求項23】前記不揮発性記憶装置が電池付き読取り
専用メモリであることを特徴とする請求項19、20、
または21に記載のコンピュータ・システム。 - 【請求項24】さらに、事前選択された時間の後に満了
するように設定された非活動サスペンド・タイマを備
え、 前記事前選択されたサスペンド事象が前記非活動サスペ
ンド・タイマの満了を備えることを特徴とする請求項1
9に記載のコンピュータ・システム。 - 【請求項25】さらに、前記CPUと回線通信し、前記
スイッチが押されることに応じて閉鎖事象を生成する瞬
間プッシュボタン・スイッチを備え、 前記事前選択されたサスペンド事象が前記スイッチの閉
鎖事象を備えることを特徴とする請求項19に記載のコ
ンピュータ・システム。 - 【請求項26】さらに、前記CPUと回線通信し、前記
スイッチが押されることに応じて閉鎖事象を生成する瞬
間プッシュボタン・スイッチを備え、 さらに、第1のフラグ状態および第2のフラグ状態を備
え、前記CPU上で実行するコードによって状態を処理
することができる処理可能フラグを備え、 前記事前選択されたサスペンド事象のうち1つまたは複
数が、前記フラグが前記第1のフラグ状態であるときの
前記スイッチの閉鎖事象を備えることを特徴とする請求
項19に記載のコンピュータ・システム。 - 【請求項27】メモリ・データを記憶するシステム・メ
モリと、不揮発性記憶装置と、コードの命令がシステム
・メモリ内の不適切な領域にアクセスしようとし、ある
いは命令が、特権をもつ命令を実行しようとした場合に
CPUに保護障害を生成させるプロテクト・モードでコ
ードを実行することができ、選択されたシステム・メモ
リ領域への書込みを可能にし、保護障害を生成せずに特
権をもつ命令の実行を可能にする非障害モードで実行す
ることができ、レジスタ値を記憶する揮発性レジスタを
有するCPUと、ROM中のBIOSと、BIOSのコピー先で
あり、かつ実行元であるシャドウRAMと、CPUでの
コードの実行に割り込むことができ、サスペンド事象に
応じてサスペンド・ルーチンを呼び出すことができるオ
ペレーティング・システムと、1つまたは複数の事前選
択された条件に応じてサスペンド事象を生成するコント
ロール・ルーチンとを有し、 サスペンド・ルーチンが、オペレーティング・システム
によって選択的に呼出し可能であり、保護障害を生成せ
ずにレジスタ値をCPUからスタックまたはシャドウR
AMに転送する能力と、CPUを非障害モードにする能
力と、レジスタ値をスタックまたはシャドウRAMから
不揮発性記憶装置に転送する能力を特徴とするコンピュ
ータ・システムにおいて、 サスペンド事象に応じて、オペレーティング・システム
によるCPU上でのコードの実行に割り込むステップ
と、 サスペンド・ルーチンを活動化するステップと、 シャドウRAM中またはスタック上にレジスタ値を一時
的に記憶するステップと、 CPUを、レジスタ値をシャドウRAMまたはスタック
から不揮発性記憶装置にコピーしてもCPU内で保護障
害が生成されないことを特徴とする非障害モードにする
ステップと、 レジスタ値をスタックまたはシャドウRAMから不揮発
性記憶装置に転送するステップとからなることを特徴と
するCPUがプロテクト・モードでコードを実行する状
態を保存する方法。 - 【請求項28】メモリ・データを記憶するシステム・メ
モリと、不揮発性記憶装置と、コードの命令がシステム
・メモリ内の不適切な領域にアクセスしようとし、ある
いは命令が、特権をもつ命令を実行しようとした場合に
CPUに保護障害を生成させるプロテクト・モードでコ
ードを実行することができ、選択されたシステム・メモ
リ領域への書込みを可能にし、保護障害を生成せずに特
権をもつ命令の実行を可能にする非障害モードで実行す
ることができ、レジスタ値を記憶する揮発性レジスタを
有するCPUと、ROM中のBIOSと、BIOSのコピー先で
あり、かつ実行元であるシャドウRAMと、CPUでの
コードの実行を復元することができ、レジューム事象に
応じてレジューム・ルーチンを呼び出すことができるオ
ペレーティング・システムと、1つまたは複数の事前選
択された条件に応じてレジューム事象を生成するコント
ロール・ルーチンとを有し、 レジューム・ルーチンが、オペレーティング・システム
によって選択的に呼出し可能であり、CPUを非障害モ
ードにする能力と、CPUからのレジスタ値を不揮発性
記憶装置からスタックまたはシャドウRAMに転送する
能力と、CPUを障害モードにする能力と、レジスタ値
をスタックまたはシャドウRAMからCPUに転送する
能力を特徴とするコンピュータ・システムにおいて、 レジューム事象に応じてレジューム・ルーチンを活動化
するステップと、 CPUを、レジスタ値を不揮発性記憶装置からシャドウ
RAMまたはスタックにコピーしてもCPU内で保護障
害が生成されないことを特徴とする非障害モードにする
ステップと、 CPUのレジスタを不揮発性記憶装置からスタックまた
はシャドウRAMに転送するステップと、 CPUページングを活動化した後にシャドウRAM中の
BIOSにアクセスできることを特徴とする、1組のページ
・テーブルをシャドウRAMにロードするステップと、 CPUを障害モードにするステップと、 レジスタ値をスタックまたはシャドウRAMからCPU
に転送するステップと、 オペレーティング・システムによるCPU上での割り込
まれたコードの実行をレジュームするステップとからな
ることを特徴とするCPUの状態を不揮発性記憶装置か
ら復元する方法。 - 【請求項29】シャドウRAMが、線形アドレスが物理
アドレスに等しいシステム・メモリの部分で動作するこ
とを特徴とする請求項27または28に記載の方法。 - 【請求項30】CPUを非障害モードにする前記ステッ
プが、CPUをリセットするステップを備えることを特
徴とする請求項27または28に記載の方法。 - 【請求項31】オペレーティング・システムがAPM仕
様に準拠することを特徴とする請求項27または28に
記載の方法。 - 【請求項32】不揮発性記憶装置が固定ディスク記憶装
置であることを特徴とする請求項27または28に記載
の方法。 - 【請求項33】CPUが386または486マイクロプ
ロセッサ・ファミリの1つであることを特徴とする請求
項27または28に記載の方法。 - 【請求項34】3つの電源管理状態、すなわち、通常、
コンピュータ・システムによってコードが実行される正
常動作状態と、オフ状態と、サスペンド状態のうち任意
の選択された1つの状態で動作することができるコンピ
ュータシステムにおいて、 スイッチと、 コードを実行することができるCPUと、 複数の事前選択された事象のうち少なくとも1つに応じ
て、前記コンピュータ・システムを前記状態のそれぞれ
と前記状態の少なくとも他の1つとの間で切り替えるた
めに前記CPUおよび前記スイッチと回線通信する制御
装置と、 前記CPU上で実行されるコードに応じて、複数の事前
選択されたフラグ状態のうち1つを仮定することができ
る、前記CPUおよび前記制御装置と回線通信するフラ
グと、 前記CPUおよび前記制御装置と回線通信し、システム
電力を外部源から前記コンピュータ・システムに選択的
に提供する電力選択回路を備え、第1の電源状態と第2
の電源状態のうち選択された1つで動作することがで
き、前記制御装置に応じて前記第1の電源状態と第2の
電源状態の間で切り替わる電源とからなり、 前記正常動作状態が、前記電源が前記第1の電源状態で
あり、コードが通常は前記CPU上で実行されることを
特徴とし、 前記サスペンド状態が、前記電源が第2の電源状態であ
り、前記CPU上で実行するコードが、前記CPU上で
のコードの実行を、前記電源が前記第1の電源状態に切
り替わった後にレジュームできるように、反転可能に割
り込まれていることを特徴とし、 前記オフ状態が、前記電源が前記第2の電源状態であ
り、前記CPU上で実行中のコードが反転不能に割り込
まれていることを特徴とする前記コンピュータ・システ
ム。 - 【請求項35】前記スイッチが瞬間プッシュボタン・ス
イッチであり、さらに、前記フラグが前記フラグ状態の
うち第1の状態である場合、前記制御装置が前記スイッ
チの閉鎖事象に応じて、前記コンピュータ・システムを
前記正常動作状態と前記オフ状態の間で切り替え、さら
に、前記フラグが前記フラグ状態のうち第2の状態であ
る場合、前記制御装置が前記スイッチの閉鎖事象に応じ
て、前記コンピュータ・システムを前記正常動作状態と
前記サスペンド状態の間で切り替えることを特徴とする
請求項34に記載のコンピュータ・システム。 - 【請求項36】前記スイッチが第1のスイッチ位置と第
2のスイッチ位置の間で移動可能なトグル・スイッチで
あり、さらに、前記フラグが前記フラグ状態のうち第1
の状態である場合、前記制御装置が、前記スイッチが前
記第1のスイッチ位置に入ることに応じて、前記コンピ
ュータ・システムを前記正常動作状態と前記オフ状態の
間で切り替え、さらに、前記フラグが前記フラグ状態の
うち第1の状態である場合、前記制御装置が、前記スイ
ッチが前記第2のスイッチ位置に入ることに応じて、前
記コンピュータ・システムを前記正常動作状態と前記オ
フ状態の間で切り替え、さらに、前記フラグが前記フラ
グ状態のうち第2の状態である場合、前記制御装置が、
前記スイッチが前記第1のスイッチ位置に入ることに応
じて、前記コンピュータ・システムを前記正常動作状態
と前記サスペンド状態の間で切り替え、さらに、前記フ
ラグが前記フラグ状態のうち第2の状態である場合、前
記制御装置が、前記スイッチが前記第2のスイッチ位置
に入ることに応じて、前記コンピュータ・システムを前
記正常動作状態と前記サスペンド状態の間で切り替える
ことを特徴とする請求項34に記載のコンピュータ・シ
ステム。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US097251 | 1993-07-26 | ||
| US08/097,251 US5548763A (en) | 1993-07-26 | 1993-07-26 | Desk top computer system having multi-level power management |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0744286A true JPH0744286A (ja) | 1995-02-14 |
Family
ID=22262466
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP6138752A Pending JPH0744286A (ja) | 1993-07-26 | 1994-06-21 | マルチレベル電源管理を有するコンピュータ・システム |
Country Status (13)
| Country | Link |
|---|---|
| US (1) | US5548763A (ja) |
| EP (1) | EP0636964B1 (ja) |
| JP (1) | JPH0744286A (ja) |
| KR (1) | KR0128275B1 (ja) |
| CN (1) | CN1109964C (ja) |
| AT (1) | ATE223588T1 (ja) |
| AU (2) | AU685455B2 (ja) |
| BR (1) | BR9402942A (ja) |
| CA (1) | CA2120055C (ja) |
| ES (1) | ES2181701T3 (ja) |
| MY (1) | MY111524A (ja) |
| PE (1) | PE9396A1 (ja) |
| TW (1) | TW495064U (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6968467B2 (en) | 2000-10-26 | 2005-11-22 | Matsushita Electric Industrial Co., Ltd. | Decentralized power management system for integrated circuit using local power management units that generate control signals based on common data |
Families Citing this family (88)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6522314B1 (en) | 1993-11-19 | 2003-02-18 | Fujitsu Limited | Flat display panel having internal power supply circuit for reducing power consumption |
| US7068264B2 (en) * | 1993-11-19 | 2006-06-27 | Hitachi, Ltd. | Flat display panel having internal power supply circuit for reducing power consumption |
| KR100352045B1 (ko) * | 1994-01-10 | 2002-12-28 | 선 마이크로시스템즈 인코퍼레이티드 | 컴퓨터시스템에서전력소모를감소시키기위한방법및장치 |
| US5530879A (en) | 1994-09-07 | 1996-06-25 | International Business Machines Corporation | Computer system having power management processor for switching power supply from one state to another responsive to a closure of a switch, a detected ring or an expiration of a timer |
| JP3224715B2 (ja) | 1994-09-07 | 2001-11-05 | インターナショナル・ビジネス・マシーンズ・コーポレーション | コンピュータ・システムをウェイクさせる低電力リング検出 |
| US5560023A (en) | 1994-09-07 | 1996-09-24 | International Business Machines Corporation | Automatic backup system for advanced power management |
| US5832281A (en) * | 1994-10-19 | 1998-11-03 | Canon Kabushiki Kaisha | Power control apparatus and power control method |
| KR970010634B1 (ko) * | 1994-10-25 | 1997-06-28 | 삼성전자 주식회사 | 네트워크 하이버네이션 시스템 |
| JPH08147173A (ja) * | 1994-11-18 | 1996-06-07 | Seiko Epson Corp | エミュレーション装置 |
| KR970008512B1 (ko) * | 1994-11-30 | 1997-05-24 | 엘지전자 주식회사 | 절전기능 자동 감지 장치 |
| KR0172003B1 (ko) * | 1995-03-28 | 1999-03-30 | 김광호 | 컴퓨터 시스템 및 그 제어방법 |
| JP3045948B2 (ja) * | 1995-07-05 | 2000-05-29 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 情報処理装置及びその制御方法 |
| US5710930A (en) * | 1995-08-04 | 1998-01-20 | Intel Corporation | Apparatus and a method for allowing an operating system of a computer system to persist across a power off and on cycle |
| US5638541A (en) * | 1995-08-25 | 1997-06-10 | Intel Corporation | System and method for managing power on desktop systems |
| US5666539A (en) * | 1995-09-20 | 1997-09-09 | Hewlett-Packard Company | Reducing I/O activity to allow a host based printing system to activate power management functions |
| GB9521636D0 (en) * | 1995-10-21 | 1996-01-03 | Magnum Power Solutions Ltd | Apparatus and method for preserving computer held data following power-off |
| US5974552A (en) * | 1995-12-29 | 1999-10-26 | Samsung Electronics Co., Ltd. | Method and apparatus for executing a scheduled operation after wake up from power off state |
| US5983355A (en) * | 1996-05-20 | 1999-11-09 | National Semiconductor Corporation | Power conservation method and apparatus activated by detecting specific fixed interrupt signals indicative of system inactivity and excluding prefetched signals |
| KR100245199B1 (ko) * | 1996-05-21 | 2000-02-15 | 윤종용 | 네트워크 사용중의 절전기능을 갖는 컴퓨터의 절전모드전환방법 |
| US5875344A (en) * | 1996-07-16 | 1999-02-23 | Compaq Computer Corporation | Using a file enabler with firmware |
| US5925131A (en) * | 1996-08-19 | 1999-07-20 | Compaq Computer Corporation | Computer and computer network having a power down inhibit |
| KR100281535B1 (ko) * | 1997-02-12 | 2001-02-15 | 윤종용 | 컴퓨터 시스템 및 그의 제어 방법 |
| KR19980074058A (ko) * | 1997-03-21 | 1998-11-05 | 윤종용 | 전원 자동차단기능을 갖는 컴퓨터 및 그 전원자동차단방법 |
| US5905900A (en) * | 1997-04-30 | 1999-05-18 | International Business Machines Corporation | Mobile client computer and power management architecture |
| KR100455268B1 (ko) * | 1997-05-16 | 2005-02-28 | 삼성전자주식회사 | 윈도우즈95운영체제로동작하는시스템에서의안전셧다운장치및방법 |
| US6145068A (en) * | 1997-09-16 | 2000-11-07 | Phoenix Technologies Ltd. | Data transfer to a non-volatile storage medium |
| US5999730A (en) * | 1997-10-27 | 1999-12-07 | Phoenix Technologies Limited | Generation of firmware code using a graphic representation |
| US6438684B1 (en) | 1997-11-03 | 2002-08-20 | 3Com Corporation | Push button shutdown and reset of embedded systems |
| US5937200A (en) * | 1997-11-21 | 1999-08-10 | Phoenix Technologies Ltd. | Using firmware to enhance the functionality of a controller |
| KR19990052965A (ko) * | 1997-12-23 | 1999-07-15 | 구자홍 | 퍼스널 컴퓨터의 데이터 저장방법 |
| US6092207A (en) * | 1997-12-29 | 2000-07-18 | Intel Corporation | Computer having a dual mode power supply for implementing a power saving mode |
| US6308278B1 (en) | 1997-12-29 | 2001-10-23 | Intel Corporation | Supplying standby voltage to memory and wakeup circuitry to wake a computer from a low power mode |
| JP4028064B2 (ja) * | 1998-02-13 | 2007-12-26 | 富士通株式会社 | ディスプレイ装置 |
| KR100306385B1 (ko) | 1998-09-04 | 2001-10-19 | 윤종용 | 자동 응답 상태표시 및 처리기능을 갖는 컴퓨터 및 자동 응답처리방법 |
| KR100337604B1 (ko) | 1998-09-04 | 2002-09-26 | 삼성전자 주식회사 | 시스템상태정보를디스플레이하기위한디스플레이장치를구비한컴퓨터시스템및그제어방법 |
| JP2000148310A (ja) * | 1998-11-04 | 2000-05-26 | Nec Yonezawa Ltd | 携帯用情報機器の選択型電源供給システム |
| US6374145B1 (en) * | 1998-12-14 | 2002-04-16 | Mark Lignoul | Proximity sensor for screen saver and password delay |
| US6408397B1 (en) | 1999-05-24 | 2002-06-18 | Dell Usa, L.P. | Using RTC wake-up to enable recovery from power failures |
| US6201372B1 (en) * | 1999-09-08 | 2001-03-13 | Denso Corporation, Ltd. | Reserve power option for a portable electronic device |
| EP1085396A1 (en) * | 1999-09-17 | 2001-03-21 | Hewlett-Packard Company | Operation of trusted state in computing platform |
| US6647499B1 (en) | 2000-01-26 | 2003-11-11 | International Business Machines Corporation | System for powering down a disk storage device to an idle state upon trnsfer to an intermediate storage location accessible by system processor |
| KR20000030557A (ko) * | 2000-03-07 | 2000-06-05 | 이장호 | 천연식물을 이용한 건축자재의 제조방법 |
| GB2376763B (en) | 2001-06-19 | 2004-12-15 | Hewlett Packard Co | Demonstrating integrity of a compartment of a compartmented operating system |
| GB0102518D0 (en) * | 2001-01-31 | 2001-03-21 | Hewlett Packard Co | Trusted operating system |
| GB2372592B (en) | 2001-02-23 | 2005-03-30 | Hewlett Packard Co | Information system |
| GB2372595A (en) | 2001-02-23 | 2002-08-28 | Hewlett Packard Co | Method of and apparatus for ascertaining the status of a data processing environment. |
| GB0114898D0 (en) * | 2001-06-19 | 2001-08-08 | Hewlett Packard Co | Interaction with electronic services and markets |
| GB2376762A (en) * | 2001-06-19 | 2002-12-24 | Hewlett Packard Co | Renting a computing environment on a trusted computing platform |
| GB2376764B (en) * | 2001-06-19 | 2004-12-29 | Hewlett Packard Co | Multiple trusted computing environments |
| GB2378013A (en) * | 2001-07-27 | 2003-01-29 | Hewlett Packard Co | Trusted computer platform audit system |
| WO2003014902A1 (en) * | 2001-08-10 | 2003-02-20 | Shakti Systems, Inc. | Distributed power supply architecture |
| US20030061523A1 (en) * | 2001-09-25 | 2003-03-27 | Stanley Randy P. | Method and apparatus to provide a user priority mode |
| US20030074590A1 (en) * | 2001-10-12 | 2003-04-17 | Fogle Steven L. | Computer system with improved entry into powersave and lock modes and method of use therefor |
| US6791298B2 (en) * | 2001-11-05 | 2004-09-14 | Shakti Systems, Inc. | Monolithic battery charging device |
| US6819088B2 (en) * | 2001-11-05 | 2004-11-16 | Krishna Shenai | DC-DC converter with resonant gate drive |
| GB2382419B (en) * | 2001-11-22 | 2005-12-14 | Hewlett Packard Co | Apparatus and method for creating a trusted environment |
| US7114086B2 (en) * | 2002-01-04 | 2006-09-26 | Ati Technologies, Inc. | System for reduced power consumption by monitoring instruction buffer and method thereof |
| KR100552418B1 (ko) * | 2002-01-24 | 2006-02-20 | 김만복 | 플라스틱 패널 제조 방법 및 플라스틱 패널 |
| JP3776870B2 (ja) | 2002-11-12 | 2006-05-17 | 株式会社東芝 | 情報処理装置および省電力制御方法 |
| US7210048B2 (en) * | 2003-02-14 | 2007-04-24 | Intel Corporation | Enterprise power and thermal management |
| US7213163B2 (en) * | 2003-06-25 | 2007-05-01 | International Business Machines Corporation | Restoring power in a hot swappable multi-server data processing environment |
| US7203854B2 (en) * | 2004-02-12 | 2007-04-10 | Microsoft Corporation | System for reconfiguring a computer between a high power and high functionality configuration and a low power and low functionality configuration |
| CN1860715A (zh) * | 2004-03-26 | 2006-11-08 | 松下电器产业株式会社 | 通信处理装置、家电器械及家庭网络系统 |
| JP4302573B2 (ja) * | 2004-04-15 | 2009-07-29 | 富士通株式会社 | 情報処理装置 |
| US7272731B2 (en) * | 2004-10-13 | 2007-09-18 | Dell Products L.P. | Information handling system having reduced power consumption |
| EP1866825A1 (en) | 2005-03-22 | 2007-12-19 | Hewlett-Packard Development Company, L.P. | Methods, devices and data structures for trusted data |
| US7958312B2 (en) | 2005-11-15 | 2011-06-07 | Oracle America, Inc. | Small and power-efficient cache that can provide data for background DMA devices while the processor is in a low-power state |
| US7899990B2 (en) | 2005-11-15 | 2011-03-01 | Oracle America, Inc. | Power conservation via DRAM access |
| US7934054B1 (en) | 2005-11-15 | 2011-04-26 | Oracle America, Inc. | Re-fetching cache memory enabling alternative operational modes |
| US7516274B2 (en) | 2005-11-15 | 2009-04-07 | Sun Microsystems, Inc. | Power conservation via DRAM access reduction |
| US7898500B2 (en) * | 2006-05-22 | 2011-03-01 | Microsoft Corporation | Auxiliary display within a primary display system |
| JP4293239B2 (ja) * | 2006-12-28 | 2009-07-08 | ソニー株式会社 | 情報処理装置および方法、プログラム、並びに記録媒体 |
| US20080162918A1 (en) * | 2007-01-02 | 2008-07-03 | Nokia Corporation | Hide boot |
| DE202007018449U1 (de) * | 2007-11-02 | 2008-10-02 | Fujitsu Siemens Computers Gmbh | Elektronisches Gerät, Computer und Anordnung |
| US20090171174A1 (en) * | 2007-12-31 | 2009-07-02 | Nellcor Puritan Bennett Llc | System and method for maintaining battery life |
| US20100138786A1 (en) * | 2008-12-01 | 2010-06-03 | Zodiac Pool Systems, Inc. | User Interface Device with Display Screen and Memory for Pool/Spa Control System |
| ITMI20082192A1 (it) * | 2008-12-11 | 2010-06-12 | Alberto Renzi | Sistema per salvare in un'unita' periferica di un computer dati contenuti nel computer stesso e per trasferirli quando l'unita' periferica viene connessa ad un altro computer |
| US8723357B2 (en) | 2009-07-24 | 2014-05-13 | Hewlett-Packard Development Company, L.P. | Power supply having low quiescent consumption |
| US8751760B2 (en) * | 2009-10-01 | 2014-06-10 | Dell Products L.P. | Systems and methods for power state transitioning in an information handling system |
| TWI393894B (zh) * | 2009-11-20 | 2013-04-21 | Inst Information Industry | 識別迴路上電器用電行為的方法、系統與電腦程式產品 |
| US8700936B2 (en) * | 2010-12-03 | 2014-04-15 | Schneider Electric It Corporation | Modular gating of microprocessor low-power mode |
| KR101287294B1 (ko) * | 2011-02-01 | 2013-07-17 | 고려대학교 산학협력단 | 컴퓨터 전력 관리 장치 및 방법 |
| CN102955560B (zh) * | 2011-08-25 | 2015-02-04 | 腾讯科技(深圳)有限公司 | 一种应用程序处理方法和装置 |
| KR102154080B1 (ko) * | 2014-07-25 | 2020-09-09 | 삼성전자주식회사 | 전력 관리 시스템, 이를 포함하는 시스템 온 칩 및 모바일 기기 |
| TWI750109B (zh) | 2014-11-12 | 2021-12-21 | 香港商阿里巴巴集團服務有限公司 | 硬碟功耗、硬碟功耗管理服務控制方法及裝置 |
| US9818458B1 (en) * | 2015-09-23 | 2017-11-14 | Intel Corporation | Techniques for entry to a lower power state for a memory device |
| WO2021173992A1 (en) | 2020-02-26 | 2021-09-02 | Innovation Exchange Llc | System and method for labeling an image |
| WO2026020316A1 (en) * | 2024-07-23 | 2026-01-29 | Kuka Robotics Guangdong Co., Ltd. | Robot controller system and method for operating the system |
Citations (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS63163912A (ja) * | 1986-12-26 | 1988-07-07 | Toshiba Corp | マイクロコンピユ−タシステム |
| JPH0224727A (ja) * | 1988-07-14 | 1990-01-26 | Canon Inc | 情報処理装置 |
| JPH03171317A (ja) * | 1989-09-08 | 1991-07-24 | Apple Computer Inc | 携帯型コンピユータの電力使用を管理する装置 |
| JPH04138512A (ja) * | 1990-09-29 | 1992-05-13 | Nippon Steel Corp | パーソナルコンピュータのスリープ装置 |
| JPH04290109A (ja) * | 1991-03-19 | 1992-10-14 | Matsushita Electric Ind Co Ltd | 情報処理装置 |
| JPH0519883A (ja) * | 1991-07-16 | 1993-01-29 | Canon Inc | 電子機器 |
| JPH05189075A (ja) * | 1991-05-29 | 1993-07-30 | Toshiba Corp | Os/2オペレーティングシステムのためのリジューム処理方法 |
| JPH05250059A (ja) * | 1991-06-14 | 1993-09-28 | Toshiba Corp | モード切り替え方法 |
| JPH09221081A (ja) * | 1996-02-20 | 1997-08-26 | Shimano Inc | カンチレバー型ブレーキ装置 |
Family Cites Families (23)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4503494A (en) * | 1980-06-26 | 1985-03-05 | Texas Instruments Incorporated | Non-volatile memory system |
| US5167027A (en) * | 1982-11-09 | 1992-11-24 | Siemens Aktiengesellschaft | Apparatus and method for forming a sequencer link for a sequencer controlled by a micro-program |
| US4851987A (en) * | 1986-01-17 | 1989-07-25 | International Business Machines Corporation | System for reducing processor power consumption by stopping processor clock supply if a desired event does not occur |
| US4907150A (en) * | 1986-01-17 | 1990-03-06 | International Business Machines Corporation | Apparatus and method for suspending and resuming software applications on a computer |
| US4933785A (en) * | 1988-03-01 | 1990-06-12 | Prairietek Corporation | Disk drive apparatus using dynamic loading/unloading |
| EP0368144B1 (en) * | 1988-11-10 | 1996-02-07 | Motorola, Inc. | Digital computing system with low power mode |
| US5021963A (en) * | 1988-12-30 | 1991-06-04 | Pitney Bowes Inc. | EPM having an improvement in accounting update security |
| US5218607A (en) * | 1989-06-23 | 1993-06-08 | Kabushiki Kaisha Toshiba | Computer having a resume function and operable on an internal power source |
| EP0675425B1 (en) * | 1989-06-30 | 1997-12-10 | Fujitsu Personal Systems, Inc. | A method for reducing power consumed by a computer |
| EP0415376A3 (en) * | 1989-08-28 | 1992-04-08 | Kabushiki Kaisha Toshiba | Computer unit with a resume function |
| US5167024A (en) * | 1989-09-08 | 1992-11-24 | Apple Computer, Inc. | Power management for a laptop computer with slow and sleep modes |
| US5021983B1 (en) * | 1989-11-13 | 1996-05-28 | Chips & Technologies Inc | Suspend/resume apparatus and method for reducing power consumption in battery powered computers |
| US5276890A (en) * | 1989-11-30 | 1994-01-04 | Kabushiki Kaisha Toshiba | Resume control system and method for executing resume processing while checking operation mode of CPU |
| JP2772103B2 (ja) * | 1990-03-28 | 1998-07-02 | 株式会社東芝 | 計算機システム立上げ方式 |
| US5193176A (en) * | 1990-10-17 | 1993-03-09 | Powercard Supply C.A. | Computer work saving during power interruption |
| AU634114B2 (en) * | 1991-02-08 | 1993-02-11 | Kabushiki Kaisha Toshiba | Computer having function of resume process |
| US5410711A (en) * | 1991-02-14 | 1995-04-25 | Dell Usa, L.P. | Portable computer with BIOS-independent power management |
| JPH0776894B2 (ja) * | 1991-02-25 | 1995-08-16 | インターナショナル・ビジネス・マシーンズ・コーポレイション | プロセッサ用クロック信号の制御方法及び情報処理システム |
| JP3701965B2 (ja) * | 1991-05-17 | 2005-10-05 | 日本電気株式会社 | 保護モードマイクロプロセッサ及びハードディスクのための中断/再開機能とアイドルモードの実現 |
| JPH077317B2 (ja) * | 1991-06-10 | 1995-01-30 | 松下電器産業株式会社 | システム再起動装置 |
| JPH07101376B2 (ja) * | 1991-06-10 | 1995-11-01 | 松下電器産業株式会社 | システム再起動装置 |
| US5291604A (en) * | 1991-08-30 | 1994-03-01 | Intel Corporation | Transparent system interrupts with automated halt state restart |
| US5410713A (en) * | 1992-01-02 | 1995-04-25 | Smith Corona/Acer | Power-management system for a computer |
-
1993
- 1993-07-26 US US08/097,251 patent/US5548763A/en not_active Expired - Lifetime
- 1993-07-28 TW TW086203951U patent/TW495064U/zh not_active IP Right Cessation
-
1994
- 1994-03-28 CA CA002120055A patent/CA2120055C/en not_active Expired - Lifetime
- 1994-05-25 CN CN94105824A patent/CN1109964C/zh not_active Expired - Lifetime
- 1994-06-21 JP JP6138752A patent/JPH0744286A/ja active Pending
- 1994-06-24 AU AU65911/94A patent/AU685455B2/en not_active Ceased
- 1994-06-24 KR KR1019940014694A patent/KR0128275B1/ko not_active Expired - Fee Related
- 1994-06-24 MY MYPI94001647A patent/MY111524A/en unknown
- 1994-06-30 ES ES94304824T patent/ES2181701T3/es not_active Expired - Lifetime
- 1994-06-30 AT AT94304824T patent/ATE223588T1/de not_active IP Right Cessation
- 1994-06-30 EP EP94304824A patent/EP0636964B1/en not_active Expired - Lifetime
- 1994-07-26 BR BR9402942A patent/BR9402942A/pt not_active IP Right Cessation
- 1994-07-26 PE PE1994247603A patent/PE9396A1/es not_active Application Discontinuation
-
1997
- 1997-10-02 AU AU39891/97A patent/AU716678B2/en not_active Ceased
Patent Citations (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS63163912A (ja) * | 1986-12-26 | 1988-07-07 | Toshiba Corp | マイクロコンピユ−タシステム |
| JPH0224727A (ja) * | 1988-07-14 | 1990-01-26 | Canon Inc | 情報処理装置 |
| JPH03171317A (ja) * | 1989-09-08 | 1991-07-24 | Apple Computer Inc | 携帯型コンピユータの電力使用を管理する装置 |
| JPH04138512A (ja) * | 1990-09-29 | 1992-05-13 | Nippon Steel Corp | パーソナルコンピュータのスリープ装置 |
| JPH04290109A (ja) * | 1991-03-19 | 1992-10-14 | Matsushita Electric Ind Co Ltd | 情報処理装置 |
| JPH05189075A (ja) * | 1991-05-29 | 1993-07-30 | Toshiba Corp | Os/2オペレーティングシステムのためのリジューム処理方法 |
| JPH05250059A (ja) * | 1991-06-14 | 1993-09-28 | Toshiba Corp | モード切り替え方法 |
| JPH0519883A (ja) * | 1991-07-16 | 1993-01-29 | Canon Inc | 電子機器 |
| JPH09221081A (ja) * | 1996-02-20 | 1997-08-26 | Shimano Inc | カンチレバー型ブレーキ装置 |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6968467B2 (en) | 2000-10-26 | 2005-11-22 | Matsushita Electric Industrial Co., Ltd. | Decentralized power management system for integrated circuit using local power management units that generate control signals based on common data |
Also Published As
| Publication number | Publication date |
|---|---|
| US5548763A (en) | 1996-08-20 |
| EP0636964A2 (en) | 1995-02-01 |
| CA2120055C (en) | 1998-04-14 |
| KR950003998A (ko) | 1995-02-17 |
| BR9402942A (pt) | 1995-06-20 |
| CN1102717A (zh) | 1995-05-17 |
| AU685455B2 (en) | 1998-01-22 |
| ATE223588T1 (de) | 2002-09-15 |
| TW495064U (en) | 2002-07-11 |
| AU3989197A (en) | 1997-12-18 |
| AU716678B2 (en) | 2000-03-02 |
| ES2181701T3 (es) | 2003-03-01 |
| CN1109964C (zh) | 2003-05-28 |
| PE9396A1 (es) | 1996-04-04 |
| CA2120055A1 (en) | 1995-01-27 |
| EP0636964A3 (en) | 1996-12-27 |
| EP0636964B1 (en) | 2002-09-04 |
| MY111524A (en) | 2000-07-31 |
| AU6591194A (en) | 1995-01-05 |
| KR0128275B1 (ko) | 1998-04-15 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2761460B2 (ja) | コンピュータ・システム | |
| JP2798356B2 (ja) | デスクトップ・コンピュータ・システム、コンピュータ・システムの状態を保存する方法およびコンピュータ・システムの状態を復元する方法 | |
| JP2726004B2 (ja) | 保護モードでコードを実行するcpuの状態を保存する方法、cpuの状態を不揮発性記憶装置から復元する方法、ページ・ディレクトリ・ベース・レジスタのレジスタ値を推定する方法およびページ・ディレクトリ・ベース・レジスタの推定レジスタ値を検証する方法 | |
| AU716678B2 (en) | Desktop computer system having multi-level power management | |
| US5682550A (en) | System for restricting user access to default work area settings upon restoration from nonvolatile memory where the settings are independent of the restored state information | |
| KR100232314B1 (ko) | 컴퓨터 시스템 | |
| KR100196893B1 (ko) | 컴퓨터 시스템 | |
| KR100196883B1 (ko) | 컴퓨터 시스템 | |
| US5758174A (en) | Computer system having a plurality of stored system capability states from which to resume | |
| CA2156539C (en) | Power management processor for suspend systems | |
| EP0749063A2 (en) | Method and apparatus for suspend/resume operation in a computer | |
| AU732436B2 (en) | Desktop computer system having multi-level power management | |
| HK1011104A (en) | Desktop computer system having multi-level power management |