(57)【特許請求の範囲】
【請求項１】
ネットワーク回線上でクライアント及びサーバーが接続されたネットワークファイルシステムにおけるネットワークファイルシステム用Ｉ／Ｏ制御方法において、前記サーバーは多数のＩ／Ｏ要求を受信した場合に前記多数のＩ／Ｏ要求の一部を消失し得るものであって、前記サーバー側では、受信プロセスが優先度付きのＩ／Ｏ要求を受信して前記受信された前記優先度付きのＩ／Ｏ要求をＩ／Ｏキューに投入し、Ｉ／Ｏ処理プロセスが前記Ｉ／Ｏキューに投入された前記優先度付きのＩ／Ｏ要求の中から優先度の高い順に該Ｉ／Ｏ要求を選択してＩ／Ｏ処理を行い、前記Ｉ／Ｏ処理したものをＩ／Ｏ終了キューへ投入し、送信プロセスが前記Ｉ／Ｏ終了キューから終了したＩ／Ｏ要求を抽出して前記Ｉ／Ｏ処理によるＩ／Ｏ動作の終了を示す情報を前記クライアント側へ送信することを特徴とするネットワークファイルシステム用Ｉ／Ｏ制御方法。
【請求項２】
ネットワーク回線上で接続されたクライアント及びサーバーの間で通信制御手段によりＩ／Ｏ制御を行うネットワークファイルシステムにおいて、前記サーバーは多数のＩ／Ｏ要求を受信した場合に前記多数のＩ／Ｏ要求の一部を消失し得るものであって、前記サーバー側の通信制御手段は、優先度付きのＩ／Ｏ要求を受信するＩ／Ｏ要求受信手段と、前記Ｉ／Ｏ要求受信手段で受信された前記優先度付きのＩ／Ｏ要求を投入するためのＩ／Ｏキューと、前記Ｉ／Ｏキューに投入された前記優先度付きのＩ／Ｏ要求の中から優先度の高い順に該Ｉ／Ｏ要求を選択してＩ／Ｏ処理を行うＩ／Ｏ手段と、前記Ｉ／Ｏ手段により前記Ｉ／Ｏ処理したものを投入するためのＩ／Ｏ終了キューと、前記Ｉ／Ｏ終了キューから終了したＩ／Ｏ要求を抽出して前記Ｉ／Ｏ処理によるＩ／Ｏ動作の終了を示す情報を前記クライアント側へ送信するＩ／Ｏ終了通知手段とを備えたことを特徴とするネットワークファイルシステム。
【請求項３】
請求項２に記載のネットワークファイルシステムにおいて、前記サーバーに記憶装置が接続されており、前記Ｉ／Ｏ手段での前記Ｉ／Ｏ動作により前記データ転送を前記クライアント及び前記記憶装置の間で行う構成であるか、或いは前記サーバー及び前記クライアントに交換機を介して記憶装置が接続されており、前記Ｉ／Ｏ手段での前記Ｉ／Ｏ動作により前記データ転送を前記交換機を介在した上で前記クライアント及び前記記憶装置の間で行う構成であることを特徴とするネットワークファイルシステム。
【請求項４】
ネットワーク回線上で接続されたクライアント及びサーバーの間で通信制御によりＩ／Ｏ制御を行うネットワークファイルシステムにあって該Ｉ／Ｏ制御用として適用されるネットワークファイルシステム用プログラムにおいて、多数のＩ／Ｏ要求を受信した場合に前記多数のＩ／Ｏ要求の一部を消失し得る前記サーバー側で運用されると共に、受信プロセスが優先度付きのＩ／Ｏ要求を受信し、前記受信された前記優先度付きのＩ／Ｏ要求をＩ／Ｏキューに投入し、Ｉ／Ｏ処理プロセスが前記Ｉ／Ｏキューに投入された前記優先度付きのＩ／Ｏ要求の中から優先度の高い順に該Ｉ／Ｏ要求を選択してＩ／Ｏ処理を行い、前記Ｉ／Ｏ処理したものをＩ／Ｏ終了キューへ投入し、送信プロセスが前記Ｉ／Ｏ終了キューから終了したＩ／Ｏ要求を抽出して前記Ｉ／Ｏ処理によるＩ／Ｏ動作の終了を示す情報を前記クライアント側へ送信することを特徴とするネットワークファイルシステム用プログラム。
【請求項５】
請求項４記載のネットワークファイルシステム用プログラムを格納して前記Ｉ／Ｏ制御用に供されることを特徴とするネットワークファイルシステム用記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、主としてネットワーク回線上で接続されたクライアント及びサーバーの間でＩ／Ｏ（以下も同様であるが、入出力を示すものとする）制御によりファイル形式でデータ転送可能なネットワークファイルシステムにおけるＩ／Ｏ制御に際して、Ｉ／Ｏ処理を緊急度に応じて優先的に行わせるための機能を持たせたネットワークファイルシステム用Ｉ／Ｏ制御方法に関する。
【０００２】
【従来の技術】
従来、この種のネットワークファイルシステム用Ｉ／Ｏ制御方法に関連する技術としては、例えば特開平１１−３３８７９２号公報に開示されたネットワークファイルシステムのデータ転送方法が挙げられる。
【０００３】
図７は、ここでのデータ転送機能を備えたネットワークファイルシステムの基本構成を示したブロック図である。このネットワークファイルシステムは、ネットワーク回線３上で接続されたクライアント（正式にはクライアント・コンピューターを示すが、通常「クライアント」の略称で呼ばれている）１０及びサーバー（正式にはサーバー・コンピューターを示すが、通常「サーバー」の略称で呼ばれている）２０が交換機５を介して記憶装置４を共有しており、ＴＰＴＩ／Ｏ管理手段を用いて周辺装置との間で直接的にファイル形式でデータ転送することでデータ転送の高速化を具現し得る構成となっている。
【０００４】
このネットワークファイルシステムの基本動作を具体的に説明すれば、クライアント１０，サーバー２０はそれぞれ通信制御手段を具備しており、先ずサーバー２０の通信制御手段がクライアント１０の通信制御手段を用いて送られてきたＩ／Ｏ要求を装置内のファイルシステム管理手段に渡し、更にそのＩ／Ｏ要求に関するファイル内オフセットやＩ／Ｏサイズ等の情報を装置内のＩ／Ｏ制御手段に渡した後、周辺装置とクライアント１０との間で実際のＩ／Ｏ動作が行われるが、この後はサーバー２０のＩ／Ｏ管理手段及びファイルシステム管理手段を経由して通信制御手段によりクライアント１０に対してＩ／Ｏ動作の終了通知を送信する。
【０００５】
因みに、このようなネットワークファイルシステムやそのＩ／Ｏ制御に関連するその他の周知技術としては、例えば特開平１−２２８０４５号公報に開示されたＩ／Ｏ制御方式、特開平７−３２５７７９号公報に開示されたＩ／Ｏ制御装置、特開平８−３２８９３５号公報に開示されたネットワークファイルシステムのＩ／Ｏ処理方式、特開２０００−２５０８２１号公報に開示されたネットワークファイルシステム等が挙げられる。
【０００６】
上述したネットワークファイルシステムにおけるＩ／Ｏ制御（データ転送）の場合、緊急度の高いジョブから発行されたＩ／Ｏ要求があっても、そのときにサーバーにおいて他のＩ／Ｏ処理中で且つ既に幾つかのＩ／Ｏ要求が待たされている状態であれば、現行のＩ／Ｏ処理が終わってもその緊急度の高いＩ／Ｏ要求が選ばれて処理が始められることはなく、単に先に到着していたＩ／Ｏ要求が順次処理されるために緊急度の高いジョブが待たされてしまうという問題がある他、サーバーにおいて、受信バッファからのＩ／Ｏ要求の取り出し（受信処理）からその後のＩ／Ｏ処理までが同一プロセスの一連の処理として行われる場合、複数のクライアントから同時に多数のＩ／Ｏ要求を連続的に受信するような高負荷状態になると、それらのＩ／Ｏ要求を一度には処理できないため、受信バッファが溢れてＩ／Ｏ要求が失われてしまう問題がある。Ｉ／Ｏ要求が失われると、一般にネットワークファイルシステムのクライアントは、Ｉ／Ｏ要求を再送する機能を持つことにより、後刻再送されたＩ／Ｏ要求に基づいてＩ／Ｏ処理を行うことができる。ところが、優先度の高いＩ／Ｏ要求が失われた場合、後刻Ｉ／Ｏ要求が再送されたとしても、再送されるまでの間に他の受信された優先度の低いＩ／Ｏ要求が先に処理されてしまうために適切な優先度制御を行うことができず、結果として、優先度の高いＩ／Ｏ要求のＩ／Ｏ処理が遅延されてしまうという問題が起こる。
【０００７】
本発明は、このような問題点を解決すべくなされたもので、その技術的課題は、Ｉ／Ｏ負荷が高くても緊急度の高いジョブのＩ／Ｏ処理を優先的に効率良く行わせ得ると共に、サーバーが多くのＩ／Ｏ要求を受信した場合にもＩ／Ｏ要求の消失を回避し得るネットワークファイルシステム用Ｉ／Ｏ制御方法を提供することにある。
【０００８】
本発明によれば、ネットワーク回線上でクライアント及びサーバーが接続されたネットワークファイルシステムにおけるネットワークファイルシステム用Ｉ／Ｏ制御方法において、サーバーは多数のＩ／Ｏ要求を受信した場合に多数のＩ／Ｏ要求の一部を消失し得るものであって、サーバー側では、受信プロセスが優先度付きのＩ／Ｏ要求を受信して受信された優先度付きのＩ／Ｏ要求をＩ／Ｏキューに投入し、Ｉ／Ｏ処理プロセスがＩ／Ｏキューに投入された優先度付きのＩ／Ｏ要求の中から優先度の高い順に該Ｉ／Ｏ要求を選択してＩ／Ｏ処理を行い、Ｉ／Ｏ処理したものをＩ／Ｏ終了キューへ投入し、送信プロセスがＩ／Ｏ終了キューから終了したＩ／Ｏ要求を抽出してＩ／Ｏ処理によるＩ／Ｏ動作の終了を示す情報をクライアント側へ送信するネットワークファイルシステム用Ｉ／Ｏ制御方法が得られる。
【００１１】
一方、本発明によれば、ネットワーク回線上で接続されたクライアント及びサーバーの間で通信制御手段によりＩ／Ｏ制御を行うネットワークファイルシステムにおいて、サーバーは多数のＩ／Ｏ要求を受信した場合に前記多数のＩ／Ｏ要求の一部を消失し得るものであって、サーバー側の通信制御手段は、優先度付きのＩ／Ｏ要求を受信するＩ／Ｏ要求受信手段と、Ｉ／Ｏ要求受信手段で受信された優先度付きのＩ／Ｏ要求を投入するためのＩ／Ｏキューと、Ｉ／Ｏキューに投入された優先度付きのＩ／Ｏ要求の中から優先度の高い順に該Ｉ／Ｏ要求を選択してＩ／Ｏ処理を行うＩ／Ｏ手段と、Ｉ／Ｏ手段によりＩ／Ｏ処理したものを投入するためのＩ／Ｏ終了キューと、Ｉ／Ｏ終了キューから終了したＩ／Ｏ要求を抽出してＩ／Ｏ処理によるＩ／Ｏ動作の終了を示す情報をクライアント側へ送信するＩ／Ｏ終了通知手段とを備えたネットワークファイルシステムが得られる。

【００１４】
加えて、本発明によれば、上記何れか一つのネットワークファイルシステムにおいて、サーバーに記憶装置が接続されており、Ｉ／Ｏ手段でのＩ／Ｏ動作によりデータ転送をクライアント及び記憶装置の間で行う構成であるか、或いはサーバー及びクライアントに交換機を介して記憶装置が接続されており、Ｉ／Ｏ手段でのＩ／Ｏ動作によりデータ転送を交換機を介在した上でクライアント及び記憶装置の間で行う構成であるネットワークファイルシステムが得られる。
【００１５】
他方、本発明によれば、ネットワーク回線上で接続されたクライアント及びサーバーの間で通信制御によりＩ／Ｏ制御を行うネットワークファイルシステムにあって該Ｉ／Ｏ制御用として適用されるネットワークファイルシステム用プログラムにおいて、多数のＩ／Ｏ要求を受信した場合に多数のＩ／Ｏ要求の一部を消失し得るサーバー側で運用されると共に、受信プロセスが優先度付きのＩ／Ｏ要求を受信し、受信された優先度付きのＩ／Ｏ要求をＩ／Ｏキューに投入し、Ｉ／Ｏ処理プロセスがＩ／Ｏキューに投入された優先度付きのＩ／Ｏ要求の中から優先度の高い順に該Ｉ／Ｏ要求を選択してＩ／Ｏ処理を行い、Ｉ／Ｏ処理したものをＩ／Ｏ終了キューへ投入し、送信プロセスがＩ／Ｏ終了キューから終了したＩ／Ｏ要求を抽出してＩ／Ｏ処理によるＩ／Ｏ動作の終了を示す情報をクライアント側へ送信するネットワークファイルシステム用プログラムが得られる。このネットワークファイルシステム用プログラムにおいて、Ｉ／Ｏ処理プロセスでは、Ｉ／Ｏ処理したものをＩ／Ｏ終了キューへ投入し、送信プロセスでは、Ｉ／Ｏ終了キューから終了したＩ／Ｏ要求を抽出してＩ／Ｏ処理によるＩ／Ｏ動作の終了を示す情報をクライアント側へ送信することは好ましい。
【００１６】
更に、本発明によれば、上記何れかのネットワークファイルシステム用プログラムを格納してＩ／Ｏ制御用に供されるネットワークファイルシステム用記録媒体が得られる。
【００１７】
【発明の実施の形態】
以下に本発明の実施の形態について、図面を参照して詳細に説明する。最初に、本発明のネットワークファイルシステム用Ｉ／Ｏ制御方法の技術的概要を簡単に説明する。
【００１８】
本発明のネットワークファイルシステム用Ｉ／Ｏ制御方法は、ネットワーク回線上でクライアント及びサーバーが接続されて成るネットワークファイルシステムにおけるクライアント及びサーバーの間で通信制御によりＩ／Ｏ制御を行うことでファイル形式でのデータ転送が可能なものにおいて、クライアント側では、Ｉ／Ｏ要求に供される通信制御用のパケットに優先度を付加した上でネットワーク回線へ送信し、サーバー側では、ネットワーク回線経由でクライアント側から受信した優先度付きのＩ／Ｏ要求に応じてＩ／Ｏ動作を行う際、Ｉ／Ｏ制御として優先度付きのＩ／Ｏ要求から優先度の高い順にＩ／Ｏ要求を選択してＩ／Ｏ処理するためのＩ／Ｏ用優先度制御を行うものである。
【００１９】
又、このネットワークファイルシステム用Ｉ／Ｏ制御方法の場合、クライアント側では、Ｉ／Ｏ要求に優先度を付加するＩ／Ｏ発行プロセスを有し、サーバー側では、Ｉ／Ｏ用優先度制御として、クライアント側から優先度付きのＩ／Ｏ要求を受信する受信プロセスと、受信プロセスで受信した優先度付きのＩ／Ｏ要求から優先度の高い順に該Ｉ／Ｏ要求を選択してＩ／Ｏ処理した上でＩ／Ｏ動作を行うＩ／Ｏ処理プロセスと、Ｉ／Ｏ処理プロセスで優先度の高い順に従ったＩ／Ｏ処理によるＩ／Ｏ動作の終了をネットワーク回線経由でクライアント側へ送信する送信プロセスとを有するものである。
【００２０】
更に、このネットワークファイルシステム用Ｉ／Ｏ制御方法の場合、サーバー側では、受信プロセスによりクライアント側から受信した優先度付きのＩ／Ｏ要求をＩ／Ｏキューへ投入し、Ｉ／Ｏ処理プロセスにより優先度付きのＩ／Ｏ要求をＩ／Ｏキューから優先度の高いに順に取り出してＩ／Ｏ処理したものをＩ／Ｏ終了キューへ投入する処理を含むもので、これに応じて送信プロセスではＩ／Ｏ終了キューから終了したＩ／Ｏ要求を抽出してＩ／Ｏ動作の終了を示す通信制御用のパケットをネットワーク回線経由でクライアント側へ送信する。以上のネットワークファイルシステム用Ｉ／Ｏ制御方法における技術的要旨を換言すれば、サーバーは多数のＩ／Ｏ要求を受信した場合に多数のＩ／Ｏ要求の一部を消失し得るものであって、サーバー側では、受信プロセスが優先度付きのＩ／Ｏ要求を受信して受信された優先度付きのＩ／Ｏ要求をＩ／Ｏキューに投入し、Ｉ／Ｏ処理プロセスがＩ／Ｏキューに投入された優先度付きのＩ／Ｏ要求の中から優先度の高い順に該Ｉ／Ｏ要求を選択してＩ／Ｏ処理を行い、Ｉ／Ｏ処理したものをＩ／Ｏ終了キューへ投入し、送信プロセスがＩ／Ｏ終了キューから終了したＩ／Ｏ要求を抽出してＩ／Ｏ処理によるＩ／Ｏ動作の終了を示す情報をクライアント側へ送信するものである。
【００２１】
このようなネットワークファイルシステム用Ｉ／Ｏ制御方法に従えば、システム管理者の運用方針により特定のジョブに対して優先度を付加できるので、Ｉ／Ｏ負荷が高い状態でも緊急度の高いジョブのＩ／Ｏ処理を優先的に行うことができるようになる他、ネットワークファイルシステムのクライアントのＣＰＵスケジューリングの優先度に対応させてＩ／Ｏ要求の優先度を設定するので、高いＣＰＵスケジューリングの優先度を持つジョブがサーバーにおいてＩ／Ｏ処理待ちで待たされることなく優先的に効率良くＩ／Ｏ動作され、しかもサーバが受信したＩ／Ｏ要求の通信制御用のパケットは受信プロセスによって直ちに受信バッファより取り除かれてＩ／Ｏキューに投入されるため、サーバーが多くのＩ／Ｏ要求を受信して一度に処理し切れない場合でも受信バッファが溢れてＩ／Ｏ要求を消失してしまうような不都合な事態を生じることが無くなるので、適切な優先度制御ができなくなることがない。
【００２２】
図１は、このネットワークファイルシステム用Ｉ／Ｏ制御方法を適用したネットワークファイルシステムの要部であるクライアント１及びサーバー２の基本構成をＩ／Ｏ処理手順を含めて示した機能ブロック図である。
【００２３】
このネットワークファイルシステムにおけるクライアント１側の通信制御手段は、Ｉ／Ｏ制御に際してＩ／Ｏ要求に供される通信制御用のパケットに優先度を付加する優先度付加手段１０２と、この優先度付加手段１０２により付加された優先度付きのＩ／Ｏ要求をネットワーク回線へ送信することでＩ／Ｏ要求を行うＩ／Ｏ要求手段１０３と、後述するサーバー２のＩ／Ｏ終了通知手段２０９から通知されるＩ／Ｏ終了通知を待ち合わせるためのＩ／Ｏ終了通知待ち合わせ手段１０４とをＩ／Ｏ発行プロセス１０１（Ｉ／Ｏ要求に優先度を付加するためのもの）用に備えている。
【００２４】
又、サーバー２側の通信制御手段は、クライアント１側のＩ／Ｏ要求手段１０３からの優先度付きのＩ／Ｏ要求をネットワーク回線経由で受信するＩ／Ｏ要求受信手段２０２と、このＩ／Ｏ要求受信手段２０２によりクライアント１側から受信した優先度付きのＩ／Ｏ要求を投入するためのＩ／Ｏキュー２０３と、Ｉ／Ｏ要求受信手段２０２で受信された優先度付きのＩ／Ｏ要求をＩ／Ｏキュー２０３から優先度の高い順に取り出して選択するＩ／Ｏ要求選択手段２０５と、Ｉ／Ｏ要求選択手段２０５で選択された優先度付きのＩ／Ｏ要求の優先度の高い順に従ってＩ／Ｏ処理した上でＩ／Ｏ動作を行うＩ／Ｏ手段２０６と、このＩ／Ｏ手段２０６により優先度付きのＩ／Ｏ要求の優先度の高い順に従ってＩ／Ｏ動作したものを投入するためのＩ／Ｏ終了キュー２０７と、このＩ／Ｏ終了キュー２０７から終了したＩ／Ｏ要求を抽出してＩ／Ｏ動作の終了（Ｉ／Ｏ手段２０５による優先度の高い順に従ったＩ／Ｏ処理によるＩ／Ｏ動作の終了）を示す通信制御用のパケットをネットワーク回線経由でクライアント１側へ送信するＩ／Ｏ終了通知手段２０９とを備えている。
【００２５】
このうち、Ｉ／Ｏ要求受信手段２０２は、クライアント１側から優先度付きのＩ／Ｏ要求を受信する受信プロセス２０１に属され、Ｉ／Ｏ要求選択手段２０５及びＩ／Ｏ手段２０６は、受信プロセス２０１で受信した優先度付きのＩ／Ｏ要求から優先度の高い順にＩ／Ｏ要求を選択してＩ／Ｏ処理した上でＩ／Ｏ動作を行うＩ／Ｏ処理プロセス２０４に属され、Ｉ／Ｏ終了通知手段２０９はＩ／Ｏ処理プロセス２０４で優先度の高い順に従ったＩ／Ｏ処理によるＩ／Ｏ動作の終了をネットワーク回線経由でクライアント１側へ送信する送信プロセス２０８に属される。
【００２６】
尚、クライアント１側のＩ／Ｏ発行プロセス１０１は、システムプロセスではなく、アプリケーションプログラムから起動される一般のプロセスであり、サーバー２側の３つのプロセス（受信プロセス２０１，Ｉ／Ｏ処理プロセス２０４，送信プロセス２０８）は、システム管理者によって起動されるシステムプロセスである。
【００２７】
各部の働きを具体的に説明すれば、クライアント１側において、Ｉ／Ｏ発行プロセス１０１では、ユーザモードからＩ／Ｏ要求が発行されるとき、システム管理者によって予め決められたこのＩ／Ｏ発行プロセス１０１のＣＰＵ優先度から、その優先度に比例したＩ／Ｏ要求の優先度を優先度付加手段１０２によりサーバー２へＩ／Ｏ要求するための制御パケットに付加する。即ち、Ｉ／Ｏ発行プロセス１０１は、ユーザモードからシステムコールによりオペレーティングシステム内のＩ／Ｏ発行手続きを呼び出し、このときにＩ／Ｏ動作の対象がネットワークファイルシステムであれば、優先度付加手段１０２によりＩ／Ｏ発行プロセス１０１に予め与えられた優先度をサーバー２へＩ／Ｏ要求するための通信制御用のパケットに付加し、Ｉ／Ｏ要求手段１０３により優先度付きのＩ／Ｏ要求（制御制御用のパケット付き）を作成した上でネットワーク回線を通じてサーバー２へ送信する。又、Ｉ／Ｏ発行プロセス１０１のＩ／Ｏ終了通知待ち合わせ手段１０４は、サーバー２のＩ／Ｏ終了通知手段２０９からＩ／Ｏ終了通知を示す制御パケットを受け取るとその時点でユーザモードに復帰する。
【００２８】
これに対し、サーバー２側において、受信プロセス２０１では、Ｉ／Ｏ要求受信手段２０２でクライアント１のＩ／Ｏ要求手段１０３から優先度付きのＩ／Ｏ要求を受信するとこれらをＩ／Ｏキュー２０３へ投入し、Ｉ／Ｏ処理プロセス２０４には新規なＩ／Ｏ要求がＩ／Ｏキュー２０３へ投入された旨が通知される。Ｉ／Ｏ処理プロセス２０４では、Ｉ／Ｏ要求選択手段２０５によりＩ／Ｏキュー２０３内にキューイングされているＩ／Ｏ要求のうち、優先度の高い順でＩ／Ｏ要求を選択（最も優先度の高いＩ／Ｏ要求が選択される）するようにＩ／Ｏキュー２０３から取り出してＩ／Ｏ手段２０６へ引き渡す。Ｉ／Ｏ手段２０６では、優先度の高い順のＩ／Ｏ要求に該当するファイルに対してＩ／Ｏ処理を行うようにＩ／Ｏ動作し、このＩ／Ｏ動作が終了すると、Ｉ／Ｏ終了キュー２０７に対してＩ／Ｏ動作終了に該当する終了したＩ／Ｏ要求を投入する。これにより、送信プロセス２０８に対して新たなＩ／Ｏ処理を終了したことを示すＩ／Ｏ要求がＩ／Ｏ終了キュー２０７に投入されたことが通知される。
【００２９】
送信プロセス２０８では、Ｉ／Ｏ処理プロセス２０４から新たなＩ／Ｏ処理を終了したＩ／Ｏ要求が投入された旨の通知を受けると、Ｉ／Ｏ終了通知手段２０９によりＩ／Ｏ終了キュー２０７の一番先頭にあるＩ／Ｏ要求を１つ取り出し、クライアント１のＩ／Ｏ発行プロセス１０１に対して最も優先度の高いＩ／Ｏ要求のＩ／Ｏが終了した旨を示す通信制御用のパケットを送信する。更に、送信プロセス２０８では、再度Ｉ／Ｏ終了キュー２０７を調べ、キューイングされているＩ／Ｏ要求があれば再度同様な処理を繰り返して行う。
【００３０】
図２は、このネットワークファイルシステムの要部であるクライアント１からの優先度付きＩ／Ｏ要求に対するサーバー２でのＩ／Ｏ処理手順を具体的に示したシーケンスの模式図である。
【００３１】
ここでは、サーバー２上での動作処理を示している。具体的に言えば、先ず受信プロセスプロセス２０１がクライアント１からの優先度付きＩ／Ｏ要求を受信すると、円内に優先度（例えば値が小さい程高いものとする）を示すＩ／Ｏキュー２０３の一番後方に投入し、この後にＩ／Ｏ処理プロセス２０４（複数存在するようにして良いものである）のうち、Ｉ／Ｏ処理中ではないものの何れか一つ（図２中では最も右側のもの）がＩ／Ｏキュー２０３を検索して優先度付きのＩ／Ｏ要求から最も優先度の高いＩ／Ｏ要求を１つ取り出す。
【００３２】
次に、このＩ／Ｏ処理プロセス２０４は、Ｉ／Ｏ処理を開始してＩ／Ｏ動作を行うが、このＩ／Ｏ動作が終了すると、Ｉ／Ｏ終了キュー２０７の一番後方へ該当するＩ／Ｏ要求を投入する。
【００３３】
最後に、送信プロセス２０８は、Ｉ／Ｏ終了キュー２０７の先頭からＩ／Ｏ要求を１つ取り出し、Ｉ／Ｏ要求に該当するＩ／Ｏ処理が全て終了した旨を示す通信制御用のパケットをクライアント１へ送信することでクライアント１へのＩ／Ｏ終了通知を行う。尚、ここでのサーバー２におけるＩ／Ｏキュー２０３及びＩ／Ｏ終了キュー２０７を動作処理する場合、排他制御を行って競合が発生しないようにする。
【００３４】
図３は、図１に示したネットワークファイルシステムの要部（クライアント１及びサーバー２）が適用される一例に係るネットワークファイルシステムの基本構成を示したブロック図である。
【００３５】
このネットワークファイルシステムの場合、ネットワーク回線３上でクライアント１及びサーバー２が接続されると共に、サーバー２に記憶装置４が接続されており、サーバー２のＩ／Ｏ処理プロセス２０４におけるＩ／Ｏ手段２０６でのＩ／Ｏ動作によりデータ転送をクライアント１及び記憶装置４の間で行う構成となり、通信制御用のパケットをネットワーク回線３を介してクライアント１及びサーバー２の間でやり取りすることになる。
【００３６】
又、図１に示したネットワークファイルシステムの要部（クライアント１及びサーバー２）は、図７に示した構成のネットワークファイルシステムへ適用することもできる。この場合、ネットワーク回線３上でクライアント１及びサーバー２が接続されると共に、サーバー２及びクライアント１に交換機５を介して記憶装置４が接続されており、サーバー２のＩ／Ｏ処理プロセス２０４におけるＩ／Ｏ手段２０６でのＩ／Ｏ動作によりデータ転送を交換機５を介在した上でクライアント１及び記憶装置４の間で行う構成となり、ここでも同様に通信制御用のパケットをネットワーク回線３を介してクライアント１及びサーバー２の間でやり取りすることになる。
【００３７】
因みに、このようなネットワークファイルシステムの場合、何れの構成にした場合においても、クライアント１及びサーバー２の数は、実際には複数単位で配設されるのが一般的である。
【００３８】
図４は、サーバー２で構築される受信プロセス２０１の動作処理を示したフローチャートである。
【００３９】
受信プロセス２０１では、起動されると既に受信しているＩ／Ｏ要求があるか否かをＩ／Ｏ要求を受信したか否かの判定（ステップＳ１）で行い、この結果、Ｉ／Ｏ要求を受信していればＩ／Ｏキュー２０３へＩ／Ｏ要求を投入（ステップＳ２）してキューイングを行ってから再度Ｉ／Ｏ要求を受信したか否かの判定（ステップＳ１）の前に戻って同様な処理を繰り返すが、Ｉ／Ｏ要求を受信していなければ受信待ち（ステップＳ３）としてクライアント１からのＩ／Ｏ要求を受信するまで待ち合わせる。
【００４０】
図５は、サーバー２で構築されるＩ／Ｏ処理プロセス２０４の動作処理を示したフローチャートである。
【００４１】
Ｉ／Ｏ処理プロセス２０４では、起動時にＩ／Ｏキュー２０３が空ではないか否かを判定（ステップＳ１）してＩ／Ｏキュー２０３の状態を調べ、この結果、Ｉ／Ｏキュー２０３が空であれば、Ｉ／Ｏキュー２０３へのキューイング待ち（ステップＳ５）として新たなＩ／Ｏ要求がキューイングされるのを待ち合わせるが、Ｉ／Ｏキュー２０３が空でなければ（既にキューイングされているＩ／Ｏ要求があれば）、Ｉ／Ｏ要求選択手段２０５により優先度の高い順でＩ／Ｏ要求を取り出し（ステップＳ２／最高優先度のＩ／Ｏ要求を取り出すことになる）、引き続いてＩ／Ｏ手段２０６がファイルシステムを呼び出してＩ／Ｏ処理開始（ステップＳ３）することでＩ／Ｏ動作を行い、Ｉ／Ｏ動作が終了した時点でそのＩ／Ｏ要求をＩ／Ｏ終了キュー２０７へ投入（ステップＳ４）し、何れの場合もその後はＩ／Ｏキュー２０３が空ではないか否かの判定（ステップＳ１）の前に戻って同様な処理を繰り返す。こうした繰り返しの処理で上述したＩ／Ｏキュー２０３が空ではないか否かの判定（ステップＳ１）により、Ｉ／Ｏキュー２０３が空でなく他のＩ／Ｏ要求がキューイングされていれば、今度はそのＩ／Ｏ要求を対象にして上述した各処理（ステップＳ２〜ステップＳ４）を繰り返すことで優先度の高い順でＩ／Ｏ要求に応じたＩ／Ｏ動作が行われる。
【００４２】
図６は、サーバー２で構築される送信プロセス２０８の動作処理を示したフローチャートである。
【００４３】
送信プロセス２０８では、起動時に終了したＩ／Ｏ要求がＩ／Ｏ終了キュー２０７にあるか否かを判定（ステップＳ１）してＩ／Ｏ終了キュー２０７の状態を調べ、この結果、Ｉ／Ｏ終了キュー２０７に終了したＩ／Ｏ要求が何も無ければ（Ｉ／Ｏ終了キュー２０７に何もキューイングされていなければ）、Ｉ／Ｏ終了待ち（ステップＳ４）として新たな終了したＩ／Ｏ要求がキューイングされるのを待ち合わせるが、既にキューイングされている終了したＩ／Ｏ要求があれば、Ｉ／Ｏ終了通知手段２０９によりＩ／Ｏ終了キュー２０７から先頭の終了したＩ／Ｏ要求を１つ取り出すことでＩ／Ｏ終了キュー２０７から抽出（ステップＳ２）する処理を行い、クライアント１へそのＩ／Ｏ要求が終了した旨（Ｉ／Ｏ動作終了の旨）の通信制御用のパケットを送信（ステップＳ３）し、何れの場合もその後は終了したＩ／Ｏ要求がＩ／Ｏ終了キュー２０７にあるか否かの判定（ステップＳ１）の前に戻って同様な処理を繰り返す。こうした繰り返しの処理で上述した終了したＩ／Ｏ要求がＩ／Ｏ終了キュー２０７にあるか否かの判定（ステップＳ１）により、Ｉ／Ｏ終了キュー２０７に他の終了したＩ／Ｏ要求がキューイングされていれば、今度はその終了したＩ／Ｏ要求を対象にして上述した各処理（ステップＳ２，ステップＳ３）を繰り返すことで優先度の高い順で終了したＩ／Ｏ要求のＩ／Ｏ動作終了通知がクライアント１側へ行われる。
【００４４】
ところで、上述したＩ／Ｏ優先度制御は、システム運用のためのプログラムやそれを格納した記録媒体によっても具現することができる。
【００４５】
具体的に言えば、ネットワークファイルシステム用プログラムの場合、ネットワーク回線３上で接続されたクライアント１及びサーバー２の間で通信制御によりＩ／Ｏ制御を行うことでファイル形式でのデータ転送が可能なネットワークファイルシステムにあってＩ／Ｏ制御用として適用されるもので、クライアント側で運用されると共に、Ｉ／Ｏ要求に供される通信制御用のパケットに優先度を付加した上でネットワーク回線へ送信する処理を行う第１のプログラムと、サーバー側で運用されると共に、第１のプログラムの実行によりネットワーク回線経由でクライアント側から受信した優先度付きのＩ／Ｏ要求に応じてＩ／Ｏ動作を行う際、Ｉ／Ｏ制御として該優先度付きのＩ／Ｏ要求から優先度の高い順に該Ｉ／Ｏ要求を選択してＩ／Ｏ処理するためのＩ／Ｏ用優先度制御の処理を行う第２のプログラムとを含むようにすれば良い。
【００４６】
又、第１のプログラムは、Ｉ／Ｏ要求に優先度を付加するＩ／Ｏ発行プロセスを有し、第２のプログラムは、Ｉ／Ｏ用優先度制御として、クライアント側から優先度付きのＩ／Ｏ要求を受信する受信プロセスと、受信プロセスで受信した優先度付きのＩ／Ｏ要求から優先度の高い順に該Ｉ／Ｏ要求を選択してＩ／Ｏ処理した上でＩ／Ｏ動作を行うＩ／Ｏ処理プロセスと、Ｉ／Ｏ処理プロセスで優先度の高い順に従ったＩ／Ｏ処理によるＩ／Ｏ動作の終了をネットワーク回線経由でクライアント側へ送信する送信プロセスとを有するものとすれば良い。
【００４７】
これに対し、これらのネットワークファイルシステム用プログラムを格納してＩ／Ｏ制御用に供されるネットワークファイルシステム用記録媒体の場合、クライアント１側に配備されて第１のプログラムを実行するために第１のプログラムを記録した第１の記録媒体と、サーバー２側に配備されて第２のプログラムを実行するために第２のプログラムを記録した第２の記録媒体とを有するものとすれば良い。
【００４８】
このようなネットワークファイルシステム用プログラムやネットワークファイルシステム用記録媒体は、クライアント１やサーバー２における通信制御手段の一部として備えられる略図した中央演算処理装置（ＣＰＵ）により処理制御されて運用されるもので、通常プログラムのみが適用される場合には中央演算処理装置（ＣＰＵ）が持つ諸機能を起動制御するためのデータを格納する記憶装置に対して予め記憶格納されるような構成となる。
【００４９】
以上に述べた通り、本発明によれば、システム管理者の運用方針により特定のジョブに対して優先度を付加できるので、Ｉ／Ｏ負荷が高い状態でも緊急度の高いジョブのＩ／Ｏ処理を優先的に行うことができるようになる他、ネットワークファイルシステムのクライアントのＣＰＵスケジューリングの優先度に対応させてＩ／Ｏ要求の優先度を設定できるので、高いＣＰＵスケジューリングの優先度を持つジョブがサーバーにおいてＩ／Ｏ処理待ちで待たされることなく優先的に効率良くＩ／Ｏ動作され、しかもサーバが受信したＩ／Ｏ要求の通信制御用のパケットは受信プロセスによって直ちに受信バッファより取り除かれてＩ／Ｏキューに投入されるため、サーバーが多くのＩ／Ｏ要求を受信して一度に処理し切れない場合でも受信バッファが溢れてＩ／Ｏ要求を消失してしまうような不都合な事態を生じることが無く、結果として、Ｉ／Ｏ負荷が高くても緊急度の高いジョブのＩ／Ｏ処理を優先的に効率良く行わせ得ると共に、サーバーが多くのＩ／Ｏ要求を受信した場合にもＩ／Ｏ要求の消失を回避し得るものとなる。
【図面の簡単な説明】
【図１】本発明のネットワークファイルシステム用Ｉ／Ｏ制御方法を適用したネットワークファイルシステムの要部であるクライアント及びサーバーの基本構成をＩ／Ｏ処理手順を含めて示した機能ブロック図である。
【図２】図１に示すネットワークファイルシステムの要部であるクライアントからの優先度付きＩ／Ｏ要求に対するサーバーでのＩ／Ｏ処理手順を具体的に示したシーケンスの模式図である。
【図３】図１に示すネットワークファイルシステムの要部が適用される一例に係るネットワークファイルシステムの基本構成を示したブロック図である。
【図４】図１に示すネットワークファイルシステムの要部のサーバーで構築される受信プロセスの動作処理を示したフローチャートである。
【図５】図１に示すネットワークファイルシステムの要部のサーバーで構築されるＩ／Ｏ処理プロセスの動作処理を示したフローチャートである。
【図６】図１に示すネットワークファイルシステムの要部のサーバーで構築される送信プロセスの動作処理を示したフローチャートである。
【図７】従来のデータ転送機能を備えたネットワークファイルシステムの基本構成を示したブロック図（図１に示すネットワークファイルシステムの要部が適用される他例に係るネットワークファイルシステムの基本構成を示したブロック図）である。
【符号の説明】
１，１０  クライアント
２，２０  サーバー
３  ネットワーク回線
４  記憶装置
５  交換機
１０１  Ｉ／Ｏ発行プロセス
１０２  優先度付加手段
１０３  Ｉ／Ｏ要求手段
１０４  Ｉ／Ｏ終了通知待ち合わせ手段
２０１  受信プロセス
２０２  Ｉ／Ｏ要求受信手段
２０３  Ｉ／Ｏキュー
２０４  Ｉ／Ｏ処理プロセス
２０５  Ｉ／Ｏ要求選択手段
２０６  Ｉ／Ｏ手段
２０７  Ｉ／Ｏ終了キュー
２０８  送信プロセス
２０９  Ｉ／Ｏ終了通知手段
【図１】
0004151330.tif 000002
【図２】
0004151330.tif 000003
【図３】
0004151330.tif 000004
【図４】
0004151330.tif 000005
【図５】
0004151330.tif 000006
【図６】
0004151330.tif 000007
【図７】
0004151330.tif 000008