(57)【要約】【課題】データの処理単位が異なる複数の情報処理装置間のデータアクセスにおいて、ファイルのオープン数を減少させる。【解決手段】第１情報処理装置２０が、第１データブロック１０４と同数の第２データブロック２０８を有する、データセット１０３に対応する第１データファイル２０７を記憶する第１記憶部２０４を備え、第２情報処理装置１０が、第１情報処理装置２０に対して、第１データファイルのオープン命令を発行した後に、データファイルの複数の第２データブロック２０８のうち、２つ以上の第２データブロック２０８に対してそれぞれデータアクセス命令を発行するアクセス制御部１０１を備える。【選択図】図１
2020135828.tif 000002
【特許請求の範囲】
【請求項１】
データを第１の処理単位で管理する第１情報処理装置と、複数の第１データブロックを有するデータセットを第２の処理単位で管理する第２情報処理装置とを備える情報処理システムであって、
前記第１情報処理装置が、
前記第１データブロックと同数の第２データブロックを有する、前記データセットに対応する第１データファイルを記憶する第１記憶部
を備え、
前記第２情報処理装置が、
前記第１情報処理装置に対して、前記第１データファイルのオープン命令を発行した後に、前記データファイルの複数の第２データブロックのうち、２つ以上の第２データブロックに対してそれぞれデータアクセス命令を発行するアクセス制御部
を備えることを特徴とする、コンピュータシステム。
【請求項２】
前記第１情報処理装置が、
前記第１データファイルにおいてデータ更新がされた前記第２データブロックのデータを抽出して、第２データファイルを作成する作成部を備える
ことを特徴とする、請求項１記載のコンピュータシステム。
【請求項３】
前記第２データファイルの数が閾値以上の場合に、前記第２データファイルのデータを前記第１データファイルにおける対応する前記第２データブロックにライトさせた後に、当該第２データファイルを削除させる書き戻し処理部
を備えることを特徴とする、請求項２記載のコンピュータシステム。
【請求項４】
前記第１情報処理装置が、前記第１データファイルの前記第２データブロックに対する更新履歴を管理する管理情報を記憶する第２記憶部を備え、
前記第２情報処理装置が、前記管理情報を参照して、前記第１情報処理装置における前記第１データファイルと前記第２データファイルとのうちアクセス先のデータファイルを決定するアクセス制御部を備えることを特徴とする、請求項２または３記載のコンピュータシステム。
【請求項５】
データを第１の処理単位で管理する第１情報処理装置とネットワークを介して通信可能に接続される情報処理装置であって、
複数の第１データブロックを有するデータセットを第２の処理単位で管理する管理部と、
前記第１情報処理装置の記憶装置に記憶された、前記第１データブロックと同数の第２データブロックを有する、前記データセットに対応する第１データファイルに対して、前記第１データファイルを指定してオープン命令を発行した後に、前記第１データファイルの複数の第２データブロックのうち、２つ以上の第２データブロックに対してそれぞれデータアクセス命令を発行するアクセス制御部と
を備えることを特徴とする、情報処理装置。
【請求項６】
データを第１の処理単位で管理する第１情報処理装置とネットワークを介して通信可能に接続される情報処理装置のプロセッサに、
複数の第１データブロックを有するデータセットを第２の処理単位で管理し、
前記第１情報処理装置の記憶装置に記憶された、前記第１データブロックと同数の第２データブロックを有する、前記データセットに対応する第１データファイルに対して、前記第１データファイルを指定してオープン命令を発行した後に、前記第１データファイルの複数の第２データブロックのうち、２つ以上の第２データブロックに対してそれぞれデータアクセス命令を発行する
処理を実行させる、制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータシステム，情報処理装置および制御プログラムに関する。
【背景技術】
【０００２】
メインフレームコンピュータ（以下、単にメインフレームという）におけるデータセットへのアクセス方法として、ＢＳＡＭ（Basic Sequential Access Method：基本順アクセス方式）やＢＤＡＭ（Basic Direct Access Method：基本直接アクセス方式）と呼ばれる手法が知られている。
【０００３】
これらのアクセス方法では、メインフレーム上のデータセットにブロックをアクセス単位（ブロック単位）としてアクセス（ランダムアクセス）が可能である。
【０００４】
一方、ＵＮＩＸ（登録商標）やＬｉｎｕｘ（登録商標）などのオープンな技術で構成されるサーバ（オープンサーバ）上のファイルシステムではファイルを最小のアクセス単位（ファイル単位）としてアクセスが可能である。
【０００５】
これらのメインフレームとオープンサーバとを組み合わせて使用する際に、メインフレームのデータセットに対するブロック単位でのアクセスと同様のアクセス方法を、オープンサーバ上にあるファイルに適用する場合がある。この場合、メインフレームにおける１ブロックをオープンサーバにおける１ファイルに割り当てることが一般に行なわれる。
【０００６】
図１６は従来のコンピュータシステムにおけるデータ管理方法を説明するための図である。  
【０００７】
図１６に示す従来のコンピュータシステム５００は、メインフレーム５１０とＮＦＳ（Network File System）サーバ５２０とを備える。
【０００８】
ＮＦＳサーバ５２０は、ＮＦＳのディレクトリ上でデータをファイル単位で管理する。ＮＦＳサーバ５２０においては、メインフレーム５１０において管理される複数のブロックに対応させて複数（図１６に示す例においては１０個）のファイル（ファイル＃１〜＃１０）が形成されている。ＮＦＳサーバ５２０において管理されるこれらの複数のファイル＃１〜＃１０は、例えば、一つのファイルを分割することにより生成される。
【０００９】
メインフレーム５１０においては、ＢＳＡＭによるデータアクセスを行なうアプリケーション（以下、ＢＳＡＭアプリケーション）が実行される。ＢＳＡＭアプリケーションはリードやライトのデータアクセスをブロック単位で行なう。
【００１０】
メインフレーム５１０においては、ＮＦＳサーバ５２０の複数のファイルにアクセスするために仮想的なデータセットを設け、このデータセットに、ＮＦＳサーバ５２０の複数のファイル＃１〜＃１０に対応させた複数のブロックを設定する。図１６においては、メインフレーム５１０のデータセットは、ＮＦＳサーバ５２０の１０個のファイル＃１〜＃１０に対応させて、１０個のブロック＃１〜＃１０を備える。
【００１１】
そして、従来のコンピュータシステム５００においては、メインフレーム５１０上のデータセット中の各ブロックは、ＮＦＳサーバ５２０上の対応するファイルにマッピングされている。
【００１２】
ＢＳＡＭアプリケーションは、データセットのブロックにアクセスすることで、ＮＦＳサーバ５２０における対応するファイルへのアクセスが実現される。メインフレーム５１０においては、ＮＦＳサーバ５２０に対してファイル名を指定してNFS READ命令を発行することでＮＦＳサーバ５２０のファイルのリードを行なう。また、ＮＦＳサーバ５２０に対してファイル名を指定してNFS WRITE命令を発行することでＮＦＳサーバ５２０のファイルのライトを行なう。なお、ＮＦＳサーバ５２０において管理されるファイル＃１〜＃１０のファイル名は、例えば、分割元のファイル名＋対応するブロックのブロック番号である。
【００１３】
また、メインフレーム５１０においては、NFS READ命令やNFS WRITE命令を発行する毎に、アクセス対象のファイルをオープンするNFS OPEN命令を発行する。
【先行技術文献】
【特許文献】
【００１４】
【特許文献１】特開２００１−８４１１５号公報
【特許文献２】特開２００８−１７１２４６号公報
【特許文献３】特表２００１−５０８８９４号公報
【発明の概要】
【発明が解決しようとする課題】
【００１５】
しかしながら、このような従来のコンピュータシステムにおいては、メインフレーム５１０において、データセット中の複数ブロックにアクセスする場合に、ＮＦＳサーバ５２０における、これらのブロック番号に対応する複数のファイルに対してそれぞれオープン命令（NFS OPEN）の発行が必要になる。そのため、複数のブロックに対するリードやライトを大量に行なう場合には、ファイルへのオープン命令の発行数が増加しアクセス性能が低下するという課題がある。
【００１６】
１つの側面では、本発明は、データの処理単位が異なる複数の情報処理装置間のデータアクセスにおいて、ファイルのオープン数を減少させることができるようにすることを目的とする。
【課題を解決するための手段】
【００１７】
このため、このコンピュータシステムは、データを第１の処理単位で管理する第１情報処理装置と、複数の第１データブロックを有するデータセットを第２の処理単位で管理する第２情報処理装置とを備える情報処理システムであって、前記第１情報処理装置が、前記第１データブロックと同数の第２データブロックを有する、前記データセットに対応する第１データファイルを記憶する第１記憶部を備え、前記第２情報処理装置が、前記第１情報処理装置に対して、前記第１データファイルのオープン命令を発行した後に、前記データファイルの複数の第２データブロックのうち、２つ以上の第２データブロックに対してそれぞれデータアクセス命令を発行する。
【発明の効果】
【００１８】
一実施形態によれば、データの処理単位が異なる複数の情報処理装置間のデータアクセスにおいて、ファイルのオープン数を減少させることができる。
【図面の簡単な説明】
【００１９】
【図１】実施形態の一例としてのコンピュータシステムの機能構成を例示する図である。
【図２】実施形態の一例としてのコンピュータシステムのメインフレームのハードウェア構成を例示する図である。
【図３】実施形態の一例としてのコンピュータシステムにおける管理情報テーブルを例示する図である。
【図４】実施形態の一例としてのコンピュータシステムのＮＦＳサーバのＮＦＳディレクトリにブロックファイルが作成された状態を例示する図である。
【図５】実施形態の一例としてのコンピュータシステムのＮＦＳサーバのＮＦＳディレクトリにブロックファイルが作成された状態を例示する図である。
【図６】実施形態の一例としてのコンピュータシステムのＮＦＳサーバのＮＦＳディレクトリにおけるブロックファイルの書き戻し機能を説明するための図である。
【図７】実施形態の一例としてのコンピュータシステムのＮＦＳサーバのハードウェア構成を例示する図である。
【図８】実施形態の一例としてのコンピュータシステムにおける動作概要を説明するための図である。
【図９】実施形態の一例としてのコンピュータシステムにおけるオリジナルファイルの新規作成処理を説明するためのフローチャートである。
【図１０】実施形態の一例としてのコンピュータシステムのＮＦＳサーバのＮＦＳディレクトリの初期状態を例示する図である。
【図１１】実施形態の一例としてのコンピュータシステムにおけるオリジナルファイルの更新処理を説明するためのフローチャートである。
【図１２】実施形態の一例としてのコンピュータシステムにおけるリード処理を説明するためのフローチャートである。
【図１３】実施形態の一例としてのコンピュータシステムにおけるパターンによるブロックファイル書き戻し処理を説明するためのフローチャートである。
【図１４】実施形態の一例としてのコンピュータシステムにおけるパターンによるブロックファイル書き戻し処理を説明するためのフローチャートである。
【図１５】実施形態の一例としてのコンピュータシステムにおけるオリジナルファイルへのデータの追記処理を説明するためのフローチャートである。
【図１６】従来のコンピュータシステムにおけるデータ管理方法を説明するための図である。
【発明を実施するための形態】
【００２０】
以下、図面を参照して本コンピュータシステム，情報処理装置および制御プログラムに係る実施の形態を説明する。ただし、以下に示す実施形態はあくまでも例示に過ぎず、実施形態で明示しない種々の変形例や技術の適用を排除する意図はない。すなわち、本実施形態を、その趣旨を逸脱しない範囲で種々変形して実施することができる。また、各図は、図中に示す構成要素のみを備えるという趣旨ではなく、他の機能等を含むことができる。
【００２１】
（Ａ）構成
図１は実施形態の一例としてのコンピュータシステム１の機能構成を例示する図である。
【００２２】
図１に例示するコンピュータシステム１は、メインフレームコンピュータ（第２情報処理装置）１０とＮＦＳサーバ（第１情報処理装置）２０とを備える。メインフレームコンピュータ１０とＮＦＳサーバ２０とはネットワーク５０を介して通信可能に接続される。以下、メインフレームコンピュータ１０を、単にメインフレーム１０という場合がある。
【００２３】
ネットワーク５０は、例えば、ＬＡＮ（Local Area Network）であり、ＴＣＰ／ＩＰ（Transmission Control Protocol/Internet Protocol）等の規格に沿って種々のデータやプログラム等の通信を実現する。
【００２４】
メインフレーム１０は情報処理装置（コンピュータ）であり、処理対象のデータに対してブロック単位でのデータアクセス（データアクセス）を行なう。これに対して、ＮＦＳサーバ２０においてはファイル単位でデータアクセスを行なう。すなわち、メインフレーム１０とＮＦＳサーバ２０とではデータの扱い形式（データ取扱い単位）が異なる。
【００２５】
［メインフレーム］
メインフレーム１０においては、アプリケーション１０２が実行され、このアプリケーション１０２により第１の処理単位であるブロック単位でのデータアクセスが発生する。
【００２６】
アプリケーション１０２は、例えば、ＢＳＡＭによるデータを行なうＢＳＡＭアプリケーションや、ＢＤＡＭによるデータアクセスを行なうＢＤＡＭアプリケーションであってもよい。
【００２７】
メインフレーム１０のアプリケーション１０２は、ＮＦＳサーバ２０にデータアクセスを行なってデータのリードやライトを行なう。
【００２８】
アプリケーション１０２は、ＮＦＳサーバ２０のデータにアクセスするために仮想的なデータセット１０３を設け、このデータセット１０３に複数のブロック１０４を設定する。ブロック１０４は所定サイズを有するデータ塊（データ列，記憶領域）であり、図２を用いて後述するメインフレーム１０の記憶装置１３やメモリ１２の記憶領域に格納される。ブロック１０４は固定長であってもよく可変長であってもよい。ブロック１０４は、記憶領域における格納位置を表すアドレス情報を用いて特定してもよい。ブロック１０４は第１データブロックに相当する。
【００２９】
図１においては、メインフレーム１０のデータセット１０３において３つ以上のブロック１０４が例示されている。以下、データセット１０３を構成する複数のブロック１０４を符号＃および数字を付して表す場合がある（例えば、ブロック＃１〜＃３）。
【００３０】
アプリケーション１０２は、データセット１０３のブロック１０４を指定してデータのリードやライトを行なう。以下、データのリードやライトをデータアクセスという場合がある。
【００３１】
例えば、アプリケーション１０２は、ファイルオープン命令（OPENコマンド）によりデータセット１０３をオープンした後、このデータセット１０３に含まれる特定のブロック１０４をPOINTコマンドにより指定する。POINTコマンドは、ブロック番号を位置づける命令である。そして、アプリケーション１０２は、リード（READ）やライト（WRITE）の命令を実行することで、ブロック１０４に対するデータのリードやライトを実現する。処理の終了後には、アプリケーション１０２はクローズ命令（CLOSEコマンド）によりデータセット１０３をクローズする。
【００３２】
後述の如く、ＮＦＳサーバ２０には、メインフレーム１０のデータセット１０３に対応するファイル（オリジナルファイル２０７）が格納される。そして、ＮＦＳサーバ２０には、メインフレーム１０のデータセット１０３のブロック１０４に対応するブロック２０８およびブロックファイル２０９が格納される。
【００３３】
メインフレーム１０においてデータセット１０３のブロック１０４を指定してデータアクセスを行なうことで、ＮＦＳサーバ２０において、対応するデータ（ブロック２０８もしくはブロックファイル２０９）に対するデータアクセスが行なわれる。
【００３４】
図１に示すように、メインフレーム１０はアクセス制御部１０１としての機能を備える。アクセス制御部１０１は、アプリケーション１０２によるデータセット１０３のブロック１０４に対するデータアクセスが行なわれると、このデータアクセス対象のブロック１０４に対応するＮＦＳサーバ２０に格納されているデータ（ブロック２０８もしくはブロックファイル２０９）に対してデータアクセスを行なう。
【００３５】
アクセス制御部１０１は、アプリケーション１０２から発行されるリードやライトの命令（データアクセス命令）に応じて、ＮＦＳサーバ２０に対してデータのリードやライトの命令（データアクセス命令）を発行する。
【００３６】
アクセス制御部１０１は、ＮＦＳサーバ２０に対してファイルオープン命令（NFS OPEN）の発行や、ファイルクローズ命令（NFS CLOSE）の発行を行なう。
【００３７】
また、アクセス制御部１０１は、ＮＦＳサーバ２０に対して、ファイルのデータに対するリード命令（NFS READ）の発行や、ライト命令（NFS WRIRTE）の発行を行なう。さらに、アクセス制御部１０１は、ＮＦＳサーバ２０に対して、ファイルのデータに対するリード命令（NFS READ）の発行や、リムーブ（削除）命令（NFS DELETE）の発行を行なう。
【００３８】
また、アクセス制御部１０１は、ユーザから入力されるファイル作成指示に従い、ＮＦＳサーバ２０に対して、ファイルクリエイト命令（NFS CREATE）の発行を行なう。この際、アクセス制御部１０１は、ユーザによって入力されるファイル名を、ファイルクリエイト命令とともに（もしくは前後して）、ＮＦＳサーバ２０に送信する。
【００３９】
アクセス制御部１０１は、ＮＦＳサーバ２０のオリジナルファイル管理部２０２に対して、管理情報ファイル２０５のクリエイト命令（NFS CREATE）を発行する。アクセス制御部１０１は、この管理情報ファイル２０５のクリエイト命令を発行するに際して、オリジナルファイル管理部２０２に対して、作成する管理情報ファイル２０５のファイル名（管理情報ファイル名）を指定（通知）する。
【００４０】
アクセス制御部１０１は、ＮＦＳサーバ２０に対して、オリジナルファイル２０７のオープン命令を発行した後に、オリジナルファイル２０７の複数のブロック２０８のうち、２つ以上のブロック２０８に対してそれぞれデータアクセス命令（リード命令，ライト命令）を発行する。
【００４１】
次に、図２を参照しながら、実施形態の一例としてのコンピュータシステム１のメインフレーム１０のハードウェア構成について説明する。図２は、メインフレーム１０のハードウェア構成の一例を示すブロック図である。
【００４２】
メインフレーム１０は、例えば、プロセッサ１１，メモリ１２，記憶装置１３，グラフィック処理装置１４，入力インタフェース１５，光学ドライブ装置１６，機器接続インタフェース１７およびネットワークインタフェース１８を構成要素として有する。これらの構成要素１１〜１８は、バス１９を介して相互に通信可能に構成される。
【００４３】
プロセッサ（処理部）１１は、メインフレーム１０全体を制御する。プロセッサ１１は、マルチプロセッサであってもよい。プロセッサ１１は、例えばＣＰＵ（Central Processing Unit），ＭＰＵ（Micro Processing Unit），ＤＳＰ（Digital Signal Processor），ＡＳＩＣ（Application Specific Integrated Circuit），ＰＬＤ（Programmable Logic Device），ＦＰＧＡ（Field Programmable Gate Array）のいずれか一つであってもよい。また、プロセッサ１１は、ＣＰＵ，ＭＰＵ，ＤＳＰ，ＡＳＩＣ，ＰＬＤ，ＦＰＧＡのうちの２種類以上の要素の組み合わせであってもよい。そして、プロセッサ１１がメインフレーム１０用の制御プログラム（図示省略）を実行することにより、前述したアクセス制御部１０１として機能する。アクセス制御部１０１は、例えば、ＯＳ（Operating System）プログラム上で動作する機能として実装されてもよい。アクセス制御部１０１は、ＯＳプログラムの機能として実装されてもよく、また、アプリケーション１０２の機能として実装されてもよい。
【００４４】
なお、メインフレーム１０は、例えばコンピュータ読み取り可能な非一時的な記録媒体に記録されたプログラム（制御プログラムやＯＳプログラム）を実行することにより、アクセス制御部１０１としての機能を実現する。メインフレーム１０に実行させる処理内容を記述したプログラムは、様々な記録媒体に記録しておくことができる。例えば、メインフレーム１０に実行させるプログラムを記憶装置１３に格納しておくことができる。プロセッサ１１は、記憶装置１３内のプログラムの少なくとも一部をメモリ（ＲＡＭ）１２にロードし、ロードしたプログラムを実行する。
【００４５】
また、メインフレーム１０（プロセッサ１１）に実行させるプログラムを、光ディスク１６ａ，メモリ装置１７ａ，メモリカード１７ｃ等の非一時的な可搬型記録媒体に記録しておくこともできる。可搬型記録媒体に格納されたプログラムは、例えばプロセッサ１１からの制御により、記憶装置１３にインストールされた後、実行可能になる。また、プロセッサ１１が、可搬型記録媒体から直接プログラムを読み出して実行することもできる。
【００４６】
メモリ１２は、ＲＯＭ（Read Only Memory）およびＲＡＭ（Random Access Memory）を含む記憶メモリである。メモリ１２のＲＡＭはメインフレーム１０の主記憶装置として使用される。ＲＡＭには、プロセッサ１１に実行させるＯＳプログラムや制御プログラムの少なくとも一部が一時的に格納される。また、メモリ１２には、プロセッサ１１による処理に必要な各種データが格納される。この制御プログラムには、上述したアプリケーション１０２が含まれてもよい。メモリ１２のＲＡＭには、データセット１０３を実現するための情報が格納される。
【００４７】
記憶装置１３は、ハードディスクドライブ（Hard Disk Drive：ＨＤＤ）、ＳＳＤ（Solid State Drive）、ストレージクラスメモリ（Storage Class Memory：ＳＣＭ）等の記憶装置であって、種々のデータを格納するものである。記憶装置１３は、メインフレーム１０の補助記憶装置として使用される。記憶装置１３には、ＯＳプログラム，制御プログラム、アプリケーション１０２および各種データが格納される。なお、補助記憶装置としては、ＳＣＭやフラッシュメモリ等の半導体記憶装置を使用することもできる。また、この記憶装置１３に、データセット１０３を実現するための情報を格納してもよい。
【００４８】
グラフィック処理装置１４には、モニタ１４ａが接続されている。グラフィック処理装置１４は、プロセッサ１１からの命令に従って、画像をモニタ１４ａの画面に表示させる。モニタ１４ａとしては、ＣＲＴ（Cathode Ray Tube）を用いた表示装置や液晶表示装置等が挙げられる。モニタ１４ａが前述した出力部３０２に相当する。
【００４９】
入力インタフェース１５には、キーボード１５ａおよびマウス１５ｂが接続されている。入力インタフェース１５は、キーボード１５ａやマウス１５ｂから送られてくる信号をプロセッサ１１に送信する。なお、マウス１５ｂは、ポインティングデバイスの一例であり、他のポインティングデバイスを使用することもできる。他のポインティングデバイスとしては、タッチパネル，タブレット，タッチパッド，トラックボール等が挙げられる。
【００５０】
光学ドライブ装置１６は、レーザ光等を利用して、光ディスク１６ａに記録されたデータの読み取りを行なう。光ディスク１６ａは、光の反射によって読み取り可能にデータを記録された可搬型の非一時的な記録媒体である。光ディスク１６ａには、ＤＶＤ（Digital Versatile Disc），ＤＶＤ−ＲＡＭ，ＣＤ−ＲＯＭ（Compact Disc Read Only Memory），ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）等が挙げられる。
【００５１】
機器接続インタフェース１７は、メインフレーム１０に周辺機器を接続するための通信インタフェースである。例えば、機器接続インタフェース１７には、メモリ装置１７ａやメモリリーダライタ１７ｂを接続することができる。メモリ装置１７ａは、機器接続インタフェース１７との通信機能を搭載した非一時的な記録媒体、例えばＵＳＢ（Universal Serial Bus）メモリである。メモリリーダライタ１７ｂは、メモリカード１７ｃへのデータの書き込み、またはメモリカード１７ｃからのデータの読み出しを行なう。メモリカード１７ｃは、カード型の非一時的な記録媒体である。
【００５２】
ネットワークインタフェース１８は、ネットワーク５０に接続される。ネットワークインタフェース１８は、ネットワーク５０を介して、他の情報処理装置や通信機器等の外部装置との間でデータの送受信を行なう。ネットワーク５０にはＮＦＳサーバ２０が接続され、メインフレーム１０は、ネットワークインタフェース１８およびネットワーク５０を介してＮＦＳサーバ２０と通信可能に接続される。
【００５３】
［ＮＦＳサーバ］
ＮＦＳサーバ２０はサーバ機能を備える情報処理装置（コンピュータ）であり、オープンサーバとして構成され、ＮＦＳのディレクトリ上においてデータを第２の処理単位であるファイル単位で管理する。
【００５４】
図１に示すように、ＮＦＳサーバ２０は、ファイル管理部２０１および記憶部２０４としての機能を備える。
【００５５】
記憶部２０４は、管理情報ファイル２０５，オリジナルファイル２０７およびブロックファイル２０９を格納する。記憶部２０４は、図７を用いて後述する、ＮＦＳサーバ２０の記憶装置２３やメモリ２２に対応する。記憶部２０４は、オリジナルファイル２０７を記憶する第１記憶部として機能する。また、記憶部２０４は、管理情報テーブル２０６を記憶する第２記憶部としても機能する。
【００５６】
オリジナルファイル２０７は、メインフレーム１０のデータセット１０３に対応して１対１に備えられる。すなわち、オリジナルファイル２０７はデータセット１０３毎に備えられる。従って、ＮＦＳサーバ２０に複数のオリジナルファイル２０７が備えられる場合には、メインフレーム１０において、オリジナルファイル２０７と同数の複数のデータセット１０３が形成される。すなわち、ＮＦＳサーバ２０における１ファイルにメインフレーム１０の１データセット１０３がマッピングされる。
【００５７】
オリジナルファイル２０７は、対応するデータセット１０３と同様に複数のブロック２０８を備える。オリジナルファイル２０７におけるブロック２０８は、データセット１０３におけるブロック１０４に対応する。ブロック２０８は第２データブロックに相当する。
【００５８】
ブロック２０８はブロック１０４と同様に、所定サイズを有するデータ塊（データ列，記憶領域）であり、図７を用いて後述するＮＦＳサーバ２０の記憶装置２３やメモリ２２の記憶領域に格納される。ブロック１０４は固定長であってもよく可変長であってもよい。ブロック２０８は、記憶領域における格納位置を特定するアドレス情報を用いて特定してもよい。
【００５９】
ブロックファイル２０９は、オリジナルファイル２０７におけるブロック２０８のデータを抽出してファイルとして保存することにより形成される。後述するファイル管理部２０１のブロックファイル管理部２０３がブロックファイル２０９を作成する。ブロックファイル２０９の詳細は後述する。
【００６０】
ファイル管理部２０１は、オリジナルファイル管理部２０２およびブロックファイル管理部２０３としての機能を備える。
【００６１】
オリジナルファイル管理部２０２は、オリジナルファイル（第１データファイル）２０７を管理する。ブロックファイル管理部２０３はブロックファイル２０９を管理する。
【００６２】
オリジナルファイル管理部２０２およびブロックファイル管理部２０３は、オリジナルファイル２０７およびブロックファイル２０９の管理に管理情報テーブル２０６を用いる。
【００６３】
管理情報テーブル２０６は、オリジナルファイル２０７と同様に、データセット１０３毎に備えられる。
【００６４】
図３は実施形態の一例としてのコンピュータシステム１における管理情報テーブル２０６を例示する図である。
【００６５】
管理情報テーブル２０６は、オリジナルファイル２０７のブロック２０８に関する情報である。図３に例示する管理情報テーブル２０６は、ブロック番号とブロック長とを対応付けて構成される。
【００６６】
ブロック番号は、ブロック２０８を特定するユニークな識別情報である。ブロック番号には、例えば、連続する数字を用いてもよい。ブロック長はブロック２０８のデータ長（データサイズ）である。
【００６７】
管理情報ファイル２０５および管理情報テーブル２０６はオリジナルファイル管理部２０２によって作成される。
【００６８】
オリジナルファイル管理部２０２は、メインフレーム１０のアクセス制御部１０１から発行される管理情報ファイル２０５のクリエイト命令（NFS CREATE）を受信すると、管理情報ファイル２０５を生成する。オリジナルファイル管理部２０２は、アクセス制御部１０１から指定されるファイル名（管理情報ファイル名）を管理情報ファイル２０５のファイル名として用いる。
【００６９】
図３に示す例においては、管理情報テーブル２０６に、ブロック番号1，10，30で特定される３つのブロック２０８が登録されており、これらの各ブロック長はいずれも1024Byteである。
【００７０】
オリジナルファイル管理部２０２は、オリジナルファイル２０７において、２回のライトが行なわれた、すなわち、データの更新がされたブロック２０８についての情報を管理情報テーブル２０６に登録する。
【００７１】
例えば、特定のブロック２０８に１度目（初回）のライトが行なわれると、オリジナルファイル管理部２０２は、管理情報テーブル２０６に、当該ブロック２０８の空のエントリを形成（設定）してもよい。このような、管理情報テーブル２０６へブロック２０８の空のエントリを設定することをブロック２０８の仮登録といってもよい。
【００７２】
そして、当該ブロック２０８に２回目のライトが行なわれた場合に、オリジナルファイル管理部２０２は、管理情報テーブル２０６の当該ブロック２０８のエントリにデータ長を登録してもよい。すなわち、オリジナルファイル２０７のブロック２０８のデータが更新された場合に、オリジナルファイル管理部２０２は、この更新されたブロック２０８の情報を管理情報テーブル２０６に登録する。このような、管理情報テーブル２０６へブロック２０８のデータ長を登録することをブロック２０８の本登録といってもよい。
【００７３】
管理情報テーブル２０６に登録されたブロックファイル２０９の情報は、後述するブロックファイル２０９の書き戻しを行なった際に、管理情報テーブル２０６からすみやかに削除することが望ましい。
【００７４】
また、オリジナルファイル管理部２０２は、管理情報テーブル２０６に本登録を行なったブロック２０８の情報（例えば、ブロック番号）とともに、ブロックファイル２０９の作成指示をブロックファイル管理部２０３に通知する。
【００７５】
そして、管理情報テーブル２０６を参照することで、オリジナルファイル２０７におけるブロック２０８の更新状況（ライト履歴）を把握することができる。管理情報テーブル２０６は、オリジナルファイル２０７におけるブロック２０８の更新状況を表す情報として用いることができる。
【００７６】
オリジナルファイル管理部２０２は、オリジナルファイル２０７を作成する。オリジナルファイル管理部２０２は、例えば、メインフレーム１０のアクセス制御部１０１からオリジナルファイル２０７のクリエイト（作成）命令（NFS CREATE）を受信すると、オリジナルファイル２０７を作成する。この際、オリジナルファイル管理部２０２は、アクセス制御部１０１から通知されるファイル名を、作成するオリジナルファイル２０７に設定する。
【００７７】
オリジナルファイル管理部２０２は、ＮＦＳディレクトリ上にオリジナルファイル２０７を作成し、このＮＦＳディレクトリ上においてオリジナルファイル２０７を管理する。
【００７８】
オリジナルファイル管理部２０２は、管理情報ファイル２０５の管理情報テーブル２０６を用いてオリジナルファイル２０７を管理する。
【００７９】
オリジナルファイル管理部２０２は、オリジナルファイル２０７へのデータアクセスを制御する。
【００８０】
オリジナルファイル管理部２０２は、アクセス制御部１０１から発行されるオリジナルファイル２０７を指定したオープン命令（NFS OPEN）を受信すると、対応するオリジナルファイル２０７のオープンを行ない、アクセス制御部１０１に対してNFS OPEN完了を通知する。
【００８１】
また、オリジナルファイル管理部２０２は、アクセス制御部１０１から発行されるオリジナルファイル２０７を指定したクローズ命令（NFS CLOSE）を受信すると、対応するオリジナルファイル２０７のクローズを行ない、アクセス制御部１０１に対してNFS CLOSE完了を通知する。
【００８２】
オリジナルファイル管理部２０２は、アクセス制御部１０１から発行されるブロック２０８を指定したリード命令（NFS READ）を受信すると、対応するオリジナルファイル２０７中のブロック２０８をメモリ２２等の所定の記憶領域等に読み込み、メインフレーム１０に応答する。その後、オリジナルファイル管理部２０２は、アクセス制御部１０１に対してNFS READ完了を通知する。
【００８３】
オリジナルファイル管理部２０２は、アクセス制御部１０１から発行されるブロック２０８を指定したライト命令（NFS WRITE）を受信すると、このライト命令と前後してアクセス制御部１０１から受信するライトデータを、対象のオリジナルファイル２０７中の当該ブロック２０８に書き込む。その後、オリジナルファイル管理部２０２は、アクセス制御部１０１に対してNFS WRITE完了を通知する。
【００８４】
ブロックファイル管理部２０３は、ブロックファイル（第２データファイル）２０９を管理する。ブロックファイル管理部２０３は、ブロックファイル２０９を作成する他、ブロックファイル２０９のデータのリードやライトの制御を行なう。
【００８５】
ブロックファイル管理部２０３は、ＮＦＳディレクトリ上にブロックファイル２０９を作成し、このＮＦＳディレクトリ上においてブロックファイル２０９を管理する。
【００８６】
ブロックファイル管理部２０３は、オリジナルファイル２０７のブロック２０８のデータが更新された場合に、この更新されたブロック２０８のデータを抽出してブロックファイル２０９として保存する。
【００８７】
図４は実施形態の一例としてのコンピュータシステム１のＮＦＳサーバ２０のＮＦＳディレクトリにブロックファイル２０９が作成された状態を例示する図である。
【００８８】
ブロックファイル管理部２０３は、オリジナルファイル２０７のブロック２０８にデータの更新がされた場合に、当該ブロック２０８に対応するブロックファイル２０９を作成する。
【００８９】
例えば、ブロックファイル管理部２０３は、オリジナルファイル管理部２０２からブロックファイル２０９の作成指示を受信すると、この作成指示とともに通知されたブロック番号に相当するブロック２０８のデータを用いてブロックファイル２０９に作成する。作成するブロックファイル２０９のファイル名は、例えば、当該ブロックファイル２０９の元となるブロック２０８のブロック番号を用いることが望ましい。これにより、例えば、ブロックファイル管理部２０３は、管理情報テーブル２０６を参照することで、この管理情報テーブル２０６に登録されたブロック２０８に対応するブロックファイル２０９に容易にアクセスすることができる。
【００９０】
なお、ブロックファイル２０９のファイル名はこれに限定されるものではなく、ブロック２０８のブロック番号以外の情報を設定してもよい。その場合、ブロック２０８とブロックファイル２０９とを対応付ける対応情報を記憶部２０４に記憶することが望ましい。
【００９１】
ブロックファイル管理部２０３は、ファイルクリエイト命令（例えば、NFS CREATE）を実行することでブロックファイル２０９を作成してもよい。ブロックファイル２０９の作成は、既知の種々の手法を用いて実現することができる。例えば、ブロックファイル管理部２０３は、Ｌｉｎｕｘにおけるtouchコマンド等のファイル作成コマンドを用いることでブロックファイル２０９を作成してもよい。
【００９２】
以下、オリジナルファイル２０７のブロック２０８のデータを用いてブロックファイル２０９を作成することを分割するという場合がある。
【００９３】
このようにして作成されたブロックファイル２０９は、当該ブロックファイル２０９の元になったオリジナルファイル２０７のブロック２０８と同じデータを備える。ブロックファイル２０９は、図７を用いて後述するＮＦＳサーバ２０の記憶装置２３やメモリ２２の記憶領域に格納される。
【００９４】
ブロックファイル管理部２０３は、管理情報ファイル２０５の管理情報テーブル２０６を用いてブロックファイル２０９を管理する。
【００９５】
また、ブロックファイル管理部２０３は、ブロックファイル２０９に対するデータアクセスを制御する。
【００９６】
ブロックファイル管理部２０３は、アクセス制御部１０１から発行されるブロックファイル２０９のオープン命令（NFS OPEN）を受信すると、対応するブロックファイル２０９のオープンを行ない、アクセス制御部１０１に対してNFS OPEN完了を通知する。
【００９７】
また、ブロックファイル管理部２０３は、アクセス制御部１０１から発行されるブロックファイル２０９のクローズ命令（NFS CLOSE）を受信すると、対応するブロックファイル２０９のクローズを行ない、アクセス制御部１０１に対してNFS CLOSE完了を通知する。
【００９８】
ブロックファイル管理部２０３は、アクセス制御部１０１から発行されるブロックファイル２０９のリード命令（NFS READ）を受信すると、対応するブロックファイル２０９のデータをメモリ２２等の所定の記憶領域等に読み込み、メインフレーム１０に応答する。その後、ブロックファイル管理部２０３は、アクセス制御部１０１に対してNFS READ完了を通知する。
【００９９】
ブロックファイル管理部２０３は、アクセス制御部１０１から発行されるブロックファイル２０９へのライト命令（NFS WRITE）を受信すると、このライト命令とともに（もしくは前後して）アクセス制御部１０１から受信するライトデータを、対象のブロックファイル２０９に書き込む。その後、ブロックファイル管理部２０３は、アクセス制御部１０１に対してNFS WRITE完了を通知する。
【０１００】
［書き戻し］
上述の如く、ブロックファイル管理部２０３は、オリジナルファイル２０７において更新がされたブロック２０８についてブロックファイル２０９を作成する。従って、オリジナルファイル２０７において更新されるブロック２０８の数が増加すると、ブロックファイル２０９の数も増加する。
【０１０１】
図５は実施形態の一例としてのコンピュータシステム１のＮＦＳサーバ２０のＮＦＳディレクトリにブロックファイル２０９が作成された状態を例示する図である。
【０１０２】
この図５に例示する状態は、図４に例示した状態よりもブロックファイル２０９が増加している。
【０１０３】
メインフレーム１０からブロックファイル２０９のデータにアクセスするためには、アクセス制御部１０１からＮＦＳサーバ２０に対してブロックファイル２０９を対象とするファイルオープン命令が発行される。従って、ＮＦＳサーバ２０においてブロックファイル２０９の数が増大すると、メインフレーム１０のアクセス制御部１０１からブロックファイル２０９へのファイルオープン命令の発行数が増加する。
【０１０４】
そこで、本コンピュータシステム１においては、ブロックファイル管理部２０３は、作成したブロックファイル２０９のデータをオリジナルファイル２０７に書き戻し、ブロックファイル２０９を削除するブロックファイル書き戻し機能を備える。
【０１０５】
図６は実施形態の一例としてのコンピュータシステム１のＮＦＳサーバ２０のＮＦＳディレクトリにおけるブロックファイル２０９の書き戻し機能を説明するための図である。
【０１０６】
この図６に示す例においては、ブロックファイル＃１〜＃４，＃７，＃９の６つのブロックファイル２０９のデータを、オリジナルファイル２０７における対応するブロック２０８に書き戻す例を示す。
【０１０７】
ブロックファイル管理部２０３は、例えば、オリジナルファイル２０７を構成するブロック２０８の総数に対する、管理情報テーブル２０６に登録されたブロック２０８の数の割合が、所定の閾値以上となった場合にブロックファイル書き戻し機能を実行してもよい。
【０１０８】
例えば、管理情報テーブル２０６にオリジナルファイル２０７の80%以上（閾値＝80%）のブロック２０８が登録された場合に、ブロックファイル書き戻し機能を実行してもよい。なお、この閾値は80%に限定されるものではなく、80%以外の値であってもよい。例えば、閾値は100%である場合には、ブロックファイル管理部２０３は、管理情報テーブル２０６にオリジナルファイル２０７の全て（閾値＝１００％）のブロック２０８が登録された場合に、ブロックファイル書き戻し機能を実行する。
【０１０９】
また、ブロックファイル管理部２０３は、本コンピュータシステム１において所定時間が経過する毎にブロックファイル書き戻し機能を実行してもよく、ブロックファイル書き戻し機能の実行契機は適宜変更して実施することができる。
【０１１０】
［パターン１］
ブロックファイル書き戻し機能は、メインフレーム１０が主体となってＮＦＳサーバ２０に対してＮＦＳの命令を発行することで実現してもよい。アクセス制御部１０１は書き戻し処理部に相当する。
【０１１１】
すなわち、メインフレーム１０のアクセス制御部１０１が、ＮＦＳサーバ２０のブロックファイル管理部２０３に対して、ブロックファイル２０９のリードを行なわせ、オリジナルファイル管理部２０２に、このリードさせたブロックファイル２０９のデータを用いてオリジナルファイル２０７のブロック２０８にライトさせる処理を、全てのブロックファイル２０９に対して繰り返し行なう。
【０１１２】
なお、このパターン１によるブロックファイル書き戻し機能の実施例を、図１３に示すフローチャートを用いて後述する。
【０１１３】
［パターン２］
また、ブロックファイル書き戻し機能は、ＮＦＳサーバ２０が主体となって行ない、ＮＦＳサーバ２０においてプログラムを実行することで実現してもよい。ブロックファイル管理部２０３は書き戻し処理部に相当する。
【０１１４】
すなわち、ＮＦＳサーバ２０においてブロックファイル管理部２０３がブロックファイル２０９のリードを行ない、オリジナルファイル管理部２０２がこのリードされたブロックファイル２０９のデータを用いてオリジナルファイル２０７のブロック２０８にライトする処理を、全てのブロックファイル２０９に対して繰り返し行なう。
【０１１５】
なお、このパターン２によるブロックファイル書き戻し機能の実施例を、図１４に示すフローチャートを用いて後述する。
【０１１６】
このパターン２に示す方法においては、ＮＦＳサーバ２０単独で実現することができるので、ＮＦＳプロトコルとは無関係に実施することができる。また、上記パターン１に比べてネットワーク５０の負荷を軽減することができる。
【０１１７】
次に、図７を参照しながら、実施形態の一例としてのコンピュータシステム１のＮＦＳサーバ２０のハードウェア構成について説明する。図７は、ＮＦＳサーバ２０のハードウェア構成の一例を示すブロック図である。
【０１１８】
ＮＦＳサーバ２０は、例えば、プロセッサ２１，メモリ２２，記憶装置２３，グラフィック処理装置２４，入力インタフェース２５，光学ドライブ装置２６，機器接続インタフェース２７およびネットワークインタフェース２８を構成要素として有する。これらの構成要素２１〜２８は、バス２９を介して相互に通信可能に構成される。
【０１１９】
プロセッサ２１は、ＮＦＳサーバ２０全体を制御する。プロセッサ２１は、マルチプロセッサであってもよい。プロセッサ２１は、例えばＣＰＵ，ＭＰＵ，ＤＳＰ，ＡＳＩＣ，ＰＬＤ，ＦＰＧＡのいずれか一つであってもよい。また、プロセッサ２１は、ＣＰＵ，ＭＰＵ，ＤＳＰ，ＡＳＩＣ，ＰＬＤ，ＦＰＧＡのうちの２種類以上の要素の組み合わせであってもよい。そして、プロセッサ２１がＮＦＳサーバ２０用の制御プログラム（図示省略）を実行することにより、前述したファイル管理部２０１として機能する。ファイル管理部２０１は、例えば、ＯＳプログラム上で動作する機能として実装されてもよい。ファイル管理部２０１は、ＯＳプログラムの機能として実装されてもよく、また、ＯＳプログラム上で動作するアプリケーションプログラムの機能として実装されてもよい。
【０１２０】
なお、ＮＦＳサーバ２０は、例えばコンピュータ読み取り可能な非一時的な記録媒体に記録されたプログラム（制御プログラムやＯＳプログラム）を実行することにより、ファイル管理部２０１としての機能を実現する。ＮＦＳサーバ２０に実行させる処理内容を記述したプログラムは、様々な記録媒体に記録しておくことができる。例えば、ＮＦＳサーバ２０に実行させるプログラムを記憶装置２３（記憶部２０４）に格納しておくことができる。プロセッサ２１は、記憶装置２３内のプログラムの少なくとも一部をメモリ（ＲＡＭ）２２にロードし、ロードしたプログラムを実行する。
【０１２１】
また、ＮＦＳサーバ２０（プロセッサ２１）に実行させるプログラムを、光ディスク２６ａ，メモリ装置２７ａ，メモリカード２７ｃ等の非一時的な可搬型記録媒体に記録しておくこともできる。可搬型記録媒体に格納されたプログラムは、例えばプロセッサ２１からの制御により、記憶装置２３にインストールされた後、実行可能になる。また、プロセッサ２１が、可搬型記録媒体から直接プログラムを読み出して実行することもできる。
【０１２２】
メモリ２２は、ＲＯＭおよびＲＡＭを含む記憶メモリである。メモリ２２のＲＡＭはＮＦＳサーバ２０の主記憶装置として使用される。ＲＡＭには、プロセッサ２１に実行させるＯＳプログラムや制御プログラムの少なくとも一部が一時的に格納される。また、メモリ２２には、プロセッサ２１による処理に必要な各種データが格納される。メモリ２２のＲＡＭには、オリジナルファイル２０７，ブロックファイル２０９，管理情報ファイル２０５を実現するための情報が格納されてもよい。
【０１２３】
記憶装置２３は、ＨＤＤ、ＳＳＤ、ストレージクラスメモリ（ＳＣＭ）等の記憶装置であって、種々のデータを格納するものである。記憶装置２３は、ＮＦＳサーバ２０の補助記憶装置として使用される。記憶装置２３には、ＯＳプログラム，制御プログラムおよび各種データが格納される。なお、補助記憶装置としては、ＳＣＭやフラッシュメモリ等の半導体記憶装置を使用することもできる。また、この記憶装置２３に、オリジナルファイル２０７，ブロックファイル２０９，管理情報ファイル２０５を実現するための情報が格納されてもよい。
【０１２４】
グラフィック処理装置２４には、モニタ２４ａが接続されている。グラフィック処理装置２４は、プロセッサ２１からの命令に従って、画像をモニタ２４ａの画面に表示させる。モニタ２４ａとしては、ＣＲＴを用いた表示装置や液晶表示装置等が挙げられる。
【０１２５】
入力インタフェース２５には、キーボード２５ａおよびマウス２５ｂが接続されている。入力インタフェース２５は、キーボード２５ａやマウス２５ｂから送られてくる信号をプロセッサ２１に送信する。なお、マウス２５ｂは、ポインティングデバイスの一例であり、他のポインティングデバイスを使用することもできる。他のポインティングデバイスとしては、タッチパネル，タブレット，タッチパッド，トラックボール等が挙げられる。
【０１２６】
光学ドライブ装置２６は、レーザ光等を利用して、光ディスク２６ａに記録されたデータの読み取りを行なう。光ディスク２６ａは、光の反射によって読み取り可能にデータを記録された可搬型の非一時的な記録媒体である。光ディスク２６ａには、ＤＶＤ，ＤＶＤ−ＲＡＭ，ＣＤ−ＲＯＭ，ＣＤ−Ｒ／ＲＷ等が挙げられる。
【０１２７】
機器接続インタフェース２７は、ＮＦＳサーバ２０に周辺機器を接続するための通信インタフェースである。例えば、機器接続インタフェース２７には、メモリ装置２７ａやメモリリーダライタ２７ｂを接続することができる。メモリ装置２７ａは、機器接続インタフェース２７との通信機能を搭載した非一時的な記録媒体、例えばＵＳＢメモリである。メモリリーダライタ２７ｂは、メモリカード２７ｃへのデータの書き込み、またはメモリカード２７ｃからのデータの読み出しを行なう。メモリカード２７ｃは、カード型の非一時的な記録媒体である。
【０１２８】
ネットワークインタフェース２８は、ネットワーク５０に接続される。ネットワークインタフェース２８は、ネットワーク５０を介して、他の情報処理装置や通信機器等の外部装置との間でデータの送受信を行なう。ネットワーク５０にはメインフレーム１０が接続され、ＮＦＳサーバ２０は、ネットワークインタフェース２８およびネットワーク５０を介してメインフレーム１０と通信可能に接続される。
【０１２９】
（Ｂ）動作
［概要］
上述の如く構成された実施形態の一例としてのコンピュータシステム１における動作概要を説明する。
【０１３０】
図８は実施形態の一例としてのコンピュータシステム１における動作概要を説明するための図である。
【０１３１】
この図５においては、メインフレーム１０のデータセット１０３は１０以上のブロック１０４が備えられており、同様に、ＮＦＳサーバ２０のオリジナルファイル２０７にも１０以上のブロック２０８が備えられている。
【０１３２】
メインフレーム１０においてアプリケーション１０２がデータセット１０３のブロック１０４にリードやライトを行なうに先立って、アクセス制御部１０１（図８においては図示を省略）は、ＮＦＳサーバ２０に、管理情報ファイル２０５のファイルオープン命令（NFS OPEN）を発行する（矢印Ｐ１参照）。
【０１３３】
アクセス制御部１０１は、このファイルオープン命令に応答してファイル管理部２０１から送信される管理情報テーブル２０６を取得する（矢印Ｐ２参照）。アクセス制御部１０１は、この管理情報テーブル２０６を参照して、ＮＦＳサーバ２０におけるアクセス先がオリジナルファイル２０７であるかブロックファイル２０９であるかを判断する。
【０１３４】
そして、複数のデータアクセスのアクセス先がいずれもオリジナルファイル２０７のブロック２０８である場合に、アクセス制御部１０１は、オリジナルファイル２０７に対するファイルオープン命令（NFS OPEN）を一度行なった後に、このオリジナルファイル２０７に含まれる複数のブロック２０８にリードアクセスやライトアクセスを実行する（矢印Ｐ３〜Ｐ６）。
【０１３５】
［オリジナルファイルの新規作成］
次に、上述の如く構成された実施形態の一例としてのコンピュータシステム１におけるオリジナルファイル２０７の新規作成処理を、図９に示すフローチャート（ステップＡ１〜Ａ４）に従って説明する。
【０１３６】
ステップＡ１において、メインフレーム１０のアクセス制御部１０１は、ＮＦＳサーバ２０上に管理情報ファイル２０５を新規作成するために、ファイル管理部２０１（ブロックファイル管理部２０３）に対して、管理情報ファイル２０５のクリエイト命令（NFS CREATE）を発行する。アクセス制御部１０１は、この管理情報ファイル２０５のクリエイト命令の発行とともに、管理情報ファイル２０５のファイル名の指定も行なう。
【０１３７】
ステップＡ２において、ＮＦＳサーバ２０のオリジナルファイル管理部２０２は、指定された管理情報ファイル名を付した管理情報ファイル２０５を生成する。オリジナルファイル管理部２０２は、アクセス制御部１０１に対して管理情報ファイル２０５の作成完了（NFS CREATE完了）を通知する。
【０１３８】
その後、ステップＡ３において、メインフレーム１０のアクセス制御部１０１は、ＮＦＳサーバ２０上にオリジナルファイル２０７を新規作成するために、ＮＦＳサーバ２０のファイル管理部２０１（オリジナルファイル管理部２０２）に対して、オリジナルファイル２０７のクリエイト命令（NFS CREATE）を発行する。アクセス制御部１０１は、このオリジナルファイル２０７のクリエイト命令の発行とともに、オリジナルファイル２０７のファイル名の指定も行なう。
【０１３９】
ステップＡ４において、ＮＦＳサーバ２０のオリジナルファイル管理部２０２は、指定されたファイル名を付したオリジナルファイル２０７を生成する。オリジナルファイル管理部２０２は、アクセス制御部１０１に対してオリジナルファイル２０７の作成完了（NFS CREATE完了）を通知する。その後、処理を終了する。
【０１４０】
図１０は実施形態の一例としてのコンピュータシステム１のＮＦＳサーバ２０のＮＦＳディレクトリの初期状態を例示する図である。
【０１４１】
ＮＦＳサーバ２０の初期状態においては、図１０に示すように、ＮＦＳディレクトリに、空の管理情報テーブル２０６を格納する管理情報ファイル２０５と空のオリジナルファイル２０７とが作成される。空の管理情報テーブル２０６にはブロック２０８の情報が登録されていない。また、空のオリジナルファイル２０７には、データセット１０３の複数のブロック１０４に対応する複数の空のブロック２０８の領域が確保されている。
【０１４２】
［オリジナルファイルの更新］
次に、上述の如く構成された実施形態の一例としてのコンピュータシステム１におけるオリジナルファイル２０７の更新処理を、図１１に示すフローチャート（ステップＢ１〜Ｂ２６）に従って説明する。オリジナルファイル２０７の更新処理には、オリジナルファイル２０７に対するデータのライトが含まれる。
【０１４３】
オリジナルファイル２０７の更新処理は、アプリケーション１０２においてデータセット１０３に対するデータ更新を行なうことで実行される。
【０１４４】
先ず、メインフレーム１０において、アクセス制御部１０が、管理情報ファイル２０５のファイル名を指定してＮＦＳのファイルオープン命令（NFS OPEN）を発行する（ステップＢ１）。
【０１４５】
ＮＦＳサーバ２０において、ファイル管理部２０１は、ファイルオープン命令によって指定されたファイル名の管理情報ファイル２０５をオープンする（ステップＢ２）。ファイル管理部２０１は、メインフレーム１０に対してNFS OPEN完了を通知する。
【０１４６】
メインフレーム１０において、アクセス制御部１０１は、管理情報ファイル２０５の管理情報テーブル２０６に記録されている更新対象のブロック２０８（ブロックファイル２０９）を特定するために、管理情報ファイル２０５のリード命令（NFS READ）を発行する（ステップＢ３）。
【０１４７】
ＮＦＳサーバ２０において、ファイル管理部２０１は、リード命令によって指定された管理情報ファイル２０５を読み込み、読み込んだ管理情報テーブル２０６のデータをメインフレーム１０に返却する（ステップＢ４）。ファイル管理部２０１は、メインフレーム１０に対してNFS READ完了を通知する。
【０１４８】
メインフレーム１０において、アクセス制御部１０１は、受信した管理情報テーブル２０６のデータを参照して、処理対象のブロック２０８が管理情報テーブル２０６に登録されているかを確認する。（ステップＢ５）。
【０１４９】
管理情報テーブル２０６に処理対象のブロック２０８が登録されていない場合には（ステップＢ５のＮＯルート参照）、ステップＢ６に移行する。
【０１５０】
処理対象ブロック２０８が管理情報テーブル２０６に登録されていない場合は、アクセス制御部１０１は、ライト対象をオリジナルファイル２０７の当該ブロック２０８であると判断する。
【０１５１】
メインフレーム１０において、アクセス制御部１０１は、ＮＦＳサーバ２０上のオリジナルファイル２０７のファイル名（オリジナルファイル名）を指定してＮＦＳのファイルオープン命令（NFS OPEN）を発行する（ステップＢ６）。
【０１５２】
ＮＦＳサーバ２０において、ファイル管理部２０１は、ファイルオープン命令によって指定されたファイル名のオリジナルファイル２０７をオープンする（ステップＢ７）。ファイル管理部２０１は、メインフレーム１０に対してNFS OPEN完了を通知する。
【０１５３】
メインフレーム１０において、アクセス制御部１０１は、ＮＦＳサーバ２０上の処理対象のオリジナルファイル２０７に対してＮＦＳのリード命令（NFS READ）を発行する（ステップＢ８）。
【０１５４】
ＮＦＳサーバ２０において、オリジナルファイル管理部２０２は、リード命令によって指定されたオリジナルファイル２０７を読み込み、読み込んだオリジナルファイル２０７のデータをメインフレーム１０に返却する（ステップＢ９）。オリジナルファイル管理部２０２は、メインフレーム１０に対してNFS READ完了を通知する。
【０１５５】
メインフレーム１０において、リードされたデータに基づき、例えばアプリケーション１０２が更新用データ（ライトデータ）を生成する。アクセス制御部１０１は、ＮＦＳサーバ２０上のオリジナルファイル２０７に対してＮＦＳのライト命令（NFS WRITE）を発行する（ステップＢ１０）。アクセス制御部１０１は、このライト命令とともにライトデータをＮＦＳサーバ２０に送信する。
【０１５６】
ＮＦＳサーバ２０において、ブロックファイル管理部２０３は、指定されたオリジナルファイル２０７にライト対象のデータを書き込む（ステップＢ１１）。
【０１５７】
ＮＦＳサーバ２０において、ブロックファイル管理部２０３が、オリジナルファイル２０７におけるライトが行なわれたブロック２０８のデータを抽出してブロックファイル２０９を作成する（ステップＢ１２）。ファイル管理部２０１は、メインフレーム１０に対してNFS WRITE完了を通知する。
【０１５８】
なお、オリジナルファイル２０７においてライト対象のブロック２０８が複数ある場合には、ステップＢ１０〜Ｂ１２の処理はこれらの処理対象の各ブロック２０８に対してそれぞれ行なわれる。
【０１５９】
アクセス制御部１０１は、ＮＦＳサーバ２０上の管理情報ファイル２０５に、ステップＢ１１においてライトを行なったオリジナルファイル２０７のブロック２０８のブロック番号（ファイル名）、オフセットおよび書き込むデータを指定して、ＮＦＳのライト命令（NFS WRITE）を発行する（ステップＢ１３）。
【０１６０】
なお、管理情報ファイル２０５の更新手法はこれに限定されるものではない。例えば、アクセス制御部１０１は、ステップＢ３においてリードした管理情報ファイル２０５のデータに基づき、オリジナルファイル２０７においてライトを行なったブロック２０８の情報を登録した管理情報テーブル２０６のデータを更新（作成）してもよい。そして、アクセス制御部１０１は、更新した管理情報テーブル２０６のデータを管理情報ファイル２０５に登録させるべく、ＮＦＳサーバ２０に管理情報ファイル２０５のライト命令（NFS WRITE）を発行してもよい。
【０１６１】
ＮＦＳサーバ２０において、ブロックファイル管理部２０３は、指定された管理情報ファイル２０５に更新用のデータを書き込む（ステップＢ１４）。ファイル管理部２０１は、メインフレーム１０に対してNFS WRITE完了を通知する。
【０１６２】
メインフレーム１０において、アクセス制御部１０１は、ＮＦＳサーバ２０上の管理情報ファイル２０５に対して、ＮＦＳのクローズ命令（NFS CLOSE）を発行する（ステップＢ１５）。
【０１６３】
ＮＦＳサーバ２０において、ブロックファイル管理部２０３は、ＮＦＳサーバ２０上の指定された管理情報ファイル２０５を閉じる（ステップＢ１６）。ファイル管理部２０１は、メインフレーム１０に対してNFS CLOSE完了を通知する。
【０１６４】
メインフレーム１０において、アクセス制御部１０１は、ライトを行なったオリジナルファイル２０７を指定して、ＮＦＳのクローズ命令（NFS CLOSE）を発行する（ステップＢ１７）。
【０１６５】
ＮＦＳサーバ２０において、ブロックファイル管理部２０３は、指定されたオリジナルファイル２０７のクローズを行ない、アクセス制御部１０１に対してNFS CLOSE完了を通知する（ステップＢ１８）。その後、処理を終了する。
【０１６６】
一方、ステップＢ５における確認の結果、処理対象ブロック２０８が管理情報テーブル２０６に登録されている場合には（ステップＢ５のＹＥＳルート参照）、ステップＢ１９に移行する。
【０１６７】
処理対象ブロック２０８が管理情報テーブル２０６に登録されている場合は、アクセス制御部１０１は、ライト対象を当該ブロック番号に対応するブロックファイル２０９であると判断する。
【０１６８】
メインフレーム１０において、アクセス制御部１０１は、管理情報テーブル２０６のデータ基づき、更新するブロック番号に対応するファイル（ブロックファイル）を特定する。そして、アクセス制御部１０１は、ＮＦＳサーバ２０上のブロックファイル名（ブロック番号）を指定して、ＮＦＳのファイルオープン命令（NFS OPEN）を発行する（ステップＢ１９）。
【０１６９】
ＮＦＳサーバ２０において、ファイル管理部２０１は、ファイルオープン命令によって指定されたファイル名のブロックファイル２０９をオープンする（ステップＢ２０）。ファイル管理部２０１は、メインフレーム１０に対してNFS OPEN完了を通知する。
【０１７０】
メインフレーム１０において、アクセス制御部１０１は、ＮＦＳサーバ２０上の処理対象のブロックファイル名（ブロック番号）に対してＮＦＳのリード命令（NFS READ）を発行する（ステップＢ２１）。
【０１７１】
ＮＦＳサーバ２０において、ファイル管理部２０１は、リード命令によって指定されたブロックファイル２０９を読み込み、読み込んだブロックファイル２０９のデータをメインフレーム１０に返却する。ファイル管理部２０１は、メインフレーム１０に対してNFS READ完了を通知する（ステップＢ２２）。
【０１７２】
メインフレーム１０において、リードされたデータに基づき、例えばアプリケーション１０２が更新用データ（ライトデータ）を生成する。アクセス制御部１０１は、ＮＦＳサーバ２０上の処理対象のブロックファイル名（ブロック番号）に対してＮＦＳのライト命令（NFS WRITE）を発行する（ステップＢ２３）。アクセス制御部１０１は、このライト命令とともにライトデータをＮＦＳサーバ２０に送信する。
【０１７３】
ＮＦＳサーバ２０において、ブロックファイル管理部２０３は、指定されたブロックファイル２０９にライト対象のデータを書き込む（ステップＢ２４）。ファイル管理部２０１は、メインフレーム１０に対してNFS WRITE完了を通知する。
【０１７４】
メインフレーム１０において、アクセス制御部１０１は、ライトを行なった処理対象のブロックファイル２０９を指定して、ＮＦＳのクローズ命令（NFS CLOSE）を発行する（ステップＢ２５）。
【０１７５】
ＮＦＳサーバ２０において、ブロックファイル管理部２０３は、指定されたブロックファイル２０９のクローズを行ない（ステップＢ２６）、アクセス制御部１０１に対してNFS CLOSE完了を通知する。
【０１７６】
なお、処理対象のブロックファイル２０９が複数ある場合には、ステップＢ２１〜Ｂ２６の処理はこれらの処理対象の各ブロックファイル２０９に対してそれぞれ行なわれる。
【０１７７】
［リード］
次に、上述の如く構成された実施形態の一例としてのコンピュータシステム１におけるリード処理を、図１２に示すフローチャート（ステップＣ１〜Ｃ１９）に従って説明する。
【０１７８】
先ず、メインフレーム１０において、アクセス制御部１０が、管理情報ファイル２０５のファイル名を指定してＮＦＳのファイルオープン命令（NFS OPEN）を発行する（ステップＣ１）。
【０１７９】
ＮＦＳサーバ２０において、ファイル管理部２０１は、ファイルオープン命令によって指定されたファイル名の管理情報ファイル２０５をオープンする（ステップＣ２）。ファイル管理部２０１は、メインフレーム１０に対してNFS OPEN完了を通知する。
【０１８０】
メインフレーム１０において、アクセス制御部１０１は、管理情報ファイル２０５の管理情報テーブル２０６に記録されている処理対象（リード対象）のブロック２０８（ブロックファイル２０９）を特定するために、管理情報ファイル２０５のリード命令（NFS READ）を発行する（ステップＣ３）。
【０１８１】
ＮＦＳサーバ２０において、ファイル管理部２０１は、リード命令によって指定された管理情報ファイル２０５を読み込み、読み込んだ管理情報テーブル２０６のデータをメインフレーム１０に返却する（ステップＣ４）。ファイル管理部２０１は、メインフレーム１０に対してNFS READ完了を通知する。
【０１８２】
メインフレーム１０において、アクセス制御部１０１は、受信した管理情報テーブル２０６のデータを参照して、処理対象のブロック２０８が管理情報テーブル２０６に登録されているかを確認する（ステップＣ５）。
【０１８３】
管理情報テーブル２０６に処理対象のブロック２０８が登録されていない場合には（ステップＣ５のＮＯルート参照）、ステップＣ６に移行する。
【０１８４】
処理対象ブロック２０８が管理情報テーブル２０６に登録されていない場合は、アクセス制御部１０１は、リード対象をオリジナルファイル２０７の当該ブロック２０８であると判断する。
【０１８５】
メインフレーム１０において、アクセス制御部１０１は、ＮＦＳサーバ２０上のオリジナルファイル２０７のファイル名（オリジナルファイル名）を指定してＮＦＳのファイルオープン命令（NFS OPEN）を発行する（ステップＣ６）。
【０１８６】
ＮＦＳサーバ２０において、ファイル管理部２０１は、ファイルオープン命令によって指定されたファイル名のオリジナルファイル２０７をオープンする（ステップＣ７）。ファイル管理部２０１は、メインフレーム１０に対してNFS OPEN完了を通知する。
【０１８７】
メインフレーム１０において、アクセス制御部１０１は、ＮＦＳサーバ２０上の処理対象のブロックファイル名（ブロック番号）に対してＮＦＳのリード命令（NFS READ）を発行する（ステップＣ８）。
【０１８８】
ＮＦＳサーバ２０において、オリジナルファイル管理部２０２は、リード命令によって指定されたオリジナルファイル２０７中のブロック２０８を読み込み、読み込んだブロック２０８のデータをメインフレーム１０に返却する（ステップＣ９）。オリジナルファイル管理部２０２は、メインフレーム１０に対してNFS READ完了を通知する。
【０１８９】
なお、処理対象のブロック２０８が複数ある場合には、ステップＣ８，Ｃ９の処理はこれらの処理対象の各ブロック２０８に対してそれぞれ行なわれる。
【０１９０】
メインフレーム１０において、アクセス制御部１０１は、ＮＦＳサーバ２０上の管理情報ファイル２０５に対して、ＮＦＳのクローズ命令（NFS CLOSE）を発行する（ステップＣ１０）。
【０１９１】
ＮＦＳサーバ２０において、ブロックファイル管理部２０３は、ＮＦＳサーバ２０上の指定された管理情報ファイル２０５を閉じる（ステップＣ１１）。ファイル管理部２０１は、メインフレーム１０に対してNFS CLOSE完了を通知する
【０１９２】
メインフレーム１０において、アクセス制御部１０１は、リードを行なったオリジナルファイル２０７を指定して、ＮＦＳのクローズ命令（NFS CLOSE）を発行する（ステップＣ１２）。
【０１９３】
ＮＦＳサーバ２０において、ブロックファイル管理部２０３は、指定されたオリジナルファイル２０７のクローズを行ない、アクセス制御部１０１に対してNFS CLOSE完了を通知する（ステップＣ１３）。その後、処理を終了する。
【０１９４】
一方、ステップＣ５における確認の結果、処理対象ブロック２０８が管理情報テーブル２０６に登録されている場合には（ステップＣ５のＹＥＳルート参照）、ステップＣ１４に移行する。
【０１９５】
処理対象ブロック２０８が管理情報テーブル２０６に登録されている場合は、アクセス制御部１０１は、リード対象を当該ブロック番号に対応するブロックファイル２０９であると判断する。
【０１９６】
メインフレーム１０において、アクセス制御部１０１は、管理情報テーブル２０６のデータ基づき、リードするブロック番号に対応するファイル（ブロックファイル）を特定する。そして、アクセス制御部１０１は、ＮＦＳサーバ２０上のブロックファイル名（ブロック番号）を指定して、ＮＦＳのファイルオープン命令（NFS OPEN）を発行する（ステップＣ１４）。
【０１９７】
ＮＦＳサーバ２０において、ファイル管理部２０１は、ファイルオープン命令によって指定されたファイル名のブロックファイル２０９をオープンする（ステップＣ１５）。ファイル管理部２０１は、メインフレーム１０に対してNFS OPEN完了を通知する。
【０１９８】
メインフレーム１０において、アクセス制御部１０１は、ＮＦＳサーバ２０上の処理対象のブロックファイル名（ブロック番号）に対してＮＦＳのリード命令（NFS READ）を発行する（ステップＣ１６）。
【０１９９】
ＮＦＳサーバ２０において、ファイル管理部２０１は、リード命令によって指定されたブロックファイル２０９を読み込み、読み込んだブロックファイル２０９のデータをメインフレーム１０に返却する。ファイル管理部２０１は、メインフレーム１０に対してNFS READ完了を通知する（ステップＣ１７）。
【０２００】
メインフレーム１０において、アクセス制御部１０１は、リードを行なった処理対象のブロックファイル２０９を指定して、ＮＦＳのクローズ命令（NFS CLOSE）を発行する（ステップＣ１８）。
【０２０１】
ＮＦＳサーバ２０において、ブロックファイル管理部２０３は、指定されたブロックファイル２０９のクローズを行ない、アクセス制御部１０１に対してNFS CLOSE完了を通知する（ステップＣ１９）。
【０２０２】
なお、処理対象のブロックファイル２０９が複数ある場合には、ステップＣ１４〜Ｃ１９の処理はこれらの処理対象の各ブロックファイル２０９に対してそれぞれ行なわれる。
【０２０３】
［書き戻し（パターン１）］
次に、上述の如く構成された実施形態の一例としてのコンピュータシステム１におけるパターン１によるブロックファイル書き戻し処理を、図１３に示すフローチャート（ステップＤ１〜Ｄ２１）に従って説明する。
【０２０４】
先ず、メインフレーム１０において、アクセス制御部１０が、管理情報ファイル２０５のファイル名を指定してＮＦＳのファイルオープン命令（NFS OPEN）を発行する（ステップＤ１）。
【０２０５】
ＮＦＳサーバ２０において、ファイル管理部２０１は、ファイルオープン命令によって指定されたファイル名の管理情報ファイル２０５をオープンする（ステップＤ２）。ファイル管理部２０１は、メインフレーム１０に対してNFS OPEN完了を通知する。
【０２０６】
メインフレーム１０において、アクセス制御部１０１は、管理情報ファイル２０５の管理情報テーブル２０６に記録されている更新対象のブロック２０８（ブロックファイル２０９）を特定するために、管理情報ファイル２０５のリード命令（NFS READ）を発行する（ステップＤ３）。
【０２０７】
ＮＦＳサーバ２０において、ファイル管理部２０１は、リード命令によって指定された管理情報ファイル２０５を読み込み、読み込んだ管理情報テーブル２０６のデータをメインフレーム１０に返却する（ステップＤ４）。ファイル管理部２０１は、メインフレーム１０に対してNFS READ完了を通知する。
【０２０８】
メインフレーム１０において、アクセス制御部１０１は、管理情報テーブル２０６に登録されているブロック２０８に対応するブロックファイル２０９のファイル名（ブロック番号）を指定してＮＦＳのファイルオープン命令（NFS OPEN）を発行する（ステップＤ５）。
【０２０９】
ＮＦＳサーバ２０において、ファイル管理部２０１は、ファイルオープン命令によって指定されたファイル名のブロックファイル２０９をオープンする（ステップＤ６）。ファイル管理部２０１は、メインフレーム１０に対してNFS OPEN完了を通知する。
【０２１０】
メインフレーム１０において、アクセス制御部１０１は、ＮＦＳサーバ２０上の処理対象のファイル名（ブロック番号）のブロックファイル２０９に対するＮＦＳのリード命令（NFS READ）を発行する（ステップＤ７）。
【０２１１】
ＮＦＳサーバ２０において、ブロックファイル管理部２０３は、リード命令によって指定されたブロックファイル２０９を読み込み、読み込んだブロックファイル２０９のデータをメインフレーム１０に返却する（ステップＤ８）。ブロックファイル管理部２０３は、メインフレーム１０に対してNFS READ完了を通知する。
【０２１２】
メインフレーム１０において、アクセス制御部１０１は、ＮＦＳサーバ２０上の処理対象のオリジナルファイル２０７のファイル名（オリジナルファイル名）を指定してＮＦＳのファイルオープン命令（NFS OPEN）を発行する（ステップＤ９）。
【０２１３】
ＮＦＳサーバ２０において、ファイル管理部２０１は、ファイルオープン命令によって指定されたファイル名のオリジナルファイル２０７をオープンする（ステップＤ１０）。ファイル管理部２０１は、メインフレーム１０に対してNFS OPEN完了を通知する。
【０２１４】
メインフレーム１０において、アクセス制御部１０１は、ＮＦＳサーバ２０上の処理対象のオリジナルファイル２０７に対してＮＦＳのリード命令（NFS READ）を発行する（ステップＤ１１）。
【０２１５】
ＮＦＳサーバ２０において、オリジナルファイル管理部２０２は、リード命令によって指定されたオリジナルファイル２０７を読み込み、読み込んだオリジナルファイル２０７のデータをメインフレーム１０に返却する（ステップＤ１２）。オリジナルファイル管理部２０２は、メインフレーム１０に対してNFS READ完了を通知する。
【０２１６】
メインフレーム１０において、アクセス制御部１０１は、ステップＤ８においてリードしたブロックファイル２０９のデータを、オリジナルファイル２０７における対応ブロック２０８に書き込むことで、オリジナルファイル２０７の更新を行なう（ステップＤ１３）。
【０２１７】
メインフレーム１０において、アクセス制御部１０１は、ＮＦＳサーバ２０上における処理対象のブロックファイル２０９のブロックファイル名を指定して、ＮＦＳのリムーブ命令（NFS DELETE）を発行する。すなわち、アクセス制御部１０１は、ステップＤ１３においてオリジナルファイル２０７へのデータのライトを完了させたブロックファイル２０９のファイル名（ブロック番号）を指定して、ＮＦＳサーバ２０からリムーブさせる（ステップＤ１４）。
【０２１８】
ＮＦＳサーバ２０において、ブロックファイル管理部２０３は、指定されたファイル名のブロックファイル２０９を削除する（ステップＤ１５）。ブロックファイル管理部２０３は、メインフレーム１０に対してNFS DELETE完了を通知する。
【０２１９】
アクセス制御部１０１は、ステップＤ３においてリードした管理情報ファイル２０５の管理情報テーブル２０６のデータに対して、ステップＤ１５において削除したブロックファイル２０９に対応するオリジナルファイル２０７のブロック２０８に関する情報を削除することで更新用の管理情報テーブル２０６のデータを作成する。
【０２２０】
そして、アクセス制御部１０１は、作成した更新用の管理情報テーブル２０６のデータを管理情報ファイル２０５に登録させるべく、ＮＦＳサーバ２０に管理情報ファイル２０５を指定してＮＦＳのライト命令（NFS WRITE）を発行する（ステップＤ１６）。
【０２２１】
ＮＦＳサーバ２０において、ブロックファイル管理部２０３は、指定された管理情報ファイル２０５に更新用の管理情報テーブル２０６のデータを書き込む（ステップＤ１７）。ファイル管理部２０１は、メインフレーム１０に対してNFS WRITE完了を通知する。
【０２２２】
メインフレーム１０において、アクセス制御部１０１は、ＮＦＳサーバ２０上の管理情報ファイル２０５に対して、ＮＦＳのクローズ命令（NFS CLOSE）を発行する（ステップＤ１８）。
【０２２３】
ＮＦＳサーバ２０において、ブロックファイル管理部２０３は、ＮＦＳサーバ２０上の指定された管理情報ファイル２０５を閉じる（ステップＤ１９）。ファイル管理部２０１は、メインフレーム１０に対してNFS CLOSE完了を通知する。
【０２２４】
メインフレーム１０において、アクセス制御部１０１は、書き戻しを行なったオリジナルファイル２０７を指定して、ＮＦＳのクローズ命令（NFS CLOSE）を発行する（ステップＤ２０）。
【０２２５】
ＮＦＳサーバ２０において、ブロックファイル管理部２０３は、指定されたオリジナルファイル２０７のクローズを行ない（ステップＤ２１）、アクセス制御部１０１に対してNFS CLOSE完了を通知する。その後、処理を終了する。
【０２２６】
［書き戻し（パターン２）］
次に、上述の如く構成された実施形態の一例としてのコンピュータシステム１におけるパターン２によるブロックファイル書き戻し処理を、図１４に示すフローチャート（ステップＥ１〜Ｅ９）に従って説明する。本処理は、ＮＦＳサーバ２０において完結して行なわれる。
【０２２７】
ステップＥ１において、ＮＦＳサーバ２０において、ブロックファイル管理部２０３は、管理情報ファイル２０５を開く。具体的には、ブロックファイル管理部２０３は、管理情報ファイル２０５のファイルディスクリプタを生成するために、管理情報ファイル２０５のパスを指定してオープンシステムコールを発行する。
【０２２８】
ステップＥ２において、ブロックファイル管理部２０３は、管理情報ファイル２０５の読み込みを行なう。具体的には、ブロックファイル管理部２０３は、管理情報ファイル２０５を読み込むために、この管理情報ファイル２０５のファイルディスクリプタを指定してリードシステムコールを発行する（ステップＥ２）。
【０２２９】
ステップＥ３において、ブロックファイル管理部２０３は、ブロックファイル２０９を開く。具体的には、ブロックファイル管理部２０３は、書き戻し対象のブロックファイル２０９のファイルディスクリプタを生成するため、管理情報ファイル２０５に記録されているブロックファイル２０９のファイル名（ブロック番号のファイル）を指定し、オープンシステムコールを発行する。
【０２３０】
ステップＥ４において、ブロックファイル管理部２０３は、ブロックファイル２０９を読み込む。具体的には、ブロックファイル管理部２０３は、書き戻し対象のブロックファイル２０９を読み込むために、ブロックファイル２０９のファイルディスクリプタを指定してリードシステムコールを発行する。
【０２３１】
ステップＥ５において、オリジナルファイル管理部２０２は、オリジナルファイル２０７を開く。オリジナルファイル管理部２０２は、オリジナルファイル２０７のファイルディスクリプタを生成するために、処理対象オリジナルファイル２０７のパスを指定してオープンシステムコールを発行する。
【０２３２】
ステップＥ６において、オリジナルファイル管理部２０２は、ブロックファイル２０９のデータをオリジナルファイル２０７に書きこむ。オリジナルファイル管理部２０２は、ブロックファイル２０９のデータをオリジナルファイル２０７に書き込むために、オリジナルファイル２０７のファイルディスクリプタを指定してライトシステムコールを発行する。
【０２３３】
ステップＥ７において、ブロックファイル管理部２０３は、ブロックファイルを削除する。具体的には、ブロックファイル管理部２０３は、書き込みが完了した（処理対象の）ブロックファイル２０９を削除するために、このブロックファイル２０９のファイル名（ブロック番号）を指定して、リムーブシステムコールを発行する。
【０２３４】
ステップＥ８において、ブロックファイル管理部２０３は、削除したブロックファイル２０９に対応するブロック２０８に関する情報を管理情報テーブル２０６から削除することで当該管理情報テーブル２０６の更新を行ない、この更新した管理情報テーブル２０６を管理情報ファイル２０５に書き込む。
【０２３５】
なお、ブロックファイル管理部２０３は、管理情報ファイル２０５を削除してもよい。ブロックファイル管理部２０３は、オリジナルファイル２０７に書き戻し対象の全ブロックファイル２０９のデータの書き込みが完了した後、管理情報ファイル２０５を削除するために、管理情報ファイル２０５のファイルディスクリプタを指定してリムーブシステムコールを発行してもよい。
ブロックファイル管理部２０３は、管理情報ファイル２０５を閉じ（ステップＥ９）、その後、処理を終了する。
【０２３６】
［追記］
次に、上述の如く構成された実施形態の一例としてのコンピュータシステム１におけるオリジナルファイル２０７へのデータの追記処理を、図１５に示すフローチャート（ステップＦ１〜Ｆ６）に従って説明する。
【０２３７】
メインフレーム１０において、アクセス制御部１０１は、アクセス制御部１０１は、ＮＦＳサーバ２０に追記モードでオリジナルファイル２０７のオープンを行なわせる。すなわち、アクセス制御部１０１は、ＮＦＳサーバ２０上のオリジナルファイル２０７のファイル名（オリジナルファイル名）を指定して、追記モードでＮＦＳのオープン命令（NFS OPEN）を発行する（ステップＦ１）。
【０２３８】
ＮＦＳサーバ２０において、オリジナルファイル管理部２０２は、指定されたオリジナルファイル２０７を追記モードで開く（ステップＦ２）。なお、追記モードでのファイルオープンは既知の手法で実現することができ、その説明は省略する。ファイル管理部２０１は、メインフレーム１０に対してNFS OPEN完了を通知する。
【０２３９】
メインフレーム１０において、アクセス制御部１０１は、ＮＦＳサーバ２０上のオリジナルファイル２０７に対して、ＮＦＳのライト命令（NFS WRITE）を発行する（ステップＦ３）。例えば、アクセス制御部１０１は追記するデータ（追記データ）をＮＦＳサーバ２０に送信する。
【０２４０】
ＮＦＳサーバ２０において、オリジナルファイル管理部２０２は、指定されたオリジナルファイル２０７に追記データを書きこむ（ステップＦ４）。ファイル管理部２０１は、メインフレーム１０に対してNFS WRITE完了を通知する。
【０２４１】
メインフレーム１０において、アクセス制御部１０１は、ＮＦＳサーバ２０にオリジナルファイル２０７のクローズを行なわせる。アクセス制御部１０１は、ＮＦＳサーバ２０上のオリジナルファイル２０７に対して、対象のオリジナルファイル２０７のファイル名を指定してＮＦＳのクローズ命令（NFS CLOSE）を発行する（ステップＦ５）。
【０２４２】
ＮＦＳサーバ２０において、オリジナルファイル管理部２０２は、指定されたオリジナルファイル２０７を閉じる（ステップＦ６）。ファイル管理部２０１は、メインフレーム１０に対してNFS CLOSE完了を通知する。その後、処理を終了する。
【０２４３】
（Ｃ）効果
このように、実施形態の一例としてのコンピュータシステム１においては、ＮＦＳサーバ２０において、メインフレーム１０の一のデータセット１０３に対応させて一のオリジナルファイル２０７を備える。
【０２４４】
そして、オリジナルファイル２０７は、データセット１０３が備える複数のブロック１０４に対応させて、複数のブロック２０８を備える。
【０２４５】
これにより、メインフレーム１０からは一つのファイルオープン命令を発行するだけで、ファイルクローズ命令を発行するまでの間に複数のブロック２０８に対するデータアクセスを実行することができる。このように、一つのファイルオープン命令を発行するだけで複数のブロック２０８へのデータアクセスが可能であるので、メインフレーム１０からオリジナルファイル２０７の複数のブロック２０８に多数のデータアクセスを行なう場合であっても、多数のファイルオープン命令を発行する必要がなく、アクセス性能が低下することがない。
【０２４６】
ここで、本コンピュータシステム１における、ＮＦＳサーバ２０のオリジナルファイル２０７の更新を行なう場合にメインフレーム１０から発行されるファイルオープン（NFS OPEN）回数を従来手法と比較して示す。
【０２４７】
データセット１０３の全ブロック数をnとし、更新するブロックファイル２０９の数をjとする。また、分割されているブロックファイル２０９の数をm（0 ≦ m ≦ n）とする。
【０２４８】
図１６に例示する従来手法において、メインフレーム５１０のデータセットに対応するＮＦＳサーバのn個のファイルを更新するためにメインフレームからＮＦＳサーバに対して発行されるNFS OPEN回数は、n + j回である。
【０２４９】
これに対して、本コンピュータシステム１においては、メインフレーム１０からＮＦＳサーバ２０の管理情報テーブル２０６を読み込むためのNFS OPEN回数は1回である。
【０２５０】
また、オリジナルファイル２０７と分割されているブロックファイル２０９とを読み込むためのNFS OPEN回数は、ブロック数によらず（1 + m）回である。
【０２５１】
更新するブロックファイル２０９の数分のNFS OPENが必要となるので、このためのNFS OPEN回数はj回である。
【０２５２】
管理情報ファイル２０５に管理情報テーブル２０６を書き込むために行なうNFS OPENの回数（NFS OPEN回数）は1回である。
【０２５３】
以上より、本コンピュータシステム１における、ＮＦＳサーバ２０のオリジナルファイル２０７の更新を行なう場合にメインフレーム１０から発行されるファイルオープン（NFS OPEN）回数は、以下の式（１）により表される。
【０２５４】
（NFS OPEN回数） = 1 + (1 + m) + j + 1
= 3 + m + j               ・・・（１）
【０２５５】
よって、従来手法に対する本コンピュータシステム１におけるNFS OPEN回数の削減率Pは以下の式（２）で表される。
【０２５６】
P = {(n + j) - (3 + m + j)} / (n + j) 
= {n - (m + 3)} / (n + j)                        ・・・（２）
【０２５７】
したがって、データセット１０３の全ブロック数nが大きくかつ（m + 3）より大きいときにNFS OPEN回数を削減できる。
【０２５８】
また、本コンピュータシステム１においては、ＮＦＳサーバ２０において、ブロックファイル管理部２０３が、オリジナルファイル２０７において更新が行なわれたブロック２０８をブロックファイル２０９に分割する。これにより、これ以降の当該ブロック２０８のデータアクセスにおいては、分割されたブロックファイル２０９のデータを処理することで、オリジナルファイル２０７全体を処理対象とする場合に比べて、処理対象のデータ量を削減することができる。これにより、ＮＦＳサーバ２０におけるメモリ２２やＮＦＳサーバ２０とメインフレーム１０との間におけるデータ使用帯域等、システムリソースの使用量を削減することができ、これによってもアクセス性能が低下することがない。
【０２５９】
また、ＮＦＳサーバ２０において、管理情報ファイル２０５にオリジナルファイル２０７のブロック２０８の更新状況を表す管理情報テーブル２０６を備える。そして、メインフレーム１０のアクセス制御部１０１は、オリジナルファイル２０７にデータアクセスを行なうに先だって、この管理情報テーブル２０６を参照する。これにより、アクセス制御部１０１は、ＮＦＳサーバ２０におけるアクセス先がオリジナルファイル２０７であるかブロックファイル２０９であるかを容易に把握することができ、ＮＦＳサーバ２０上のファイルに対するアクセス性能を向上させることができる。
【０２６０】
ブロックファイル管理部２０３は、作成したブロックファイル２０９のデータをオリジナルファイル２０７に書き戻し、ブロックファイル２０９を削除するブロックファイル書き戻し機能を備える。例えば、ブロックファイル２０９の数が所定の閾値以上となった場合にブロックファイル巻き戻し機能を実行することで、作成されたブロックファイル２０９の数を削減することができ、メインフレーム１０（アクセス制御部１０１）から発行させるファイルオープン命令の数を削減することができる。
【０２６１】
（Ｄ）その他
開示の技術は上述した実施形態に限定されるものではなく、本実施形態の趣旨を逸脱しない範囲で種々変形して実施することができる。本実施形態の各構成および各処理は、必要に応じて取捨選択することができ、あるいは適宜組み合わせてもよい。
【０２６２】
例えば、上述した実施形態においては、ＮＦＳサーバ２０を備えているが、これに限定されるものではなく、ＮＦＳサーバ２０に代えて、ＮＦＳ以外のデータ処理方式を用いるサーバコンピュータを備えてもよい。
【０２６３】
また、上述した実施形態において、メインフレーム１０においてアクセス制御部１０１はアプリケーション１０２とは別に備えられているがこれに限定されるものではない。アクセス制御部１０１としての機能は、アプリケーション１０２に備えられてもよく、また、ＯＳ等に備えられてもよく、種々変形して実施することができる。
【０２６４】
さらに、上述した実施形態においては、管理情報ファイル２０５が管理情報テーブル２０６を備えているが、これに限定されるものではない。管理情報テーブル２０６において管理する情報をテーブル以外の形式で管理してもよく、種々変形して実施することができる。
【０２６５】
また、上述した開示により本実施形態を当業者によって実施・製造することが可能である。
【０２６６】
（Ｅ）付記
以上の実施形態に関し、さらに以下の付記を開示する。
【０２６７】
（付記１）
データを第１の処理単位で管理する第１情報処理装置と、複数の第１データブロックを有するデータセットを第２の処理単位で管理する第２情報処理装置とを備える情報処理システムであって、
前記第１情報処理装置が、
前記第１データブロックと同数の第２データブロックを有する、前記データセットに対応する第１データファイルを記憶する第１記憶部
を備え、
前記第２情報処理装置が、
前記第１情報処理装置に対して、前記第１データファイルのオープン命令を発行した後に、前記第１データファイルの複数の第２データブロックのうち、２つ以上の第２データブロックに対してそれぞれデータアクセス命令を発行するアクセス制御部
を備えることを特徴とする、コンピュータシステム。
【０２６８】
（付記２）
前記第１情報処理装置が、
前記第１データファイルにおいてデータ更新がされた前記第２データブロックのデータを抽出して、第２データファイルを作成する作成部を備える
ことを特徴とする、付記１記載のコンピュータシステム。
【０２６９】
（付記３）
前記第２データファイルの数が閾値以上の場合に、前記第２データファイルのデータを前記第１データファイルにおける対応する前記第２データブロックにライトさせた後に、当該第２データファイルを削除させる書き戻し処理部
を備えることを特徴とする、付記２記載のコンピュータシステム。
【０２７０】
（付記４）
前記第１情報処理装置が、前記第１データファイルの前記第２データブロックに対する更新履歴を管理する管理情報を記憶する第２記憶部を備え、
前記第２情報処理装置が、前記管理情報を参照して、前記第１情報処理装置における前記第１データファイルと前記第２データファイルとのうちアクセス先のデータファイルを決定するアクセス制御部を備えることを特徴とする、付記２または３記載のコンピュータシステム。
【０２７１】
（付記５）
データを第１の処理単位で管理する第１情報処理装置とネットワークを介して通信可能に接続される情報処理装置であって、
複数の第１データブロックを有するデータセットを第２の処理単位で管理する管理部と、
前記第１情報処理装置の記憶装置に記憶された、前記第１データブロックと同数の第２データブロックを有する、前記データセットに対応する第１データファイルに対して、前記第１データファイルを指定してオープン命令を発行した後に、前記第１データファイルの複数の第２データブロックのうち、２つ以上の第２データブロックに対してそれぞれデータアクセス命令を発行するアクセス制御部と
を備えることを特徴とする、情報処理装置。
【０２７２】
（付記６）
前記第１情報処理装置から前記第１データファイルの前記第２データブロック２０８に対する更新履歴を管理する管理情報を取得し、
前記管理情報を参照して、前記第１情報処理装置において、前記第１データファイルにおいてデータ更新がされた前記第２データブロックのデータを抽出して作成された第２データファイルと、前記第１データファイルとのうちアクセス先のデータファイルを決定するアクセス制御部を備える
ことを特徴とする、付記５記載の情報処理装置。
【０２７３】
（付記７）
前記第２データファイルの数が閾値以上の場合に、前記第２データファイルのデータを前記第１データファイルにおける対応する前記第２データブロックにライトさせた後に、当該第２データファイルを削除させる書き戻し処理部
を備えることを特徴とする、付記６記載の情報処理装置。
【０２７４】
（付記８）
データを第１の処理単位で管理する第１情報処理装置とネットワークを介して通信可能に接続される情報処理装置のプロセッサに、
複数の第１データブロックを有するデータセットを第２の処理単位で管理し、
前記第１情報処理装置の記憶装置に記憶された、前記第１データブロックと同数の第２データブロックを有する、前記データセットに対応する第１データファイルに対して、前記第１データファイルを指定してオープン命令を発行した後に、前記第１データファイルの複数の第２データブロックのうち、２つ以上の第２データブロックに対してそれぞれデータアクセス命令を発行する
処理を実行させる、制御プログラム。
【０２７５】
（付記９）
前記第１情報処理装置から前記第１データファイルの前記第２データブロックに対する更新履歴を管理する管理情報を取得し、
前記管理情報を参照して、前記第１情報処理装置において、前記第１データファイルにおいてデータ更新がされた前記第２データブロックのデータを抽出して作成された第２データファイルと、前記第１データファイルとのうちアクセス先のデータファイルを決定する
処理を、前記プロセッサに実行させる、付記８記載の制御プログラム。
【０２７６】
（付記１０）
前記第２データファイルの数が閾値以上の場合に、前記第２データファイルのデータを前記第１データファイルにおける対応する前記第２データブロックにライトさせた後に、当該第２データファイルを削除させる
処理を、前記プロセッサに実行させることを特徴とする、付記９記載の制御プログラム。
【符号の説明】
【０２７７】
１    コンピュータシステム
１０    メインフレームコンピュータ
２０    ＮＦＳサーバ
１０１    アクセス制御部
１０２    アプリケーション
１０３    データセット
１０４，２０８    ブロック
２０１    ファイル管理部  
２０２    オリジナルファイル管理部
２０３    ブロックファイル管理部
２０４    記憶部
２０５    管理情報ファイル
２０６    管理情報テーブル
２０７    オリジナルファイル
２０９    ブロックファイル
１１，２１    プロセッサ
１２，２２    メモリ
１３，２３    記憶装置
１４，２４    グラフィック処理装置
１４ａ，２４ａ    モニタ
１５，２５    入力インタフェース
１５ａ，２５ａ    キーボード
１５ｂ，２５ｂ    マウス
１６，２６    光学ドライブ装置
１６ａ，２６ａ    光ディスク
１７，２７    機器接続インタフェース
１７ａ，２７ａ    メモリ装置
１７ｂ，２７ｂ    メモリリーダライタ
１７ｃ，２７ｃ    メモリカード
１８，２８    ネットワークインタフェース
５０    ネットワーク
１９，２９    バス
【図１】
2020135828.tif 000003
【図２】
2020135828.tif 000004
【図３】
2020135828.tif 000005
【図４】
2020135828.tif 000006
【図５】
2020135828.tif 000007
【図６】
2020135828.tif 000008
【図７】
2020135828.tif 000009
【図８】
2020135828.tif 000010
【図９】
2020135828.tif 000011
【図１０】
2020135828.tif 000012
【図１１】
2020135828.tif 000013
【図１２】
2020135828.tif 000014
【図１３】
2020135828.tif 000015
【図１４】
2020135828.tif 000016
【図１５】
2020135828.tif 000017
【図１６】
2020135828.tif 000018