(57)【要約】実施形態は、アドバンスド・ コンフィグレーション・パワー・インタフェース（ＡＣＰＩ）及びＡＣＰＩソース言語インフラストラクチャによる、メッセージシグナル割り込み又はプロセッサ間割り込みのような、１つのオペレーティングシステムに可視的な割り込みを生成する１つの割り込みハンドリングシステムを含む。割り込みハンドリングシステムは、ホットキーを提供すべく使用され得る。この割り込みハンドリングシステムは、ドライバを更新することによるシステム機能の容易な更新を可能にする。
2007516536.tif 000002
【特許請求の範囲】
【請求項１】
１つのシステムイベントにサービスするために１つの割り込みを生成する１つのデバイスと、
前記デバイスからの前記システムイベントにサービスする１つのデバイスドライバによって処理される１つのオペレーティングシステムに可視的な割り込みを生成すべく、前記割り込みのための１つの割り込みハンドラを実行する１つのプロセッサと、
記憶された前記デバイスドライバを有する１つのストレージデバイスと
を備える装置。
【請求項２】
前記デバイスは、１つの周辺入力デバイスに接続された１つのエンベデッドコントローラを有する
請求項１に記載の装置。
【請求項３】
前記割り込みハンドラをトリガする１つの割り込みを生成する１つの割り込みコントローラ
をさらに備える請求項１に記載の装置。
【請求項４】
前記割り込みハンドラは、１つの定義ブロック及び１つのアドバンスド・コンフィグレーション・パワー・インタフェース・メソッドを有する
請求項１に記載の装置。
【請求項５】
前記プロセッサに結合され、１つの定義ブロックを記憶する１つのメモリデバイス
をさらに備える請求項１に記載の装置。
【請求項６】
１つのシステムイベントを検出する段階と、
１つの割り込みソースについての１つの定義ブロックの中の１つのメソッドによって、オペレーティングシステムに可視的な１つの割り込みを生成する段階と、
１つのドライバで前記割り込みにサービスする段階と
を備える方法。
【請求項７】
前記割り込みは、メッセージシグナル割り込み（ＭＳＩ）及び１つのプロセッサ間割り込み（ＩＰＩ）のうちの１つである
請求項６に記載の方法。
【請求項８】
１つのシステム制御割り込み（ＳＣＩ）を生成する段階
をさらに備える請求項６に記載の方法。
【請求項９】
前記システム制御割り込みソースは、１つのエンベデッドコントローラである
請求項８に記載の方法。
【請求項１０】
前記システムイベントについての１つの割り込みハンドラを決定する段階
をさらに備える請求項６に記載の方法。
【請求項１１】
前記システムイベントは１つのホットキー入力である
請求項６に記載の方法。
【請求項１２】
前記オペレーティングシステムに可視的な割り込みを生成すべく１つの定義ブロックを実行する段階
をさらに備える請求項１０に記載の方法。
【請求項１３】
１つの第１割り込みを生成する手段と、
前記第１割り込みに基づいて１つの第２割り込みを生成する手段と、
前記第２割り込みにサービスすべく１つのドライバを実行する手段と
を備える装置。
【請求項１４】
前記ドライバを記憶する手段
をさらに備える請求項１３に記載の装置。
【請求項１５】
１つの定義ブロックを記憶する手段
をさらに備える請求項１３に記載の装置。
【請求項１６】
１つの定義ブロックを取得する手段
をさらに備える請求項１３に記載の装置。
【請求項１７】
１つのドライバを実行する１つのプロセッサと、
前記プロセッサに結合された１つのバスと、
前記バスに結合され、１つのドライバを記憶する１つの第１メモリデバイスと、
前記バスに結合され、前記ドライバをトリガする１つの定義ブロックを記憶する１つの第２メモリデバイスと、
１つの入力デバイスと、
１つのネットワークインタフェースコントローラと
を備えるシステム。
【請求項１８】
前記入力デバイスから入力が受信された場合に、１つの第１割り込みを生成する１つのコントローラ
をさらに備える請求項１７に記載のシステム。
【請求項１９】
１つの割り込みを生成する１つの第２プロセッサ
をさらに備える請求項１７に記載のシステム。
【請求項２０】
実行された場合に、１つの機械に、
ファームウェアレベルでサービスされるべき１つのシステムイベントのための１つの第１割り込みを生成することと、
オペレーティングシステムレベルでサービスされるべく、１つの第２割り込みを前記ファームウェアレベルで生成することと
前記システムイベントに前記オペレーティングシステムレベルでサービスすることと
を含むオペレーションのセットを実行させる複数の命令
を備える機械可読メディア。
【請求項２１】
実行された場合に、１つの機械に、
１つのドライバを実行させることを含むオペレーションのセットを実行させるさらなる複数の命令
を備える請求項２０に記載の機械可読メディア。
【請求項２２】
１つの定義ブロックが前記ファームウェアレベルで前記第１割り込みを処理する
請求項２０に記載の機械可読メディア。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、割り込みハンドリングに関する。特に、典型的な実施形態は、オペレーティングシステムに可視的な割り込みを用いる割り込みハンドリングシステムに関する。
【背景技術】
【０００２】
典型的なコンピュータシステムにおいて、ストレージデバイス、プリンタ、及びヒューマンインプットデバイスのような多くのデバイスが同時に動作している。割り込みシステムは、プロセッサ時間及びリソースを効率的に利用するために使用される。プロセッサによって処理されるべき情報をデバイスが持っているか、コンピュータシステムにおいて１つのイベントが発生した場合に、１つの割り込み信号が生成される。プロセッサによって割り込み信号が受信された場合に、プロセッサは現在動作しているプログラムの実行を停止し、割り込みシグナルを生成したデバイス又はイベントにサービスを提供すべく割り込みハンドラが実行される。デバイス又はイベントにサービスが提供されると、プロセッサは割り込みされたプログラムの実行に戻る。
【０００３】
システム管理割り込み（ＳＭＩ）は、オペレーティングシステム（ＯＳ）に透過的な割り込みであり、コンピュータシステム内のいくつかのデバイス又はシステムイベントによって生成される。ＳＭＩにサービスすることは、ＳＭＩを生成したデバイス又はシステムイベントに対応する割り込みハンドラを実行する間にいくらかの遅延を生成し得る。これは、割り込みハンドラから戻ったときにオペレーティングシステム（ＯＳ）にエラーをもたらす場合がある。なぜなら、ＯＳは割り込みのサービスを知らないが、タイムログのギャップ及び同様の問題のような、ＣＰＵが割り込みハンドラを実行している間の、他のプログラムの処理における遅延によってもたらされたずれを検出するからである。
【０００４】
典型的なコンピュータシステムは、しばしば電力状態（例えば、デバイスに提供又はデバイスによって消費される電力のレベル）及びシステムに取り付けられたデバイスの設定を管理する。コンピュータシステム上で動作しているオペレーティングシステムは、電力状態及びコンピュータシステム内のデバイスの設定を管理するアドバンスド・ コンフィグレーション・パワー・インタフェース（ＡＣＰＩ） のようなインタフェースを使用する。ＡＣＰＩは、当該設定又は電力管理を実装するために必要な基本入出力システム（ＢＩＯＳ）及びメインボードハードウェアと連係する場合にオペレーティングシステムが利用するためのデータ構造及び方法のセットを提供する。
【図面の簡単な説明】
【０００５】
本発明の実施形態は、類似の参照番号が類似の構成要素を示す添付の図面の複数の図に、限定を目的としてではなく、例を目的として示される。この開示における”一”又は”１つの”実施形態への異なる参照は、必ずしも同一の実施形態である必要はなく、そのような参照は少なくとも１つを意味することに注意すべきである。
【０００６】
【図１】改良された割り込みハンドリングシステムを実装するコンピュータシステムの一実施形態の図である。
【０００７】
【図２】改良された割り込みハンドリングのための処理の一実施形態のフローチャートである。
【０００８】
【図３】割り込みハンドリングテーブル及びデスクリプションブロックの一実施形態の図である。
【０００９】
図１は、コンピュータシステムの一実施形態の図である。一実施形態において、コンピュータシステム１０１は、複数の命令を実行する中央処理装置（ＣＰＵ）１０３を備える。他の実施形態において、コンピュータシステム１０１は複数のプロセッサを備えてよい。ＣＰＵ１０３は１つのメインボード上に設けられるか、１つのメインボードに取り付けられてよい。複数のプロセッサを持つ一実施形態において、それぞれのプロセッサは、同一のメインボード上又は別個のメインボード上に備えられてよい。ＣＰＵ１０３は、メモリハブ１０５又は類似のデバイスと通信してよい。
【００１０】
一実施形態において、メモリハブ１０５は、ＣＰＵ１０３及びシステムメモリ１０９、入出力（Ｉ／Ｏ）ハブ１１１及びグラフィクスプロセッサ１０７のような類似のデバイスの間の通信リンクを提供する。一実施形態において、メモリハブ１０５は”ノースブリッジ”チップセット又は類似のデバイスであってよい。
【００１１】
一実施形態において、システムメモリ１０９はランダムアクセスメモリ（ＲＡＭ）又はモジュールのセットであってよい。一実施形態において、システムメモリ１０９はシンクロナスダイナミックランダムアクセスメモリ（ＳＤＲＡＭ）、ダブルデータレート（ＤＤＲ）ＲＡＭ、又は類似のメモリストレージデバイスであってよい。システムメモリ１０９は、コンピュータシステム１０１によって、アプリケーションデータ、設定データ、及び類似のデータを記憶するために使用されてよい。システムメモリ１０９は、コンピュータシステム１０１が電源を切ったときにデータを失う揮発性メモリであってよい。
【００１２】
一実施形態において、グラフィクスプロセッサ１０７のような他のデバイスはメモリハブ１０５に接続されてよい。グラフィクスプロセッサ１０７はメインボード上に直接設けられてよい。他の実施形態において、グラフィクスプロセッサ１０７は、相互接続又はポートを通じてメインボードに取り付けられる別個のボード上に設けられてよい。例えば、グラフィクスプロセッサ１０７は、アドバンスドグラフィクスポート（ＡＧＰ）スロット又は類似の接続を通じてメインボードに取り付けられている周辺カードに設けられてよい。グラフィクスカード又はグラフィクスプロセッサ１０７は、ディスプレイデバイス１２３に接続されてよい。一実施形態において、ディスプレイデバイス１２３は陰極線管（ＣＲＴ）装置、液晶表示装置（ＬＣＤ）、プラズマ装置又は類似のディスプレイデバイスであってよい。
【００１３】
一実施形態において、メモリハブ１０５はＩ／Ｏハブ１１１と通信してよい。Ｉ／Ｏハブは、Ｉ／Ｏデバイス及びストレージデバイス１２１、フラッシュメモリ１１５、エンベデッドコントローラ１１７、ネットワークデバイス１１３、及び同様のデバイスのような同種のデバイスのセットとの通信を提供する。一実施形態において、Ｉ／Ｏハブ１１１は”サウスブリッジ”チップセット又は類似のデバイスであってよい。他の実施形態において、メモリハブ１０５及びＩ／Ｏハブ１１１は単一のデバイスであってよい。
【００１４】
一実施形態において、アドバンスドプログラマブル割り込みコントローラ（ＡＰＩＣ）１２５はＩ／Ｏハブ１１１及びＣＰＵ１０３と通信してよい。ＡＰＩＣ１２５は、複数のＣＰＵからの及び複数のＣＰＵへの複数の割り込みを処理する１つのデバイスである。ＡＰＩＣ１２５は、割り込みの根源であり得る追加の複数のデバイスに接続されてよい。ＡＰＩＣ１２５は、これらの割り込み要求を、Ｉ／Ｏハブ１１１に又は直接的にＣＰＵ１０３に渡してよい。
【００１５】
一実施形態において、ストレージデバイス１２１は、固定ディスク、物理ドライブ、光ドライブ、磁気ドライブ、又は類似のデバイスのような、不揮発性ストレージデバイスである。ストレージデバイス１２１は、アプリケーションデータ、オペレーティングシステムデータ及び類似のシステムデータを記憶するために使用されてよい。一実施形態において、フラッシュメモリ１１５はシステム設定情報、ＢＩＯＳデータ、及び類似の情報を記憶してよい。フラッシュメモリはＥＥＰＲＯＭ、ＣＭＯＳのようなバッテリによりバックアップされたメモリデバイス、又は類似の不揮発性ストレージシステムであってよい。
【００１６】
一実施形態において、エンベデッドコントローラはＩ／Ｏハブ１１１に接続されてよい。エンベデッドコントローラ１１７は、コンピュータシステム１０１における複雑な低レベルオペレーションを実行するマイクロコントローラの一種である。一実施形態において、エンベデッドコントローラ１１７は、コンピュータシステム１０１と入力デバイス１１９との間のインタフェースを提供する入力デバイスコントローラとして機能してよい。典型的な一実施形態において、エンベデッドコントローラは、キーボードコントローラとして機能してよく、キーボードから入力として複数のスキャンコードを受け取ってよい。
【００１７】
一実施形態において、ネットワークデバイス１１３のような他の複数のデバイスは、Ｉ／Ｏハブ１１１と通信してよい。ネットワークデバイス１１３は、モデム、ネットワークカード、ワイヤレスデバイス、又は類似のデバイスであってよい。一実施形態において、ネットワークデバイス１１３はメインボードに組み込まれている。他の実施形態において、ネットワークデバイス１１３は、ペリフェラルカードインターコネクト（ＰＣＩ）スロット又は類似の相互接続を通じてメインボードに接続された周辺カードである。
【００１８】
図２は、改良された割り込みハンドリングのオペレーションのための処理の一実施形態のフローチャートである。一実施形態において、改良された割り込みハンドリングは、サービスされるべきシステムイベントが発生したときにトリガされる（ブロック２０１）。一実施形態において、システムイベントは、キーボード、マウス、又は類似の入力デバイスのようなヒューマンインプットデバイス（ＨＩＤ）からの入力の受信である。例えば、ユーザはキーボードを利用して１つの”ホットキー”又はホットキーのセットを入力する。一実施形態において、１つのホットキー又はホットキーのセットは、単一のキー入力又はキー入力のセットであってよい。複数のホットキーは、コンピュータシステムの特定の機能を開始するために使用され得る。例えば、いくつかのコンピュータシステムにおいて、コントロールキー（ＣＴＲＬ）、オルタネートキー（ＡＬＴ）、シフトキー（ＳＨＩＦＴ）、及びファンクション７キー（Ｆ７）の組み合わせは、ラップトップシステムにおいて、ディスプレイ出力を付属ディスプレイから外部ディスプレイに切り替えるために使用され得る。他の例のホットキーの組み合わせは、コンピュータシステムのためのサスペンド又はスタンバイ状態を開始するためのＣＴＲＬ＋ＡＬＴ＋ＳＨＩＦＴ＋Ｆ４、及びＰＣカードのようなデバイスのホットスワップ開始するためのＣＴＲＬ＋ＡＬＴ＋ＳＨＩＦＴ＋Ｆ３を含む。
【００１９】
典型的な一実施形態において、ユーザは、キーボードのような入力デバイス１１９上のＣＴＲＬ＋ＡＬＴ＋ＳＨＩＦＴ＋Ｆ７キーを押すことによって、ディスプレイ切り替えを開始する。キーボードは、１つのスキャンコード又はスキャンコードのセットとして解釈されるシグナルのセットをエンベデッドコントローラ１１７に送信する。１つのスキャンコードは、キーストローク又はキーストロークのデジタル符号化である。
【００２０】
一実施形態において、システムイベントが検出された後、検出又は生成デバイスによってシステム制御割り込み（ＳＣＩ）が生成される（ブロック２０３）。複数のＳＣＩは、オペレーティングシステムにシステムイベントを通知するために使用され得る。複数のＳＣＩはアクティブな、低い、共有可能なレベルの割り込みである。典型的な一実施形態において、エンベデッドコントローラ１１７が、キーボード１１９から受け取った１つのホットキーについて１つのスキャンコード又はスキャンコードのセットを検出した場合、エンベデッドコントローラ１１７は１つのＳＣＩを生成してよい。ＳＣＩはＩ／Ｏハブ１１１に送信されてよい。
【００２１】
一実施形態において、Ｉ／Ｏハブ１１１は１つのＳＣＩを検出し、メモリハブ１０５を通じてＣＰＵに送信され得る１つの割り込み要求（ＩＲＱ）を生成してよい（ブロック２０５）。一実施形態において、１５個の別個のＩＲＱ指定（例えば、０から１５）が存在し得る。１つの割り込みコントローラは、２以上のオペレーションモードをサポートし得る。第１モードは１５個のＩＲＱ指定をサポートしてよい。例えば、８２５９ＰＩＣモードでのＡＰＩＣ。第２モードは、２５５個のような、より多い数をサポートし得る。例えば、ＡＰＩＣは２５５個のＩＲＱ指定をサポートしてよい。典型的な一実施形態において、Ｉ／Ｏハブ１１１は、１つのＳＣＩをエンベデッドコントローラ１１７から受信してよく、ＳＣＩの送信元に基づいて１つのＩＲＱを生成してよい。例えば、キーボードが生成した複数のＳＣＩはＩＲＱ２に割り当てられ、１つのエンベデッドコントローラソースを含む１つのＳＣＩはＩＲＱ９に割り当てられてよい。
【００２２】
一実施形態において、ＣＰＵ１０３がＩＲＱを受信した場合に、１つの割り込みハンドリングテーブルが、受信ＩＲＱについての１つの割り込みハンドラを特定するために使用され得る（ブロック２０７）。一実施形態において、１つの割り込みデスクリプタテーブル（ＩＤＴ）は、ＩＲＱライン又は優先番号に関連する１つの第１割り込みハンドラの位置を指す。割り込みハンドラは、特定のタイプの割り込み、或いはキーボード又は他のデバイスのような特定の割り込みソースにサービスする１つのプログラムであってよい。
【００２３】
一実施形態において、ＳＣＩは複数のレベルトリガ割り込みであってよい。複数のレベルトリガ割り込みは、１つのＩＲＱを複数のデバイスで共有してよい。割り込みハンドラのチェーンは、サービスを要求している割り込みのタイプを特定するために使用されてよい。それぞれの割り込みハンドラは、そのソースタイプがサービスを必要としているか否かをチェックして、割り込みがクリアされるまでチェーン内の次の割り込みハンドラに制御を渡す。
【００２４】
図３は、割り込みハンドリングシステムの一実施形態の図である。典型的な割り込みハンドリングシステムにおいて、割り込みを受け取るＣＰＵは、ＩＤＴ３０１を用いて、受信するＩＲＱライン又は優先番号に対応する１つのポインタ３０５を見つける。ポインタ３０５は、第１割り込みハンドラ３０３を示してよい。１つのＩＲＱライン又は番号は、複数のデバイスによって使用されてよい。ライン又は番号を共有するそれぞれのメカニズムについての複数の割り込みハンドラは、互いにリンクされてよい。例えば、第１割り込みハンドラ３０３がデバイス又は割り込みのソースに対応していない場合、第２割り込みハンドラ３０７がコールされる。ＣＰＵは、リンクされたリスト又は割り込みハンドラのセットの中の第１割り込みハンドラで開始し、現在の割り込みハンドラが現在の割り込みタイプ又はソースにサービスしないことを判断した場合に、次の割り込みハンドラに進む。
【００２５】
一実施形態において、１つの割り込みハンドラが割り込み要求にサービスすると判明する。割り込みハンドラは、デバイス又は割り込みのソースに対応する定義ブロック３０９への１つのポインタを含んでよい（ブロック２０９）。この定義ブロック３０９は、データ及び制御メソッドの形で、ハードウェア実装及び設定の詳細に関する情報を含んでよい。制御メソッドは、デバイスの速度、サイズ、電力状態、及び類似の設定の詳細のような複数のセッティングをオペレーティングシステムが管理することを可能にするＡＣＰＩソース言語（ＡＳＬ）コードの中にあってよい。
【００２６】
典型的な一実施形態において、第２割り込みハンドラ３０７は、エンベデッドコントローラ１１７のためのデバイスドライバであってよい。エンベデッドコントローラ割り込みハンドラは、入力ソースを特定する。入力ソースに基づいて、定義ブロック３０９が利用されてよい。例えば、１つのホットキーが割り込みを生成した場合に、エンベデッドコントローラ割り込みハンドラは、キーボード入力、複数のホットキー、又は特定のホットキーを処理するための適切な定義ブロック３０９を特定する。定義ブロック３０９は、割り込み要求にサービスするためのデータ構造及びメソッドのセットを含んでよい。定義ブロック３０９は、ファームウェアレベルで実装されたソフトウェアであってよい。ここでファームウェアは、ＯＳの制御の範囲外の低レベルソフトウェアである。定義ブロック３０９によって割り込みにサービスすることは、他の割り込みを生成することを含んでよい（ブロック２１１）。典型的な一実施形態において、定義ブロック３０９の取得は、アドバンスド・ コンフィグレーション・パワー・インタフェース（ＡＣＰＩ）ドライバを利用する。定義ブロック３０９は部分的に、差別化システム定義テーブル（ＤＳＤＴ）、セカンダリシステムデスクリプションテーブル（ＳＳＤＴ）、又は類似の構造であってよい。
【００２７】
一実施形態において、メッセージシグナル割り込み（ＭＳＩ）、プロセッサ間割り込み（ＩＰＩ）、又は類似のＯＳに可視的な割り込みを用いて、定義ブロック３０９によって１つの割り込みが生成される。一実施形態において、定義ブロック３０９におけるＡＣＰＩソース言語（ＡＳＬ）コードは、ＯＳに可視的な割り込みを生成してよい。システム管理割り込み（ＳＭＩ）のようなＯＳに透過的な割り込みは、使用された場合にＯＳに課題をもたらす。ＳＭＩをサービスすることは、割り込みサービスルーチンを実行している間にいくらかの遅延を生み得る。これは、割り込みハンドラから戻ったときにエラーをひき起こす場合がある。なぜならＯＳは、ＳＭＩのサービスを知らないが、タイムログのギャップ及び同様の問題のような、割り込みサービスルーチンの実行における遅延によってもたらされるずれを検出するからである。
【００２８】
一実施形態において、１つのＭＳＩは、定義ブロック３０９による特定のメモリ領域への書き込みによってトリガされ得る。割り込みのタイプを識別するデータは、指定されたメモリアドレスに書き込まれる。ＭＳＩの使用はＯＳに可視であるという利点を持ち、ＭＳＩにサービスすることにおける遅延が一貫性問題を引き起こさない。他の実施形態において、プロセッサ間割り込み（ＩＰＩ）が生成されてよい。ＩＰＩはマルチプロセッサ環境において使用され得る。ＩＰＩは、プロセッサが他のプロセッサ又はプロセッサのセットに割り込みを送信することを可能にする。
【００２９】
典型的な一実施形態において、定義ブロック３０９は、ＭＳＩ又はＩＰＩが割り込みを引き起こすべく書き込むメモリマップされたアドレス及びシステムイベントデータが記憶される空間を定める。例えば、記憶されるデータはホットキーデータが集められたアドレスであってよい。ホットキー入力へのサービスでの使用のためのメモリ空間を定めるＡＣＰＩソース言語（ＡＳＬ）における典型的な実装は、以下であってよい。
OperationRegion(MSIS, SystemMemory, 0xFEC01000,0x8)
Field (MSIS, AnyAcc, Lock, Preserve)
{
Offset(0),  // Dynamic Values
MSIA, 32,    // Memory mapped address for MSI          
// delivery
IPIM, 32,   // Memory mapped address for IPI delivery
SCAN, 8   // Scan code for hot key
}
【００３０】
典型的な一実施形態において、ホットキー入力にサービスするためのコントロールメソッドのためのＡＳＬは、以下のように実装され得る。
Method(_Q52)    // Hot key event
{
if(LEqual(SCAN, 0x41)) {   // Test if scan code is
// CTRL+ALT+SHIFT+F7
// Additional codes may be covered as well
if(MSIM) {       // Test if MSI are used
Store(0x20,MSIA) // Make memory write at MSI address 
// to initiate the execution of an 
// 'interrupt type 20' handler
}
else {
Store(Data1,IPIM)   // Make memory write that causes
// IPI and execution of appropriate
// interrupt handler
}}}
【００３１】
一実施形態において、ＭＳＩ又はＩＰＩが生成された後、適切なドライバがＯＳによって決定され得る（ブロック２１３）。ドライバはその後、元のシステムイベントを処理することによって割り込みのサービスを完了してよい。本明細書で使用されたように、ドライバは、ＯＳレベルでコンピュータシステムコンポーネントを制御及び管理するためのソフトウェアであってよい。ＯＳレベルでのソフトウェアはＯＳによって管理される。例えば、ホットキーのためのデバイスドライバは、グラフィクスカード１０７に、付属のディスプレイデバイス１２３への出力をディセーブルし、外部のディスプレイデバイスへの出力をイネーブルするよう命令してよい。
【００３２】
一実施形態において、ＭＳＩ又はＩＰＩはエッジトリガされ、割り込みハンドリングテーブル内にそれ自身のエントリをそれぞれが持つので、改良された割り込みハンドリングシステムは、システムイベントへの改善された応答性を提供し得る。追加の機能を提供するドライバが更新又は新たにインストールされ得るので、コンピュータシステム１０１の機能はより容易に更新可能となり得る。例えばＳＭＩハンドリングを更新するための、ＢＩＯＳ又はファームウェアの更新は必要でなくなり得る。ＯＳに可視的な割り込み及びドライバの使用は、一般的なドライバ機能、及びファームウェア及びＢＩＯＳに依存しない機能の標準化の構築を可能にする。例えば、新たなホットキー機能又は組み合わせが、ホットキードライバの更新によって実装され得る。改良された割り込みハンドリングシステムは、ＳＭＩのようなＯＳに透過的な割り込みの使用が禁止又は制限されるコンピュータシステムにおいて使用され得る。
【００３３】
一実施形態において、改良された割り込みハンドリングシステムは、ソフトウェアに実装され、機械可読メディアに記憶又は伝送されてよい。本明細書で使用されたように、機械可読メディアは、固定ディスク、物理ディスク、光ディスク、ＣＤＲＯＭ、ＤＶＤ、フレキシブルディスク、磁気ディスク、ワイヤレスデバイス、赤外線デバイス、及び類似のストレージ及び伝送技術のような、データを記憶又は伝送することができるメディアである。
【００３４】
前述の明細書において、発明がその特定の実施形態を参照して説明された。しかしながら、添付の請求項に記載された発明の広範な意義及び範囲から逸脱することなく、種々の変形及び変更がそれらになされ得ることが明らかである。明細書及び図面は従って、限定的ではなく説明的な意味で評価されるべきである。
【図１】
2007516536.tif 000003
【図２】
2007516536.tif 000004
【図３】
2007516536.tif 000005
【国際調査報告】
2007516536.tif 000006
2007516536.tif 000007
2007516536.tif 000008