(57)【特許請求の範囲】
【請求項１】
テープ状記録媒体に対してデータを記録または再生するテープ状記録媒体記録再生装置において、
１本のテープ状記録媒体を、隣接するパーティションとの間に、ローディングまたはアンローディングのためのデータが記録されない非記録エリアが配置されるように、複数のパーティションに区分する区分手段と、
複数の前記パーティションのうちの、所定のデータ単位数を検出する第１の検出手段と、
前記第１の検出手段により検出された複数の前記パーティションの、前記所定のデータ単位数の、先頭の前記パーティションからの累積値を検出する第２の検出手段と、
前記テープ状記録媒体上のアクセス位置を、前記アクセス位置が属する前記パーティションの始点からの位置と、そのパーティションの直前のパーティションまでの前記累積値の和とに基づいて演算する演算手段と
を備えることを特徴とするテープ状記録媒体記録再生装置。
【請求項２】
複数の前記パーティションのうちの、前記所定のデータ単位数を記憶する記憶手段をさらに備え、
前記第１の検出手段は、複数の前記パーティションのうちの、前記所定のデータ単位数を、前記記憶手段の記憶から検出する
ことを特徴とする請求項１に記載のテープ状記録媒体記録再生装置。
【請求項３】
前記第２の検出手段は、前記累積値を、前記第１の検出手段により検出された結果を演算することで検出する
ことを特徴とする請求項１に記載のテープ状記録媒体記録再生装置。
【請求項４】
前記第１の検出手段は、複数の前記パーティションのうちの、前記所定のデータ単位数を、前記テープ状記録媒体に記録されるデータの数、およびデータの境界を表すマークに基づいて検出する
ことを特徴とする請求項１に記載のテープ状記録媒体記録再生装置。
【請求項５】
前記記憶手段に記憶されている、複数の前記パーティションのうちの、前記所定のデータ単位数を、前記テープ状記録媒体を収容するカセットに付随するメモリに書き込む書き込み手段を
さらに備えることを特徴とする請求項２に記載のテープ状記録媒体記録再生装置。
【請求項６】
テープ状記録媒体に対してデータを記録または再生するテープ状記録媒体記録再生装置のテープ状記録媒体記録再生方法において、
１本のテープ状記録媒体を、隣接するパーティションとの間に、ローディングまたはアンローディングのデータが記録されない非記録エリアが配置されるように、複数のパーティションに区分する区分ステップと、
複数の前記パーティションのうちの、前記所定のデータ単位数を検出する第１の検出ステップと、
前記第１の検出ステップの処理により検出された複数の前記パーティションの、前記所定のデータ単位数の、先頭の前記パーティションからの累積値を検出する第２の検出ステップと、
前記テープ状記録媒体上のアクセス位置を、前記アクセス位置が属する前記パーティションの始点からの位置と、そのパーティションの直前のパーティションまでの前記累積値の和とに基づいて演算する演算ステップと
を含むことを特徴とするテープ状記録媒体記録再生方法。
【請求項７】
テープ状記録媒体に対してデータを記録または再生する処理を制御するプログラムであって、
１本のテープ状記録媒体を、隣接するパーティションとの間に、ローディングまたはアンローディングのためのデータが記録されない非記録エリアが配置されるように、複数のパーティションに区分する区分ステップと、
複数の前記パーティションのうちの、前記所定のデータ単位数を検出する第１の検出ステップと、
前記第１の検出ステップの処理により検出された複数の前記パーティションの、前記所定のデータ単位数の、先頭の前記パーティションからの累積値を検出する第２の検出ステップと、
前記テープ状記録媒体上のアクセス位置を、前記アクセス位置が属する前記パーティションの始点からの位置と、そのパーティションの直前のパーティションまでの前記累積値の和とに基づいて演算する演算ステップと
を含むことを特徴とするコンピュータ制御用のプログラムが記録されている記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、テープ状記録媒体記録再生装置および方法、並びに記録媒体に関し、特に、複数のパーティションに区分した磁気テープを容易に管理することができるようにしたテープ状記録媒体記録再生装置および方法、並びに記録媒体に関する。
【０００２】
【従来の技術】
デジタルデータを磁気テープに記録または再生（以下、必要に応じて、記録／再生とも記述する）することができる記録再生装置として、いわゆるテープストリーマ装置が知られている。このようなテープストリーマ装置は、メディアであるテープカセットのテープ長にもよるが、例えば数十乃至数百ギガバイト程度の膨大な記録容量を有することが可能であり、このため、コンピュータ本体のハードディスク等のメディアに記録されたデータをバックアップするなどの用途に広く利用されている。また、データサイズの大きい画像データ等の保存に利用する場合にも好適とされている。
【０００３】
上述のようなテープストリーマ装置として、例えば、８ミリVTR（Video  Tape  Recorder）のテープカセットを記録媒体として、回転ヘッドによるヘリカルスキャン方式を採用してデータの記録／再生を行うようにされたものが提案されている。
【０００４】
また、テープストリーマ装置によってデータが記録または再生される磁気テープは、通常、カセット筐体内に回転自在に取り付けられているリールに巻かれている。
【０００５】
テープカセットは、回転自在に取り付けられているリールによって上記磁気テープを巻き取り保存している。そして、テープカセットには、リールを１つしかもたないものと、２つのリールを有するものがある。
【０００６】
リールを１つしかもたないテープカセットは、１リール故に、テープストリーマ装置から当該テープカセットが排出される前にテープを巻き戻す必要がある。
【０００７】
また、２つリールを有するテープカセットであっても、例えば、長期間保存する場合には、磁気テープを片方のリールに全部巻いておくことが好ましい。さらに、カセットの中とはいえ、長時間データの記録面を露出しておくと、ほこりが付着してしまう等の理由から、テープカセットは、通常は、磁気テープを先頭まで巻き戻した後、テープストリーマ装置から排出されている。
【０００８】
【発明が解決しようとする課題】
このように、磁気テープが、先頭まで巻き戻された状態で、テープカセットをテープストリーマ装置から排出するようにすると、磁気テープの途中まで、データを記録または再生し、その位置で記録または再生動作を終了させ、テープカセットを排出するとき、磁気テープを先頭まで巻戻す必要があるので、記録または再生動作終了後、テープカセットが実際に排出するまでの時間が長くなる課題があった。
【０００９】
そこで磁気テープを複数のパーティションに区分し、最寄りのパーティションとパーティションの境界部において、磁気テープをローディングまたはアンローディングすることができるようにする、いわゆるマルチパーティションが提案されている。
【００１０】
すなわち、シングルパーティションの場合、図１（Ａ）に示すように、磁気テープの先頭にDA（Device  Area）１が設けられ、DA１の後方に、データを記録または再生するデータエリア２が設けられている。磁気テープは、DA１において、ローディングまたはアンローディングされ、データは、データエリア２にだけ記録または再生される。従って、図１（Ｂ）で示すように、磁気テープのLBA（Logical Block Address）は、テープ１が、テープ後端に移動するにともなって、次第に大きな値となる。
【００１１】
これに対して、マルチパーティションにおいては、図２（Ａ）に示すように、図１におけるデータエリア２が、複数（この例の場合３個）のパーティション２−０乃至２−２に区分される。各パーティション２−０乃至２−２には、先頭にデータエリア１１−０乃至１１−２が形成され、その後方に、ODA（Optional Device Area）１２−０乃至１２−２が配置される。LBAは、図２（Ｂ）に示すように、各パーティション２−０乃至２−２のデータエリア１１−０乃至１１−２内において、その先頭から後端までの間で、次第に大きな値となる。パーティションが異なれば、LBAは再び、０から次第に大きな値に変化する。そしてローディングまたはアンローディングは、DA１またはODA１２−０乃至１２−２において行われる。
【００１２】
このように、各パーティション２−０乃至２−２の境界部にODA１２−０乃至１２−２が形成されるので、所定の位置から最寄りのODAに移動した後、磁気テープをアンローディングするようにすれば、図１に示したシングルパーティションの場合に比べ、常に先頭のDA１まで、磁気テープを巻戻す必要がなくなり、最寄りのODA１２−０乃至１２−２の位置まで巻戻すか、または早送りするだけでよいので、巻戻しまたは早送りのために要する時間が短くて済み、結果的に、より迅速に磁気テープをアンローディングすることが可能となる。
【００１３】
しかしながら、このように、マルチパーティションの構造にすると、磁気テープのアクセス位置の管理が複雑となる。そこで多くのアプリケーションプログラムは、磁気テープがシングルパーティションである場合のアドレス管理しかできず、マルチパーティションの磁気テープを管理する機能を有していないことが多い。その結果、多くのアプリケーションプログラムを用いて磁気テープの記録再生を制御する場合、迅速なアンローディングを行うことができない課題があった。
【００１４】
本発明は、このような状況に鑑みてなされたものであり、より迅速にアンローディングすることができるようにするものである。
【００１５】
【課題を解決するための手段】
請求項１に記載のテープ状記録媒体記録再生装置は、１本のテープ状記録媒体を、隣接するパーティションとの間に、ローディングまたはアンローディングのためのデータが記録されない非記録エリアが配置されるように、複数のパーティションに区分する区分手段と、複数のパーティションのうちの、所定のデータ単位数を検出する第１の検出手段と、第１の検出手段により検出された複数のパーティションの、所定のデータ単位数の、先頭のパーティションからの累積値を検出する第２の検出手段と、テープ状記録媒体上のアクセス位置を、アクセス位置が属するパーティションの始点からの位置と、そのパーティションの直前のパーティションまでの累積値の和とに基づいて演算する演算手段とを備えることを特徴とする。
【００１６】
複数のパーティションのうちの、所定のデータ単位数を記憶する記憶手段をさらに設け、第１の検出手段により、複数のパーティションのうちの、所定のデータ単位数を、記憶手段の記憶から検出させるようにすることができる。
【００１７】
前記第２の検出手段には、累積値を、第１の検出手段により検出された結果を演算することで検出させるようにすることができる。
【００１８】
前記第１の検出手段には、複数のパーティションのうちの、所定のデータ単位数を、テープ状記録媒体に記録されるデータの数、およびデータの境界を表すマークに基づいて検出させるようにすることができる。
【００１９】
前記記憶手段に記憶されている、複数のパーティションのうちの、所定のデータ単位数を、テープ状記録媒体を収容するカセットに付随するメモリに書き込む書き込み手段をさらに設けることができる。
【００２０】
請求項６に記載のテープ状記録媒体記録再生方法は、１本のテープ状記録媒体を、隣接するパーティションとの間に、ローディングまたはアンローディングのデータが記録されない非記録エリアが配置されるように、複数のパーティションに区分する区分ステップと、複数のパーティションのうちの、所定のデータ単位数を検出する第１の検出ステップと、第１の検出ステップの処理により検出された複数のパーティションの、所定のデータ単位数の、先頭のパーティションからの累積値を検出する第２の検出ステップと、テープ状記録媒体上のアクセス位置を、アクセス位置が属するパーティションの始点からの位置と、そのパーティションの直前のパーティションまでの累積値の和とに基づいて演算する演算ステップとを含むことを特徴とする。
【００２１】
請求項７に記載の記録媒体のプログラムは、１本のテープ状記録媒体を、隣接するパーティションとの間に、ローディングまたはアンローディングのためのデータが記録されない非記録エリアが配置されるように、複数のパーティションに区分する区分ステップと、複数のパーティションのうちの、所定のデータ単位数を検出する第１の検出ステップと、第１の検出ステップの処理により検出された複数のパーティションの、所定のデータ単位数の、先頭のパーティションからの累積値を検出する第２の検出ステップと、テープ状記録媒体上のアクセス位置を、アクセス位置が属するパーティションの始点からの位置と、そのパーティションの直前のパーティションまでの累積値の和とに基づいて演算する演算ステップとを含むことを特徴とする。
【００２２】
請求項１に記載のテープ状記録媒体記録再生装置、請求項６に記載のテープ状記録媒体記録再生方法、および請求項７に記載の記録媒体においては、テープ状記録媒体上のアクセス位置が、アクセス位置が属するパーティションの始点からの位置と、そのパーティションの直前のパーティションまでの所定のデータ単位数の累積値の和とに基づいて演算される。
【００２３】
【発明の実施の形態】
以下、本発明に係る実施の形態について図面を参照しながら説明する。
【００２４】
本発明のテープストリーマ装置２１では、磁気テープに、少なくとも２つのパーティションが形成され、パーティションの各々に記録データが記録または再生される。
【００２５】
このテープストリーマ装置２１は、図３に示すように、磁気テープ（図６に磁気テープ１３０として図示されている）の走行を制御する走行制御機能を有するモータ駆動及びサーボ回路３６と、モータ駆動及びサーボ回路３６を制御して、上記磁気テープを、現在位置しているパーティションの直前のパーティション内の最終位置に設けられている排出領域（ODA）に移動してテープカセットを排出する制御機能を有するシステムコントローラ７１とを備えている。
【００２６】
上記モータ駆動及びサーボ回路３６は、トラッキング制御機能や上記磁気テープの走行制御機能を有している。磁気テープの走行制御は、例えばピンチローラ（図示せず）或いは磁気テープが巻装されているリール１０４，１０６（図４および図５）の回転を制御して行なわれる。
【００２７】
上記システムコントローラ７１は、各種回路を制御する回路であって、例えば、上記モータ駆動及びサーボ回路３６の駆動制御を行う。
【００２８】
なお、上記磁気テープにおいては、複数のパーティションが記録再生方向に連続して設けられており、最後のパーティションを除いた全てのパーティションの最終位置に、排出領域とされるオプションデバイスエリア（ODA）が形成されるとともに、先頭のパーティションの直前に、デバイスエリア（DA）が形成されている（その詳細は、図１２を参照して後述される）。
【００２９】
よって、パーティションの直前のパーティションとは、現在位置するパーティションに対して記録再生方向とは反対方向に隣接して設けられているパーティションを意味する。
【００３０】
このように構成したテープストリーマ装置２１は、アンローディング時において、アンローディングの命令前に位置しているパーティションの直前のパーティションの排出領域まで磁気テープを送った後、テープカセットを排出する。これによりテープストリーマ装置２１は、アンローディング時の動作を高速で行うことができる。
【００３１】
この図３に示すテープストリーマ装置２１は、外部とのデータの授受を行うためのインタフェースコントローラ３１と、このインタフェースコントローラ３１を介して入力されたデータに信号処理を施して所定のフォーマットに変換する記録データ処理系３３、並びに、この記録データ処理系３３から供給される信号を磁気テープに記録すると共に、磁気テープを再生する記録再生部３４を備えている。また、このテープストリーマ装置２１は、記録再生部３４からの再生出力に信号処理を施して、磁気テープに記録されたデータを再生する再生データ処理系３５、並びに磁気テープに記録するデータの管理を行う記録データ管理部３７とを備えている。
【００３２】
このテープストリーマ装置２１で用いるテープカセット１００は、その内部に、磁気テープに記録したデータを識別するための識別情報やシステムログを記憶する記憶素子としてのメモリ（MIC(Memory In Cassette)）１２０を備えている。
【００３３】
上記インタフェースコントローラ３１は、いわゆるSCSI（Small Computer System Interface） からなり、外部のパーソナルコンピュータ、ワークステーション等よりなるホストコンピュータ９１からバス８１を介して供給されるデータを、上記記録データ処理系３３に供給すると共に、上記再生データ処理系３５により再生された記録データを、バス８１を介してホストコンピュータ９１に供給する。
【００３４】
このテープストリーマ装置２１においては、例えばデータ記録時には、ホストコンピュータ９１から、後述する固定長のレコード（record）という伝送データ単位で、インタフェースコントローラ３１を介して逐次データが入力され、圧縮回路３２に供給される。なお、このテープストリーマ装置２１は、可変長のデータの集合単位によってホストコンピュータ９１よりデータが伝送されるモードも有しているが、ここではその説明は省略する。尚、このホストコンピュータ９１には、キーボード９２等が接続されている。
【００３５】
圧縮回路３２では、入力されたデータについて必要があれば、所定の方式によって圧縮処理が施される。圧縮方式として、例えばLZ符号による圧縮方式が採用されるのであれば、この方式では過去に処理した文字列に対して専用のコードが割り当てられて辞書の形で格納される。そして、以降に入力される文字列と辞書の内容とが比較されて、入力データの文字列が辞書のコードと一致すれば、この文字列データが辞書のコードに置き換えられる。辞書と一致しなかった入力文字列のデータは、逐次新たなコードが与えられて辞書に登録されていく。このようにして入力文字列のデータが辞書に登録され、文字列データを辞書のコードに置き換えていくことによりデータ圧縮が行われる。
【００３６】
また、上記記録データ処理系３３は、上記インタフェースコントローラ３１を介して供給された記録データに、インデックス情報を付加するインデックス付加部４１、サブコードを発生するサブコード発生部４２、上記インデックス付加部４１からの記録データを誤り訂正符号化する誤り訂正符号生成部４３、並びに、誤り訂正符号化した記録データに、上記サブコード発生部４２からのサブコード及びブロックアドレスを付加するサブコード付加部４４を備えている。
【００３７】
上記サブコード発生部４２は、第１及び第２のサブコード発生部４２Ａ，４２Ｂと、システムログ生成部４２Ｃとからなる。また、上記誤り訂正符号生成部４３は、メモリ５９、Ｃ３エンコーダ４３Ａ、Ｃ２エンコーダ４３Ｂ、及びＣ１エンコーダ４３Ｃからなる。
【００３８】
また、この記録データ処理系３３は、サブコード付加部４４からの記録データにヘッダパリティを付加するヘッダパリティ付加部４５、このヘッダパリティ付加部４５から供給される記録データを８／１０変調（Eight to Ten Modulation ）する８／１０変調部４６、８／１０変調部４６から供給される記録データに同期信号を付加する同期信号付加部４７、同期信号付加部４７から供給される記録データにトラッキング制御用のATF（Automatic Track Following ）用パイロット信号を付加するパイロット信号付加部４８、並びにパイロット信号付加部４８から供給される記録データを増幅する増幅器４９とを備えている。
【００３９】
また、上記記録再生部３４は、各々アジマス角が異なる２つの記録用の磁気ヘッドHw１，Hw２と、各々アジマス角が異なる２つの再生用の磁気ヘッドHr１，Hr２とを磁気テープ１３０（図６）に対して傾斜して回転させる回転ドラム５１を備えている。これらの２対の磁気ヘッドHw１，Hw２，Hr１，Hr２は、それぞれ回転ドラム５１の円周方向に近接して、回転ドラム５１の軸方向（すなわち、トラック幅方向）にトラックピッチTp分の間隔を有するように取り付けられている。
【００４０】
また、上記再生データ処理系３５は、記録再生部３４から供給される磁気テープ１３０の傾斜トラックの再生出力を増幅する増幅器５２、増幅器５２から供給される再生出力から同期信号を検出すると共に、再生出力を２値化した後、時間軸補正を行って出力する同期信号検出部５３、同期信号検出部５３からの２値化された再生データを８／１０復調（Eight to Ten  Demodulation ）する８／１０復調部５４、並びに、この８／１０復調部５４からの再生データのヘッダパリティをチェックするヘッダパリティチェック部５５を備えている。
【００４１】
さらに、ヘッダパリティチェック部５５からの再生データからサブコードを分離するサブコード分離部５６、サブコード分離部５６からのサブコードが分離された再生データに誤り訂正処理を行う誤り訂正処理部５７、並びに、誤り訂正処理部５７により誤り訂正された再生データからインデックスを分離するインデックス分離部５８が設けられている。誤り訂正処理部５７は、メモリ５９、Ｃ１デコーダ５７Ａ、Ｃ２デコーダ５７Ｂ、及びＣ３デコーダ５７Ｃからなる。
【００４２】
モータ駆動及びサーボ回路３６は、記録再生部３４から回転ドラム５１の回転に応じたPGパルスが供給され、それを検出するPG検出部、PG検出部の検出出力から速度エラーを検出する速度エラー検出部、記録再生部３４の再生出力からATF用パイロット信号を検出するパイロット信号検出部、速度エラー検出部とパイロット信号検出部の各検出出力を加算する加算部、加算部の加算出力に基づいてトラッキングサーボ信号を発生するトラッキングサーボ回路、このトラッキングサーボ信号に基づいて記録再生部３４のテープ走行系を制御するキャプスタン駆動回路等（いずれも図示せず）を備えている。
【００４３】
また、上記モータ駆動及びサーボ回路３６は、テープカセットに回転自在に取り付けられているリールを回転制御する駆動制御手段（図示せず）を備えている。
【００４４】
モータ駆動及びサーボ回路３６は、駆動制御手段を制御して、例えば、磁気テープ１３０を所定位置へ高速移送することができる。例えば、後述するオプションデバイスエリア（ODA）への移動も、高速送り出しによって行うこともできる。
【００４５】
上記モータ駆動及びサーボ回路３６は、システムコントローラ７１によってその動作が制御されている。
【００４６】
上記記録データ管理部３７は、磁気テープに記録するデータの管理等の処理を行うシステムコントローラ７１、識別情報を保持するRAM７２、並びに、RAM７２に対する書き込み及び読み出し等を制御する書き込み／読み出し制御部７３を備えている。
【００４７】
上記システムコントローラ７１は、上記識別情報として、磁気テープ上に設けられたパーティション及び磁気テープに記録されているファイル等を管理するためのシステムログ等を上記RAM７２に書き込む。そして、上記書き込み／読み出し制御部７３は、上記RAM７２に記憶されているシステムログを読み出して、記録再生部３４を介してMIC１２０に供給すると共に、MIC１２０から読み出したシステムログを上記RAM７２に書き込む。
インデックス分離部５８は、上述のように誤り訂正処理部５７によりエラー訂正処理が施された１単位毎の再生データから、インデックス情報を分離して、上記システムコントローラ７１等に供給するとともに、インデックス情報を分離した後の再生データを、伸長回路３８に供給する。
【００４８】
伸長回路３８では、システムコントローラ７１の判断に基づいて、記録時に圧縮回路３２により圧縮が施されたデータであれば、データ伸長処理が行なわれ、非圧縮データであれば、データ伸長処理が行なわれずに、そのままスルーして出力される。
【００４９】
伸長回路３８の出力データはインタフェースコントローラ３１を介して再生データとしてホストコンピュータ９１に出力される。
【００５０】
また、この図３にはテープカセット１００に設けられたMIC１２０が示されている。このMIC１２０は、テープカセット本体がテープストリーマ装置２１に装填されると、接点端子１１２（図５）等を介してシステムコントローラ７１とデータの入出力が可能なように接続される。
【００５１】
MIC１２０と外部のホストコンピュータ９１の間は、SCSIのコマンドを用いて情報の相互伝送が行われる。このため、MIC１２０とホストコンピュータ９１の間に専用のラインを特別に設ける必要はない。
【００５２】
図４及び図５は、テープストリーマ装置２１に装着されるテープカセット１００の構成を例示している。
【００５３】
これらの図に示すように、例えば、合成樹脂材料によって略矩形浅皿状に形成された上下一対の上ハーフ１０２と下ハーフ１０３とが、互いの開口側を突き合わせるようにして組み合わされた後、複数の止めねじによって結合され、略箱状のカセット本体１０１が構成されている。このカセット本体１０１には、その内部に、長手方向に並んで磁気テープ１３０が巻き付けられているテープ供給リール１０４とテープ巻取リール１０５とが回転自在に収納されている。
【００５４】
カセット本体１０１には、図に示すように、上面部を構成する上ハーフ１０２の天井面に矩形の表示窓１０６が設けられており、このカセット本体１０１の内部に収納したテープ供給リール１０４とテープ巻取リール１０５に巻回された磁気テープ１３０の状態を外部から目視可能とされている。また、カセット本体１０１には、底面部を構成する下ハーフ１０３にテープ供給リール１０４とテープ巻取リール１０５のハブの一部を外方へと臨ませると共に、これらテープ供給リール１０４とテープ巻取リール１０５の回転を規制するためのハブ嵌合穴（図示せず）が、それぞれのリールに対応して設けられている。なお、下ハーフ１０３の底面部には、磁気テープ１３０の長さを検出するためのテープ長検出穴、或いは磁気テープ１３０の種別を識別するテープ仕様識別穴等の種々の識別穴（図示せず）が設けられている。
【００５５】
テープ供給リール１０４及びテープ巻取リール１０５は、磁気テープ１３０が巻回される円筒状のハブ部と、このハブ部の一方側に設けられた円盤状のフランジ部とから構成される。これらテープ供給リール１０４及びテープ巻取リール１０５は、ハブ部がカセット本体１０１のそれぞれハブ嵌合穴に嵌合されることによって、カセット本体１０１内において回転自在に収納される。また、テープ供給リール１０４及びテープ巻取リール１０５は、ハブ部の回転中心部が、図示しないリール押さえバネ及びリール押さえ板によって下ハーフ１０３側に付勢されることによって、カセット本体１０１内でのガタ付きが防止されている。
【００５６】
カセット本体１０１には、磁気テープが外方に開放される前面部を閉塞する蓋部材１０７が回動自在に組み付けられている。蓋部材１０７は、カセット本体１０１の幅とほぼ等しい長さを有しており、両端側には相対向して支点部を構成する側壁部１０８Ａ，１０８Ｂが一体に形成されることによって、全体略コ字状に形成されている。側壁部１０８Ａ，１０８Ｂの内面には、軸線を一致させてピン軸が一体に形成されている。このピン軸がカセット本体に対して回転自在に支持されることで、蓋部材１０７は、カセット本体１０１の上記の前面部を開閉自在にすることができる。
【００５７】
そして、テープカセット１００の背面には、端子開口部１１１が設けられ、この端子開口部１１１には補助記憶装置が搭載されている。この補助記憶装置は、配線基板に実装された不揮発性メモリよりなるMIC１２０と、このMIC１２０の入出力端子となる配線基板に形成された複数の接点端子１１２とから構成されている。
【００５８】
上記MIC１２０は、記憶素子と、記録時に上記接点端子１１２及びコネクタを介して当該MIC１２０に接続される書き込み／読み出し制御部７３との間のデータの入出力を制御するための入出力制御部とから構成されている。
【００５９】
磁気テープ１３０上には、例えば図６（Ａ）に示すように、磁気ヘッドHw１，Hw２により斜めの記録トラックが順次記録形成され、４０トラック（＝２０フレーム）を１グループとして、複数のグループで１つのパーティションが形成されている。換言すれば、１つのパーティション内におけるデータの記録単位がグループとされ、この１グループが図６（Ａ）に示すように２０フレーム（＝４０トラック）で構成されている。
【００６０】
１トラックは、図６（Ｂ）に示すように、４７１ブロックにより形成され、その両端に４ブロック分のマージンエリアＡ１１，Ａ１７が設けられ、これらマージンエリアＡ１１の後ろとマージンＡ１７の前には、トラッキング制御用のATFエリアＡ１２，Ａ１６が設けられる。更に１トラックの中間にATFエリアＡ１４が設けられる。これらATFエリアＡ１２，Ａ１４，Ａ１６は５ブロック分の長さとされる。
【００６１】
そして、上記ＡＴＦエリアＡ１２，Ａ１４の間と、ATFエリアＡ１４，Ａ１６の間に、それぞれ２２４ブロック分のデータエリアＡ１３，Ａ１５が設けられる。したがって、１トラック内における全データエリア（Ａ１３及びＡ１５）は、全４７１ブロックのうち、２２４×２＝４４８ブロックを占めることになる。データエリアＡ１３、Ａ１５に、マージンＡ１１，Ａ１７を加えた領域が、メインデータ領域とされる。
【００６２】
１ブロックは、図６（Ｃ）に示すように、同期信号を記録する１バイトの第１区間（SYNCデータエリアＡ１）、IDを記録する６バイトの第２区間（IDエリアＡ２）、ヘッダパリティを記録する２バイトの第３区間（パリティエリアＡ３）、並びに、データを記録する６４バイトの第４区間（データエリアＡ４）の、合計７３バイトで構成され、各ブロック毎にサブコードとブロックアドレスがデータと共に記録される。
【００６３】
データエリアＡ１３，Ａ１５のブロックのデータエリアＡ４に記録されるデータは、図７に示すように、５８バイト×３８４ブロック分、すなわち２２２７２バイトのデータ毎に、２次元構成の誤り訂正符号Ｃ１、Ｃ２が付加された６４バイト×４４８ブロック分のデータが、各ブロック毎に振り分けられて構成されている。そして、図７中に示すように、上記誤り訂正符号Ｃ１は各ブロック毎のメインデータに付加されて記録され、また、上記誤り訂正符号Ｃ２は各トラックの上記メインデータ領域の両端部分の各々３２ブロックに２分割されて記録される。
【００６４】
また、このテープストリーマ装置２１では、４０トラックすなわち２０フレーム（１フレームは、２トラック、すなわち９４２ブロック）を１単位（グループ）としたエラー訂正用の符号構成が採用され、図８に示すように、トラック方向に対応するデータ列のエラー訂正符号Ｃ２がトラックの両側に配置して記録され、トラック幅方向に対応するデータ列のエラー訂正符号Ｃ３が、上記４０トラックの最終の２トラックに割り当てられて記録される。なお、上記１単位毎に、１連のデータを識別するためのインデックス情報が付加されている。
【００６５】
そして、上記サブコードとして、メインデータの区切りを示す区切り情報であるセパレータカウント、記録数を示すレコードカウント、テープフォーマット上で定義された各領域を示すエリアID、記録単位の絶対位置を示すフレーム番号、記録単位数を示すグループカウントやチェックサムなどが記録される。
【００６６】
インデックス情報は、GIT（Group  Information  Table）とBAT（Block  Access  Table）とで構成される。GITには、図９に示すような情報が記録される。例えば、Group  Numberは、このGITが記録されているグループのグループ番号を表す。Record  Countは、LBOT(Logical  Beginning  Of  Tape）（最初のパーティションの先頭位置）から、現在のグループまでの全てのグループのGITにおけるCurrent  Basic  GroutのCount  Of  Recordsの値の和を表す。セパレータマーク（Separator  Mark）は、ここにおけるrecordsとして、カウントされる。
【００６７】
Separator  １  Countは、LBOTから現在のグループまでのSeparator  １（filemark）の数を表す。Separator  ２  CountはLBOTが現在のグループまでのSeparators  ２（setmark）の数を表す。
【００６８】
BATは、１以上のエントリ（Entry）より構成され、エントリは図１０に示すように、１バイトのFlagと３バイトのCountで構成される。Flagは図１１に示すように定義されている。例えばSeparator  Markの場合、Flagには、’００００  ０１１０’が記述される。Separator  １の場合、Countに０が記述され、Separator  ２の場合、Countに１が記述される。
【００６９】
次に、上述したような構成を有するテープストリーマ装置２１の基本的な動作について以下に説明する。このテープストリーマ装置２１では、記録を行う際に上記インタフェースコントローラ３１を介して、ホストコンピュータ９１から記録データが供給される。インタフェースコントローラ３１は、バス８１を介して記録データが供給されると、供給された記録データを、必要に応じて圧縮回路３１により圧縮させた後、インデックス付加部４１とサブコード発生部４２に供給する。
【００７０】
上記インデックス付加部４１は、上記インタフェースコントローラ３１から記録データが供給されると、供給された記録データに、４０トラックすなわち２０フレーム（１グループ）を単位として、１単位毎に、一連の記録データを識別するためのインデックス情報を付加して、誤り訂正符号生成部４３に供給する。
【００７１】
誤り訂正符号生成部４３は、上記インデックス付加部４１から供給された記録データを１単位（１グループ）毎に、上記メモリ５９に一時記憶する。そして、上記Ｃ３エンコーダ４３Ａは、上記メモリ５９に記憶された１単位毎の記録データについて、上述のトラック幅方向（図８の上下方向）に対応するデータ列のエラー訂正符号Ｃ３を生成し、このエラー訂正符号Ｃ３を、上記１グループ４０トラックの最終の２トラックに割り当てる（図８）。また、上記Ｃ２エンコーダ４３Bは、上述のトラック方向（図８の左右方向）に対応するデータ列のエラー訂正符号Ｃ２を生成し、このエラー訂正符号Ｃ２を２分割して、各トラックの上記メインデータ領域の両端部分に割り当てる（図８）。さらに、上記Ｃ１１エンコーダ４３Ｃは、上述の各ブロック毎の誤り訂正符号Ｃ１を生成する（図７）。
【００７２】
一方、上記サブコード発生部４２の第１のサブコード発生部４２Ａは、上記インタフェースコントローラ３１を介して入力された記録データに基づいて、記録データの区切りを示す区切り情報であるセパレータの数を表すセパレータカウントや記録ブロック数を示すレコードカウント等を発生する。また、上記第２のサブコード発生部４２Ｂは、テープフォーマット上（図６）で定義された各領域を示すエリアID、フレーム番号、記録単位数を示すグループカウントやチェックサム等をブロックアドレスと共に発生する。さらに、上記システムログ生成部４２Ｃは、上記テープフォーマットとして規定されている各パーティション毎のシステムログ（履歴情報）を生成する。
【００７３】
上記サブコード付加部４４は、上記誤り訂正符号生成部４３により誤り訂正符号Ｃ３，Ｃ２，Ｃ１が付加された記録データに、上記サブコード発生部４２から供給されるサブコード及びブロックアドレスを付加する。これにより、上記サブコード及びブロックアドレスが、上述の各ブロックの第２区間（図６(Ｃ)のIDエリアＡ２）に割り付けられる。すなわち、サブコード付加部４４は、上記第１のサブコード発生部４２Ａにより発生されたカウント値、上記第２のサブコード発生部４２Ｂにより発生されたエリアID、グループカウント、チェックサム等からサブデータを構成し、ブロックアドレスとともに２つのサブ領域（サブ１，サブ２）の各ブロックに割り当てる。
【００７４】
上記ヘッダパリティ付加部４５は、上記サブコード付加部４４により記録データに付加されたサブコード及びブロックアドレスについて、エラー検出のための２バイトのパリティを生成し、この２バイトのパリティを上記記録データに付加する。これにより、パリティが上述の各ブロックの第３区間（図６(Ｃ)のパリティエリアＡ３）に割り付けられる。また、このヘッダパリティ付加部４５は、上記２つのサブ領域（サブ１，サブ２）の各ブロックにも１バイトのパリティを付加する。
【００７５】
上記８／１０変調部４６は、上記ヘッダパリティ付加部４５とサブコード付加部４４によりヘッダパリティ及びブロックアドレスが付加されたメインデータ領域の記録データと、２つのサブ領域の各ブロックの記録データを、１バイト単位で８ビットを１０ビットに変換して、記録する信号の直流レベルを略々０に保つようにする。
【００７６】
また、上記同期信号付加部４７は、上記８／１０変調部４６により１０ビットデータに変換された記録データに、１ブロック毎に同期信号を付加する。これにより、上記同期信号が上述の各ブロックの第１区間（図６(Ｃ)のSYNCデータエリアＡ１）に割り付けられる。そして、このように形成した記録データがパイロット信号付加部４８に供給される。
【００７７】
パイロット信号付加部４８は、ATF用パイロット信号を発生し、このATF用パイロット信号を記録データに付加して、増幅器４９を介して磁気ヘッドHw１，Hw２に供給する。これにより、磁気ヘッドHw１，Hw２が磁気テープ１３０上を走査して記録を行い、磁気テープ１３０上には、所定のフォーマットで記録トラックが形成される。
【００７８】
ここで、上述のような記録に先だって、磁気テープ１３０上には、予めパーティションが作成されるようにしてもよい。（その処理の詳細については、図１３を参照して後述する。）この場合、上記システムコントローラ７１は、磁気テープ１３０にパーティションを作成した後、パーティションの数、各パーティションの開始位置等を示すパーティションの管理情報を作成して、RAM７２に書き込む。
【００７９】
また、システムコントローラ７１は、パーティション内にディレクトリが作成、削除、変更された場合、あるいはディレクトリ内にファイルが記録、削除、変更された場合等に、RAM７２から個々のファイルの識別情報を読み出し、上記記録等に応じて変更した後、RAM７２に書き込む。さらに、システムコントローラ７１は、ファイルの記録、削除、変更等を行う場合には、RAM７２から個々のファイルの記録位置を管理するための管理情報を読み出し、ファイルの新たな記録位置に応じて変更した後、RAM７２に書き込む。
【００８０】
そして、上記書き込み／読み出し制御部７３は、RAM７２に記憶されている各パーティションの管理情報、個々のファイルの識別情報、個々のファイルの記録位置を管理するための管理情報が更新されると、上記記録再生部３４から、テープカセット１００の接点端子１１２を介して上記MIC１２０に更新された各パーティションの管理情報を書き込む。
【００８１】
これにより、磁気テープ１３０にファイル単位でデータが記録されると共に、上記MIC１２０に磁気テープ１３０に記録した個々のファイルの識別情報等が記録される。
【００８２】
データを複数のテープカセット１００に亘って記録する場合には、システムコントローラ７１は、データが記録されている全てのテープカセット１００に関する情報、データが記録される各々のテープカセット１００を識別するための識別情報、並びに各々のテープカセット１００に記録されているデータを識別するための識別情報を発生し、書き込み／読み出し制御部７３がこれらの識別情報をRAM７２に記憶する。
【００８３】
また、このテープストリーマ装置２１では、上述のように記録が行われた磁気テープ１３０を再生する際に、テープカセット１００が記録再生部３４に装着されると、上記端子開口部１１１から接点端子１１２が露出し、露出した接点端子１１２が記録再生部３４のコネクタ（図示せず）を介して上記書き込み／読み出し制御部７３に接続される。
【００８４】
そして、書き込み／読み出し制御部７３は、コネクタ、接点端子１１２を介して上記MIC１２０から上述の管理情報、個々のファイルの識別情報、個々のファイルの記録位置を管理するための管理情報を読み出して上記RAM７２に書き込む。
【００８５】
一方、上記記録再生部３４は、上記システムコントローラ７１から磁気テープ１３０の再生が指示されると、回転ドラム５１の回転数が記録時と同じになるように回転ドラム５１の回転を制御すると共に、磁気テープ１３０が一定の速度で走行するように磁気テープ１３０の走行を制御する。これにより、再生用の記録ヘッドHr１，Hr２が磁気テープ１３０上を傾斜して走査し、磁気ヘッドHr１，Hr２は、記録トラックの走査に応じた再生出力を増幅器５２を介して同期信号検出部５３に供給する。同期信号検出部５３は、供給される再生出力から同期信号を検出し、この同期信号に同期したクロックにより再生出力を２値化し、再生データを生成して８／１０復調部５４に供給する。
【００８６】
８／１０復調部５４は、上記同期信号検出部５３からの再生データを、１０ビットデータから８ビットデータに変換して、ヘッダパリティチェック部５５に供給する。ヘッダパリティチェック部５５は、上述の２バイトのヘッダパリティを用いてサブコード及びブロックアドレスのパリティチェックを行う。そして、サブコード分離部５６は、上記ヘッダパリティチェック部５５によりパリティチェックされた正しいサブコードを再生データから分離して、システムコントローラ７１に供給し、サブコードを分離した後の再生データをメモリ５９に供給する。
【００８７】
メモリ５９は、上記４０トラックすなわち２０フレーム（１グループ）分の再生データを１単位として、上記インデックス情報が付加された再生データを１単位毎に一時記憶する。そして、Ｃ１デコーダ５７Ａは、メモリ５９に記憶された１単位毎の再生データに基づいて、上述の各ブロック毎に付加されている誤り訂正符号Ｃ１を用いて、各ブロックの再生データに誤り訂正処理を施す。
【００８８】
また、上記Ｃ２デコーダ５７Ｂは、上記C１デコーダ５７Ａにより誤り訂正処理が施された１単位毎の再生データについて、上述の各トラックの再生データ領域の両端部分に付加されているエラー訂正符号Ｃ２を用いて、トラック方向に対応するデータ列にエラー訂正処理を施す。さらに、上記Ｃ３デコーダ５７Ｃは、上記Ｃ２デコーダ５７Ｂにより誤り訂正処理が施された１単位毎の再生データについて、上述の１単位４０トラックの最終の２トラックに割り当てられているエラー訂正符号Ｃ３を用いて、トラック幅方向に対応するデータ列にエラー訂正処理を施す。
【００８９】
このテープストリーマ装置２１では、このようにエラー訂正符号Ｃ１，Ｃ２，Ｃ３を用いて再生データにエラー訂正処理を施しているために、確実に再生データのエラーを訂正することができ、再生データの信頼性を向上させることができる。
インデックス分離部５８は、上述のように誤り訂正処理部５７によりエラー訂正処理が施された１単位毎の再生データから、インデックス情報を分離して、上記システムコントローラ７１等に供給するとともに、インデックス情報を分離した後の再生データを、伸長回路３８に供給する。
【００９０】
伸長回路３８は、再生データが圧縮されていればそれを伸長し、インタフェースコントローラ３１に出力する。インタフェースコントローラ３１は、伸長回路３８からの再生データを、バス８１を介してホストコンピュータ９１に送信する。
【００９１】
図１２は磁気テープ１３０上に形成されるパーティションの構成を表している。同図に示すようにリーダーテープ１４１の先頭が、BOM（Begining  Of  Media）とされ、リーダテープ１４１に続くDA（Device  Area）１４２の先頭が実質的な磁気テープ１３０の先頭位置PBOT（Physical  Begining  Of  Tape）とされている。DA１４２は、ローディングまたはアンローディングを行う領域とされる。DA１４２に続いて、この例においては、Ｌ＋１個のパーティション１４３−０乃至１４３−Lが、形成されている。最初のパーティション１４３−０の先頭位置がLBOT（Logical  Begining  Of  Tape）とされ、最後のパーティション１４３−Ｌ の終点部が、PEOT（Physical  End  Of  Tape）とされる。最後のパーティション１４３−Ｌの次にはリーダテープ１４４がさらに形成され、リーダテープ１４４の最終端部が、EOM（End  Of  Media）とされる。
【００９２】
各パーティション１４３−ｉ（ｉ＝０，１，２，・・・,Ｌ）はシステムエリア１５１、データエリア１５２、EOD（End  Of  Data）１５３、およびODA（Optional  Device  Area）１５４により構成されてている。EOD１５３の終端（ODA１５４の始点）が、EOP（End  of  Partition）とされる。最後のパーティションのEOPは、LEOT（Logical  End  of  Tape）とされる。
【００９３】
システムエリア１５１には磁気テープ１３０の使用履歴情報などが格納される。データエリア１５２には、実質的なデータが記録される。EOD１５３は、そのパーティションのデータエリアの終了を表す。ODA１５４は、磁気テープ１３０の途中におけるローディングまたはアンローディングのための位置とされる。このODA１５４は、最後のパーティション１４３−Ｌ（リーダテープ１４４の直前のパーティション）においては形成されない。このODA１５４にはそれが位置しているパーティションの位置情報が記録される。この位置情報を確認することで、現在位置しているパーティションと隣接するパーティションの位置を確認することができる。この位置情報は、ODA１５４内のIDエリアＡ２（図６(Ｃ)）に記憶されている。
【００９４】
パーティションは予めプリフォーマットとして作成するか、またはデータを記録する毎に随時パーティションを追加する方法で形成される。図１３はパーティションをプリフォーマットする場合の処理例を表している。
【００９５】
この例においては、最初にステップＳ１においてAPM(Advanced  Partition  Management）モード設定処理が行われる。このAPMモードの設定処理の詳細は、図１４のフローチャートに示されている。
【００９６】
ステップＳ１１において、ホストコンピュータ９１はAPM  modeコマンドを出力する。このAPM  modeコマンドは、テープストリーマ装置２１に対してAPMモードを設定することを要求するコマンドである。このコマンドはバス８１からインタフェースコントローラ３１を介して、システムコントローラ７１に供給される。このとき、システムコントローラ７１は、ステップＳ１２において、RAM７２に、PAT（Partition  Access  Table），PAT  Valid  Bit，Last  Unloaded  Partition，Last  Valid  Partition  Numberの領域を確保する。これらの領域は、図１５（Ａ）に示すように、APMモードが設定可能な磁気テープのMIC１２０に形成される領域（ステップＳ１５で確保される領域）に対応する領域である。PATは、データのブロック数（ファイルマークの数とセットマークの数を含む）を表すrecord  count、ファイルマークの数を表すfilemark  count、およびセットマークの数を表すsetmark  countの、パーティション毎の数を表すテーブルである。PAT  Valid  Bitは、APMモードが設定可能な磁気テープであるか否かを表すビット（フラグ）である。Last  Unloaded  Partitionは、最後にアンロードされたパーティションを表し、Last  Valid  Partition  Numberは、その磁気テープ１３０に形成されているパーティションの有効な最後のパーティションの番号を表す。
【００９７】
次にステップＳ１３に進み、システムコントローラ７１は、PAT  Valid  Bitに”１”を設定する。これによりこの磁気テープ１３０がPATモードによる磁気テープであることが設定されたことになる。
【００９８】
システムコントローラ７１は、ステップＳ１４において、ホストコンピュータ９１からのAPM  modeコマンドに対応して、APMモードを設定する。ステップＳ１５においてシステムコントローラ７１は、書き込み／読み出し制御部７３を介して、MIC１２０にアクセスし、RAM７２にステップＳ１２において確保した場合と同様のデータを記録するための領域を確保し、ステップＳ１６において、その内のPAT  Valid  Bitに、”１”を設定させる。
【００９９】
図１３の説明に戻り、以上のように、ステップＳ１においてAPMモード設定処理が完了したとき、ステップＳ２に進み、ホストコンピュータ９１は、FORMATコマンドをシステムコントローラ７１に出力する。システムコントローラ７１は、ステップＳ３において、ホストコンピュータ９１からのFORMATコマンドに対応して、磁気テープ１３０に、図１２に示すようなパーティションをプリフォーマットする。さらにステップＳ４において、システムコントローラ７１は、ステップＳ３でプリフォーマットしたパーティションに関する情報を、MIC１２０のPAT，PAT  Valid  Bit，Last  Unloaded  Partition，Last  Valid  Partition  Numberに記録する。
【０１００】
図１６はこのようにしてMIC１２０に記憶されたPATの例を表している。同図に示すようにPATにおいては、番号０乃至番号Ｌのパーティション（図１２におけるパーティション１４３−０乃至パーティション１４３−Ｌに対応する）毎に、record  count，filemark  count，setmark  countが記録される。例えば図１６の例では、番号０のパーティションのrecord  countの値は、ｒ（０）であり、filemark  countの値は、ｆ（０）であり、setmark  countの値は、ｓ（０）である。
【０１０１】
これらの各countの値は、それぞれのパーティション内の値である。プリフォーマットの直後におけるこれらのcountの値は、すべて０であるが、実際にデータが記録されると、例えばその内のrecord  countの値は、図１７（Ａ），（Ｂ）に示すように、テープ位置が始点側から終点側に移動するにつれて、次第に大きな値となる。例えば、パーティション１４３−０のデータエリア１５２−０（図１７(Ａ)）のrecord  countの値ｒ（０）は、データエリア１５２−０の始点から終点に向かって小さい値から大きな値に徐々に変化し、ｒ（１）の値はパーティション１４３−１のデータエリア１５２−１（図１７(Ａ)）のrecord  countの値ｒ（１）は、データエリア１５２−１の始点から終点に向かって、小さい値から大きい値に徐々に変化する。
【０１０２】
図１８は、パーティションをデータのライト（WRITE）処理毎に形成する場合の処理例を表している。
【０１０３】
最初に、ステップＳ２１において、APMモードの設定処理が行われる。このAPMモードの設定処理は、図１４のフローチャートを参照して説明した場合と同様の処理である。
【０１０４】
次にステップＳ２２において、ホストコンピュータ９１は、新しいパーティションを作成する必要があるか否かを判定し、新しいパーティションを作成する必要があると判定した場合、ステップＳ２３に進み、システムコントローラ７１に対してAPPEND  PARTITIONコマンドを出力する。システムコントローラ７１は、ホストコンピュータ９１からAPPEND  PARTITIONコマンドの供給を受けると、ステップＳ２４において、そのコマンドに対応して新しいパーティションを追加作成する。そしてステップＳ２５に進み、システムコントローラ７１は新たに作成されたパーティションにライト処理を実行する。さらにステップＳ２６に進み、システムコントローラ７１は、MIC１２０のPAT，PAT  Valid  Bit，Last  Unloaded  Partition，Last  Valid  Partition  Numberのうち、所定のものを更新する。
【０１０５】
ステップＳ２２において、新しいパーティションを作成するする必要がないと判定された場合、ステップＳ２３,Ｓ２４の処理はスキップされる。従って既に形成されているパーテイションにおいて、ステップＳ２５とステップＳ２６の処理が実行される。
【０１０６】
図１９は、ホストコンピュータ９１がLBA（Logical  Block  Adderss）のカレント値を求める処理の例を表している。ステップＳ４１において、ホストコンピュータ９１は、システムコントローラ７１に対して、READ  POSITIONコマンドを出力する。このコマンドを受けたとき、システムコントローラ７１は、ステップＳ４２において、現在のモードが、APMモードであるか否かを判定し、APMモードであると判定した場合、ステップＳ４３に進み、RAM７２に記憶しているPATの各カウント値（count）を累積し、APM  mode  PATを作成する。
【０１０７】
図２０は、このようにして作成されたAPM  mode  PATの例を表している。同図に示すR（n ），F（n），S（n）は、それぞれ次式で演算された番号０のパーティションから番号ｎのパーティションまでの各countの値の累積値を表している。
R（n）＝r（０）＋r（１）＋・・・＋r（n）
F（n）＝f（０）＋f（１）＋・・・＋ｆ（n）
S（n ）＝s（０）＋s（１）＋・・・＋s（n）
【０１０８】
例えばrecord  countについてその累積値を表すと、図１７（Ｃ）に示すようになる。次にステップＳ４４に進み、システムコントローラ７１は、ステップＳ４３で作成したAPM  mode  PATから、現在位置のLBAを計算する。すなわち現在位置するパーテイションのLBAが次式で表され、
record  count=i
filemark  count＝j
setmark  count＝ｋ
現在位置するパーティション番号がＮであるとすると、現在位置のLBAは、次式により表される。
record  count＝R（N−１）＋ｉ
filemark  count＝F（N−１）＋ｊ
setmark  count＝S（N−１）＋ｋ
【０１０９】
次に、ステップＳ４６に進み、システムコントローラ７１は、以上のようにしてステップＳ４４で計算されたLBAをホストコンピュータ９１に出力する。
【０１１０】
一方ステップＳ４２において、現在のモードがAPMモードではないと判定された場合、ステップＳ４５に進み、システムコントローラ７１は、現在位置のLBAを読み取り、その値をステップＳ４６において、ホストコンピュータ９１に出力する。すなわちこの場合には、次式で表されるパーティション内のLBAの値がホストコンピュータ９１にそのまま出力される。
record  count＝ｉ
filemark  count＝ｊ
setmark  count＝ｋ
【０１１１】
従って、この場合、先頭の（番号０の）パーティション１４３−０に位置するときを除き、ホストコンピュータ９１は磁気テープ１３０の位置を正確に制御することが困難になる。
【０１１２】
次に図２１のフローチャートを参照して、ローディングを行う場合の処理について説明する。
【０１１３】
ステップＳ５１において、ユーザがテープカセット１００をテープストリーマ装置２１に装着すると、ステップＳ５２において、システムコントローラ７１は、テープカセット１００に収容されている磁気テープ１３０を引き出し、回転ドラム５１に対して巻き付けさせるローディング処理を開始する。ステップＳ５３において、システムコントローラ７１は、書き込み／読み出し制御部７３を介して、MIC１２０に記憶されているデータを読み取る。ステップＳ５４において、システムコントローラ７１は、ステップＳ５３で読み取ったデータの内のPAT  Valid  Bitが１であるか否か（今装着された磁気テープ１３０がPAT  modeに対応した磁気テープであるか否か）を判定する。PAT  Valid  Bitの値が１である場合には、ステップＳ５５に進みシステムコントローラ７１は、MIC１２０に記憶されているPATを読み出し、RAM７２にダウンロードする。さらにステップＳ５６において、システムコントローラ７１は、MIC１２０からLUP(Last  Unloaded  Partition）をRAM７２にダウンロードする。
【０１１４】
ステップＳ５７において、システムコントローラ７１は、ロード位置のLBAを計算する。今ステップＳ５６で読み取られたLUPの値がＮであるとすると、ロード位置のLBAは次のように計算される。
record  count＝R（N−１）
filemark  count＝F（N−１）
setmark  count＝S（N−１）
【０１１５】
次にステップＳ５８に進み、システムコントローラ７１は、磁気テープ１３０のドラム５１に対する巻き付け処理を完了させる。
【０１１６】
ステップＳ５４において、PAT  Valid  Bitが１ではない（０である）と判定された場合、ステップＳ５９に進む。APMモードに対応していない磁気テープの場合、MIC１２０には、図１５（Ｂ）に示すように、LUPのみが記録されている。従ってシステムコントローラ７１は、そのLUPをステップＳ５９でダウンロードし、ステップＳ６０で、LBAに０を設定する。その後、ステップＳ５８の処理が実行される。
【０１１７】
次に図２２のフローチャートを参照して、アンローディングの処理例について説明する。ステップＳ６１においてホストコンピュータ９１は、UNLOADコマンドをシステムコントローラ７１に出力する。ステップＳ６２において、システムコントローラ７１は、このUNLOADコマンドを受け取ると、現在実行中の処理を終了させ、ステップＳ６３において、磁気テープ１３０を、逆向きに、一番近いODAまたはDAに高速に巻き戻させる。さらにシステムコントローラ７１は、ステップＳ６４において、RAM７２に記憶されているPATをMIC１２０にアップロードする。ステップＳ６５において、システムコントローラ７１は、RAM７２に記憶されているLUPをMIC１２０にアップロードする。さらにステップＳ６６において、システムコントローラ７１は、RAM７２に記憶されている現在位置のLBAをクリアする。
【０１１８】
次にステップＳ６７において、システムコントローラ７１は、磁気テープ１３０の回転ドラム５１に対する巻き付けを解除し（アンロードし）、ステップＳ６８において、テープカセット１００を排出させる。このように、アンローディングがODAで行われると、ローディングもODAで行われることになる。
【０１１９】
図２３は、ホストコンピュータ９１が、Locate  Ｍコマンドを出力した場合の処理例を表している。Locate  Ｍは、磁気テープを、record  count＝Ｍの位置に移動させるコマンドである。ステップＳ８１において、ホストコンピュータ９１がLocate  Ｍコマンドを出力すると、ステップＳ８２において、システムコントローラ７１は、このLocate  Ｍコマンドに対応して、RAM７２に記録されているrecord  countを累積する処理を実行する。例えばRAM７２に、図２４（Ａ）に示すように、record  countが記憶されている場合、図２４（Ｂ）に示すように、各パーティション毎のrecord  countの値を累積する演算が行われる。
【０１２０】
ステップＳ８３において、システムコントローラ７１は、累積値R（p）（p＝０，１，２，・・・，Ｌ）の値がＭと等しいか、それより大きくなる最小のｐを求める。ステップＳ８４において、システムコントローラ７１は、ステップＳ８３における条件を満足するｐが存在するか否か（求められたか否か）を判定し、求められた場合には、ステップＳ８５に進み、番号ｐのパーティションのBOT（LBOT）に磁気テープ１３０を移動させる。そしてステップＳ８６において、システムコントローラ７１は、番号ｐのパーティションにおいて、Locate（M−R(p−１)）を実行する。
【０１２１】
ステップＳ８４において、ステップＳ８３で規定した条件を満足するｐが求められなかったと判定された場合、ステップＳ８７に進み、システムコントローラ７１は、磁気テープ１３０を番号Ｌのパーティション（最後のパーティション）に移動させる。ステップＳ８８において、システムコントローラ７１は、番号ＬのパーティションのEODに磁気テープ１３３を移動させる。そしてステップＳ８９において、システムコントローラ７１は、EODの前までに移動先のアドレスが見つけられなかったことを表すEODエラーをホストコンピュータ９１に出力する。
【０１２２】
例えば、PATが、図２５（Ａ）に示すように、各パーティションのrecord  countの値が１０として記憶されている状態において、Locate  ３５（Ｍ＝３５）のコマンドが出力されると、ステップＳ８２において、図２５（Ｂ）に示すように、各パーティションおける値が１０ずつ増加する累積値が計算される。従ってAPM  mode  LBA＝３５は番号３のパーティションのコマンドのブロックにあることが判る。そこでシステムコントローラ７１は、ステップＳ８５において、番号３のパーティションに移動し、ステップＳ８６において、さらに番号３のパーティションで、Locate５（＝３５−３０）が実行される。すなわち、番号３のパーティション内で、さらにrecord  count＝５の位置に、磁気テープが移動される。
【０１２３】
次に図２６のフローチャートを参照して、Space  ＋M  blocksコマンドが出力された場合の処理について説明する。このSpace  ＋M  blocksコマンドは、磁気テープを、現在位置から＋M  blocksだけ移動させるコマンドである。、ただしfilemarkまたはsetmarkが検出されたとき、磁気テープはそこで停止される。
【０１２４】
ステップＳ１０１において、ホストコンピュータ９１がSpace  ＋M  blocksコマンドを出力すると、ステップＳ１０２において、システムコントローラ７１は、PATの各カウントを累積する処理を実行する。すなわち上述したように、図１６に示すようなPATから、図２０に示すようなAPM  mode  PATが演算される。
【０１２５】
次にステップＳ１０３においてシステムコントローラ７１は、APM  mode  LBAを次式にしたがって演算する。
current  record  count＝R（N−１）＋i
current  filemark  count＝F（N−１）＋j
current  setmark  count＝S（N−１）＋k
【０１２６】
なお、Ｎは現在位置するパーティションの番号であり、ｉ，ｊ，ｋは、それぞれそのパーティションにおけるrecord  count，filemark  count，setmark  countをそれぞれ表す。
【０１２７】
次にステップＳ１０４において、システムコントローラ７１は、次の３つの式に表される条件を満足する最小のｐを求める。
R(p)≧current  record  count  ＋  M，又は
F(p)≧current  filemark  count  ＋１，又は
S(p)≧current  setmark  count  ＋１
【０１２８】
ステップＳ１０５において、システムコントローラ７１は、ステップＳ１０４の条件を満足するｐが求められたか否かを判定し、求められた場合にはステップＳ１０６に進み、番号ｐのパーティションのBOTに磁気テープ１３０を移動させ、ステップＳ１０７において、番号ｐのパーティションにおいて、Space（current  record  count＋M−R(p−１)）  blocksコマンドを実行する。すなわち、番号ｐのパーティションにおいて、（M−R(p−１)）blocks分だけ、磁気テープがさらに移動される。
【０１２９】
ステップＳ１０５において、ステップＳ１０４で規定する条件を満足する最小のｐが存在しないと判定された場合、ステップＳ１０８に進み、システムコントローラ７１は、番号Ｌの（最後の）パーティションのEODに磁気テープ１３０を移動させる。そしてステップＳ１０９において、システムコントローラ７１は、EODエラーをホストコンピュータ９１に出力する。
【０１３０】
今例えばPATが、図２７（Ａ）に示すような状態である（record  countは、各パーティションにおいて、”１０”であり、filemark  countは、番号２，４，６のパーティションにおいて”１”であり、setmark  countは、番号４のパーティションにおいて”１”である）とすると、ステップＳ１０２において、図２７（Ｂ）に示すようなAPM  mode  PATが作成される（record  countは、各パーティション毎に、１０，２０，３０，・・・、７０と増加し、filemark  countは、０，０，１，１，２，２，３となり、setmark  countは、０，０，０，０，１，１，１となる）。仮に、現在位置が、番号２パーティションの先頭から数えて、
record  count＝３
filemark  count＝１
setmark  count＝０
の位置であるとすると、APM  mode  LBAは、ステップＳ１０３において、次のように求められる。
current  record  count＝R（１）＋３＝２０＋３＝２３
current  filemark  count＝F（１）＋１＝０＋１＝１
current  setmark  count＝S（１）＋０＝０＋０＝０
【０１３１】
このような状態において、Space１０  blockesコマンドが処理される場合には、ステップＳ１０４の条件は、次式で示される。
record  count  of  R（p）≧２３＋１０，又は
filemark  count  of  F（p）≧１＋１，又は
setmark  count  of  S（p）≧０＋１
【０１３２】
この条件を満たす最小のｐは３となるので、ステップＳ１０６で、番号３のパーティションに磁気テープ１３０が移動され、ステップＳ１０７において、Space（２３＋１０−３０）  blocksコマンドが実行される。
【０１３３】
これに対して、Space  ４０  blocksコマンドが処理される場合には、ステップＳ１０４の条件は、次式で示されるようになる。
record  count  of  R（p）≧２３＋４０，又は
filemark  count  of  F（p）≧１＋１，又は
setmark  count  of  S（p）≧０＋１
【０１３４】
この条件を満たす最小のｐは、４となるので（番号４のパーティションの中でfilemarkにぶつかるので）、ステップＳ１０６で、番号４のパーティションへの移動が行われる。ステップＳ１０７において、Space（２３＋４０−３０）  blocks=Space３３  blocksコマンドが実行される。
【０１３５】
次にホストコンピュータ９１が、Space  −M  blocksコマンドを出力した場合の処理について、図２８のフローチャートを参照して説明する。ステップＳ１２１において、ホストコンピュータ９１が、Space  −M  blocksコマンドを出力すると、ステップＳ１２２において、システムコントローラ７１は、図２７（Ａ）に示すようなPATから、図２７（Ｂ）に示すようなAPM  mode  PATを計算する。そしてステップＳ１２３において、システムコントローラ７１は、APM  mode  LBAを次式にしたがって計算する。
corrent  record  count＝R（N−１）＋i
corrent  filemark  count＝F（N−１）＋j
corernt  setmark  count＝S（N−１）＋k
【０１３６】
さらにステップＳ１２４において、システムコントローラ７１は、次式を満足する最小のｐを求める。
R（p）≧current  record  count−M，かつ
F（p）≧current  filemark  count，かつ
S（p）≧current  setmark  count
【０１３７】
ステップＳ１２５において、システムコントローラ７１は、ステップＳ１２４の条件を満足する最小のｐが存在するか否かを判定し、存在する場合には、ステップＳ１２６に進み、番号ｐのパーティションのEODに磁気テープ１３０を移動させる。さらにステップＳ１２７において、システムコントローラ７１は、Space（current  record  count＋M−R(p)）  blocksコマンドを実行する。
【０１３８】
ステップＳ１２５において、ステップＳ１２４における条件を満足するｐが存在しないと判定された場合、ステップＳ１２８に進み、システムコントローラ７１は、番号０のパーティションのBOTに磁気テープ１３０を移動させる。そしてステップＳ１２９において、システムコントローラ７１は、巻戻されて移動してきたそれまでの位置に移動すべきアドレスが存在しなかったことを表すBOM  encounteredエラーをホストコンピュータ９１に出力する。
【０１３９】
PATが例えば図２７（Ａ）に示すような値であるとすると、ステップＳ１２２において、図２７（Ｂ）に示すようなAPM  mode  PATが計算される。現在位置が番号６のパーティションの先頭から、
record  count＝３
filemark  count＝０
setmark  count＝０
の位置であるとすると、ステップＳ１２３において、APM  mode  LBAは次に表されるように計算される。
current  record  count＝R（５）＋３＝６０＋３＝６３
current  filemark  count＝F（５）＋０＝２＋０＝２
current  setmark  count＝S（５）＋０＝１＋０＝１
【０１４０】
このような場合において例えば、Space−１０  blocksコマンドが処理されるとすると、ステップＳ１２４の条件は次のようになる。
record  count  of  R（p）≧６３−１０＝５３，かつ
filemark  count  of  F（p）≧２，かつ
setmark  count  of  S（p）≧１
【０１４１】
これらの条件を満足する最小のｐの値は５となる。その結果ステップＳ１２６において、番号５のEODに磁気テープ１３０が移動され、さらにSpace（６３−１０−６０）  blocks＝Space  −７  blocksコマンドが実行される。
【０１４２】
Space  −４０  blocksコマンドを処理する場合には、ステップＳ１２４の条件は次のようになる。
【０１４３】
record  count  of  R（p）≧６３−４０＝２３，かつ
filemark  count  of  F（p）≧２，かつ
setmark  count  of  S（p）≧１
【０１４４】
これらの条件を満たす最小のｐは４である（番号４のパーティションの中でfilemarkにぶつかるので）。ステップＳ１２６において、番号４のパーティションのEODに移動が行われ、さらにステップＳ１２７において、Space（６３−４０−５０）  blocks＝Space  −２７  blocksコマンドが実行される。
【０１４５】
次にSpace  ＋M  filemarksコマンドの処理例について図２９のフローチャートを参照して説明する。このSpace  ＋M  filemarksコマンドは、磁気テープを、＋M  filemarksだけ進め、ただしsetmarkにぶつかった場合、そこで停止させるコマンドである。
【０１４６】
ステップＳ１４１において、ホストコンピュータ９１がSpace＋M  filemarksコマンドを出力すると、ステップＳ１４２において、システムコントローラ７１は、図２７（Ａ）に示すようなPATから、図２７（Ｂ）に示すようなAPM  mode  PATを生成する。ステップＳ１４３においてシステムコントローラ７１は、APM  mode  LBAを計算する（但し、current  record  countの演算は、省略することができる）。この処理は図２６のステップＳ１０３、または図２８のステップＳ１２３の処理と同様の処理である。
【０１４７】
次にステップＳ１４４に進み、システムコントローラ７１は、次の条件を満足する最小のｐを求める。
【０１４８】
S（p）≧current  filemark  count＋M，又は
S（p）≧current  setmark  count＋１
【０１４９】
ステップＳ１４５において、システムコントローラ７１は、ステップＳ１４４で規定する条件を満足するｐが存在するか否かを判定し、存在する場合にはステップＳ１４６に進み、番号ｐのパーティションのBOTに磁気テープを移動する。
ステップＳ１４７において、さらに番号ｐのパーティションにおいて、Space（current  filemark  count＋M−F(p−１)）  filemarksの処理が実行される。
【０１５０】
ステップＳ１４５において、ステップＳ１４４において規定される条件を満足するｐの値が存在しないと判定された場合、ステップＳ１４８に進み、システムコントローラ７１は、番号Ｌの（最後の）パーテイションのEODに磁気テープを移動する。そしてステップＳ１４９において、システムコントローラ７１は、EODエラーをホストコンピュータ９１に出力する。
【０１５１】
例えばステップＳ１４２において、図２７（Ａ）に示すようなPATから、図２７（Ｂ）に示すようなAPM  mode  PATが求められ、現在位置が、番号２のパーティションの先頭から数えて、
record  count＝３
filemark  count＝１
setmark  count＝０
の位置であるとすると、ステップＳ１４３において、APM  mode  LBAは、次式に示すように計算される。
current  record  count＝R（１）＋３＝２０＋３＝２３
courrent  filemark  count＝F（１）＋１＝０＋１＝１
corrent  setmark  count＝S（１）＋０＝０＋０＝０
【０１５２】
処理するコマンドが例えば、Space  １  filemarkコマンドであるとすると、ステップＳ１４４の条件は次のようになる。
filemark  count  of  F(p)≧１＋１,又は
setmark  count  of  S(p)≧０＋１
【０１５３】
これらの条件を満たす最小のｐは、４である。したがってステップＳ１４６において、番号４のパーティションのBOTに移動する処理が行われ、さらにステップＳ１４７において、番号４のパーティションにおいて、Space（１＋１−１）  filemarksコマンドが実行される。
【０１５４】
Space  ２  filemarksコマンドが実行される場合には、ステップＳ１４４の条件は、次式で示すようになる。
filemark  count  of  F(p)≧１＋２，又は
setmark  count  of  S(p)≧０＋１
【０１５５】
これらの条件を満たす最小のｐは４である（番号４のパーティションの中でsetmarkにぶつかるので）。ステップＳ１４６において、番号４のパーティションのBOTに、移動が行われ、ステップＳ１４７において、番号４のパーティションにおいて、Space（１＋２−１）  filemarksコマンドが実行される。
【０１５６】
図３０は、Space−M  filemarksコマンドを処理する例を示すフローチャートである。その基本的な処理は、図２９における場合と同様であるが、ステップＳ１６１，Ｓ１６４，Ｓ１６７においては、ステップＳ１４１，Ｓ１４４，Ｓ１４７における値＋Ｍに代えて、値−Ｍが用いられている。また、ステップＳ１４７においては、Space(current  filemark  count＋M−F(p−１)）  filemarksのコマンドを実行するようになされているが、ステップＳ１６７においては、Space(current  filemark  count−M−F(p)）  filemarksが実行されるようになされている。
【０１５７】
さらにステップＳ１４８からステップＳ１４９において、番号ＬのパーティションのEODに移動する処理が行われた後、ステップＳ１５０において、EODエラーが出力されているが、図３０の処理においては、ステップＳ１６８において、番号０のパーティションのBOTに移動する処理が行われた後、ステップＳ１６９において、BOM  encounteredエラーが出力され、その他の処理は、図２９における場合と同様である。
【０１５８】
ステップＳ１６２において、図２７（Ａ）に示すPATから、図２７（Ｂ）に示すようなAPM  mode  PATが生成され、現在位置が、番号６のパーティションの先頭から数えて、
record  count＝３
filemark  count＝０
setmark  count＝０
の位置であるとすると、であるとすると、ステップＳ１６３において、APM  mode  LBAは、次に示すように求められる。
current  record  count＝R（５）＋３＝６０＋３＝６３
current  filemark  count＝F（５）＋０＝２＋０＝２
current  setmark  count＝S（５）＋０＝１＋０＝１
【０１５９】
今、Space−１  filemarkコマンドが実行されるものとすると、ステップＳ１６４の条件は、次に示すようになる。
filemark  count  of  F(p)≧２−１，かつ
setmark  count  of  S(p)≧１
【０１６０】
これらの条件を満たす最小のｐは４であるので、ステップＳ１６６において、番号４のパーティションのEODに移動する処理が行われ、ステップＳ１６７において、Space（２−１−２）filemarkの処理が実行される。
【０１６１】
あるいは処理されるコマンドが、例えばSpace−２  filemarksコマンドである場合には、ステップＳ１６４の条件は次のようになる。
filemark  count  of  F(p)≧２−２＝０，かつ
setmark  count  of  S(p)≧１
【０１６２】
これらの条件を満たす最小のｐは４である（番号４のパーティションの中でsetmarkにぶつかる場合と、ぶつからない場合があり、それを判別できないので）。ステップＳ１６６において、番号４のパーティションのEODに移動する処理が行われ、ステップＳ１６７において、Space（２−２−２）  filemarksの処理が実行される。この場合、処理がGoodで終了する（エラーにならない）場合と、エラー（setmark  encounterd）になる場合がある。
【０１６３】
図３１は、Space  ＋M  setmarksコマンドの処理の例を表している。Space  ＋M  setmarksコマンドは、＋M  setmarksだけ進めるコマンドである。この図３１の処理は、基本的に図２６に示したSpace  ＋M  blocksコマンドの処理と  同様の処理である。図２６のステップＳ１０１において出力されるコマンドがSpace  ＋M  blocksコマンドであるのに対し、図３１のステップＳ１８１で出力されるコマンドは、Space  M  setmarksコマンドとされている。図２６のステップＳ１０４においてはR(p)，F(p)，S(p)の３つの条件式が定められているのに対し、図３１のステップＳ１８４においては、以下に示すS(p)の条件式だけが定められている。
S(p)≧current  setmark  count  ＋M
【０１６４】
さらに、図２６のステップＳ１０７においては、Space（current  record  count＋M−R(p−１)）  blocksコマンドが実行されるのに対して、図３１のステップＳ１８７においては、Space（current  setmark  count＋M−S(p−１)）  setmarksコマンドが実行される。その他の処理は、図２６における場合と同様である。
【０１６５】
図３２は、Space−M  setmarksコマンドの処理例を表している。その基本的な処理は図２８に示したSpace−M  blocksコマンドの処理の場合と同様であるが、図２８のステップＳ１２１において出力されるコマンドが、Space  −M  blocksコマンドとされているのに対して、図３２のステップＳ２１１において出力されるコマンドは、Space  −M  setmarksコマンドとされている。また図２８のステップＳ１２４においては、R(p)，F(p)，S(p)の３つについて条件が定められているが、図３２のステップＳ２１４においては、S(p)について、次に示す条件が定められている。
【０１６６】
S(p)≧current  setmark  count−M
【０１６７】
図２８のステップＳ１２７において、Space（current  record  count−M−R(p)）  blocksコマンドが実行されるのに対して、図３２のステップＳ２１７においては、Space（current  setmark  count−M−S(p)）  setmarksコマンドが実行される。その他の処理は、図２８における場合と同様である。
【０１６８】
図３３は、Space  EODコマンドの処理例を表している。このSpace  EODコマンドは、磁気テープをEODまで進めるコマンドである。
【０１６９】
ステップＳ２３１において、ホストCPU９９は、システムコントローラ７１に対して、Space  EODコマンドを出力する。ステップＳ２３２において、システムコントローラ７１は、ホストコンピュータ９１からこのコマンドを受け取ると、磁気テープ１３０を番号Ｌの（最後の）パーティションに移動させる。さらにステップＳ２３３において、システムコントローラ７１は、磁気テープ１３０を番号ＬのパーティションのEODに移動させる。
【０１７０】
図３４は、Rewindコマンドの処理例を表している。このRewindコマンドは磁気テープをBOTまで移動させるコマンドである。
【０１７１】
ステップＳ２４１において、ホストコンピュータ９１は、Rewindコマンドを出力すると、システムコントローラ７１は、ステップＳ２４２において、このコマンドに対応して、番号０（先頭の）パーティションのBOTに磁気テープ１３０を移動させる。
【０１７２】
図３５は、記録（WRITE）時にEOPが検出された場合の処理を表している。ステップＳ２５１において、システムコントローラ７１は、EOPを検出すると、ステップＳ２５２において、RAM７２に記憶されているPATからLVPN（Last  Valid  Partition  Number）を読み取る。そしてステップＳ２５３において、システムコントローラ７１は、現在位置するパーティションの番号Ｎの値と、ステップＳ２５２で読み取った値LVPNを比較し、現在位置するパーティションの番号Ｎが、LVPNより小さい場合には、ステップＳ２５４に進み、番号Ｎ＋１のパーティションに磁気テープ１３０を高速サーチで移動させる。さらにステップＳ２５５において、システムコントローラ７１は、番号Ｎ＋１のパーティションにデータをWRITEさせる。
【０１７３】
ステップＳ２５３において、現在位置するパーティションの番号Ｎの値が、LVPNの値と等しいか、それより大きいと判定された場合、ステップＳ２５６に進み、システムコントローラ７１は、Check  conditionのステータスをホストコンピュータ９１に出力する。
【０１７４】
図３６は、読み出し（READ）時にEODが検出された場合の処理例を表している。ステップＳ２６１において、システムコントローラ７１は、EODを検出すると、ステップＳ２６２において、RAM７２に記憶されているPATからLVPNを読み取る。ステップＳ２６３において、システムコントローラ７１は、現在位置するパーティションの番号Ｎが、PATに記憶されているLVPNより小さいか否かを判定し、小さい場合には、ステップＳ２６４に進み、番号Ｎ＋１のパーティションに高速サーチで磁気テープ１３０を移動させる。ステップＳ２６５において、システムコントローラ７１は、番号Ｎ＋１のパーティションからデータをREADする（読み出す）。
【０１７５】
ステップＳ２６３において、番号Ｎの値がLVPNと等しいか、それより大きいか判定された場合、ステップＳ２６６に進み、システムコントローラ７１は、Check  Conditionのステータスをホストコンピュータ９１に出力する。
【０１７６】
このようにして、ライト時又はリード時に、EOPまたはEODにぶつかった場合においても、それが最後のEOP又はEODでない場合には、次のパーティションにライト先又はリード先が移動されるので、シングルパーティションにおける場合と同様の処理が可能となる。
【０１７７】
上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアとしてのシステムコントローラ７１に組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどにインストールされる。
【０１７８】
図３７は、このようなプログラムがインストールされる汎用のパーソナルコンピュータ２０１の構成例を表している。CPU（Central  Processing  Unit）２１１にはバス２１５を介して入出力インターフェース２１６が接続されている。CPU２１１は、入出力インターフェース２１６を介して、ユーザから、キーボード、マウスなどによりなる入力部２１８から指令が入力されると、例えば、ROM（Read  Only  Memory）２１２、ハードディスク２１４などの記録媒体に記録されているプログラム（衛星若しくはネットワークなどの媒体から転送され、通信部５１９を介して受信されてハードディスク２１４に格納されているプログラムを含む）、若しくはドライブ２２０に装着される磁気ディスク２３１、光ディスク２３２、光磁気ディスク２３３などの記録媒体に記録されているプログラムを、RAM（Random  Access  Memory）２１３にロードして実行する。さらに、CPU２１１は、その処理結果を、例えば、入出力インタフェース２１６を介して、LCD（Liquid  Crystal  Display），CRT（Cathode  Ray  Tube）などよりなる表示部２１７に、必要に応じて出力する。
【０１７９】
なお、本明細書において、媒体により提供されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０１８０】
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【０１８１】
このように、図１９のステップＳ４４、図２１のステップＳ５７、図２３のステップＳ８２、図２６のステップＳ１０３、図２８のステップＳ１２３、図２９のステップＳ１４３、図３０のステップＳ１６３、図３１のステップＳ１８３、図３２のステップＳ２１３などにおいて、各パーティションのcountの累積値に基づいて、磁気テープの現在位置を求めるようにしたので、ホストコンピュータ９１は、磁気テープ１３０が実質的にはマルチパーティションの磁気テープだったとしても、あたかもシングルパーティションの磁気テープである場合と同様に管理することが可能となる。
【０１８２】
また図２２のステップＳ６３の処理に示すように、アンローディングのコマンドが入力されたとき、逆向きに一番近いODAまたはDAにおいて、磁気テープがアンローディングされるようにしたので、磁気テープを迅速にアンローディングすることが可能となる。またその結果、アンローディングされた磁気テープを再びローディングするとき、ODAの位置から確実にローディングすることができ、迅速なローディングが可能となる。
【０１８３】
【発明の効果】
以上の如く、請求項１に記載のテープ状記録媒体記録再生装置、請求項６に記載のテープ状記録媒体記録再生方法、および請求項７に記載の記録媒体によれば、パーティションの所定のデータ単位数のテープ状記録媒体の始点からの累積値に基づいて、テープ状記録媒体上のアクセス位置を演算するようにしたので、ローディング、又はアンローディングを迅速に行うことが可能となるとともに、１本のテープ状記録媒体をシングルパーティションの如く、容易に管理することが可能となる。
【図面の簡単な説明】
【図１】従来のシングルパーティションのアドレスを示す図である。
【図２】従来のマルチパーティションのアドレスを説明する図である
【図３】本発明を適用したテープストリーマ装置の構成例を示すブロック図である。
【図４】図３のテープストリーマ装置に装着されるテープカセットの構成例を示す斜視図である。
【図５】図３のテープストリーマ装置に装着されるテープカセットの構成例を示す斜視図である。
【図６】図３のテープストリーマ装置により形成されるトラックを説明する図である。
【図７】１本のトラックのデータエリアのフォーマットを説明する図である。
【図８】グループのデータエリアのフォーマットを説明する図である。
【図９】グループインフォメーションテーブルの例を示す図である。
【図１０】ブロックアクセステーブルのエントリの構成例を示す図である。
【図１１】図１０のフラグバイトの例を示す図である。
【図１２】磁気テープ上におけるパーティションの構成を説明する図である。
【図１３】図３のテープストリーマ装置のパーティションのプリフォーマット処理を説明するフローチャートである。
【図１４】図１３のステップＳ１におけるAPMモード設定処理の詳細を説明するフローチャートである。
【図１５】  MICの記録内容を説明する図である。
【図１６】パーティションアクセステーブルの例を示す図である。
【図１７】  record  countの累積値を説明する図である。
【図１８】図３のテープストリーマ装置のライト処理を説明するフローチャートである。
【図１９】図３のテープストリーマ装置のLBAのカウント値を求める処理を説明するフローチャートである。
【図２０】  APM  mode  PATの例を示す図である。
【図２１】図３のテープストリーマ装置のローディング処理を説明するフローチャートである。
【図２２】図３のテープストリーマ装置のアンローディング処理を説明するフローチャートである。
【図２３】図３のテープストリーマ装置のLocate  Mコマンドの処理を説明するフローチャートである。
【図２４】  PATとAPM  mode  PATの例を示す図である。
【図２５】  PATとAPM  mode  PATの例を示す図である。
【図２６】図３のテープストリーマ装置のSpace  ＋M  blocksコマンドの処理を説明するフローチャートである。
【図２７】  PATとAPM  mode  PATの具体例を説明する図である。
【図２８】図３のテープストリーマ装置のSpace  −M  blocksコマンドの処理を説明するフローチャートである。
【図２９】図３のテープストリーマ装置のSpace  ＋M  filemarksコマンドの処理を説明するフローチャートである。
【図３０】図３のテープストリーマ装置のSpace  −M  filemarksコマンドの処理を説明するフローチャートである。
【図３１】図３のテープストリーマ装置のSpace  ＋M  setmarksコマンドの処理を説明するフローチャートである。
【図３２】図３のテープストリーマ装置のSpace  −M  setmarksコマンドの処理を説明するフローチャートである。
【図３３】図３のテープストリーマ装置のSpace  EODコマンドの処理を説明するフローチャートである。
【図３４】図３のテープストリーマ装置のRewindコマンドの処理を説明するフローチャートである。
【図３５】図３のテープストリーマ装置のWrite時にEOPが検出されたときの処理を説明するフローチャートである。
【図３６】図３のテープストリーマ装置のRead時にEODが検出されたときの処理を説明するフローチャートである。
【図３７】記録媒体を説明する図である。
【符号の説明】
２１  テープストリーマ装置，  ３１  インタフェースコントローラ，  ３３記録データ処理系，  ３４  記録再生部，  ３５  再生データ処理系，  ３６モータ駆動およびサーバ回路，  ３７  記録データ管理部，  ７１  システムコントローラ，  ７２  RAM，  ９１ホストコンピュータ，  １００  テープカセット，  １２０  MIC
【図１】
0003824123.tif 000002
【図２】
0003824123.tif 000003
【図３】
0003824123.tif 000004
【図４】
0003824123.tif 000005
【図５】
0003824123.tif 000006
【図６】
0003824123.tif 000007
【図７】
0003824123.tif 000008
【図８】
0003824123.tif 000009
【図９】
0003824123.tif 000010
【図１０】
0003824123.tif 000011
【図１１】
0003824123.tif 000012
【図１２】
0003824123.tif 000013
【図１３】
0003824123.tif 000014
【図１４】
0003824123.tif 000015
【図１５】
0003824123.tif 000016
【図１６】
0003824123.tif 000017
【図１７】
0003824123.tif 000018
【図１８】
0003824123.tif 000019
【図１９】
0003824123.tif 000020
【図２０】
0003824123.tif 000021
【図２１】
0003824123.tif 000022
【図２２】
0003824123.tif 000023
【図２３】
0003824123.tif 000024
【図２４】
0003824123.tif 000025
【図２５】
0003824123.tif 000026
【図２６】
0003824123.tif 000027
【図２７】
0003824123.tif 000028
【図２８】
0003824123.tif 000029
【図２９】
0003824123.tif 000030
【図３０】
0003824123.tif 000031
【図３１】
0003824123.tif 000032
【図３２】
0003824123.tif 000033
【図３３】
0003824123.tif 000034
【図３４】
0003824123.tif 000035
【図３５】
0003824123.tif 000036
【図３６】
0003824123.tif 000037
【図３７】
0003824123.tif 000038