(57)【要約】【課題】  サーバ内のブロック化された作業を安全に中断する方法を作成すること【解決手段】  レジストリを作成するステップと、レジストリに潜在的ブロック化イベントを登録するステップと、潜在的ブロック化イベントを実行するステップと、潜在的ブロック化イベントが応答していないことを判断するステップと、そのブロック化イベントに対応するレジストリ・エントリにアクセスするステップと、そのブロック化イベントに対応するレジストリ・エントリに示される是正措置をとるステップとを含む、サーバ内のブロック化された作業を安全に中断する方法である。【選択図】      図１
2007157125.tif 000002
【特許請求の範囲】
【請求項１】
サーバ内のブロック化された処理を安全に中断する方法であって、
レジストリを作成するステップと、
前記レジストリに潜在的ブロック化イベントを登録するステップと、
前記潜在的ブロック化イベントを実行するステップと、
前記潜在的ブロック化イベントが応答していないことを判定するステップと、
前記潜在的ブロック化イベントに対応するレジストリ・エントリにアクセスするステップと、
前記潜在的ブロック化イベントに対応する前記レジストリ・エントリによって示される是正処理を実行するステップと
を含む方法。
【請求項２】
前記潜在的ブロック化イベントを前記レジストリから除去するステップをさらに含む、請求項１に記載の方法。
【請求項３】
前記潜在的ブロック化イベントが応答していないことを判定するためにタイマーが用いられる、請求項１に記載の方法。
【請求項４】
前記是正処理が、前記潜在的ブロック化イベントによって予約されたシステム・リソースをリリースするステップを含む、請求項１に記載の方法。
【請求項５】
前記レジストリ・エントリが、ブロック化イベントの識別子と、前記潜在的ブロック化イベントのエントリを登録したプロセスへの参照とを含む、請求項１に記載の方法。
【請求項６】
サーバ内のブロック化された処理を安全に中断するためのシステムであって、
レジストリを作成するための手段と、
前記レジストリに潜在的ブロック化イベントを登録するための手段と、
前記潜在的ブロック化イベントを実行するための手段と、
前記潜在的ブロック化イベントが応答していないことを判定するための手段と、
前記潜在的ブロック化イベントに対応するレジストリ・エントリにアクセスするための手段と、
前記潜在的ブロック化イベントに対応するレジストリ・エントリによって示される是正処理を実行するための手段と、
を含むシステム。
【請求項７】
前記潜在的ブロック化イベントを前記レジストリから除去する手段をさらに含む、請求項６に記載のシステム。
【請求項８】
前記潜在的ブロック化イベントが応答していないことを判定するためにタイマーが用いられる、請求項６に記載のシステム。
【請求項９】
前記是正処理が、前記潜在的ブロック化イベントによって予約されたシステム・リソースをリリースすることを含む、請求項６に記載のシステム。
【請求項１０】
前記レジストリ・エントリが、ブロック化イベントの識別子と、潜在的ブロック化イベントのエントリを登録したプロセスへの参照とを含む、請求項６に記載のシステム。
【請求項１１】
サーバ内のブロック化された処理を安全に中断するためのプログラムであって、
レジストリを作成するステップと、
前記レジストリに潜在的ブロック化イベントを登録するステップと、
前記潜在的ブロック化イベントを実行するステップと、
前記潜在的ブロック化イベントが応答していないことを判定するステップと、
と、
前記潜在的ブロック化イベントに対応するレジストリ・エントリにアクセスするステップと、
前記潜在的ブロック化イベントに対応する前記レジストリ・エントリに示される是正措置をとるステップと
を情報処理装置に実行させる、プログラム。
【請求項１２】
前記潜在的ブロック化イベントを前記レジストリから除去するステップをさらに情報処理装置に実行させる、請求項１１に記載のプログラム。
【請求項１３】
前記潜在的ブロック化イベントが応答していないことを判定するためにタイマーが用いられる、請求項１１に記載のプログラム。
【請求項１４】
前記是正措置をとる命令は、前記潜在的ブロック化イベントによって予約されているシステム・リソースをリリースするステップをさらに情報処理装置に実行させる、請求項１１に記載のプログラム。
【請求項１５】
前記レジストリ・エントリは、ブロック化イベントの識別子と、前記潜在的ブロック化イベントのエントリを登録した前記プロセスへの参照を含む、請求項１１に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータ・システムにおける処理に関する。より具体的には、本発明は、サーバ内のブロック化された処理を安全に中断する方法に関する。
【背景技術】
【０００２】
コンピュータ・システムは、典型的には、ハードウェア（例えば半導体、回路基板等）とソフトウェア（例えばコンピュータ・プログラム）の組合せからなる。半導体加工およびコンピュータ・アーキテクチャの進歩が、コンピュータ・ハードウェアの性能をいっそう高いものとし、ハードウェアのより高い性能を活用するためにより高性能のコンピュータ・ソフトウェアが発達している。その結果、今日では、ほんの数年前と比べても遥かに強力なコンピュータ・システムを活用できるようになった。
【０００３】
コンピュータ・システムは、典型的には、コンピュータの基本的な機能を制御するオペレーティング・システム・ソフトウェア、オペレーティング・システムの制御下で動作して所望のタスクを実行するソフトウェア・アプリーション・プログラムを含む。例えば、典型的なＩＢＭのパーソナルコンピュータは、ＯＳ／２（Ｒ）オペレーティング・システムを動作させることができ、ユーザは、ＯＳ／２（Ｒ）オペレーティング・システムの制御下で、ワード・プロセッサ等のアプリケーション・プログラムを実行することができる。コンピュータの能力が増大しているので、高性能なコンピュータ・システムのために設計されたアプリケーション・プログラムは非常に強力になっている。
【０００４】
異なるプロセスに共有システム・リソースを割り振ることによって、リソースの利用における競合が起こり得る。多数の異なるプロセスを同時に処理できるので、複数のプロセスが、所与の共有システム・リソースに同時にアクセスする必要が起こる可能性が十分にある。しかし、所与のプロセスが使用するリソースを取得した後に、そのプロセスが何らかの理由で突然に終了した場合、取得されたリソースは他のプロセスが利用できなくなる可能性があり、処理環境の効率を悪くする。
【０００５】
例えば、スレッド上で動作している所与のプロセスは、ミューテックス・オブジェクト（ｍｕｔｅｘ  ｏｂｊｅｃｔ）等の共有システム・リソースを使用している可能性がある。ここで、ミューテックス・オブジェクトとは、常に１つのスレッドだけが１つのデータを制御できるように、その１つのデータをロックするためのオブジェクトである。多数のスレッドがその１つのデータを取得するためにミューテックス・オブジェクトにアクセスしようとする可能性があるので、ミューテックス・オブジェクトは共有システム・リソースであるといえる。かかるスレッドがその状態を静止する機会もなく突然終了してしまった場合、その共有ミューテックス・オブジェクトが「ロックアウト（ｌｏｃｋｅｄ−ｏｕｔ）」され、他のプロセスに関連する他のスレッドは、そのミューテックス・オブジェクトおよび付随するデータにアクセスして利用することができなくなる可能性がある。この事態に陥ってしまうと、共有リソースを「リリース（ｒｅｌｅａｓｅｄ）」して他のプロセスに利用できるようにするために、プロセスを完全にシャットダウンすることが必要となる場合がある。また、別のシナリオでは、プロセスは、共有システム・リソースを用いながら長時間「ループ（ｌｏｏｐｉｎｇ）」してしまい、そのために他のシステム・プロセスが共有システム・リソースにアクセスすることを妨げてしまう可能性がある。場合によっては、共有リソースを再び処理に利用できるようにするために、システム全体の再起動が必要になることさえあり得る。
【０００６】
このようなブロック化された処理は、サーバが他のリクエストを処理するのを妨げることがあるので、すべてのディスパッチ・スレッドがブロック化される場合、サーバはおそらく最終的には完全に停止してしまう可能性がある。かかる課題に対して用いられる現行のソリューションは、リクエストが完了するのを指定された時間の間だけ待機しておき、その時間内にリクエストが完了しない場合には、そのサーバ・プロセスを終了させるというものである。このソリューションには、アプリケーション・サーバ内でディスパッチされているいかなる他のリクエストをも終了させてしまうという副次的な悪影響がある。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
従って、共有システム・リソースを効果的に割り振り、かつ制御するための共有システム・リソースの割振／管理の機構の必要性が理解される。
【課題を解決するための手段】
【０００８】
例示的な実施形態は、サーバ内のブロック化された処理を安全に中断するための方法を開示する。方法は、レジストリを作成するステップと、レジストリに潜在的ブロック化イベント（ｐｏｔｅｎｔｉａｌ  ｂｌｏｃｋｉｎｇ  ｅｖｅｎｔ）を登録するステップと、潜在的ブロック化イベントを実行するステップと、潜在的ブロック化イベントが応答していないことを判定するステップと、そのブロック化イベントに対応するレジストリ・エントリにアクセスするステップと、そのブロック化イベントに対応するレジストリ・エントリに示される是正処理（ｃｏｒｒｅｃｔｉｖｅ  ａｃｔｉｏｎ）を実行するステップとを含む。
【０００９】
また、例示的な実施形態は、サーバ内のブロック化された処理を安全に中断するためのシステムを開示する。システムは、レジストリを作成するための手段と、レジストリに潜在的ブロック化イベントを登録するための手段と、潜在的ブロック化イベントを実行するための手段と、潜在的ブロック化イベントが応答していないことを判定するための手段と、潜在的ブロック化イベントに対応するレジストリ・エントリにアクセスするための手段と、その潜在的ブロック化イベントに対応するレジストリ・エントリに示される是正処理を実行するための手段を備える。
【００１０】
さらに、例示的な実施形態は、  サーバ内のブロック化された処理を安全に中断するためのプログラムを開示する。プログラムは、レジストリを作成するステップと、レジストリに潜在的ブロック化イベントを登録するステップと、潜在的ブロック化イベントを実行するステップと、潜在的ブロック化イベントが応答していないことを判定するステップと、潜在的ブロック化イベントに対応するレジストリ・エントリにアクセスするステップと、潜在的ブロック化イベントに対応するレジストリ・エントリに示される是正処理を実行するステップを情報処理装置に実行させる。
【００１１】
例示的な実施形態による他のシステム、方法、および／またはコンピュータ・プログラムが、以下の詳細な説明および図面を読むことにより当業者にいっそう明らかとなるであろう。すべてのこうした付加的なシステム、方法、および／またはコンピュータ・プログラムが本説明に含まれ、本発明の範囲内にあり、特許請求の範囲に含まれる請求項によって保護されることが意図されている。
【発明を実施するための最良の形態】
【００１２】
複数の図にわたる同様の要素に同様の符号が付された例示的な図面を参照して、本発明の例示的な実施形態を詳細に説明する。
【００１３】
サーバ内のブロック化された処理を安全に中断する方法が開示される。方法は、一般的に、レジストリを作成するステップと、レジストリに潜在的ブロック化イベントを登録するステップと、潜在的ブロック化イベントを実行するステップと、潜在的ブロック化イベントが応答していないことを判定するステップと、そのブロック化イベントに対応するレジストリ・エントリにアクセスするステップと、そのブロック化イベントに対応するレジストリ・エントリに示される是正処理を実行するステップとを含む。
【００１４】
図１を参照すると、例示的な実施形態による、サーバ内のブロック化された処理（ｂｌｏｃｋｅｄ  ｗｏｒｋ）を安全に中断するメソッド（ｍｅｔｈｏｄ）のフローチャート１０が、一般的な形で描かれている。メソッドの第１のステップは、処理ブロック１２に示されるように、潜在的ブロック化イベントのレジストリを作成することである。なお、レジストリについては、本明細書において図２を参照してさらに詳しく論じられる。次に、メソッドは、プロセス・ブロック１４に示されるように、レジストリを用いて潜在的ブロック化イベントを登録する。さらに、メソッドは、処理ブロック１６に示されているように、潜在的ブロック化イベントまたはコードの区分を実行する。潜在的ブロック化イベントが成功裡に実行されるどうか、あるいは、無応答（応答なし）となるかどうかによって、メソッドは、それぞれ処理ブロック１８または２０へ進む。メソッドは、潜在的ブロック化イベントが無応答となっていることを判定するために、潜在的ブロック化イベントによって実行されるタイマーまたは監視機能の使用を含むが、それに限定はされず、他の技術を用いることもできることに留意されたい。
【００１５】
次に、ブロック化イベントを成功裡に実行した後、処理ブロック１８に示されるように、その潜在的ブロック化イベントに対応する潜在的ブロック化イベントのエントリをレジストリから除去する。しかし、メソッドは、もし潜在的ブロック化イベントが無応答となる場合には、処理ブロック２０に示されるように、その潜在的ブロック化イベントに対応するレジストリ・エントリにアクセスする。その潜在的ブロック化イベントの非ブロック化をサポートするのに必要な何らかの情報を、レジストリ内に配置されたオブジェクト内のインスタンス・データ中に配置することができる。例示的な実施形態においては、レジストリは、各々の潜在的ブロック化イベントに対応して実行されるインターフェースを含むことができる。さらに、レジストリは、登録済みオブジェクト（すなわち、潜在的ブロック化イベント）と、ブロック化イベントがそれから登録されたプロセス（すなわち、アプリケーションのリクエストがディスパッチされているスレッド）との間の相互関係を維持することもできる。次に、メソッドは、潜在的ブロック化イベントが応答していない可能性があると判定される場合は、（いかなる理由であれ）その中断されるべき潜在的ブロック化イベントに対応するレジストリ・エントリに引用されているメソッドを呼び出す。
【００１６】
図１を続けて参照すると、潜在的ブロック化イベントに対応するレジストリ・エントリにアクセスした後に、処理ブロック２２に示されるように、レジストリは指定された潜在的ブロック化イベントに関連する登録済みオブジェクト（ｒｅｇｉｓｔｅｒｅｄ  ｏｂｊｅｃｔｓ）をすべて探し出す。登録済みオブジェクトが存在する場合、メソッドは、処理ブロック２４に示されるように、登録済みオブジェクト上にインターフェース定義のメソッドを呼び出して、無応答の潜在的ブロック化イベントを中断する。インターフェース定義のメソッドは、無応答の潜在的ブロック化イベントを活動化するか、または無応答のブロック化イベントを終了させるために必要な制御構造体はどれでも探し出す役割を担う。例示的な実施形態においては、潜在的ブロック化イベントは、潜在的ブロック化イベントが中断されたことを認識し、障害を示すのに適切ないかなる措置でもとることができるように、中断される。無応答の潜在的ブロック化イベントを中断してインターフェース定義のメソッドを呼び出した後に、処理ブロック１８に示されるように、サーバ内のブロック化された処理を安全に中断するための方法は、その潜在的ブロック化イベントに対応する潜在的ブロック化イベント・エントリをレジストリから除去する。
【００１７】
ここで図２を参照すると、潜在的ブロック化イベントのレジストリのブロック図が、一般的に３０のように描かれている。潜在的ブロック化のレジストリ３０は、複数の潜在的ブロック化イベントのエントリ３２を含む。各々の潜在的ブロック化イベントのエントリ３２は、潜在的ブロック化イベントの識別子３４、潜在的ブロック化イベントのエントリを登録したプロセスへの参照３６、および、無応答の潜在的ブロック化イベントを中断するためのインターフェース定義のメソッドへの参照３８を含むことができる。潜在的ブロック化イベントの識別子３４は、メモリ・アドレス、名前、潜在的ブロック化イベントを識別するために用いられる他の独自の１つの識別情報を含むことができる。同様に、潜在的ブロック化イベントのエントリ３２を登録したプロセスへの参照は、メモリ・アドレス、名前、潜在的ブロック化イベントのエントリ３２を登録したプロセスを識別するために用いられる他の独自の１つの識別情報を含むことができる。さらに、無応答の潜在的ブロック化イベントを中断するためのインターフェース定義のメソッドへの参照は、メモリ・アドレス、名前、無応答の潜在的ブロック化イベントを中断するためのインターフェース定義のメソッドを参照するために用いることができる他の参照を含むことができる。
【００１８】
特定の例示的な実施形態においては、潜在的ブロック化イベントはリソースを予約するアプリケーションとすることができる。例えば、アプリケーションは、ソケットを開き、遠隔サーバにメッセージを送信し、その後、ｒｅａｄ（）関数を利用して遠隔サーバからの応答を待つことができる、ネットワーク通信アプリケーションとすることができる。この実施例においては、ソケットを開く前に、アプリケーションは、レジストリを用いてインターフェースの実装を登録することになる。システムがアプリケーションを中断させる必要があると判定した場合、中断メソッドが登録済みオブジェクト上で駆動される。中断メソッドが登録済みオブジェクト上で駆動されるときは、中断メソッドはフラグを立ててソケットを閉じることができる。ソケットが閉じられたために、アプリケーションは障害のｒｅａｄ（）関数から活動化され、フラグが立てられたことを確認し、休止して応答を待つように命じられたことを報告することになる。この場合、もしアプリケーションが中断方法によって中断されたことを示すフラグが立てられていなければ、アプリケーションは通信障害を報告することになる。代替の例示的な実施形態においては、バックエンド・データベースへのコネクタまたは他の基盤コードが、アプリケーションではなく中断処理を登録するステップおよび準備するステップを予備的に実施することができる。
【００１９】
上述の通り、本発明の実施形態は、コンピュータ実装プロセスの形態、およびそれらのプロセスを実行する装置の形態で具体化することができる。また、本発明の実施形態は、フロッピー・ディスク、ＣＤ−ＲＯＭ、ハード・ドライブ、または任意の他のコンピュータ可読の記憶媒体等の有形の媒体中に具体化された命令を含む、コンピュータ・プログラム・コードの形態で具体化することができる。また、本発明は、例えば、記憶媒体に格納され、コンピュータにロードされおよび／またはコンピュータによって実行されるにしても、あるいは、電気的配線、ケーブル線、光ファイバなどの伝送媒体を通してまたは電磁放射を介して伝送されるにしても、コンピュータ・プログラム・コードという形態で具体化することができる。そして、コンピュータ・プログラム・コードがコンピュータにロードされ実行されるとき、コンピュータは本発明を実施する装置となる。汎用マイクロプロセッサ上で実行されるときには、コンピュータ・プログラム・コードのセグメントは、特定の論理回路を作成するようにマイクロプロセッサを構成する。
【００２０】
図３は、本発明の実施の形態によるシステムを実現するのに好適な情報処理装置のハードウェア構成の一例をさらに具体的に示した図である。情報処理装置は、バス１０２に接続されたＣＰＵ（中央処理装置）１０１とメインメモリ１０４を含んでいる。ハードディスク装置１１３、１３０、およびＣＤ−ＲＯＭ装置１２６、１２９、フレキシブル・ディスク装置１２０、ＭＯ装置１２８、ＤＶＤ装置１３１のようなリムーバブル・ストレージ（記録メディアを交換可能な外部記憶システム）がフロッピーディスクコントローラ１１９、ＩＤＥコントローラ１２５、ＳＣＳＩコントローラ１２７などを経由してバス２へ接続されている。
【００２１】
フレキシブル・ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭのような記憶メディアが、リムーバブル・ストレージに挿入される。これらの記憶メディアやハードディスク装置１１３、１３０、ＲＯＭ１１４には、オペレーティング・システムと協働してＣＰＵ等に命令を与え、本発明を実施するためのコンピュータ・プログラムのコードを記録することができる。メインメモリ１０４にロードされることによってコンピュータ・プログラムは実行される。コンピュータ・プログラムは圧縮し、また複数に分割して複数の媒体に記録することもできる。
【００２２】
情報処理装置は、キーボード／マウス・コントローラ１０５を経由して、キーボード１０６やマウス１０７のような入力デバイスからの入力を受ける。情報処理装置は、視覚データをユーザに提示するための表示装置１１１にＤＡＣ／ＬＣＤＣ１１０を経由して接続される。
【００２３】
情報処理装置は、ネットワーク・アダプタ１１８（イーサネット（Ｒ）・カードやトークンリング・カード）等を介してネットワークに接続し、他のコンピュータ等と通信を行うことが可能である。図示はされていないが、パラレルポートを介してプリンタと接続することや、シリアルポートを介してモデムを接続することも可能である。
【００２４】
以上の説明により、本発明の実施の形態によるシステムを実現するのに好適な情報処理装置は、通常のパーソナルコンピュータ、ワークステーション、メインフレームなどの情報処理装置、または、これらの組み合わせによって実現されることが容易に理解されるであろう。ただし、これらの構成要素は例示であり、そのすべての構成要素が本発明の必須構成要素となるわけではない。
【００２５】
本発明の実施の形態において使用される情報処理装置の各ハードウェア構成要素を、複数のマシンを組み合わせ、それらに機能を配分し実施する等の種々の変更は当業者によって容易に想定され得ることは勿論である。それらの変更は、当然に本発明の思想に包含される概念である。
【００２６】
本発明の実施形態によるシステムは、マイクロソフト・コーポレーションが提供するＷｉｎｄｏｗｓ（Ｒ）オペレーティング・システム、アップル・コンピュータ・インコーポレイテッド提供するＭａｃＯＳ（Ｒ）、Ｘ  Ｗｉｎｄｏｗ  Ｓｙｓｔｅｍを備えるＵＮＩＸ（Ｒ）系システム（例えば、インターナショナル・ビジネス・マシーンズ・コーポレーションが提供するＡＩＸ（Ｒ）など）のような、ＧＵＩ（グラフィカル・ユーザー・インターフェース）マルチウインドウ環境をサポートするオペレーティング・システムを採用することができる。
【００２７】
以上から、本発明の実施の形態において使用されるシステムは、特定のオペレーティング・システム環境に限定されるものではないことを理解することができる。すなわち、オペレーティング・システムは、アプリケーション・ソフトウェアなどがデータ処理システムの資源を利用できるようにする資源管理機能を提供することができるものであれば、いかなるものをも採用することができる。なお、資源管理機能には、ハードウェア資源管理機能、ファイルハンドル機能、スプール機能、ジョブ管理機能、記憶保護機能、仮想記憶管理機能などが含まれ得るが、これらの機能については、当業者によく知られたものであるので詳細な説明は省略する。
【００２８】
また、本発明は、ハードウェア、ソフトウェア、またはハードウェア及びソフトウェアの組み合わせとして実現可能である。ハードウェアとソフトウェアの組み合わせによる実行において、所定のプログラムを有するデータ処理システムにおける実行が典型的な例として挙げられる。かかる場合、該所定プログラムが該データ処理システムにロードされ実行されることにより、該プログラムは、データ処理システムを制御し、本発明にかかる処理を実行させる。このプログラムは、任意の言語・コード・表記によって表現可能な命令群から構成される。そのような命令群は、システムが特定の機能を直接、または１．他の言語・コード・表記への変換、２．他の媒体への複製、のいずれか一方もしくは双方が行われた後に、実行することを可能にするものである。
【００２９】
もちろん、本発明は、そのようなプログラム自体のみならず、プログラムを記録した媒体もその範囲に含むものである。本発明の機能を実行するためのプログラムは、フレキシブル・ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＤＶＤ、ハードディスク装置、ＲＯＭ、ＭＲＡＭ、ＲＡＭ等の任意のコンピュータ読み取り可能な記録媒体に格納することができる。かかるプログラムは、記録媒体への格納のために、通信回線で接続する他のデータ処理システムからダウンロードしたり、他の記録媒体から複製したりすることができる。また、かかるプログラムは、圧縮し、または複数に分割して、単一または複数の記録媒体に格納することもできる。また、様々な形態で、本発明を実施するプログラム製品を提供することも勿論可能であることにも留意されたい。
【００３０】
例示的な実施形態を参照して本開示を説明してきたが、本発明の範囲から逸脱することなく種々の変更を行うことができ、また、本発明の要素を等価なものに置換することができるということを、当業者は容易に理解することができるだろう。さらに、本発明の本質的な範囲から逸脱することなく、特定の状態または材料を本発明の教示に適応させるように多くの修正を行うことができる。従って、本発明は、本発明の実施を意図された最良の形態として開示された特定の実施形態に限定されない。本発明は、特許請求の範囲に含まれるすべての実施形態を含むことが意図されている。
【図面の簡単な説明】
【００３１】
【図１】本発明の例示的な実施形態による、サーバ内のブロック化された処理を安全に中断する方法のフローチャートを示す。
【図２】本発明の例示的な実施形態によるレジストリのブロック図を示す。
【図３】本発明の例示的な実施形態によるシステムを実現するのに好適な情報処理装置のハードウェア構成の一例を具体的に示した図である。
【符号の説明】
【００３２】
１０：サーバ内のブロック化された処理を安全に中断するためのメソッドのフローチャート
１２、１４、１６、１８、２０、２２、２４：処理ブロック
３０：潜在的ブロック化イベントのレジストリ
３２：潜在的ブロック化イベントのエントリ
３４：潜在的ブロック化イベントの識別子
３６：潜在的ブロック化イベントのエントリを登録したプロセスへの参照
３８：無応答の潜在的ブロック化イベントを中断するためのインターフェース定義のメソッドへの参照
【図１】
2007157125.tif 000003
【図２】
2007157125.tif 000004
【図３】
2007157125.tif 000005