(57)【要約】      （修正有）【課題】任意のデータ読み出し時の位置合わせ所要時間を短縮するため、テープ走行方向の反転タイミングをデータ量に応じて調整する書込み制御方法を提供する。【解決手段】テープ記録装置のデータ往復書込みを繰返すステップと、後続の前記データ往復書込みにおいて残りのデータ量が前記テープ媒体の往復走行で書込まれるデータ容量より小さい場合に、前記反転後に前記残りのデータ量の半分を書込んだ時点で、前記データの書込み終端が第１の端部の近傍に来るように、前記第２の端部の手前でテープ媒体の走行方向を反転させて第１の端部に向かって前記残りのデータの半分を書込むステップとを含む。【選択図】図３
2014063550.tif 000002
【特許請求の範囲】
【請求項１】
テープ媒体を長手方向にその両側の端部の間を往復走行させてデータを記録するテープ記録装置のデータ書込みを制御する制御方法であって、
前記テープ記録装置のヘッドを前記テープ媒体上の第１の端部の側の所定の位置から位置決めしてデータを書き始め、
前記ヘッドが前記テープ媒体の第２の端部に到達して前記テープ媒体の走行向きを反転し、
第２の端部から第１の端部に向かって前記データを前記テープ媒体に書込む、データ往復書込みステップと、
前記反転後にヘッドが第１の端部に到達して前記テープ媒体の走行向きを反転して後続の前記データ往復書込みを繰返すステップと、
後続の前記データ往復書込みにおいて残りのデータ量が前記テープ媒体の往復走行で書込まれるデータ容量より小さい場合に、前記反転後に前記残りのデータ量の半分を書込んだ時点で、前記データの書込み終端が第１の端部の近傍に来るように、前記第２の端部の手前でテープ媒体の走行方向を反転させて第１の端部に向かって前記残りのデータの半分を書込むステップと、を含む制御方法。
【請求項２】
前記データの全容量値をホスト装置から受取るステップと、
前全容量値から前記テープ媒体に書込む前記残りのデータ量を計算(確認)するステップと、を含む、請求項１に記載の方法。
【請求項３】
前記テープ記録装置は、ホスト装置から前記データとともに特殊コマンドにより前記データの全容量値を受取るステップを含む、請求項２に記載の方法。
【請求項４】
ホスト装置が前記データの全容量値より前記残りのデータ量を計算し、ホスト装置から動的に前記反転するタイミング時を指示する特殊コマンドを受取る、請求項１に記載の方法。
【請求項５】
前記往復走行のデータの書き始めの位置は、第１の端部からサーボデータに続く所定の位置である、請求項１に記載の方法。
【請求項６】
前記残りのデータ量を計算するステップは、前記往復書込み毎に前記データの全容量値から前記残りのデータ量を計算する、請求項２に記載の方法。
【請求項７】
前記残りのデータ量を計算するステップは、前記データの全容量値を受取った時点で前記残りのデータ量を計算する、請求項３に記載の方法。
【請求項８】
前記残りのデータ量を計算するステップは、書込みエラー訂正発生可能性のための許容マージンを加えて前記残りのデータ量を計算する、請求項１に記載の方法。
【請求項９】
前記動的な反転の後の残りのデータの半分を書込むステップは、前記データの書込み終端（ＥＯＤ）が第１の端部に到達しない場合はダミーデータを第１の終端近傍まで書込む、請求項１に記載の方法。
【請求項１０】
前記テープ媒体は、該テープ媒体の長手方向に沿って配列された複数のバンドを有し、各前記バンドは長手方向に沿って複数のラップを有し、前記ラップの２つを対として前記データ往復書込みを行う、請求項１に記載の方法。
【請求項１１】
テープ媒体を長手方向にその両側の端部の間を往復走行させてデータを記録するテープ記録装置であって、
前記装置の制御部は、
前記テープ記録装置のヘッドを前記テープ媒体上の第１の端部の側の所定の位置から位置決めしてデータを書き始め、
ヘッドが前記テープ媒体の第２の端部に到達して前記テープ媒体の走行向きを反転し、
第２の端部から第１の端部に向かって前記データを前記テープ媒体に書込む、データ往復書込みステップと、
前記反転後にヘッドが第１の端部に到達して前記テープ媒体の走行向きを反転して後続の前記データ往復書込みを繰返すステップと、
後続の前記データ往復書込みにおいて残りのデータ量が前記テープ媒体の往復走行で書込まれるデータ容量より小さい場合に、前記反転後に前記残りのデータ量の半分を書込んだ時点で、前記データの書込み終端が第１の端部の近傍に来るように、前記第２の端部の手前でテープ媒体の走行方向を反転させて第１の端部に向かって前記残りのデータの半分を書込むステップと、
を実行するテープ記録装置。
【請求項１２】
テープ媒体を長手方向にその両端部の間を往復走行させてデータを記録するテープ記録装置のデータ書込みを制御するプログラムであって、
前記テープ記録装置のヘッドを前記テープ媒体上の第１の端部の側の所定の位置から位置決めしてデータを書き始め、
ヘッドが前記テープ媒体の第２の端部に到達して前記テープ媒体の走行向きを反転し、
第２の端部から第１の端部に向かって前記データを前記テープ媒体に書込む、データ往復書込みステップと、
前記反転後にヘッドが第１の端部に到達して前記テープ媒体の走行向きを反転して後続の前記データ往復書込みを繰返すステップと、
後続の前記データ往復書込みにおいて残りのデータ量が前記テープ媒体の往復走行で書込まれるデータ容量より小さい場合に、前記反転後に前記残りのデータ量の半分を書込んだ時点で、前記データの書込み終端が第１の端部の近傍に来るように、前記第２の端部の手前でテープ媒体の走行方向を反転させて第１の端部に向かって前記残りのデータの半分を書込むステップと、をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、テープ媒体（テープ）をその長手方向に往復走行させてデータを記録するテープ記録装置（テープドライブ）に関する。
特に、任意のデータ読み出し時の位置合わせ所要時間を短縮するため、テープ走行方向の反転タイミングをデータ量に応じて調整する、書込み制御方法に関する。
【背景技術】
【０００２】
テープドライブは、エネルギー消費の効率の高さからグリーンストレージという視点で見れば、ハードディスクドライブよりも優れている。
データの読み出し/書込みのパフォーマンスという点でもハードディスクドライブに匹敵する性能を持つ。
【０００３】
しかし、読み出し/書込みを行うための位置合わせのパフォーマンスはハードディスクドライブと比べ著しく劣る。
【０００４】
特許文献１は、テープドライブの技術として、位置合わせのパフォーマンスを改善するために、あるひと塊のデータを書き終わったあと、次の塊のデータを書込む前に第１の端部の所定の位置（ＬＰ３）近傍までダミーデータを書込みパディングする。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−０９９２０７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１は、テープドライブにテープ媒体を挿入後、任意のデータの先頭に移動するための移動時間を低減する効果はある。しかしテープ媒体に書込まれたデータを読み出したあと、次のデータの先頭に移動するまでの移動時間の低減には効果がない。
【０００７】
従って、本発明の目的は、テープ媒体から任意のデータを読出す際に、データ読み出し時の位置合わせ所要時間を短く保つためのデータ書込み制御方法、テープ記憶装置、及びプログラムを提供することである。
【課題を解決するための手段】
【０００８】
かかる目的のもと、本発明は、テープ媒体を長手方向にその両側の端部の間を往復走行させてデータを記録するテープ記録装置のデータ書込みを制御する制御方法である。
この制御方法は、前記テープ記録装置のヘッドを前記テープ媒体上の第１の端部の側の所定の位置から位置決めしてデータを第２の端部に向かって書き始め、
前記ヘッドが前記テープ媒体の第２の端部に到達して前記テープ媒体の走行向きを反転（wrapturn）し、
第２の端部から第１の端部に向かって前記データを前記テープ媒体に書込む、データ往復書込みステップと、
前記反転後にヘッドが第１の端部に到達して前記テープ媒体の走行向きを反転（wrap turn）して後続の前記データ往復書込みを繰返すステップと、
後続の前記データ往復書込みにおいて残りのデータ量が前記テープ媒体の往復走行で書込まれるデータ容量（往復ラップのデータ容量）より小さい（前記データの終端（ＥＯＤ）が反転して第１の端部に至らない）場合に、前記反転後に前記残りのデータ量の半分を書込んだ時点で、前記データの書込み終端（ＥＯＤ）が第１の端部の近傍に来るように、前記第２の端部の手前で（動的に）テープ媒体の走行方向を反転（wrap turn）させて第１の端部に向かって前記残りのデータの半分を書込むステップと、を含む。
【０００９】
また、この制御方法は、前記データの全容量値をホスト装置から受取るステップと、前全容量値から前記テープ媒体に書込む前記残りのデータ量を計算(確認)するステップと、を含むことを特徴とする。
【００１０】
また、この制御方法は、前記テープ記録装置は、ホスト装置から前記データとともに特殊コマンドにより前記データの全容量値を受取るステップを含むことを特徴とする。
【００１１】
また、この制御方法は、ホスト装置のアプリケーションが前記データの全容量値より前記残りのデータ量を計算し、ホスト装置から動的に前記反転（wrap turn）するタイミング時（位置）を指示する特殊コマンドを受取ることを特徴とする。
【００１２】
また、この制御方法において、前記往復走行のデータの書き始めの位置は、第１の端部（ＬＰ２）からサーボデータに続く所定の位置（ＬＰ３）であること特徴とする。
【００１３】
また、この制御方法において、前記残りのデータ量を計算するステップは、前記前記往復書込み毎に前記データの全容量値から前記残りのデータ量を計算することを特徴とする。
【００１４】
また、この制御方法において、前記残りのデータ量を計算するステップは、前記データの全容量値を受取った時点で前記残りのデータ量を計算することを特徴とする。
【００１５】
また、この制御方法において、前記残りのデータ量を計算するステップは、書込みエラー訂正発生可能性のための許容マージン（損失容量）を加えて前記残りのデータ量を計算することを特徴とする。
【００１６】
また、この制御方法において、前記動的な反転の後の残りのデータの半分を書込むステップは、前記データの書込み終端（ＥＯＤ）が第１の端部に到達しない場合はダミーデータを第１の終端近傍まで書込むことを特徴とする。
【００１７】
また、この制御方法において、前記テープ媒体は、該テープ媒体の長手方向に沿って分割して配列された複数のバンドを有し、各前記バンドは長手方向に沿って複数のラップ（トラック）を有し、前記ラップ（トラック）の２つを対として前記データ往復書込みを行う、ことを特徴とする。
【００１８】
更に、本発明は、テープ媒体を長手方向にその両側の端部の間を往復走行させてデータを記録するテープ記録装置である。この装置の制御部は、
前記テープ記録装置のヘッドを前記テープ媒体上の第１の端部の側の所定の位置から位置決めしてデータを第２の端部に向かって書き始め、
ヘッドが前記テープ媒体の第２の端部に到達して前記テープ媒体の走行向きを反転（wrap turn）し、
第２の端部から第１の端部に向かって前記データを前記テープ媒体に書込む、データ往復書込みステップと、
前記反転後にヘッドが第１の端部に到達して前記テープ媒体の走行向きを反転（wrap turn）して後続の前記データ往復書込みを繰返すステップと、
後続の前記データ往復書込みにおいて残りのデータ量が前記テープ媒体の往復走行で書込まれるデータ容量（往復トラックデータ容量）より小さい（前記データの終端（ＥＯＤ）が反転して第１の端部に至らない）場合に、前記反転後に前記残りのデータ量の半分を書込んだ時点で、前記データの書込み終端（ＥＯＤ）が第１の端部の近傍に来るように、前記第２の端部の手前でテープ媒体の走行方向を反転（wrap turn）させて第１の端部に向かって前記残りのデータの半分を書込むステップとを実行する。
【００１９】
更に、本発明は、テープ媒体を長手方向にその両端部の間を往復走行させてデータを記録するテープ記録装置のデータ書込みを制御するプログラムである。このプログラムは、
前記テープ記録装置のヘッドを前記テープ媒体上の第１の端部の側の所定の位置から位置決めしてデータを第２の端部に向かって書き始め、
ヘッドが前記テープ媒体の第２の端部に到達して前記テープ媒体の走行向きを反転（wrap turn）し、
第２の端部から第１の端部に向かって前記データを前記テープ媒体に書込む、データ往復書込みステップと、
前記反転後にヘッドが第１の端部に到達して前記テープ媒体の走行向きを反転（wrap turn）して後続の前記データ往復書込みを繰返すステップと、
後続の前記データ往復書込みにおいて残りのデータ量が前記テープ媒体の往復走行で書込まれるデータ容量（往復トラックデータ容量）より小さい（前記データの終端（ＥＯＤ）が反転して第１の端部に至らない）場合に、前記反転後に前記残りのデータ量の半分を書込んだ時点で、前記データの書込み終端（ＥＯＤ）が第１の端部の近傍に来るように、前記第２の端部の手前でテープ媒体の走行方向を反転（wrap turn）させて第１の端部に向かって前記残りのデータの半分を書込むステップと、をコンピュータに実行させる。
【発明の効果】
【００２０】
本発明によれば、テープ走行方向の反転タイミングを変化させことにより、テープ媒体へ書込まれたデータの終端位置はテープ媒体の所定の位置付近にくるように調整される。このようにテープ媒体に書込まれたデータを読出す場合、データの位置合わせのパフォーマンスが格段に向上する。
【図面の簡単な説明】
【００２１】
【図１】テープの長手方向に何度も往復して読み書きされるフォーマットを示す。
【図２】本発明の実施例が適用されるテープ記憶装置１００のハードウェア構成の一例を示す。
【図３】テープ媒体の２つのラップにテープの走行方向を反転してデータを書込む様子を示す。
【図４】本発明の１つの実施例の書込み方法のフローを示す。
【図５】複数のホストからデータ書込まれる場合に、ホスト毎にまとめてデータをアクセスし易いようにデータを書込む方法を示す。
【発明を実施するための形態】
【００２２】
以下、本発明を実施するための実施の形態（実施例）を説明する。なお、実施例は特許請求の範囲にかかる発明を限定するものではない。
【００２３】
本発明は、特許にテープドライブがテープ媒体に比較的大きな容量を持つデータ（例えば動画ファイル）を書込むにあたり、データ読み出し時の位置合わせ所要時間に納めるための書込み手法である。この書込み手法の実施例をホスト装置（ホスト）からテープ記録装置（テープドライブ）へデータの書込みの場合について説明する。データの末尾、即ち書込みデータ終端（ＥＯＤ:End of Data）がテープ媒体（テープ）の所定の位置に来るようにするために、データ書込み時にテープ媒体の走行方向の切り替えタイミングを動的に決定する。
【００２４】
図１は、テープの長手方向に何度も往復して読み書きされるフォーマットを示す。
テープドライブはテープ媒体にデータを書込む際、テープの先頭から順次書込んで行く。
ＬＴＯ（Linear Tape Open）やＩＢＭ  ＴＳ１１２０のテープドライブでは，テープの長手方向に何度も往復して読み書きされるフォーマットである。
既存のフォーマットでは、テープの走行方向の切り替えまたは反転（wrap turn）は、常に特定の位置、長手方向の両側の端部またはその近傍(ＬＰ３及びＬＰ４)で行う。
【００２５】
以下では、ＬＴＯ規格のテープ記録装置を例に本発明を説明するが、本発明の適用はＬＴＯ規格のテープ記録装置や当該テープ記録装置に接続するホスト装置に限られない。本発明は、テープ媒体をその長手方向に往復走行させてデータを記録するテープ記録装置であればどのようなテープ記録装置に対してもその効果を奏する。
【００２６】
図１（ａ）を参照して、ＬＴＯ規格に従うテープ媒体の記録領域の構成と、データ書込み方法とを説明する。
図1（ａ）は、テープ媒体１０が、ＢＯＴ（Ｂｅｇｉｎｎｉｎｇ  Ｏｆ  Ｔａｐｅ）からＥＯＴ（Ｅｎｄ  Ｏｆ  Ｔａｐｅ）へのテープ媒体１０の長手方向に沿って配置された複数のバンド１５を有する。複数のバンド１５のそれぞれの両側には、データの書込み位置を制御するためのサーボトラック２０が長手方向に沿って設けられている。
【００２７】
図１（ｃ）は、データがテープ媒体１０の先頭ＢＯＴのＬＰ２（ＬＰ：Logical Position）から書込まれるのでなく、その少し後ろのＬＰ３と呼ばれる位置より書込まれることを示す。このような記録領域の構成を採用するテープ媒体１０に対し、ＬＴＯ規格に従うテープ記録装置は、テープ媒体１０の先頭から順にデータを書込んでいく。
【００２８】
テープ媒体１０に初めてデータを書込む場合、テープ記録装置は、図１（ｂ）の参照番号４０より示される位置、即ちデータバンド０のＬＰ３付近からＬＰ４へ向かってデータを書き始める。テープ媒体１０の終わりまでデータを書込むと、テープ記録装置は、図１（ｂ）において矢印で示されるように、テープ走行の向きをＬＰ４からＬＰ３への方向へ反転（wrap turn）し、データの書込みを続ける。新たにデータを追記する場合、テープ記録装置は、テープ媒体１０に最後に書かれたデータの隣の位置からデータを書込んでいく。
【００２９】
これらの位置は、テープ媒体に格納されたＣＭ(CartridgeMemory)と呼ばれる不揮発性メモリに格納されている。ＬＰ３からＬＰ４、ないし、ＬＰ４からＬＰ３に向かってデータを書込む各領域をラップ（Wrap）と呼ぶ。複数のラップは番号で識別される。各ラップはデータトラック（トラック）と読んでもよい。テープ走行方向の切り替え（反転）はラップターン（Wrap Turn）と呼ばれる。テープドライブはテープ媒体上にデータを書込むにあたり、ホストから送られてきた可変長の長さのデータをデータセット（ＤＳ：ＤａｔａＳｅｔ）と呼ばれる固定長の長さの単位に再構築し、テープ媒体上に書込む。各ＤＳはＤＳＩＴ(Data Set Information Table)と呼ばれる、ＤａｔａＳｅｔに関するメタ情報を持つ。
【００３０】
最初にデータを書き始める場合は番号０（Wrap#0）のラップのＬＰ３付近から書き始める。新たにデータを追記する場合には、最後に書かれたデータの場所の隣から順次追記する。既存のデータを上書きする場合には、上書きするデータの場所から上書きする。テープドライブはシーケンシャル・アクセス・デバイスであるので、アクセス速度向上のために、データを任意の位置に配置することはできない。
【００３１】
最初に書込んだデータ以外のデータにアクセスする場合には、データの先頭が任意の場所となる。つまり、必ずしもＬＰ３付近とは限らないため、テープの位置合わせに時間がかかる。ヘッドを現在位置のＬＰ３からＬＰ４付近に位置合わせを行うためには、ＬＴＯでは２分程必要となる。
【００３２】
シーケンシャル・アクセス・デバイスであるテープ記録装置は、テープ媒体１０の長手方向に往復走行してデータを順次記録していくので、最初に書込んだデー
タを除く他のデータの先頭はテープ媒体１０上の任意の位置となる。そのため、データの読出し、追記といった場合に、読み出すデータの先頭の位置や次のデータの書込み位置が必ずしもテープ媒体１０の先頭にあるとは限らず、先頭にない場合はテープ媒体１０を目的の位置まで走行させる必要があり、位置合わせに時間がかかる。
【００３３】
図１（ｃ）は、１つの読み書きチャネルを有するヘッドよりアクセスされる１つのデータバンドのラップ構造またはトラック構造を示す。１つのデータバンドは１１本のラップまたはトラックからなる。これら１１のトラックは、１つのチャネルにより向きを変えながらアクセスされる。ヘッドは、矢印の示すようの先ず外側の物理トラックからアクセスする。そのヘッドはそのトラック即ちテープの終端に達すると、点線に示す反対側のトラックに向きを変えてアクセスする。このようにヘッドがテープの終端に至るごとに、順次外側のトラックから内側のトラックに向きを変えつつアクセスする。
トラック番号（トラック#）は媒体上の物理的位置に依存して決まる番号で、ラップ番号（Wrap#）は同じ物に対しアクセスも順に付けられる番号である。
【００３４】
Wrap#が偶数の時は、ＬＰ３からＬＰ４に読み書きし、Wrap#が奇数の時はＬＰ４からＬＰ３に向かって読み書きする。以下で説明される本発明の書込み方法では、Wrap#0とWrap#1のように往復する偶数と奇数のラップのペアでの往復のデータの塊を表現する。そのため、Wrapにたいし２*Ｎとか２＊（Ｎ＋１）のような表現により一塊の往復データを表現する。３に対する読み書きの単位であるＤＳを格納する。なお、“＊”は掛け算を意味する。
【００３５】
図２は、本発明の実施例が適用されるテープ記憶装置１００のハードウェア構成の一例を示す。このテープ記憶装置１００は、インターフェース１１０と、バッ１ファ１２０と、記録チャネル１３０と、読書きヘッド１４０と、制御部１５０と、位置決め部１６０と、モータドライバ１７０と、モータ１８０とを含む。
【００３６】
通信インターフェース１１０は、ネットワークを介してホスト装置３００との通信を行う。例えばインターフェース１１０は、ホスト装置３００から、テープ媒体１０へのデータの書込みを指示する書込みコマンドを受信する。またインターフェース１１０は、ホスト装置３００から、テープ媒体１０からのデータ読出しを指示する読出しコマンドを受信する。
【００３７】
バッファ１２０は、テープ媒体１０に書込むべきデータ、また、テープ媒体から読み出したデータを一時的に蓄積するメモリである。例えばバッファ１２０は、ＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）によって構成される。記録チャネル１３０は、バッファ１２０に蓄積されたデータをテープ媒体１０に書き出すため、またはテープ媒体１０から読み出されたデータをバッファ１２０に一時的に蓄積するために用いられる通信経路である。
【００３８】
読書きヘッド１４０は、データ読書き素子を有し、テープ媒体１０へのデータの書込み及びテープ媒体１０からのデータの読出しを行う。本実施形態に係る読書きヘッド１４０はまたサーボ読取り素子を有し、テープ媒体１０に設けられたサーボトラックから信号を読み取る。位置決め部１６０は、テープ媒体１０の短手方向（幅方向）に読書きヘッド１４０の移動を指示する。モータドライバ１７０は、モータ１８０を駆動する。
【００３９】
制御部１５０は、テープ記録装置１００の全体の制御を行う。すなわち、制御部１５０は、インターフェースで受信したコマンドに従って、データのテープ媒体１０への書込み及びテープ媒体１０からのデータの読出しを制御する。また、制御部１５０は、読取られたサーボドラックの信号に従って位置決め部１６０を制御する。更に制御部１５０は、位置決め部１６０及びモータドライバ１７０を介してモータの動作を制御する。なお、モータドライバ１７０は制御部１５０に直接接続されてもよい。なお、記録チャネル１３０、読書きヘッド１４０、位置決め部１６０、モータドライバ１７０及びモータ１８０を以下ではまとめてテープドライブ１９０という。
【００４０】
上記機能に加えて、本発明の実施形態に係る制御部１５０は、テープ媒体１０に書込まれるデータの終端位置（ＥＯＤ：End Of Data）がテープ媒体１０の先頭付近に必ずくるように、動的にデータ書込み時の走行方向を反転するように制御する。当該機能の詳細については後続の図面を参照して説明する。このような制御部１５０は図示しないＣＰＵ、ＲＡＭ、ＲＯＭにより実現される。ここでＲＯＭは、テープ記憶装置１００の起動時にＣＰＵが実行するブートプログラムや、本発明の実施形態に係る制御プログラムを含む、起動後に制御部１５０に上述した機能を提供させるためのプログラムを格納する。そして、ＣＰＵはこれらのプログラムを、ＲＡＭを用いて実行する。
【００４１】
本発明に係るテープ記録装置１００の制御部１５０の機能構成の一例を示す。
実施例において制御部１５０は、動的にテープ媒体１０の走行方向の反転するタイミングを決定する。反転するラップまたはトラック位置の決定は、テープ媒体１０に書込まれるデータの終端（ＥＯＤ）がテープ媒体１０の先頭（ＬＰ３）付近に必ずくるようにデータの書込み位置を制御する。
【００４２】
制御部１５０は、テープ記録装置１００（テープドライブ）に書込まれるデータの容量を取得する。データ容量の具体的な取得方法は、例えば、ホストから特殊コマンドを受信して取得してもよい。ホストのアプリケーションが、一連の複数のレコードを送り、テープドライブは複数のレコードを１つのデータとしてＤＳを単位としてテープ媒体に書込む。従って、ホストがデータの全体の容量を取得しているので、複数のレコードをテープドライブに送っている所定のタイミングで、特殊コマンドで全容量値をテープドライブに知らせることが出来る。
【００４３】
特殊コマンドの実装には、例えば、ホスト装置３００とテープ記録装置１００との間の通信がＳＣＳＩプロトコルに従ってなされる場合、Ｖｅｎｄｏｒ  Ｓｐｅｃｉｆｉｃと呼ばれる領域を利用してもよい。Ｗｒｉｔｅコマンドでは、Ｂｙｔｅ５のＢｉｔ７、６がＶｅｎｄｏｒ  Ｓｐｅｃｉｆｉｃ領域として用意されている。また、Ｓｅｎｄ  Ｄｉａｇｎｏｓｔｉｃコマンドに新たなＩＤを用意し、特殊コマンドとして利用することも可能である。更には、全く新しいコマンドとして特殊コマンドを実装してもよく、実装方法に制限はない。
【００４４】
特殊コマンドを受信したテープ記録装置１００は、制御部１５０の各処理により、書込もうとするデータの先頭がテープ媒体１０の先頭にくるように必要な処理を行う。
【００４５】
動的に所定のラップ位置で反転されたものであることがデータ読出し時に分かるように、制御部１５０はデータにマークをつける。最初に上述したＤＳには、データ領域とＤＳＩＴ（Data Set Information））の２つの領域がある。データ領域は、その名の通りデータが記録される領域であり、ＤＳＩＴは、データ領域の内容が記載される領域である。
制御部１５０は、ＤＳＩＴに含まれるＤａｔａ  Ｓｅｔ  ＦｌａｇｓのＢｉｔ１を利用してもよい。Ｄａｔａ  Ｓｅｔ  ＦｌａｇｓのＢｉｔ１が立っている場合、テープ記録装置１００は、該ＤＳは最後の往復データの書込みのラップの途中でテープ媒体の走行方向を反転したものであると理解する。従って、制御部１５０は、テープ媒体１０に最後に書込まれたＤＳを、その上記Ｂｉｔ１を立てたままとすることで、最後の往復書込みについて動的に反転されたデータとして使用することができる。動的に反転して書込まれたデータは、Ｂｉｔ１が立っていることから読出し時には所定のタイミングで反転して読出す必要があると理解される。
【００４６】
最後の往復書込みの途中で反転タイミングを決定するために、データの全容量から最後の往復書込みでのデータのサイズ（残りのデータ量）を計算する。残りのデータサイズは、往復の書込みデータ量より小さい値である。
【００４７】
図３は、テープ媒体の２つのラップにテープの走行方向を反転してデータを書込む様子を示す。テープ媒体の走行方向の反転を経由して連続する奇数番と偶数番の２つのラップへのデータ書込みを「往復書込み」と定義する。複数の往復書込みの後の最後の往復書込みでの残りのデータ量２＊Ｚの大きさにより（ａ）、（ｂ）と区別して示す。
（ａ）は、残りのデータ量２＊Ｚが１つのラップの容量Ｙより小さい、即ち２＊Ｚ＜Ｙの場合である。
（ｂ）は、残りのデータ量２＊Ｚが１つのラップの容量Ｙより大きく、往復書込みのデータ量２＊Ｙより小さい、Ｙ≦２＊Ｚ＜２Ｙの場合である。
（ａ）及び（ｂ）の場合のそれぞれについて、上図は従来の書込みの反転を、下図は本発明の書込みの反転を示す。
（ａ）及び(ｂ)の下図はともに、「残りのデータ量」２＊Ｚが１回の往復書込みデータ量２＊Ｙに満たない場合、「残りのデータ量」の半分の量に合わせてラップ書込みの途中でテープ媒体の走行方向を反転させて、書込みデータの終端（ＥＯＤ）が第１の端部側の指定の位置（ＬＰ３）に位置づけられている。
【００４８】
書込むデータの容量をＸとし、ラップ１本あたりの記録容量をＹとする。一回のデータ往復書込みのデータ容量は２*Ｙである。データの容量Ｘは、Y*(2*N)<Ｘ≦Y*(2*(N+1))の関係式より、「往復書込み」の回数Ｎが常に一意に求まる。
ここで言う書込むデータ容量Ｘとは、テープドライブとホストが１つの書込みコマンド（Write）でやりとりするレコード、言わばファイルＦｉｌｅＡの断片のことではない。データ（ファイル）は、動画ファイル単体のように比較的大きなデータを指す。具体的には、本発明の書込みデータ（ファイル）とは、複数の動画のレコードの集合である。各レコードはホストからそれぞれコマンドにより区別してテープドライブに送られるので、ホスト側が複数のレコードの寄せ集めのＦｉｌｅＡのデータ容量値Ｘを計算する。
【００４９】
データの終端（ＥＯＤ）をＬＰ３に持ってくるためには、最初の2*N本のラップに書込む場合は通常通りＬＰ３とＬＰ４の間にデータを書込み、2*N+1本目のラップに書込む場合には、次の式で求まるZだけ書込んだ時点で(つまり、ＬＰ４の手前で)、テープの走行方向の反転（wrap turn）を行えば良い。
Z=(Y-D)*(1+E)/2
ここでDは最初のラップ2*N本に書込んだ容量、Eは書込み時のエラー訂正による記録容量の低下分を意味するものとする。例えば1GBのデータを書込む場合に1.03GB分のテープ媒体が必要になる場合はEの値は0.03であるとする。テープ媒体は、フォーマットにもよるが、一般的に3%程度のマージンを持っており、書込み時のエラー訂正のために3%程度消費しても、テープ媒体の規定容量分のデータをテープ媒体に書込めるようになっている。書込み時にエラー発生頻度が低く、データ書込み終了時にＬＰ３まで到達しなかった場合には、ダミーデータを書込み、ＬＰ３までパディングすれば良い。
【００５０】
図３（ａ）はＦｉｌｅＡのwrap#2*N-1と2*N+1のラップは往復書込み後に、「残りのデータ量」２＊Ｚが１つのラップ容量Ｙに満たない（２＊Ｚ＜Ｙ）場合の書込みを示す。
上側の図は従来の書込み方法であり、wrap#2*N+1のラップに「残りのデータ量」２＊Ｚの全てを書込みデータの終端（ＥＯＤ）がテープ媒体第２の端部（ＬＰ４）の手前に位置している。
下側の図は本発明の書込み方法である。wrap#2*N+1のラップに「残りのデータ量」の半分Ｚを書込んだ時点で、テープ媒体の走行を反転させる。そして、wrap#(2*N+2)のラップに「残りのデータ量」の後半の半分Ｚを書込みデータの終端（ＥＯＤ）が第１の端部（ＬＰ３）に位置している。
【００５１】
図３（ｂ）はＦｉｌｅＡのwrap#2*N-1と2*N+1のラップは往復書込み後に、「残りのデータ量」２＊Ｚが１つのラップ容量Ｙを超えているが往復書込みのラップ量２＊Ｙに満たない（Ｙ≦２＊Ｚ<２Ｙ）場合である。
上側の図は従来の書込み方法であり、wrap#2*N+1のラップ、及び、wrap#(2*N+2)のラップに、「残りのデータ量」の全てを書込む。データの終端（ＥＯＤ）はテープ媒体第１の端部（ＬＰ３）の手前に位置している。
下側の図は本発明の書込み方法であり、wrap#2*N+1のラップに「残りのデータ量」の半分を書込んだ時点で、動的にテープ媒体の走行を反転させる。wrap#(2*N+2)のラップに「残りのデータ量」２＊Ｚの後半の半分を書込みデータの終端（ＥＯＤ）が第１の端部側の所定の位置（ＬＰ３）に位置している。
【００５２】
（ａ）及び(ｂ)各々の下図から分かるように、本発明の書込み方法ではデータの書き始めの位置、及び書込みデータの終端（ＥＯＤ）位置は、テープ媒体の第１の端部側の所定の位置（ＬＰ３）である。両者は、wrap#は異なるが長手方向の位置は一致している。テープ媒体に書込まれた比較的大規模なデータ（例えば動画ファイル）を連続して読出す場合、１つのデータの後の読み出し後次のデータの先頭への位置合せ時間（シークタイム）を低減できる。
【００５３】
本発明では、ＬＰ４より手前の任意の位置で反転を行うことから、テープドライブがテープ媒体からデータを読み出す時に、その場所で反転を行ったことを検知できるようにするための情報をテープ媒体に残す仕組みが必要となる。これは、ＣＭにラップ毎に反転した位置情報をデータの書込み時に残すようにしても良い。また、各ラップの最後に書込んだＤＳのＤＳＩＴに、ラップの最後のＤＳであることを示すフラグを新設し、データ書込み時に適切に値を設定し、データ読み出し時にそのフラグの値を参照することで判断するようにしても良い。
【００５４】
図４は、本発明の１つの実施例の書込み方法のフローを示す。
実施例に示された本発明の本質は、動的にテープ媒体の走行方向の反転をするステップ５００，５１０，５２０フローである。数度のデータの「往復書込み」（４９０）を経て残りのデータ量２＊Ｚの半分をラップに書いた時点で反転させる。２＊（Ｎ＋１）番目のラップでの書込みデータの終端（ＥＯＤ）をＬＰ３の近傍に位置づける。なお、図に示す各ステップの順番は例示であり、本発明の内容はこの順番に限定されるものではない。
【００５５】
●（４００）：ホストからデータの書込み要求を受取る。ホストは、複数のレコードのＷｒｉｔｅコマンドを送るが、テープドライブが複数のレコードを１つのデータ（ファイル）として管理し記録することを要求する。
●（４１０）：ホストからデータの全容量値Ｘを取得する。ホストが発行した特殊コマンドによりデータの全容量値Ｘを獲得できる。ホストのアプリケーションが複数のレコードの管理しているため、各レコードの集計を行い送られるレコードを１つのファイルとして計算できる。なお、代替方法としてホストからデータの容量値Ｘを取得する代わりに、デーホストがデータの全容量値Ｘから反転タイミングを計算し、特殊コマンドによりレコード書込みのタイミングの最中で、テープドライブに知らせてもよい。
●（４２０）：テープドライブはデータの全容量値Ｘから、往復書込みの回数Ｎを求める。１のラップ容量Ｙとすると、１回のデータの「往復書込み」の容量は２＊Ｙとして与えられる。なお、代替手法としてホストがこれらを計算してもよい。
テープドライブはＸ、Ｙよりホストから送られたデータがＮ回往復買込みをされることできる。
●（４３０）：テープドライブは、２＊Ｎ番のラップまでは往復書込みされて、２＊（Ｎ＋１）番目のラップに至らない残余のデータ量（２＊Ｚ）を求める。なお、代替手法としてホストがこれらを計算してもよい。
●（４４０）：テープドライブは、複数の可変長のレコードを固定長のＤＳの単位にまとめてテープ媒体に書込む。書始めはテープ媒体のＬＰ３から長手方向にＬＰ４に向かう走行する。テープ媒体はＬＰ４に到達し（４７０）し、反転させて（５２０）にＬＰ３に向かって走行する。
テープ媒体はＬＰ３に到達し（４８０）し、データのラップの「往復書込み」完了する（４９０）。
●（４５０）：特定のラップへのデータ書込みで、データ終端（ＥＯＤ）に到達した場合（Ｙｅｓ）、データの書込みが終了する（４６０）。
後続のレコードを含むＤＳの書込みが終了していない場合（Ｎｏ）、データ書込みを継続する。
●（４７０）：データ書込みの継続でテープ媒体の第２の端部（ＬＰ４）に到達した場合には、反転をする（５２０）。
●（４８０）：データ書込みの継続でテープ媒体の第１の端部（ＬＰ３）に到達した場合には、１回の「往復書込み」が完了（４９０）する。テープは再度反転をする（５２０）。
●（４９０）：比較的大きな動画ファイルなどは、複数回Ｎの「往復買込み」を経て、「残りのデータ量」２＊Ｚをwrap#2*N+1及び#2*(N+1)の最後のラップ対に書込むことになる。
●（５００）：テープドライブは、テープの走行方向の反転のタイミングを確保するために、2*N+1番目のラップ上に「残りのデータ量」（２＊Ｚ）の半分の書込みを行ったか確認する。
「残りのデータ量」（２＊Ｚ）の半分Ｚがテープの2*N+1番目のラップに書込まれた場合（Ｙｅｓ）、テープの走行方向をＬＰ４の手前であっても反転させる（５２０）。
・（５１０）：2*N+1番目のラップについて、途中で反転があったことをＣＭまたはＤＳＩＴにログをする（５１０）。ログの態様として、例えばＤＳＩＴに記録する場合、反転直前に書かれたＤＳが2*N+1番目のラップの末尾になるというフラグを新設して立てればよい。ＣＭにログする場合、ラップとテープの長手方向の位置を指示するＬＰＯＳ(Longitudinal Position) の組み合わせをログすればよい。更にＣＭに、ラップ番号2*N+1に対応させてデータ・セット（ＤＳ）の番号（ＤＳ＃）またはＤＳに含まれるレコードの番号（record#）によりテープの走行方向の反転を指示できる。
・（５２０）：テープの走行方向が反転されたら、wrap#2*(N+1)のラップに「残りのデータ」（２＊Ｚ）の後半の半分Ｚが書込まれる。データの終端（ＥＯＤ）の位置は、wrap#2*(Ｎ+1)の第１の端部側の所定の位置（ＬＰ３）となる。
【００５６】
図５は、複数のホストからデータ書込まれる場合に、ホスト毎にまとめてデータをアクセスし易いようにデータを書込む方法を示す。
本発明の他の実施例として、複数のホストから書込まれるデータを区別して管理できるように、テープの長手方向の特定の領域に固めてもよい。ホスト毎にまとまったファイルを、ＬＰ４ないしＬＰ３より手前で反転して書込んで特定のホスト毎にまとめてから書込んでもよい。具体的には、ホストx（ｘ＝１，２，３，・・・）から送られる動画x-*（*＝１，２，３，・・・）を図５のように書込む場合に、反転の位置を動的に決定し、ラップ毎に異なる位置で反転させてもよい。図５は、動画1-1の左端がＬＰ３であり、動画3-3の右端から例えば数十メートル右側がＬＰ４であるとしている。従来の書込み方法では、複数ラップに跨る大きなファイルの末尾をＬＰ４に合わせるために同じホストからの一連の動画の任意の位置で反転していた。本発明では、図５に示しように動画1-1から動画1-6までを一つの仮想ファイルと見做す。その仮想ファイルの終端（ＥＯＤ）がＬＰ３に来るように動画3-3の右端がＬＰ４の手前でも反転させる。
【００５７】
上記実施例によれば、テープ媒体へ書込まれたあるデータの読み出し後、次のデータの先頭の位置合わせ所要時間(シークタイム)を低減できる。
【００５８】
以上、本発明の実施例を用いて説明したが、本発明の範囲は上記実施例には限定されない。本発明の精神及び範囲から逸脱することなく様々に変更したり代替態様を採用したりすることが可能なことは、当業者に明らかである。
【図１】
2014063550.tif 000003
【図２】
2014063550.tif 000004
【図３】
2014063550.tif 000005
【図４】
2014063550.tif 000006
【図５】
2014063550.tif 000007