(57)【特許請求の範囲】
【請求項１】
テープ媒体に記録されたファイルのデータ移行に用いる制御プログラムを生成する処理をコンピュータに実行させるプログラムであって、
前記コンピュータに、
記憶部から、テープ媒体にファイルを書き込む際に利用される第１の処理プログラムの情報を取得し、
前記テープ媒体から、移行対象のファイルを当該テープ媒体に書き込む際に利用された第２の処理プログラムの情報を取得し、
取得した情報に基づいて、前記第２の処理プログラムと前記第１の処理プログラムとが一致する場合に、当該第１の処理プログラムを利用して前記移行対象のファイルを移行先に書き込む処理を実行させるジョブ制御言語の制御プログラムを生成する
処理を実行させる、プログラム。
【請求項２】
前記プログラムは、前記取得する処理において、前記テープ媒体に格納されているラベル情報から前記第２の処理プログラムの情報を取得する処理を前記コンピュータに実行させる
請求項１に記載のプログラム。
【請求項３】
前記ラベル情報は、前記移行対象のファイルのレコード形式を含み、
前記コンピュータは、
前記レコード形式が固定長又は可変長の場合、前記第２の処理プログラムを利用して前記移行対象のファイルを前記移行先に書き込む処理を実行させるジョブ制御言語の制御プログラムを生成する
請求項２に記載のプログラム。
【請求項４】
前記レコード形式が不定長の場合、前記コンピュータは、前記移行対象のファイルについて前記ジョブ制御言語の制御プログラムを生成する処理を回避する
請求項３に記載のプログラム。
【請求項５】
テープ媒体に記録されたファイルのデータ移行に用いる制御プログラムを生成する情報処理装置であって、
テープ媒体にファイルを書き込む際に利用される第１の処理プログラムの情報を格納する記憶部と、
前記テープ媒体から、移行対象のファイルを当該テープ媒体に書き込む際に利用された第２の処理プログラムの情報を取得し、取得した情報に基づいて、前記第２の処理プログラムと前記第１の処理プログラムとが一致する場合に、当該第１の処理プログラムを利用して前記移行対象のファイルを移行先に書き込む処理を実行させるジョブ制御言語の制御プログラムを生成する演算部と
を有する、情報処理装置。
【請求項６】
テープ媒体に記録されたファイルのデータ移行に用いる制御プログラムを生成するコンピュータが、
記憶部から、テープ媒体にファイルを書き込む際に利用される第１の処理プログラムの情報を取得し、
前記テープ媒体から、移行対象のファイルを当該テープ媒体に書き込む際に利用された第２の処理プログラムの情報を取得し、
取得した情報に基づいて、前記第２の処理プログラムと前記第１の処理プログラムとが一致する場合に、当該第１の処理プログラムを利用して前記移行対象のファイルを移行先に書き込む処理を実行させるジョブ制御言語の制御プログラムを生成する
ジョブ制御言語の自動生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラム、情報処理装置、及びジョブ制御言語の自動生成方法に関する。
【背景技術】
【０００２】
近年、メインフレームなどの汎用機から比較的小規模なサーバシステムへの移行が進んでいる。また、セキュリティ対策やコスト削減などの理由から、データをクラウドシステムへ移行する動きも拡がっている。汎用機が扱う大量のデータはテープ媒体にバックアップされている。そのため、システムの移行時には、テープ媒体に格納されているファイルを１つ１つ移行先のディスクに書き出す作業が生じる。
【０００３】
テープ媒体に格納されているファイルをディスクへと書き出す処理は、ＪＣＬ（Job Control Language）を用いて実行される。ＪＣＬは、ファイル毎のデータ量や移行先の空きディスク容量を確認しながら手作業で作成される。そのため、システムの移行時には、移行対象のファイルが膨大であるため、ＪＣＬの作成作業が大きな手間となっていた。
【０００４】
磁気ディスクの入れ替え時に行うファイルの移行に関し、入力されたファイルのラベル情報を解析し、移行に用いるパラメータの抽出及びファイル容量の計算を実行し、その実行結果に基づいて元のＪＣＬを編集した新たなＪＣＬを出力する技術が提案されている。
【０００５】
なお、データ処理装置の処理プログラムを高級言語で書かれたソースから機械語で書かれたオブジェクトに変換するコンパイラが提案されている。このコンパイラは、オブジェクトの実行時に用いる入出力環境設定情報（ジョブ制御文）を自動的に作成する。
【０００６】
ホストシステムのＪＣＬをサーバシステムのＪＣＬに変換するソフトウェア資源移行システムが提案されている。このソフトウェア資源移行システムは、ホストシステム用のＪＣＬをサーバシステム用のＪＣＬに変換するための変換ルール情報を参照し、この変換ルール情報に基づいてホストシステムのＪＣＬをサーバシステムのＪＣＬに変換する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開平０４−２１７０２２号公報
【特許文献２】特開昭５７−１５９３４９号公報
【特許文献３】特開２０１０−２０５０６８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
上記の技術では、テープ媒体にファイルを書き込むための処理プログラムとしてシステムユーティリティを利用することが想定されている。しかし、システムユーティリティとは異なる独自の処理プログラムが利用されている場合もある。ファイルの移行に用いるＪＣＬの自動生成に適さない処理プログラムが利用されている場合、自動生成されたＪＣＬの信頼性を保証できなくなるリスクが生じうる。
【０００９】
１つの側面によれば、本開示の目的は、より信頼性の高い制御プログラムを生成することが可能なプログラム、情報処理装置、及びジョブ制御言語の自動生成方法を提供することにある。
【課題を解決するための手段】
【００１０】
１つの態様によれば、テープ媒体に記録されたファイルのデータ移行に用いる制御プログラムを生成する情報処理装置が提供される。情報処理装置は、テープ媒体にファイルを書き込む際に利用される第１の処理プログラムの情報を格納する記憶部と、テープ媒体から、移行対象のファイルを当該テープ媒体に書き込む際に利用された第２の処理プログラムの情報を取得し、取得した情報に基づいて、第２の処理プログラムと第１の処理プログラムとが一致する場合に、当該第１の処理プログラムを利用して移行対象のファイルを移行先に書き込む処理を実行させるジョブ制御言語の制御プログラムを生成する演算部とを有する。
【発明の効果】
【００１１】
１つの側面によれば、より信頼性の高い制御プログラムを生成することができる。
【図面の簡単な説明】
【００１２】
【図１】第１実施形態に係る情報処理装置の一例を示した図である。
【図２】第２実施形態に係るシステムの一例を示した図である。
【図３】第２実施形態に係る情報処理装置の機能を実現可能なハードウェアの一例を示した図である。
【図４】第２実施形態に係る情報処理装置が有する機能の一例を示したブロック図である。
【図５】第２実施形態に係る登録ユーティリティ情報の一例を示した図である。
【図６】第２実施形態に係る一次テープ情報の生成に用いるラベル情報の一例を示した図である。
【図７】第２実施形態に係る一次テープ情報の一例を示した図である。
【図８】第２実施形態に係る二次テープ情報の一例を示した図である。
【図９】第２実施形態に係るＪＣＬファイルの一例を示した図である。
【図１０】第２実施形態に係るテープ情報生成処理の流れを示したフロー図である。
【図１１】第２実施形態に係るＪＣＬ生成処理の流れを示したフロー図である。
【図１２】ボリュームラベル情報のフォーマットを示した図である。
【図１３】ファイルラベル１のフォーマットを示した図である。
【図１４】ファイルラベル２のフォーマットを示した図である。
【発明を実施するための形態】
【００１３】
以下に添付図面を参照しながら、本発明の実施形態について説明する。なお、本明細書及び図面において実質的に同一の機能を有する要素については、同一の符号を付することにより重複説明を省略する場合がある。
【００１４】
＜１．第１実施形態＞
第１実施形態について説明する。第１実施形態は、ＨＤＤ（Hard Disk Drive）やＳＳＤ（Solid State Drive）などを搭載したディスク装置に対し、テープ媒体のファイルを移行する際に用いる制御プログラムを自動生成する方法に関する。
【００１５】
図１を参照しながら、上記の方法を実現可能な情報処理装置１０について説明する。情報処理装置１０は、第１実施形態に係る情報処理装置の一例である。図１は、第１実施形態に係る情報処理装置の一例を示した図である。情報処理装置１０は、例えば、メインフレームなどの汎用機である。
【００１６】
図１に示すように、情報処理装置１０は、記憶部１１及び演算部１２を有する。
記憶部１１は、ＲＡＭ（Random Access Memory）などの揮発性記憶装置、或いは、ＨＤＤやフラッシュメモリなどの不揮発性記憶装置である。演算部１２は、ＣＰＵ（Central Processing Unit）やＤＳＰ（Digital Signal Processor）などのプロセッサである。但し、演算部１２は、ＡＳＩＣ（Application Specific Integrated Circuit）やＦＰＧＡ（Field Programmable Gate Array）などの電子回路であってもよい。演算部１２は、例えば、記憶部１１又は他のメモリに記憶されたプログラムを実行する。
【００１７】
情報処理装置１０は、テープ媒体２０ａのファイルを移行するためのジョブ制御言語（ＪＣＬ）の制御プログラムを生成する。テープ媒体２０ａは、例えば、ＬＴＯ（Linear Tape-Open）媒体である。テープ媒体２０ａは、テープ装置２０に装填される。テープ装置２０は、装填されたテープ媒体２０ａに対するデータの読み書きを実行する装置である。情報処理装置１０は、テープ装置２０に接続されている。
【００１８】
記憶部１１は、テープ媒体２０ａにファイルを書き込む際に利用される予め登録された第１の処理プログラムの情報を格納する。第１の処理プログラムは、例えば、ファイルの書き込みに用いるシステムユーティリティである。システムユーティリティは、例えば、ＯＳ（Operating System）や管理者権限を有するユーザ用の管理ツールにより提供される処理プログラムである。なお、記憶部１１には、システムユーティリティ以外の処理プログラムの情報が第１の処理プログラムの情報として登録されていてもよい。
【００１９】
以下では、記憶部１１に予め登録された第１の処理プログラムの情報を登録情報１１ａと呼ぶ場合がある。図１の例では、登録情報１１ａとして、第１の処理プログラムのプログラム名「ＰＲＧ＃１」が記憶部１１に格納されている。
【００２０】
演算部１２は、テープ装置２０に装填されたテープ媒体２０ａから、移行対象のファイルをテープ媒体２０ａに書き込む際に利用された第２の処理プログラムの情報を含むラベル情報３０を取得する。後述するボリュームラベル情報（例えば、図１２を参照）、ファイルラベル１（例えば、図１３を参照）、ファイルラベル２（例えば、図１４を参照）は、ラベル情報３０の一例である。
【００２１】
例えば、テープ媒体２０ａには、各ファイルについて、ファイル名、第２の処理プログラムのプログラム名、ファイル容量、ファイルのレコード形式などの情報を含むラベル情報３０が格納されている。図１の例では、ファイル名が「ＦＩＬＥ＃１」のファイルについて、第２の処理プログラムのプログラム名「ＰＲＧ＃１」、ファイル容量「５００」、レコード形式「固定長」などの情報がラベル情報３０としてテープ媒体２０ａに格納されている。なお、ファイル容量の数字はトラック数を表す。
【００２２】
また、ファイル名が「ＦＩＬＥ＃２」のファイルについて、第２の処理プログラムのプログラム名「ＰＲＧ＃２」、ファイル容量「５０」、レコード形式「可変長」などの情報がラベル情報３０としてテープ媒体２０ａに格納されている。さらに、ファイル名が「ＦＩＬＥ＃３」のファイルについて、第２の処理プログラムのプログラム名「ＰＲＧ＃３」、ファイル容量「１１００」、レコード形式「不定長」などの情報がラベル情報３０としてテープ媒体２０ａに格納されている。
【００２３】
演算部１２は、上記のようなラベル情報３０を取得し、第２の処理プログラムと同じ第１の処理プログラムがあるか否かを判定する。第２の処理プログラムと同じ第１の処理プログラムがある場合、演算部１２は、第１の処理プログラムを利用して移行対象のファイルを移行先に書き込む処理を実行させるジョブ制御言語の制御プログラムを生成する。
【００２４】
図１の例では、ラベル情報３０に含まれる第２の処理プログラム「ＰＲＧ＃１」と同じ第１の処理プログラム「ＰＲＧ＃１」がある。そのため、演算部１２は、第１の処理プログラム「ＰＲＧ＃１」を利用して移行対象のファイルを移行先に書き込む処理を実行させるジョブ制御言語の制御プログラム４０ａを生成する。
【００２５】
一方、ラベル情報３０に記載のある第２の処理プログラムのうち、第１の処理プログラムと同じではない第２の処理プログラムについて、演算部１２は、レコード形式に応じた処理を実行する。
【００２６】
レコード形式が固定長又は可変長の場合、演算部１２は、第２の処理プログラムを利用して移行対象のファイルを移行先に書き込む処理を実行させるジョブ制御言語の制御プログラムを生成する。レコード形式が不定長の場合、演算部１２は、移行対象のファイルについてジョブ制御言語の制御プログラムを生成する処理を回避する。
【００２７】
図１の例では、第１の処理プログラム「ＰＲＧ＃１」と異なる第２の処理プログラム「ＰＲＧ＃２」のレコード形式が「可変長」である。そのため、演算部１２は、第２の処理プログラム「ＰＲＧ＃２」を利用して移行対象のファイルを移行先に書き込む処理を実行させるジョブ制御言語の制御プログラム４０ｂを生成する。
【００２８】
一方、第１の処理プログラム「ＰＲＧ＃１」と異なる第２の処理プログラム「ＰＲＧ＃３」のレコード形式は「不変長」である。そのため、演算部１２は、第２の処理プログラム「ＰＲＧ＃３」に対応するファイル「ＦＩＬＥ＃３」について、ジョブ制御言語の制御プログラムを生成する処理を回避する。
【００２９】
システムユーティリティなどの仕様が明らかな処理プログラムを利用する場合、ＪＣＬの記述方法が確定しているため、演算部１２は、安定して正しい制御プログラムを自動生成できる。一方、仕様が明らかでない処理プログラムを利用する場合、システムユーティリティを利用する場合とはＪＣＬの記述方法が異なるため、正しい制御プログラムを自動生成することが難しくなる場合がある。
【００３０】
但し、仕様が明らかでない処理プログラムを利用する場合であっても、レコード形式が固定長又は可変長であれば、演算部１２は、順編成形式でＪＣＬを記述することで、安定して正しい制御プログラムを自動生成できる。このように、第２の処理プログラムの種類及びファイルのレコード形式に応じてＪＣＬで記述される制御プログラムの生成処理を切り分けることで、信頼性の高い制御プログラムを自動生成することができる。
【００３１】
なお、制御プログラムの生成処理が回避されたファイルについて、演算部１２は、そのファイルの情報をユーザが後で参照できるように記憶部１１に格納する。また、演算部１２は、処理の回避をユーザに通知してもよいし、表示装置（非図示）に表示するなどの方法で、処理が回避されたファイルの情報をユーザに提供してもよい。
【００３２】
以上、第１実施形態について説明した。
＜２．第２実施形態＞
次に、第２実施形態について説明する。第２実施形態は、ＨＤＤやＳＳＤなどの記憶装置を搭載したディスク装置に対し、テープ媒体のファイルを移行する際に用いる制御プログラムを自動生成する方法に関する。
【００３３】
［２−１．システム］
まず、図２を参照しながら、第２実施形態に係るシステムについて説明する。図２は、第２実施形態に係るシステムの一例を示した図である。
【００３４】
図２に示すように、第２実施形態に係るシステムは、情報処理装置１００、テープ装置２００、ディスク装置３００、及び端末装置４００を有する。情報処理装置１００は、テープ装置２００、ディスク装置３００、及び端末装置４００に接続されている。また、情報処理装置１００は、例えば、メインフレームである。
【００３５】
テープ装置２００は、装填されたテープ媒体２１０のデータを読み書きする装置である。テープ媒体２１０は、例えば、ＬＴＯ媒体である。情報処理装置１００は、テープ装置２００を介してテープ媒体２１０のデータを読み書きする。ディスク装置３００は、ＨＤＤやＳＳＤなどの記憶装置を有する。なお、ディスク装置３００は、ネットワークを介して情報処理装置１００と接続されたクラウドストレージであってもよい。端末装置４００は、ユーザが情報処理装置１００を操作するための操作端末である。
【００３６】
以上、システムについて説明した。なお、第２実施形態に係る技術を適用可能なシステムは図２の例に限定されないが、説明の都合上、以下では図２に例示したシステムを想定して説明を進める。
【００３７】
［２−２．ハードウェア］
次に、図３を参照しながら、情報処理装置１００のハードウェアについて説明する。図３は、第２実施形態に係る情報処理装置の機能を実現可能なハードウェアの一例を示した図である。
【００３８】
情報処理装置１００が有する機能は、例えば、図３に示す情報処理装置のハードウェア資源を用いて実現することが可能である。つまり、情報処理装置１００が有する機能は、コンピュータプログラムを用いて図３に示すハードウェアを制御することにより実現される。
【００３９】
図３に示すように、このハードウェアは、主に、ＣＰＵ９０２と、ＲＯＭ（Read Only Memory）９０４と、ＲＡＭ９０６と、ホストバス９０８と、ブリッジ９１０とを有する。さらに、このハードウェアは、外部バス９１２と、インターフェース９１４と、入力部９１６と、出力部９１８と、記憶部９２０と、ドライブ９２２と、接続ポート９２４と、通信部９２６とを有する。
【００４０】
ＣＰＵ９０２は、例えば、演算処理装置又は制御装置として機能し、ＲＯＭ９０４、ＲＡＭ９０６、記憶部９２０、又はリムーバブル記録媒体９２８に記録された各種プログラムに基づいて各構成要素の動作全般又はその一部を制御する。ＲＯＭ９０４は、ＣＰＵ９０２に読み込まれるプログラムや演算に用いるデータなどを格納する記憶装置の一例である。ＲＡＭ９０６には、例えば、ＣＰＵ９０２に読み込まれるプログラムや、そのプログラムを実行する際に変化する各種パラメータなどが一時的又は永続的に格納される。
【００４１】
これらの要素は、例えば、高速なデータ伝送が可能なホストバス９０８を介して相互に接続される。一方、ホストバス９０８は、例えば、ブリッジ９１０を介して比較的データ伝送速度が低速な外部バス９１２に接続される。また、入力部９１６としては、例えば、マウス、キーボード、タッチパネル、タッチパッド、ボタン、スイッチ、及びレバーなどが用いられる。さらに、入力部９１６としては、赤外線やその他の電波を利用して制御信号を送信することが可能なリモートコントローラが用いられることもある。
【００４２】
出力部９１８は、例えば、ＬＣＤ（Liquid Crystal Display）、又はＥＬＤ（Electro-Luminescence Display）などの表示装置、又はスピーカなどの音声出力装置である。
記憶部９２０は、各種のデータを格納するための装置である。記憶部９２０としては、例えば、ＨＤＤなどの磁気記憶デバイスが用いられる。また、記憶部９２０として、ＳＳＤやＲＡＭディスクなどの半導体記憶デバイス、光記憶デバイス、又は光磁気記憶デバイスなどが用いられてもよい。
【００４３】
ドライブ９２２は、着脱可能な記録媒体であるリムーバブル記録媒体９２８に記録された情報を読み出し、又はリムーバブル記録媒体９２８に情報を書き込む装置である。リムーバブル記録媒体９２８としては、例えば、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどが用いられうる。なお、ドライブ９２２は省略されてもよい。
【００４４】
接続ポート９２４は、例えば、ＵＳＢ（Universal Serial Bus）ポート、ＩＥＥＥ１３９４ポート、ＳＣＳＩ（Small Computer System Interface）、ＲＳ−２３２Ｃポートなど、外部接続機器９３０を接続するためのポートである。外部接続機器９３０としては、例えば、プリンタなどが用いられうる。
【００４５】
通信部９２６は、ネットワーク９３２に接続するための通信デバイスである。通信部９２６としては、例えば、ＬＡＮ（Local Area Network）用の通信回路、光通信用の通信回路などが用いられうる。通信部９２６に接続されるネットワーク９３２は、有線又は無線により接続されたネットワークであり、例えば、インターネット、ＬＡＮ、ＦＣ（Fibre Channel）ネットワークなどを含む。
【００４６】
以上、情報処理装置１００のハードウェアについて説明した。なお、端末装置４００の機能も図３に例示したハードウェアの一部又は全部を利用して実現できる。
［２−３．情報処理装置の機能］
次に、図４を参照しながら、情報処理装置１００の機能について説明する。図４は、第２実施形態に係る情報処理装置が有する機能の一例を示したブロック図である。
【００４７】
図４に示すように、情報処理装置１００は、記憶部１０１、テープ情報生成部１０２、及びＪＣＬ生成部１０３を有する。
テープ情報生成部１０２及びＪＣＬ生成部１０３の機能は、上述したＣＰＵ９０２などを用いて実現できる。記憶部１０１の機能は、上述したＲＡＭ９０６や記憶部９２０などを用いて実現できる。
【００４８】
（記憶部１０１）
記憶部１０１には、登録ＵＴＬ情報１０１ａ、一次テープ情報１０１ｂ、二次テープ情報１０１ｃ、及びＪＣＬファイル１０１ｄが格納される。
【００４９】
登録ＵＴＬ情報１０１ａは、図５に示すように、システムユーティリティを特定するためのユーティリティ名を示す情報である。図５は、第２実施形態に係る登録ユーティリティ情報の一例を示した図である。例えば、ユーティリティ名は、８バイト長のデータで表現される。登録ＵＴＬ情報１０１ａに含まれるユーティリティ名は、ユーザにより事前に登録される登録情報である。図５の例では、登録ＵＴＬ情報１０１ａとしてユーティリティ名「ＦＣＰＹ」が登録されている。
【００５０】
一次テープ情報１０１ｂは、テープ媒体２１０に格納されているラベル情報（ボリュームラベル、ファイルラベル１、ファイルラベル２）から抽出されたテープ情報である。一次テープ情報１０１ｂの生成方法については後述する。二次テープ情報１０１ｃは、一次テープ情報１０１ｂに、一次テープ情報１０１ｂの分析結果を加えたテープ情報である。二次テープ情報１０１ｃの生成方法については後述する。ＪＣＬファイル１０１ｄは、ＪＣＬで記述された制御プログラムである。ＪＣＬファイル１０１ｄの生成方法については後述する。
【００５１】
（テープ情報生成部１０２）
テープ情報生成部１０２は、一次テープ情報１０１ｂを生成する。テープ情報生成部１０２は、図６に示すように、テープ媒体２１０からボリュームラベルと、２種類のファイルラベル（ファイルラベル１、ファイルラベル２）を読み出す。図６は、第２実施形態に係る一次テープ情報の生成に用いるラベル情報の一例を示した図である。
【００５２】
図６（Ａ）に示すように、ボリュームラベルには、ボリュームを特定するためのボリューム通し番号（この例では「ＵＲＩＡＧＥ」）が含まれる。例えば、ボリューム通し番号は、６バイト長のデータで表現される。
【００５３】
ファイルラベル１には、図６（Ｂ）に示すように、ボリュームラベルが示すボリュームに含まれるファイル毎のファイル名及びブロックカウント（ブロック数）が含まれる。例えば、ファイル名は１７バイト長のデータで表現され、ブロックカウントは６バイト長のデータで表現される。この例では、ファイル名「ＵＲＩＡＧＥ．Ｈ１４．ＳＥＲＶＥＲ」とブロックカウント「１０００」などがファイルラベル１に含まれている。
【００５４】
ファイルラベル２には、図６（Ｃ）に示すように、ボリュームラベルが示すボリュームに含まれるファイル毎のレコード形式、ブロック長、レコード長、ジョブ名／プログラム名が含まれる。例えば、レコード形式は１バイト長のデータで表現され、ブロック長は５バイト長のデータで表現され、レコード長は５バイト長のデータで表現され、ジョブ名／プログラム名は１７バイト長のデータで表現される。
【００５５】
図６（Ｃ）の中で、レコード形式「Ｆ」は固定長を表し、レコード形式「Ｕ」は不定長（非定型）を表す。また、レコード形式「Ｖ」は可変長を表す。ジョブ名／プログラム名の欄にある「ＵＲＩＡＧＥ＿１／ＦＣＰＹ」という記載は、ジョブ名が「ＵＲＩＡＧＥ＿１」、プログラム名が「ＦＣＰＹ」であることを意味する。また、ＦＩＬＥ＃３のレコード長が「０」になっているが、レコード形式が「Ｕ」の場合、レコード長の欄には「０」と記載される。
【００５６】
テープ情報生成部１０２は、読み出したラベル情報に基づいて一次テープ情報１０１ｂを生成する。例えば、テープ情報生成部１０２は、図６に例示したラベル情報に基づいて、図７に示すような一次テープ情報１０１ｂを生成する。図７は、第２実施形態に係る一次テープ情報の一例を示した図である。
【００５７】
テープ情報生成部１０２は、ボリュームラベルから抽出したボリューム通し番号を各ファイルに対応付ける。また、テープ情報生成部１０２は、テープ媒体２１０に格納されている順番を示す格納順を各ファイルに割り当てる。また、テープ情報生成部１０２は、ファイルラベル１から抽出したファイル名、ファイルラベル２から抽出したプログラム名、レコード形式、レコード長、ブロック長を各ファイルに対応付ける。
【００５８】
また、テープ情報生成部１０２は、移行先に確保する空き容量（ファイル容量）を計算する。まず、テープ情報生成部１０２は、１トラックに格納できるブロック数Ｘを計算する。ブロック数Ｘは、トラック長をブロック長で割った値の小数点以下を切り捨てた整数値で与えられる。そして、テープ情報生成部１０２は、計算したブロック数Ｘを用いてファイル容量を計算する。ファイル容量は、ブロック数をＸで割った値の小数点以下を切り上げた整数値で与えられる。なお、ファイル容量はトラック数で表される。
【００５９】
ＦＩＬＥ＃１の場合、例えば、トラック長が４７４７６であるとすると、トラック長（４７４７６）／ブロック長（２００００）は約２．３７であるから、ブロック数Ｘは、２．３７の小数点以下を切り捨てた整数値２となる。そして、ファイル容量は、ブロック数（１０００）／Ｘ（２）であるから、５００となる。ＦＩＬＥ＃２、＃３についても同様である。テープ情報生成部１０２は、計算したファイル容量を、該当するファイルの情報に対応付ける。
【００６０】
上記の処理により、各ファイルについて、ボリューム通し番号、格納順、ファイル名、プログラム名、ファイル容量、レコード形式、レコード長、ブロック長を対応付けた一次テープ情報１０１ｂが生成される（図７を参照）。テープ情報生成部１０２は、生成した一次テープ情報１０１ｂを記憶部１０１に格納する。
【００６１】
（ＪＣＬ生成部１０３）
ＪＣＬ生成部１０３は、一次テープ情報１０１ｂに基づいて二次テープ情報１０１ｃを生成する。二次テープ情報１０１ｃは、図８に示すように、一次テープ情報１０１ｂに、「生成対象」の項目を追加した情報である。図８は、第２実施形態に係る二次テープ情報の一例を示した図である。なお、生成対象が「ＯＫ」とは、該当するファイルについてＪＣＬファイル１０１ｄを生成することを意味する。また、生成対象が「ＮＧ」とは、該当するファイルについてＪＣＬファイル１０１ｄを生成しないことを意味する。
【００６２】
ＪＣＬファイル１０１ｄを生成するか否かの判断は、一次テープ情報１０１ｂに基づいて行われる。まず、ＪＣＬ生成部１０３は、一次テープ情報１０１ｂを参照し、該当するファイルに対応するプログラム名が登録ＵＴＬ情報１０１ａのユーティリティ名に一致するか否かを判定する。つまり、ＪＣＬ生成部１０３は、該当するファイルの書き込み時に用いた処理プログラムがシステムユーティリティか否かを判定する。
【００６３】
プログラム名と一致するユーティリティ名が登録ＵＴＬ情報１０１ａにある場合、ＪＣＬ生成部１０３は、該当するファイルをＪＣＬファイル１０１ｄの生成対象にする（生成対象「ＯＫ」）。図８の例では、ＦＩＬＥ＃１に対応するプログラム名「ＦＣＰＹ」が登録ＵＴＬ情報１０１ａ（図５を参照）にあるため、ＪＣＬ生成部１０３は、ファイル名「ＵＲＩＡＧＥ．Ｈ１４．ＳＥＲＶＥＲ」のファイルを生成対象にする（生成対象「ＯＫ」）。
【００６４】
プログラム名と一致するユーティリティ名が登録ＵＴＬ情報１０１ａにない場合、ＪＣＬ生成部１０３は、該当するファイルに対応するレコード形式を参照する。レコード形式が「Ｆ」（固定長）又は「Ｖ」（可変長）の場合、ＪＣＬ生成部１０３は、該当するファイルをＪＣＬファイル１０１ｄの生成対象にする（生成対象「ＯＫ」）。一方、レコード形式が「Ｕ」（不定長）の場合、ＪＣＬ生成部１０３は、該当するファイルをＪＣＬファイル１０１ｄの生成対象から外す（生成対象「ＮＧ」）。
【００６５】
図８の例では、ＦＩＬＥ＃２に対応するプログラム名「ＵＲＩ１００Ｂ」が登録ＵＴＬ情報１０１ａ（図５を参照）にないため、ＪＣＬ生成部１０３は、ファイル名が「ＵＲＩＡＧＥ．Ｈ１４．ＴＯＴＡＬ」のファイルに対応するレコード形式を参照する。このファイルのレコード形式は「Ｆ」（固定長）であるから、ＪＣＬ生成部１０３は、このファイルを生成対象にする（生成対象「ＯＫ」）。
【００６６】
また、ＦＩＬＥ＃３に対応するプログラム名「ＶＯＬＢＫ」も登録ＵＴＬ情報１０１ａ（図５を参照）にないため、ＪＣＬ生成部１０３は、ファイル名が「ＵＲＩＡＧＥ．Ｈ１４．ＢＡＣＫＵＰ」のファイルに対応するレコード形式を参照する。このファイルのレコード形式は「Ｕ」（不定長）であるから、ＪＣＬ生成部１０３は、このファイルを生成対象から外す（生成対象「ＮＧ」）。
【００６７】
ＪＣＬ生成部１０３は、上記のようにして生成した二次テープ情報１０１ｃを記憶部１０１に格納する。二次テープ情報１０１ｃを記憶部１０１に格納しておくことで、自動生成されたＪＣＬファイル１０１ｄに基づいてファイルを移行した後で、移行済みのファイルと未移行のファイルとをユーザが容易に確認できるようになる。また、一次テープ情報１０１ｂと同じ内容が併記されていることで、ＪＣＬファイル１０１ｄの生成対象から外れた原因をユーザが容易に認識することが可能になる。
【００６８】
また、ＪＣＬ生成部１０３は、一次テープ情報１０１ｂを用いてＪＣＬファイル１０１ｄを生成する。図７に例示した一次テープ情報１０１ｂを用いる場合、ＪＣＬ生成部１０３は、図９に示すようなＪＣＬファイル１０１ｄを生成する。図９は、第２実施形態に係るＪＣＬファイルの一例を示した図である。
【００６９】
ＪＣＬ生成部１０３は、例えば、ＪＣＬ制御文のテンプレートを利用し、そのテンプレートに一次テープ情報１０１ｂの内容を埋め込むことでＪＣＬファイル１０１ｄを生成する。この場合、テンプレートは予め用意され、記憶部１０１に格納されている。また、テンプレートは、システムユーティリティを利用する場合のＪＣＬ制御文とする。
【００７０】
図９の左端に表示した０１から１７までの数字は、説明の都合上、ＪＣＬファイル１０１ｄの行を参照しやすくするために付した行番号である。１行目はＪＣＬファイル１０１ｄの対象とするボリュームを指定するＪＣＬ制御文である。１６、１７行目は、ＪＣＬファイル１０１ｄの終端部に記述されるＪＣＬ制御文である。また、２行目から８行目までがＦＩＬＥ＃１の移行に関するＪＣＬ制御文であり、９行目から１６行目までがＦＩＬＥ＃２の移行に関するＪＣＬ制御文である。
【００７１】
また、図９に例示したＪＣＬファイル１０１ｄの中にある下線は、一次テープ情報１０１ｂに記載された情報が記入される部分を参照できるように便宜的に付したものである。例えば、下線部を除く部分をテンプレートとして用意することができる。上述したテンプレートは、例えば、２行目から８行目までの下線部を除く部分、及び、９行目から１５行目までの下線部を除く部分で与えられる。
【００７２】
まず、ＪＣＬ生成部１０３は、一次テープ情報１０１ｂからボリューム通し番号「ＵＲＩＡＧＥ」を抽出し、１行目の「￥ＪＯＢ」の後に記述する。
次に、ＪＣＬ生成部１０３は、一次テープ情報１０１ｂから、格納順が「１」で生成対象のＦＩＬＥ＃１に対応するプログラム名「ＦＣＰＹ」を抽出する。プログラム名が「ＦＣＰＹ」の処理プログラムは、登録ＵＴＬ情報１０１ａに登録されたシステムユーティリティであるから、ＪＣＬ生成部１０３は、上述したテンプレートを「￥ＪＯＢ」のＪＣＬ制御文の次に挿入する。そして、ＪＣＬ生成部１０３は、プログラム名「ＦＣＰＹ」を２行目の「￥ＥＸ」の後に記述する。
【００７３】
同様に、ＪＣＬ生成部１０３は、一次テープ情報１０１ｂから抽出したボリューム通し番号「ＵＲＩＡＧＥ」、ファイル名「ＵＲＩＡＧＥ．Ｈ１４．ＳＥＲＶＥＲ」、ファイル容量「５００」を３、４行目の下線部（予め設定された記述部分）に挿入する。なお、３行目の「ＦＩＬＥ＝（ＵＲＩＡＧＥ．Ｈ１４．ＳＥＲＶＥＲ，１，ＳＬ）」の数字「１」は格納順を示し、文字「ＳＬ」は標準ラベルを示す。
【００７４】
次に、ＪＣＬ生成部１０３は、一次テープ情報１０１ｂから、格納順が「２」で生成対象のＦＩＬＥ＃２に対応するプログラム名「ＵＲＩ１００Ｂ」を抽出する。プログラム名が「ＵＲＩ１００Ｂ」の処理プログラムは、登録ＵＴＬ情報１０１ａに登録されたシステムユーティリティではない。そのため、ＪＣＬ生成部１０３は、ＦＩＬＥ＃１の処理に対応するＪＣＬ制御文の次（「／ＦＩＮ」の後）に上述したテンプレートを挿入する。
【００７５】
そして、ＪＣＬ生成部１０３は、プログラム名「ＦＣＰＹ」を９行目の「￥ＥＸ」の後に記述する。また、ＪＣＬ生成部１０３は、一次テープ情報１０１ｂから抽出したファイル名「ＵＲＩＡＧＥ．Ｈ１４．ＴＯＴＡＬ」、ファイル容量「５０」を１０、１１行目の下線部（予め設定された記述部分）に挿入する。また、ＪＣＬ生成部１０３は、１６、１７行目に「￥ＪＥＮＤ」「￥ＦＩＮ」を記述する。
【００７６】
ＪＣＬ生成部１０３は、上記のような方法でＪＣＬファイル１０１ｄを生成する。なお、図９に示したＪＣＬ制御文及び上述した記述の順番は一例であり、利用するシステムやファイルなどの仕様に応じて適宜変形しうる。また、ＸＳＰ系のＪＣＬを例に説明したが、ＭＶＳ系（ＭＳＰ系を含む）やＶＳＥ系など、他のＪＣＬについても同様に適用できる。こうした変形についても第２実施形態の技術的範囲に属する。
【００７７】
以上、情報処理装置１００の機能について説明した。
［２−４．処理の流れ］
次に、情報処理装置１００が実行する処理の流れについて説明する。
【００７８】
（テープ情報生成）
まず、図１０を参照しながら、情報処理装置１００が実行するテープ情報生成処理の流れについて説明する。図１０は、第２実施形態に係るテープ情報生成処理の流れを示したフロー図である。
【００７９】
（Ｓ１０１）テープ情報生成部１０２は、テープ装置２００を介してテープ媒体２１０からラベル情報（図６を参照）を取得する。例えば、テープ情報生成部１０２は、テープ媒体２１０からボリュームラベルを読み出し、ボリューム通し番号を抽出する。また、テープ情報生成部１０２は、テープ媒体２１０からファイルラベルを読み出し、各ファイルについて、ファイル名、ブロックカウント、レコード形式、ブロック長、レコード長、ジョブ名／プログラム名を抽出する。
【００８０】
（Ｓ１０２）テープ情報生成部１０２は、Ｓ１０３以降の処理の対象として選択されていないファイルがあるか否かを判定する。未選択のファイルがある場合、テープ情報生成部１０２は、未選択のファイルの中から１つのファイルを対象ファイルとして選択する。対象ファイルが選択された場合、処理はＳ１０３へと進む。一方、未選択のファイルがない場合、図１０に示した一連の処理は終了する。
【００８１】
（Ｓ１０３）テープ情報生成部１０２は、対象ファイルについて、Ｓ１０１で取得したボリューム通し番号などのラベル情報を一次テープ情報１０１ｂ（図７を参照）に追加する。例えば、対象ファイルが図６のＦＩＬＥ＃１の場合、テープ情報生成部１０２は、ボリューム通し番号「ＵＲＩＡＧＥ」、ファイル名「ＵＲＩＡＧＥ．Ｈ１４．ＳＥＲＶＥＲ」、プログラム名「ＦＣＰＹ」などを一次テープ情報１０１ｂに追加する。
【００８２】
（Ｓ１０４）テープ情報生成部１０２は、対象ファイルについて、格納順を示す格納順番号を一次テープ情報１０１ｂに追加する。格納順番号は、対象ファイルがテープ媒体２１０に格納されている順番を表す番号である。
【００８３】
（Ｓ１０５）テープ情報生成部１０２は、対象ファイルのファイル容量（移行先に確保する空き容量）を計算する。
まず、テープ情報生成部１０２は、１トラックに格納できるブロック数Ｘを計算する。ブロック数Ｘは、トラック長をブロック長で割った値の小数点以下を切り捨てた整数値で与えられる。そして、テープ情報生成部１０２は、計算したブロック数Ｘを用いてファイル容量を計算する。ファイル容量は、ブロック数をＸで割った値の小数点以下を切り上げた整数値で与えられる。なお、ファイル容量はトラック数で表される。
【００８４】
図７のＦＩＬＥ＃１が対象ファイルの場合、例えば、トラック長が４７４７６であるとすると、トラック長（４７４７６）／ブロック長（２００００）は約２．３７であるから、ブロック数Ｘは、２．３７の小数点以下を切り捨てた整数値２となる。そして、ファイル容量は、ブロック数（１０００）／Ｘ（２）であるから、５００となる。
【００８５】
（Ｓ１０６）テープ情報生成部１０２は、Ｓ１０５で計算したファイル容量を一次テープ情報１０１ｂに追加する。Ｓ１０６の処理が完了すると、処理はＳ１０２へと進む。
（ＪＣＬ生成）
次に、図１１を参照しながら、情報処理装置１００が実行するＪＣＬ生成処理の流れについて説明する。図１１は、第２実施形態に係るＪＣＬ生成処理の流れを示したフロー図である。
【００８６】
（Ｓ１１１）ＪＣＬ生成部１０３は、一次テープ情報１０１ｂのレコード（ファイル毎の情報）の中から未だ読み出されていないレコードを１つ読み出す。例えば、ＦＩＬＥ＃１に対応するレコードは、ボリューム通し番号「ＵＲＩＡＧＥ」、格納順「１」、ファイル名「ＵＲＩＡＧＥ．Ｈ１４．ＳＥＲＶＥＲ」、プログラム名「ＦＣＰＹ」、ファイル容量「５００」、レコード形式「Ｆ」などである。
【００８７】
（Ｓ１１２）ＪＣＬ生成部１０３は、一次テープ情報１０１ｂのレコードを全て読み出し終えた（Ｓ１１１で読み出すレコードがなかった）か否かを判定する。全てのレコードを読み出し終えている場合、図１１に示した一連の処理は終了する。一方、Ｓ１１１で読み出したレコードがある場合、処理はＳ１１３へと進む。
【００８８】
（Ｓ１１３）ＪＣＬ生成部１０３は、Ｓ１１１で読み出したレコード（対象レコード）のプログラム名と、登録ＵＴＬ情報１０１ａに記載のユーティリティ名とが一致するか否かを判定する。つまり、ＪＣＬ生成部１０３は、対象レコードのファイルを処理する処理プログラムがシステムユーティリティであるか否かを判定する。処理プログラムがシステムユーティリティである場合、処理はＳ１１４へと進む。一方、処理プログラムがシステムユーティリティでない場合、処理はＳ１１９へと進む。
【００８９】
（Ｓ１１４）ＪＣＬ生成部１０３は、対象レコードに基づくＪＣＬ制御文の記載が、ＪＣＬファイル１０１ｄに対する最初の記載であるか否かを判定する。最初の記載である場合、処理はＳ１１５へと進む。一方、最初の記載でない場合、処理はＳ１１７へと進む。
【００９０】
（Ｓ１１５）ＪＣＬ生成部１０３は、ＪＣＬファイル１０１ｄの先頭にＪＯＢ文（図９の１行目「￥ＪＯＢ…」）を記載する。例えば、図７のＦＩＬＥ＃１に対応するレコードが対象レコードの場合、ＪＣＬ生成部１０３は、ボリューム通し番号「ＵＲＩＡＧＥ」を抽出し、図９の１行目のようにＪＯＢ文を記述する。
【００９１】
（Ｓ１１６）ＪＣＬ生成部１０３は、ＪＥＮＤ文（図９の１６行目「￥ＪＥＮＤ」）及びＦＩＮ文（図９の１７行目「￥ＦＩＮ」）をＪＣＬファイル１０１ｄに記載する。
（Ｓ１１７）ＪＣＬ生成部１０３は、処理プログラムに応じたＪＣＬ制御文をＪＣＬファイル１０１ｄに記載する。
【００９２】
対象レコードの処理プログラムがシステムユーティリティである場合、ＪＣＬ生成部１０３は、システムユーティリティ用の予め用意されたＪＣＬ制御文のテンプレート（図９の２行目から８行目を参照）を利用してＪＣＬファイル１０１ｄに記載を加える。
【００９３】
例えば、ＦＩＬＥ＃１のレコードを対象レコードとする場合、ＦＩＬＥ＃１に対応するプログラム名「ＦＣＰＹ」の処理プログラムは、登録ＵＴＬ情報１０１ａに登録されたシステムユーティリティである。そのため、ＪＣＬ生成部１０３は、図９の２行目から８行目のように、テンプレートに対象レコードの情報を挿入したＪＣＬ制御文を生成し、ＪＣＬファイル１０１ｄに記載を加える。
【００９４】
対象レコードの処理プログラムがシステムユーティリティでない場合、ＪＣＬ生成部１０３は、予め用意されたＪＣＬ制御文のテンプレート（図９の９行目から１５行目を参照）を利用してＪＣＬファイル１０１ｄに記載を加える。
【００９５】
例えば、ＦＩＬＥ＃２のレコードを対象レコードとする場合、ＦＩＬＥ＃２に対応するプログラム名「ＦＣＰＹ」の処理プログラムは、登録ＵＴＬ情報１０１ａに登録されたシステムユーティリティではない。しかし、レコード形式が「Ｆ」（固定長）であるから（Ｓ１１９を参照）、順編成ファイルとして扱うことができる。そのため、ＪＣＬ生成部１０３は、図９の９行目から１５行目のように、テンプレートに対象レコードの情報を挿入したＪＣＬ制御文を生成し、ＪＣＬファイル１０１ｄに記載を加える。
【００９６】
（Ｓ１１８）ＪＣＬ生成部１０３は、生成対象マークをＯＫに設定（二次テープ情報１０１ｃの生成対象欄に「ＯＫ」と記載）する。Ｓ１１８の処理が完了すると、処理はＳ１１１へと進む。
【００９７】
（Ｓ１１９）ＪＣＬ生成部１０３は、対象レコードに記載されたレコード形式が「Ｆ」又は「Ｖ」であるか否かを判定する。レコード形式が「Ｆ」である場合、又はレコード形式が「Ｖ」である場合、処理はＳ１１４へと進む。一方、レコード形式が「Ｕ」である場合、処理はＳ１２０へと進む。
【００９８】
（Ｓ１２０）ＪＣＬ生成部１０３は、生成対象マークをＮＧに設定（二次テープ情報１０１ｃの生成対象欄に「ＮＧ」と記載）する。Ｓ１２０の処理が完了すると、処理はＳ１１１へと進む。
【００９９】
つまり、対象レコードの処理プログラムがシステムユーティリティではなく、レコード形式が不定長である場合、正しくＪＣＬ制御文が自動生成されないリスクがあるため、該当するファイルについてＪＣＬ制御文の自動生成がスキップされる。但し、処理がスキップされたファイルの情報を二次テープ情報１０１ｃに残すことで、該当するファイルをユーザが後で確認して手作業でＪＣＬファイルを記述することを容易にしている。
【０１００】
以上、処理の流れについて説明した。
［２−５．ボリュームラベル情報、ファイルラベル１、ファイルラベル２］
ここで、テープ媒体２１０から取得可能なボリュームラベル情報、ファイルラベル１、ファイルラベル２のフォーマットについて、図１２〜図１４を参照しながら説明する。図１２は、ボリュームラベル情報のフォーマットを示した図である。図１３は、ファイルラベル１のフォーマットを示した図である。図１４は、ファイルラベル２のフォーマットを示した図である。
【０１０１】
（ボリュームラベル情報）
図１２に示すように、ボリュームラベル情報は、先頭から順に、ボリュームラベル、ボリューム通し番号、記録方式、及び使用者識別コードの項目を有する。ボリューム通し番号と記録方式との間には「０」が格納される１Ｂｙｔｅの未使用領域と、空白に設定された２４Ｂｙｔｅの未使用領域とが設けられる。また、記録方式と使用者識別コードとの間には空白に設定された４Ｂｙｔｅの未使用領域が設けられ、使用者識別コードの後には２９Ｂｙｔｅの未使用領域が設けられる。
【０１０２】
ボリュームラベルは、磁気テープの標準ラベルを示す情報である。ボリューム通し番号は、ボリュームラベル情報に対応するテープ媒体（該当テープ）のボリューム通し番号である。記録方式は、ファイルを圧縮保存したテープ媒体であるか否かを示すための圧縮形式又は非圧縮形式を示す情報である。使用者識別コードは、所有者名などの任意の使用者情報である。
【０１０３】
（ファイルラベル１）
図１３に示すように、ファイルラベル１は、先頭から順に、ラベル識別名、ファイル名、ファイル通し番号、ボリューム順序番号、ファイル論理順序番号、世代番号、バージョン番号、作成日、満了日付、ブロックカウント、及びシステムコードの項目を有する。満了日付とブロックカウントとの間には「０」が格納される１Ｂｙｔｅの未使用領域が設けられる。また、システムコードの後には空白に設定された７Ｂｙｔｅの未使用領域が設けられる。
【０１０４】
ラベル識別名として、ファイルラベル１がファイルの先頭に書かれている場合にはＨＤＲ１の４文字が格納され、ファイルが次のボリュームへ続く場合にはボリュームの最後に終わりを意味するラベルＥＯＶ１の４文字が格納される。また、ファイルラベル１がファイルの最後に書かれている場合にはファイルの最後に終わりを意味するラベルＥＯＦ１の４文字がラベル識別名として格納される。
【０１０５】
ファイル名は、ファイル作成時にジョブ制御文で指定されたファイル名の１７Ｂｙｔｅ分である。ファイル通し番号は、ファイルラベル１に対応するファイル（該当ファイル）を含むボリュームのボリューム通し番号である。ボリューム順序番号は、該当ファイルを含むボリュームの先頭ボリュームからの順序を示す数字である。ファイル論理順序番号は、ファイルの相対的な位置を示す数字である。
【０１０６】
世代番号及びバージョン番号として、該当ファイルが世代ファイルである場合には、その世代番号が格納される。世代ファイルとは、その世代が管理されるファイルである。該当ファイルが世代ファイルでない場合には、世代番号及びバージョン番号の項目は空白となる。作成日は、該当ファイルを作成した作成日である。
【０１０７】
満了日付は、該当ファイルのファイル保存期限である。書き込み時に満了日付の指定がされていない場合には、ｂ０００００（ｂ：空白）が格納される。ブロックカウントは、ブロック数である。システムコードは、ファイルラベル１を作成したシステムを識別するコードである。
【０１０８】
（ファイルラベル２）
図１４に示すように、ファイルラベル２は、先頭から順に、ラベル識別名、レコード形式、ブロック長、論理レコード長、記録密度、ファイルの位置、ジョブ名／プログラム名、記録方式、制御文字表示、ブロック属性、及び使用者情報の項目を有する。制御文字表示とブロック属性との間には「０」が格納される１Ｂｙｔｅの未使用領域が設けられる。また、ブロック属性と使用者情報との間には空白に設定された１３Ｂｙｔｅの未使用領域が設けられる。
【０１０９】
ファイルラベル２がファイルラベル１のＨＤＲ１に続いて書かれている場合には、ラベル識別名としてＨＤＲ２の４文字が格納される。ファイルラベル２がファイルラベル２のＥＯＶ１に続く場合にはＥＯＶ２の４文字が格納され、ファイルラベル１のＥＯＦ１に続く場合にはＥＯＦ２の４文字が格納される。
【０１１０】
レコード形式として、固定長の場合にはＦ、可変長の場合にはＶ、不定長の場合にはＵが格納される。ブロック長は、ファイルのブロックの長さである。論理レコード長は、ファイルの論理レコード長である。記録密度の項目には、テープ媒体上の記録密度を示すコードが格納される。ファイルの位置の項目には、ファイル作成時にテープボリュームの切替えが生じたかどうかを示す数字（０：生じた、１：生じていない）が格納される。
【０１１１】
ジョブ名／プログラム名は、ファイル作成時のジョブ名及びプログラム名である。記録方式の項目には、圧縮形式又は非圧縮形式を示す情報が格納される。制御文字表示の項目には、ファイル内レコードが制御文字を含むか否かを示す情報が格納される。ブロック属性の項目には、ファイル内レコードがどのようにブロック化されたか（ブロック化方式）を示す情報が格納される。使用者情報の項目には、任意の使用者情報が格納される。
【０１１２】
以上、テープ媒体２１０から取得可能なボリュームラベル情報、ファイルラベル１、ファイルラベル２のフォーマットについて説明した。
以上、第２実施形態について説明した。
【符号の説明】
【０１１３】
１０  情報処理装置
１１  記憶部
１１ａ  登録情報
１２  演算部
２０  テープ装置
２０ａ  テープ媒体
３０  ラベル情報
４０ａ、４０ｂ  制御プログラム
【図１】
0006503995.tif 000002
【図２】
0006503995.tif 000003
【図３】
0006503995.tif 000004
【図４】
0006503995.tif 000005
【図５】
0006503995.tif 000006
【図６】
0006503995.tif 000007
【図７】
0006503995.tif 000008
【図８】
0006503995.tif 000009
【図９】
0006503995.tif 000010
【図１０】
0006503995.tif 000011
【図１１】
0006503995.tif 000012
【図１２】
0006503995.tif 000013
【図１３】
0006503995.tif 000014
【図１４】
0006503995.tif 000015