(57)【特許請求の範囲】
【請求項１】
コンピュータシステムでインタラプトを処理する方法であって、
該コンピュータシステムは、
入力／出力回路と、
ＣＰＵと、
第１のコンピュータプログラム命令と、オペレーティングシステムとは別個に動作する第２のコンピュータプログラム命令とを格納するメモリと、
を有し、
当該方法は、
前記入力／出力回路が、インタラプトを受信するステップと、
前記ＣＰＵが前記第１のコンピュータプログラム命令を実行して、前記インタラプトが選択されたインタラプトであるか否かを確認するステップと、
前記インタラプトが選択されたインタラプトであった場合に、前記ＣＰＵが前記第２のコンピュータプログラム命令を実行して、前記コンピュータシステムのオペレーティングシステムを含まないインタラプト処理を実行するステップと、
を有し、
前記インタラプト処理を実行するステップは、
前記ＣＰＵが、前記コンピュータシステムから読み取ったレートカウンタに基づき前記コンピュータシステムが輻輳しているか否かを判定するステップと、
前記ＣＰＵが、隣接するコンピュータシステムから受信したフェアネスフレームに基づき、該隣接するコンピュータシステムが輻輳しているか否かを判定するステップと、
前記ＣＰＵが、下流のコンピュータシステムが輻輳しているか否かを判定し、輻輳している場合に輻輳に対するホップ数を決定するステップと、
前記ＣＰＵが、前記コンピュータシステムが輻輳しているか否か、前記隣接するコンピュータシステムが輻輳しているか否か、及び前記ホップ数に基づき、前記コンピュータシステムが追加できるクラスＣトラフィックの量を決定するステップと、
を有する、
ことを特徴とする方法。
【請求項２】
前記選択されたインタラプトが、レジリエントパケットリングプロトコルクラスＣフェアネストラフィックインタラプトである
ことを特徴とする請求項１記載の方法。
【請求項３】
前記入力／出力回路により、選択されたインタラプトが、周期的に受信される
ことを特徴とする請求項２記載の方法。
【請求項４】
前記入力／出力回路により、前記選択されたインタラプトが、100μｓの周期で受信される
ことを特徴とする請求項３記載の方法。
【請求項５】
前記メモリは、前記オペレーティングシステムによりインタラプトを処理する第３のコンピュータプログラム命令を更に格納し、
前記インタラプトが選択されたインタラプトでなかった場合に、前記ＣＰＵが前記第３のコンピュータプログラム命令を実行して、前記コンピュータのオペレーティングシステムを用いてインタラプト処理を実行するステップ、
を更に有することを特徴とする請求項１記載の方法。
【請求項６】
コンピュータシステムであって、
コンピュータプログラム命令を実行するプロセッサと、
インタラプト信号を受ける回路と、
前記プロセッサで実行可能なコンピュータプログラム命令を格納するメモリと、
を有し、
前記メモリに格納された前記プログラム命令は、
当該コンピュータシステムで受信されたインタラプト信号が選択されたインタラプトに対応するか否かを確認するステップと、
前記インタラプトが選択されたインタラプトであった場合に、当該コンピュータシステムのオペレーティングシステムを含まないインタラプト処理を実行するステップと、
をプロセッサに実行させ、
前記インタラプト処理を実行するステップは、
前記ＣＰＵが、前記コンピュータシステムから読み取ったレートカウンタに基づき前記コンピュータシステムが輻輳しているか否かを判定するステップと、
前記ＣＰＵが、隣接するコンピュータシステムから受信したフェアネスフレームに基づき、該隣接するコンピュータシステムが輻輳しているか否かを判定するステップと、
前記ＣＰＵが、下流のコンピュータシステムが輻輳しているか否かを判定し、輻輳している場合に輻輳に対するホップ数を決定するステップと、
前記ＣＰＵが、前記コンピュータシステムが輻輳しているか否か、前記隣接するコンピュータシステムが輻輳しているか否か、及び前記ホップ数に基づき、前記コンピュータシステムが追加できるクラスＣトラフィックの量を決定するステップと、
を有する、
ことを特徴とするコンピュータシステム。
【請求項７】
前記選択されたインタラプトが、レジリエントパケットリングプロトコルクラスＣフェアネストラフィックインタラプトである
ことを特徴とする請求項６記載のコンピュータシステム。
【請求項８】
選択されたインタラプトが、周期的に受信される
ことを特徴とする請求項７記載のコンピュータシステム。
【請求項９】
前記選択されたインタラプトが、100μｓの周期で受信される
ことを特徴とする請求項８記載のコンピュータシステム。
【請求項１０】
前記インタラプトが選択されたインタラプトでなかった場合に、前記コンピュータのオペレーティングシステムを用いてインタラプト処理を実行するステップを更に有する
ことを特徴とする請求項６記載のコンピュータシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はオペレーティングシステム外の選択されたインタラプトをサービスすることで100μｓRPRインタラプト及び同様なインタラプトを処理することに関連する。
【背景技術】
【０００２】
レジリエントパケットリング（RPR）−IEEE規格802.17で規定される−は、共有パケットリングでのデータトラフィックの最適な伝送用に設計された規格である。これはソネット（SONET）／SDHネットワークで見られる弾力性をもたらすように設計されるが（50msプロテクション）、回路指向接続を設定せずに、パケットベースの伝送を行う。これはパケットベースサービスの帯域利用効率を増やすためである。
【０００３】
RPRはリングレットと呼ばれる逆向きに巡るリングの概念に基づく。これらのリングレットは、ノードでRPRステーションを形成することで設定され、ノードではトラフィックはフロー毎に分岐される（ドロップされる）（フローはデータトラフィックの進入及び進出である。）。ステーション間でデータを伝送するのに使用される各リングセグメントは、スパン（span）と言及される。RPRはMAC（メディアアクセスコントロールプロトコル）メッセージを用いてトラフィックを指示し、そのメッセージはリングレットに沿う双方向に伝搬する。公平性アルゴリズムを用いて、輻輳や不具合のあるスパンを避けながら、ノードはそれらの間で帯域について交渉する。不良スパンを避けることは、「ステアリング(steering)」及び「ラッピング(wrapping)」として知られる２つの技術の１つを用いて達成される。ステアリングでは、ノード又はスパンが壊れていた場合に、全てのノードはトポロジ変化について通知を受け、ノードは自身のトラフィックをルーティングし直す。ラッピングでは、その破壊に先立つ最終ノードでトラフィックがループバックされ、宛先ステーションへルーティングされる。
【０００４】
リング上の全てのトラフィックには或るサービスのクラス（クラスオブサービス（CoS:  Class  of  Service））が割り当てられ、規格は３つのクラスを規定している。クラスＡ（又は高優先度）トラフィックは純粋なCIR(コミッティドインフォメーションレート)であり、音声及び映像のような、低レイテンシ及びジッタを要求するアプリケーションをサポートするように設計される。クラスＢ（又は中程度の優先度）トラフィックはCIR及びEIR（余剰情報レート（フェアネスキューイングに委ねられる））双方の混合である。クラスＣ（又は低優先度）はベストエフォートトラフィックであり、利用可能な帯域なら何でも利用する。これは主にインターネットアクセストラフィックをサポートするのに使用される。
【０００５】
RPRプロトコルは100マイクロ秒（μｓ）毎と同程度に多くの頻度でクラスＣトラフィックフェアネスステートマシンを実行させる必要がある。これをソフトウエアで行うには、CPUは100μｓ毎に割り込みを受けなければならない。そのような高いレートで割り込みを処理することはソフトウエアでは困難である。インターネットサービスルーチン(ISR)を呼び出すためのレイテンシ（待ち時間）及びオペレーティングシステムオーバーヘッドは、そのように頻繁な間隔で割り込みを信頼性高く行うことを困難にする。かくて、100μｓインタラプト及び同様なインタラプトを信頼性高く処理することに対するこのような制限を克服する技術が必要とされている。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明の課題は、100μｓインタラプト及び同様なインタラプトを信頼性高く処理することに対するこのような制限を克服する技術に対する必要性に応じることである。
【課題を解決するための手段】
【０００７】
本発明の一形態では、コンピュータシステムでインタラプトを処理する方法は、コンピュータシステムで前記インタラプトを受信するステップと、前記インタラプトが選択されたインタラプトであるか否かを確認するステップと、前記インタラプトが選択されたインタラプトであった場合に、前記コンピュータシステムのオペレーティングシステムを含まないインタラプト処理を実行するステップとを有する。選択されたインタラプトは、レジリエントパケットリングプロトコルクラスＣフェアネストラフィックインタラプトでもよい。選択されたインタラプトは周期的に受信されてもよい。選択されたインタラプトは100μｓの周期で受信されてもよい。本方法はインタラプトが選択されたインタラプトでなかった場合に、前記コンピュータのオペレーティングシステムを用いてインタラプト処理を実行するステップを更に有してもよい。
【発明を実施するための最良の形態】
【０００８】
本発明は、オペレーティングシステム外の選択されたインタラプトをまかなうことで100μｓRPRインタラプト及び同様なインタラプトを処理する機能をもたらす。これはインタラプトをまかなうことに関連するオーバーヘッド及び待ち時間を劇的に減らす。CPUが割り込みを受ける都度、CPUはインタラプトベクトルにジャンプし、それはインタラプトのソースを確認するオペレーティングシステムインタラプトサービスルーチンラッパを呼び出す。ラッパはプロセッサの状況（コンテキスト）を保存し、その後にオペレーティングシステム割り込み処理ルーチンを呼び出す。本発明はオペレーティングシステムオーバーヘッドを排除するためにオペレーティングシステム割り込み処理ルーチンをバイパスする。選択された割り込みの１つが継続中であるか否かが確認される。継続中であったならば、オペレーティングシステムに入らずに直接的に関連するISRを呼び出す。継続中でなかったならば、オペレーティングシステムISRに入り、他のタイプのインタラプトをサービスする。これは最少のオーバーヘッドと共に選択されたインタラプトをサービスすることを可能にしつつ、如何なる修正もなしに他のタイプのインタラプトをサービスすることを依然として確保する。
【実施例１】
【０００９】
以下、本発明の好適実施例が添付図面を参照しながら説明される。
【００１０】
本発明は高頻度で（毎100μｓで）生じるようなオペレーティングシステム外の選択された割り込みを処理する。ＯＳ外の割り込みを処理することで、ＯＳインタラプトハンドラに導入される待ち時間（レイテンシ）及びオーバーヘッドは避けられる。CPUが割り込みを受けると、それは先ず割り込みベクトルにジャンプする。100μｓインタラプト（又は他の選択されたインタラプト）が継続中であるか否かが確認される。そうであればその割り込みはOS外で処理される。そうでなければOSインタラプトハンドラが通常的に他の割り込みを処理するために使用される。
【００１１】
図１にはRPRリング構造100の具体例が示される。RPRは単方向の逆向きに巡るリングレットを有するリング構造を利用する。各リングレットは同一方向のデータフローでリンクを形成する。リングレットは図１ではリングレット0-102及びリングレット1-104として特定されている。リンクとリングレットの関係はリンク又はステーションの状態における変化によっては変わらない。ステーション106A-Nのようなリング上のステーションは、IEEE規格802-2002で指定されるようなIEEE802  48ビットMACアドレスにより識別される。リング上の全てのリンクは同一データレートで動作するが、それらは異なる遅延特性を示してもよい。隣接する基地局で挟まれるリングの部分は区間又はスパン(span)と呼ばれる。スパンは対向方向に伝搬する単一リンク複数で構成される。ステーションＸのトラフィックが参照されるリングレットでステーションＹの受信トラフィックになるならば、ステーションＹはリングレット0-102/1でステーションＸの下流側の隣にあると呼ばれる。かくてステーションＳ５はリングレット0-102ステーションＳ４の下流側の隣にあると呼ばれ；同様にステーションＳ２はリングレット1-104でステーションＳ３の下流隣にあると呼ばれる。ステーションＹのトラフィックが参照されるリングレットでステーションＸの受信トラフィックになるならば、ステーションＹはリングレット0/1-102,104でステーションＸの上流隣にあると呼ばれる。かくてステーションＳ４はリングレット0-102ステーションＳ５の上流隣にあると呼ばれ；同様にステーションＳ３はリングレット1-104でステーションＳ２の上流隣にあると呼ばれる。
【００１２】
図２にはRPRリング構造100中のステーション例200が示されている。ステーション200は１つのクライアントエンティティ202、１つのMACエンティティ204、及び２つのPHYエンティティ206，208を含む。各PHYエンティティ206,208は隣接するステーションと共有するスパンに関連する。MACエンティティ204は１つのMAC制御エンティティ210、リングレット選択エンティティ212、及び２つのデータパスエンティティ214,216を含む（１つのデータパスがリングレット各々に関連する。）。リングレット0-102で送信を行い及びリングレット1-104で受信を行うPHY208は、イースト（東）PHY208として識別される。リングレット1-104で送信を行い及びリングレット0-102で受信を行うPHY206は、ウエスト（西）PHY206として識別される。リングレット0-102のデータパスはウエストPHY206からフレームを受信し、イーストPHY208にフレームを送信又は再送信する。リングレット104のデータパスはイーストPHY208からフレームを受信し、ウエストPHY206にフレームを送信又は再送信する。
【００１３】
オペレーティングシステム（OS）オーバーヘッドは、非常に速いレートで（マイクロ秒の周期で）生成されるインタラプトを処理することを極めて困難にする。例えば、RPRプロトコルは、100マイクロ秒（μｓ）と同程度に頻繁に動作するためにクラスＣフェアネストラフィックステートマシーンを要する。ハードウエアの複雑さを避けるため、これはソフトウエアで実行されなければならず、ＣＰＵはフェアネストラフィックステートマシーンを走らせるハードウエアにより100μｓ毎に割り込みを受ける。ＯＳにより提供されるサービスがこのインタラプトを処理するのに使用されるならば、そのーバーヘッドは100μｓの大部分の時間を費やしてしまう。これが割り込みの逸失、割り込み処理の遅延（待ち時間）及び割り込みオーバーヘッドＣＰＵ時間ロスを引き起こす。
【００１４】
本発明はオペレーティングシステム外で高頻度に生じる（例えば毎100μｓのような）割り込みを処理することでこの問題を克服する。ＯＳ外の割り込みを処理することで、ＯＳインタラプトハンドラに導入されるレイテンシ及びオーバーヘッドの全てが避けられる。図３にはインタラプトハンドリングプロセス３００の一例が示されている。プロセス３００はステップ３０２から始まり、インタラプトが生じる。一般にこのインタラプトはハードウエアで生成され、インタラプト信号により示される。例えば100μｓＲＰＲインタラプトは典型的にはハードウエアタイマにより生成される。CPUハードウエアはインタラプト信号を受信し、ハードウエアで何らかの応答を及びソフトウエアで何らかの応答を実行する。ステップ３０４では、CPUの回路は他の如何なるインタラプトに対する応答をもディセーブルにすることで、インタラプト信号の受信に応答する。それでもインタラプト信号は受信及び格納されるが、そのような信号の応答はディセーブルされる。
【００１５】
ステップ３０６ではCPUハードウエアはCPUレジスタの内容のようなCPU状態が割り込み処理中に保存されるようにする。典型的にはCPUレジスタはCPUスタックに格納されているが、他の格納場所（ストレージロケーション）が使用されてもよい。ステップ３０８では、受信したインタラプトが検査され、それが100μｓインタラプト（又は他の選択されたインタラプト）であるか否かが確認される。インタラプトが100μｓインタラプト（又は他の選択されたインタラプト）であったならば、本プロセスはステップ３１０に進み、100μｓインタラプト（又は他の選択されたインタラプト）のサービスルーチンが実行される。100μｓインタラプト（又は他の選択されたインタラプト）サービスルーチンは、そのオペレーティングシステムの一部ではないプログラミングコードを含み、そのコードはオペレーティングシステムとは別個に動作する。特に、100μｓインタラプト（又は他の選択されたインタラプト）サービスルーチンは、100μｓインタラプト（又は他の選択されたインタラプト）のサービスを実行するために、如何なるオペレーティングシステムリソースも利用できない。これは、100μｓインタラプト（又は他の選択されたインタラプト）が要求された応答時間内で100μｓインタラプト（又は他の選択されたインタラプト）を信頼性高く処理するよう設計されることを可能にする。
【００１６】
ステップ３０８にて、受信されたインタラプトが100μｓインタラプト（又は他の選択されたインタラプト）でないように確認された場合には、プロセスはステップ３１２に進み、オペレーティングシステム割り込みハンドラは周知のようにその割り込みに応答する。
【００１７】
ステップ３１０，３１２の何れが適用されたとしてもそれらの完了後に、プロセスはステップ３１４に続き、CPUのレジスタは戻される。典型的には、これは、スタックからCPUレジスタエントリをポッピングすることで、又はそれらを格納するメモリが何であれそのメモリからCPUレジスタエントリを読み取ることでなされる。CPUレジスタの復元により、インタラプトが受信された以前の動作状態にCPUは戻される。ステップ３１６では、インタラプト回路がイネーブルされ、将来受信されるかもしれない何らかのインタラプト及び／又は何らかのペンディングインタラプトのようなインタラプトに再び応答する。
【００１８】
図４にはRPRシステムで100μｓインタラプトを処理するインタラプトサービスルーチン４００の具体例が示されている。これは一例に過ぎず、RPRシステムで100μｓインタラプトを処理するために他のプロセスが使用されてもよい。更に、本発明は他の選択されたインタラプトにも適用可能であり、インタラプトサービスルーチンはRPRシステムで規定される物とは異なる他の機能を実行してもよい。本発明は選択されるインタラプト及びインタラプトサービスルーチン全ての如何なるものをも想定している。
【００１９】
図４に示される例では、RPRプロトコルは、RPRリング上の様々なRPRステーションがフェアリングアクセス(fair  ring  access)をフェアネスエリジブル（クラスＣ／ベストエフォート）トラフィックに与えることを保証する。これを達成するため、RPR規格はフェアネス条項(Fairness  Clause)、及びその条項に関連する様々なフェアネス状態マシン  を規定している。フェアネス状態マシンは、リング上のフェアネスエリジブルトラフィックの挿入を調整するレートに関し、RPRステーション毎に周期的に動作する。622Mbps（>=STS-12）より広い帯域のリングについて、フェアネス関連状態マシンは100μｓ毎につき一度動作する必要がある。その結果、図示のインタラプトサービスルーチン400はフェアネス関連状態マシンを走らせるため100μｓ毎に動作する。ルーチン４００はステップ４０２から始まり、レートカウンタがハードウエアから読み取られる。これは、ローカルステーションがリングにどれほど多くのトラフィックを追加するかを、及びそのステーションを介してどれほど多くのトラフィックが伝送されるかを決定するために行われる。送信されるのを待機しているバッファ内のパケットについて遅延閾値を超えたか否かを判定するためにも使用される。
【００２０】
ステップ４０４ではローカルステーションが輻輳しているか否かが判定される。第１ステップで読み取られたレートカウンタからの情報は、そのローカルステーションが現在輻輳に遭遇しているか否かを算出するのに使用される。ステップ４０６では隣接するステーションから受信したフェアネスフレームが処理される。隣接するステーションはそれらのローカルなフェアトラフィックレートを示すためにフェアネスプロトコルフレームを周期的に（４００μｓ毎に）送信する。ステップ４０８では、下流（ダウンストリームの）ステーションが混んでいるか否かが確認され、混んでいたならば、その輻輳に対するホップ数が決定される。受信したフェアネスフレームからの情報は、隣接するステーションが輻輳を経験しているか否かを判別し、輻輳ドメインのサイズを決定するのに使用される。これは、パケットがその輻輳領域のヘッドに到達するまでに、どれほど多くのホップでパケットが伝送するかを決定する。
【００２１】
ステップ４１０では、レート調整状態マシンが許容されるレートを設定するために呼び出される。ステップ４０２−４０８で得られた情報を用いて、レート調整ステートマシンが呼び出され、輻輳状態で許容されるレートを算出する。これは、ローカルステーションがどれほど多くのクラスＣトラフィックを追加できるかを決める。ステップ４１２では新たに許容されたレートについてハードウエアが準備される。新たな輻輳状態の許容レートはそのハードウエアでプログラムされ、リングに加えられるクラスＣトラフィック量を監視する。ステップ４１４ではフェアネスフレームが隣接するステーションに送られる。ローカルステーションは４００μｓ毎に隣接するステーションにフェアネスフレームを送る必要がある。これらのフレームはローカルステーションで見受けられるようなフェアレート情報を運ぶ。
【００２２】
図５には、本発明が使用されてもよい、ＲＰＲサービスユニットに見られるようなコンピュータシステム例５００のブロック図が示されている。コンピュータシステム５００は典型的には、パーソナルコンピュータ、ワークステーション、サーバーシステム及びミニコンピュータ又はメインフレームコンピュータのようなプログラムされた汎用コンピュータである。コンピュータシステム５００はプロセッサ(CPU)５０２、入力／出力回路５０４、ネットワークアダプタ５０６及びメモリ５０８を含む。CPU502は本発明の機能を実行するためにプログラム命令を実行する。典型的にはCPU502はインテルペンティアム（登録商標）のようなマイクロプロセッサであるが、ミニコンピュータやメインフレームコンピュータプロセッサでもよい。図５に示される一例では、コンピュータシステム５００は単独のプロセッサコンピュータシステムであるが、唯１つのプロセッサ、シングルスレッドコンピューティングを行うシステムにおける実施例に加えて、本発明は1つ又はそれ以上のシステムにおける実施例を想定しており、その実施例はマルチプロセッサ、マルチタスキング、マルチプロセス、マルチスレッドコンピューティング、分散コンピューティング及び／又はネットワークコンピューティングを用意する。同様に本発明は分散された実施例を利用する例をも想定しており、その実施例ではコンピュータシステム５００は複数のネットワーク化されたコンピュータシステムで実行され、単独のプロセッサコンピュータシステムで、マルチプロセッサコンピュータシステムで、又はそれらの組み合わせであってもよい。
【００２３】
入力／出力回路５０４はコンピュータシステム５００にデータを入力する機能又はコンピュータシステム５００からデータを出力する機能をもたらす。例えば、入力な／出力回路は、キーボード、マウス、タッチパッド、トラックボール、スキャナ等のような入力装置、ビデオアダプタ、モニタ、プリンタ等のような出力装置及びモデム等のような入力／出力装置を含んでよい。ネットワークアダプタ５０６はコンピュータシステム５００とネットワーク５１０とのインターフェースをとる。コンピュータシステム５００がRPRサービスユニットに含まれている場合には、ネットワーク510はRPRネットワークである。しかしながらネットワーク510は、イーサーネット、トークンリング、インターネット又はプライベート若しくはプロプリエタリLAN/WANのようなローカルエリアネットワーク（LAN）又は広域ネットワーク（WAN）等の如何なる標準的なものでもよい。
【００２４】
メモリ５０８は、CPU502により実行されるプログラム命令を、CPU502により使用され処理されるデータを格納し、本発明の機能を実行する。メモリ５０８は電子メモリ装置（ランダムアクセスメモリ（RAM）、リードオンリメモリ（ROM）、プログラマブルリードオンリメモリ（PROM）、電気的に消去可能プログラム可能リードオンリメモリ（EEPROM）、フラッシュメモリ等）及び電気機械メモリ（マグネティックディスクドライブ、テープドライブ、光ディスクドライブ等）を含んでよく、メモリは、一体化されたドライブエレクトロニクス（IDE）インターフェース又はその変形物若しくは機能強化物（エンハンストIDE(EIDE)又はウルトラダイレクトメモリアクセス（UDMA）等）、スモールコンピュータシステムインターフェース（SCSI）ベースのインターフェース又はその変形物若しくは機能強化物（高速SCSI、ワイドSCSI、高速及びワイドSCSI等）、ファイバチャネル調整ループ（FC-AL）インターフェース等を使用してもよい。
【００２５】
メモリ５０８は処理ルーチン５１２、インタラプトベクトルルーチン５１４、オン・オペレーティングシステムインタラプトサービスルーチン５１６、オペレーティングシステム５１８及びオペレーティングシステムインタラプトハンドラ５２０を含む。インタラプトベクトルルーチンは、受信したインタラプトを検査し、それらが100μｓインタラプト（又は他の選択されたインタラプト）であるか否かを確認する。非オペレーシングシステムインタラプトサービスルーチン５１６は、100μｓインタラプト（又は他の選択されたインタラプト）に応答を与えるコードである。オペレーティングシステム５１８は、オペレーティングシステムインタラプトハンドラ５２０を含むシステム機能全体を提供する。オペレーティングシステムインタラプトハンドラ５２０は100μｓインタラプト（又は他の選択されたインタラプト）以外の割り込みに対する応答を与える。処理ルーチン５１２は他のシステム機能を与える。
【００２６】
以上本発明の特定の実施例が説明されてきたが、説明された例と等価な他の実施例も存在することは当業者に理解されるであろう。例えば、或る電子装置では、有利なことにＥＭＩ放出を減らすために２相より多くのクロック（例えば、４相又はそれより多くてよい、更にはアクティブなクロック信号につき異なる相でさえよい）を用意する。有利なことに或る装置では、複数の位相信号を用意することが、クロック信号以外の信号に適用されてもよい。同様に、或る装置では、位相外れ信号を隣接する又は隣り合う導体に互いにルーティングすることが有利かもしれない。更に、本技法は、シングルボード、複数のプラグインを有するシェルフ、複数接続されたシェルフ等のような様々な電子装置に広く適用されてよい。
【００２７】
従って本発明は具体的な実施例によっては限定されず、添付の特許請求の範囲によってのみ規定されるべきことが理解されるべきである。
【００２８】
以下、本発明により教示される手段が例示的に列挙される。
【００２９】
（付記１）
コンピュータシステムでインタラプトを受信するステップと、
前記インタラプトが選択されたインタラプトであるか否かを確認するステップと、
前記インタラプトが選択されたインタラプトであった場合に、前記コンピュータシステムのオペレーティングシステムを含まないインタラプト処理を実行するステップと、
を有することを特徴とするコンピュータシステムでインタラプトを処理する方法。
【００３０】
（付記２）
前記選択されたインタラプトが、レジリエントパケットリングプロトコルクラスＣフェアネストラフィックインタラプトである
ことを特徴とする付記１記載の方法。
【００３１】
（付記３）
選択されたインタラプトが、周期的に受信される
ことを特徴とする請求項２記載の方法。
【００３２】
（付記４）
前記選択されたインタラプトが、100μｓの周期で受信される
ことを特徴とする付記３記載の方法。
【００３３】
（付記５）
前記インタラプトが選択されたインタラプトでなかった場合に、前記コンピュータのオペレーティングシステムを用いてインタラプト処理を実行するステップを更に有する
ことを特徴とする付記１記載の方法。
【００３４】
（付記６）
コンピュータシステムであって、
コンピュータプログラム命令を実行するプロセッサと、
インタラプト信号を受ける回路と、
前記プロセッサで実行可能なコンピュータプログラム命令を格納するメモリと、
を有し、前記メモリに格納された前記プログラム命令は、
当該コンピュータシステムで受信されたインタラプト信号が選択されたインタラプトに対応するか否かを確認するステップと、
前記インタラプトが選択されたインタラプトであった場合に、当該コンピュータシステムのオペレーティングシステムを含まないインタラプト処理を実行するステップと、
をプロセッサに実行させることを特徴とするコンピュータシステム。
【００３５】
（付記７）
前記選択されたインタラプトが、レジリエントパケットリングプロトコルクラスＣフェアネストラフィックインタラプトである
ことを特徴とする付記６記載のコンピュータシステム。
【００３６】
（付記８）
選択されたインタラプトが、周期的に受信される
ことを特徴とする請求項７記載のコンピュータシステム。
【００３７】
（付記９）
前記選択されたインタラプトが、100μｓの周期で受信される
ことを特徴とする付記８記載のコンピュータシステム。
【００３８】
（付記１０）
前記インタラプトが選択されたインタラプトでなかった場合に、前記コンピュータのオペレーティングシステムを用いてインタラプト処理を実行するステップを更に有する
ことを特徴とする付記６記載のコンピュータシステム。
【００３９】
（付記１１）
コンピュータシステムでインタラプトを処理するためのコンピュータプログラムプロダクトであって、
コンピュータ読み取り可能な媒体と、
前記コンピュータ読み取り可能な媒体に格納されたコンピュータプログラム命令と、
を有し、前記コンピュータプログラム命令は、
前記コンピュータシステムで受信されたインタラプト信号が選択されたインタラプトであるか否かを確認するステップと、
前記インタラプトが選択されたインタラプトであった場合に、当該コンピュータシステムのオペレーティングシステムを含まないインタラプト処理を実行するステップと、
を前記コンピュータシステムに実行させることを特徴とするコンピュータプログラムプロダクト。
【００４０】
（付記１２）
前記選択されたインタラプトが、レジリエントパケットリングプロトコルクラスＣフェアネストラフィックインタラプトである
ことを特徴とする付記１１記載のコンピュータプログラムプロダクト。
【００４１】
（付記１３）
選択されたインタラプトが、周期的に受信される
ことを特徴とする請求項１２記載のコンピュータプログラムプロダクト。
【００４２】
（付記１４）
前記選択されたインタラプトが、100μｓの周期で受信される
ことを特徴とする付記１３記載のコンピュータプログラムプロダクト。
【００４３】
（付記１５）
前記インタラプトが選択されたインタラプトでなかった場合に、前記コンピュータのオペレーティングシステムを用いてインタラプト処理を実行するステップを更に有する
ことを特徴とする付記１１記載のコンピュータプログラムプロダクト。
【図面の簡単な説明】
【００４４】
【図１】RPRリング構造例のブロック図を示す。
【図２】図１に示されるRPRリング構造中のステーション例に関するブロック図を示す。
【図３】本発明による割り込み処理プロセス例のフローチャートを示す。
【図４】図３に示される割り込みサービスルーチン例のフローチャートを示す。
【図５】本発明が利用されてもよいRPRサービスユニット内にあるコンピュータシステムのブロック図を示す。
【符号の説明】
【００４５】
１０２，１０４  リングレット
１０６  ステーション
２００  ステーション
２０２  ＭＡＣクライアント
２０４  ＭＡＣ
２０６，２０８  ＰＨＹ
２１０  制御部
２１２  リングレット選択部
２１４，２１６  リングレットデータパス部
５００  コンピュータシステム
５０２  ＣＰＵ
５０４  入力／出力
５０６  ネットワークアダプタ
５０８  メモリ
５１０  ネットワーク
５１２  処理ルーチン
５１４  インタラプトベクトルルーチン
５１６  非オペレーシングシステムインタラプトサービスルーチン
５１８  オペレーシングシステム
５２０  オペレーティングシステムインタラプトハンドラ
【図１】
0004709728.tif 000002
【図２】
0004709728.tif 000003
【図３】
0004709728.tif 000004
【図４】
0004709728.tif 000005
【図５】
0004709728.tif 000006