JP5764050B2 - データを書き込む装置及び方法 - Google Patents
データを書き込む装置及び方法 Download PDFInfo
- Publication number
- JP5764050B2 JP5764050B2 JP2011273880A JP2011273880A JP5764050B2 JP 5764050 B2 JP5764050 B2 JP 5764050B2 JP 2011273880 A JP2011273880 A JP 2011273880A JP 2011273880 A JP2011273880 A JP 2011273880A JP 5764050 B2 JP5764050 B2 JP 5764050B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- written
- capacity
- threshold
- recording area
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B5/00—Recording by magnetisation or demagnetisation of a record carrier; Reproducing by magnetic means; Record carriers therefor
- G11B5/008—Recording on, or reproducing or erasing from, magnetic tapes, sheets, e.g. cards, or wires
- G11B5/00813—Recording on, or reproducing or erasing from, magnetic tapes, sheets, e.g. cards, or wires magnetic tapes
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/10527—Audio or video recording; Data buffering arrangements
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/10527—Audio or video recording; Data buffering arrangements
- G11B2020/1062—Data buffering arrangements, e.g. recording or playback buffers
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B2220/00—Record carriers by type
- G11B2220/90—Tape-like record carriers
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Description
ところで、同期が発生した後にテープ媒体を停止させないと、テープ媒体上で、先行する同期にて書き込まれたデータと次に書き込まれたデータとの間にギャップが生じる。その結果、テープ媒体の記録領域が無駄になってしまう。そのため、バックヒッチを行う必要がある。バックヒッチとは、テープ媒体の走行速度を減速して一旦停止し、逆方向に走行し、その後、再度元の方向に走行して書き込むべき位置に達して次のデータを書く、という一連の動作のことである。次のデータは、このバックヒッチが完了するまで書き込むことができない。バックヒッチには約2〜3秒程度の時間を要するため、バックヒッチの発生は、パフォーマンスに大きな影響を与える。
この特許文献1からも分かるように、RABFとは、テープドライブが、トランザクション(同期の間に書き込まれるデータ)を、バックヒッチを行うことなく磁気テープに書き込み、その際、トランザクションをバッファに蓄積し、その後で、蓄積したトランザクションをバッファから磁気テープに反復的に順次書き込む手法である。RABFでは、蓄積したトランザクションを磁気テープに反復的に書き込むときにしかバックヒッチが行われないので、反復的に書き込むトランザクションを先行するデータに続けて配置することができ、性能及び容量が最大になる。
この特許文献2からも分かるように、SWBFとは、テープ媒体の公称の記憶容量に悪影響を行えることなく、テープ媒体の停止や反対方向への移動がないバックヒッチなしの書き込みを行う手法である。
しかしながら、トランザクションサイズが、RABFが有効なサイズであったとしても、その中で比較的大きいサイズである場合には、一時的にデータを違う場所に書いてそれを本来書くべき場所に書き直す作業の回数(RABFサイクルの数)が多くなり、この作業のオーバーヘッドによってパフォーマンスが低下する。こうしたことから、RABFサイクルの数を減少させることによってパフォーマンスを向上する手法が求められていた。
また、この装置において、判定部は、予測部により予測された第2の容量が第2の閾値よりも大きい第3の閾値を超えているかどうかを更に判定し、制御部は、判定部により第2の容量が第3の閾値を超えていると判定された場合に、第1のデータが通常記録領域に書き込まれた後に送られたコマンドに応じて、第2のデータについて第1の動作が行われるように制御する、ものであってよい。
図1は、本実施の形態が適用されるテープドライブ10の構成例を示した図である。このテープドライブ10は、ホストインターフェイス(以下、「ホストI/F」という)11と、バッファ12と、チャネル13と、ヘッド14と、モータ15とを含む。また、コントローラ16と、ヘッド位置制御システム17と、モータドライバ18とを含む。更に、テープドライブ10には、テープカートリッジ20が挿入されることにより装填可能となっているので、ここでは、テープカートリッジ20も図示している。このテープカートリッジ20は、リール21、22に巻かれたテープ23を含む。テープ23は、リール21、22の回転に伴い、リール21からリール22の方向へ、又は、リール22からリール21の方向へ、長手方向に移動する。尚、テープ23としては、磁気テープが例示されるが、磁気テープ以外のテープ媒体でもよい。
チャネル13は、テープ23に書き込むべきデータをヘッド14に送ったり、テープ23から読み出されたデータをヘッド14から受け取ったりするために用いられる通信経路である。
ヘッド14は、テープ23が長手方向に移動するとき、テープ23に対して情報を書き込んだり、テープ23から情報を読み出したりする。
モータ15は、リール21、22を回転させる。尚、図では、1つの矩形でモータ15を表しているが、モータ15としては、リール21、22の各々に1つずつ、合計2個設けるのが好ましい。
ヘッド位置制御システム17は、所望の1つ又は複数のラップを追跡するシステムである。ここで、ラップとは、テープ23上の複数のトラックのグループである。ラップを切り換える必要が生じると、ヘッド14を電気的に切り換える必要も生じるので、このような切り換えの制御を、このヘッド位置制御システム17で行う。
モータドライバ18は、モータ15を駆動する。尚、上述したように、モータ15を2個使用する場合であれば、モータドライバ18も2個設けられる。
そこで、本実施の形態では、トランザクションサイズが、RABFが起動されるときのサイズの中で比較的大きなものである場合に、RABFにおける本来書くべき場所でのバックヒッチの発生頻度を減らすことにより、パフォーマンスを向上する手法を提案する。
図2は、一般的なRABFの動きを模式的に示した図である。尚、ここでは、同期の間に書き込まれるデータ(1回のトランザクション分のデータ)を矩形で表し、i番目のデータを「D#i」と表記している。
図では、通常記録領域の一例である通常ラップ201にデータ「D#N」を書き込んだ後、次のデータ「D#N+1」のサイズ(トランザクションサイズ)が閾値以下だったため、一時記録領域の一例であるABFラップ202にデータ「D#N+1」、「D#N+2」、「D#N+3」、「D#N+4」、・・・、「D#M」を書き込んでいる。このとき、データ「D#N+1」、「D#N+2」、「D#N+3」、「D#N+4」、・・・、「D#M」はバックヒッチなしで書き込まれるので、各データ間にはギャップが生じる。その後、一定の条件が満たされた場合に、ABFラップ202に書き込まれたデータを、ギャップを削減して(理想的にはギャップなしで)再帰的書込み(Recursive Write)データ203として通常ラップ201に書き込んでいる。
第1の条件は、バッファ12に空き容量がなくなったという条件である。ABFラップ202に書き込まれるデータは通常ラップ201への再帰的書込みのためにバッファ12に蓄積する必要があることから、このような条件が採用される。
第2の条件は、ABFラップ202にデータを書き込める領域がなくなったという条件である。
第3の条件は、ABFラップ202で書込みエラーが発生するという条件である。
第4の条件は、書込み処理そのものが終了し、例えばテープ23の排出要求(Unloadコマンド)を受け付けたという条件である。
一般的に、トランザクションサイズが比較的大きいデータを処理する場合には、第1の条件が満たされることで再帰的書込みが行われ、トランザクションサイズが比較的小さいデータを処理する場合には、第2の条件が満たされることで再帰的書込みが行われる。
図3は、本実施の形態における手法の動きを模式的に示した図である。尚、ここでも、同期の間に書き込まれるデータ(1回のトランザクション分のデータ)を矩形で表し、i番目のデータを「D#i」と表記している。
図において、再帰的書込みデータ203を書き込むところまでは、図2と同様である。しかしながら、本実施の形態では、再帰的書込みデータ203の書込みが終わると、再帰的書込みデータ203の容量、及び、次のデータ「D#M+1」の予想されるトランザクションサイズによっては、次のデータ「D#M+1」をバックヒッチなしで通常ラップ201に書くSWBFに類似の動作を行う。そして、その次のデータからは、矢印205で示すように、図2と同様、ABFラップ202に書き込む。
また、本実施の形態では、SWBFを起動するには少し小さなトランザクションサイズのデータをテープ23に書き込む場合に、再帰的書き込みというまとめ書きの作業を1回のトランザクションとみなし、このまとめ書きの作業の後に限り、バックヒッチをスキップするようにした。これにより、不必要にバックヒッチがスキップされてテープ23上の容量が低下することを防ぐことができる。
図4は、コントローラ16の機能構成例を示したブロック図である。
図示するように、コントローラ16は、コマンド処理部41と、バッファ管理部42と、チャネル入出力部43とを備える。また、トランザクションサイズ取得部44と、トランザクションサイズ記憶部45と、書込みデータサイズ取得部46と、書込みデータサイズ記憶部47とを備える。更に、トランザクションサイズ予測部48と、動作決定部49と、動作信号出力部40とを備える。
バッファ管理部42は、コマンド処理部41がWriteコマンドを受け取った場合は、データをバッファ12内に用意する。また、コマンド処理部41が同期コマンドを受け取った場合は、データをバッファ12から読み出してチャネル入出力部43に出力する。
トランザクションサイズ記憶部45は、トランザクションサイズ取得部44が取得したトランザクションサイズを時系列に記憶する。
書込みデータサイズ記憶部47は、書込みデータサイズ取得部46が取得した書込みデータサイズを記憶する。
図5は、コントローラ16がトランザクションサイズ及び書込みデータサイズを採取するときの動作例を示したフローチャートである。このフローチャートにおいて、Tx_Sizeはトランザクションサイズを表し、Dは書込みデータサイズを表す。尚、DSは、は、テープ23に書かれるデータの最小単位であるデータセットを表し、ファームウエアはデータセットの書込みが完了した時点でこのフローチャートを実行し、Tx_Size及びDを取得する。
チャネル入出力部43が、書き込んだデータセットが書き始めのデータセットであると判定すると、チャネル入出力部43からのTx_Sizeの取得の開始指示により、トランザクションサイズ取得部44が、Tx_Sizeのモニタを開始する(ステップ405)。また、チャネル入出力部43からのDの取得の開始指示により、書込みデータサイズ取得部46が、Dのモニタを開始する(ステップ406)。
チャネル入出力部43が、書き込んだデータセットが同期を行った直後の書込みにおける最初のデータセットであると判定すると、チャネル入出力部43からのTx_Sizeの取得の開始指示により、トランザクションサイズ取得部44が、Tx_Sizeのモニタを開始する(ステップ405)。また、チャネル入出力部43からのDの取得の開始指示により、書込みデータサイズ取得部46が、Dのモニタを開始する(ステップ406)。
チャネル入出力部43が、書き込んだデータセットが再帰的書込みにおける最初のデータセットであると判定すると、チャネル入出力部43からのDの取得の開始指示により、書込みデータサイズ取得部46が、D(この場合は、再帰的書込みデータのサイズ)のモニタを開始する(ステップ406)。
チャネル入出力部43が、書き込んだデータセットが同期完了時のデータセットであると判定すると、チャネル入出力部43からのTx_Sizeの取得の終了指示により、トランザクションサイズ取得部44が、Tx_Sizeのモニタを終了し、Tx_Sizeをトランザクションサイズ記憶部45に記憶する(ステップ407)。また、チャネル入出力部43からのDの取得の終了指示により、書込みデータサイズ取得部46が、Dのモニタを終了し、Dを書込みデータサイズ記憶部47に記憶する(ステップ408)。
次に、チャネル入出力部43が、同期完了時にヘッド14が位置付けられているラップが通常ラップ201であるかABFラップ202であるかを判定する(ステップ452)。
この場合、動作決定部49が、トランザクションサイズ予測部48が予測したNext_Estimated_TxがThreshold_Aを超えているかどうかを判定する(ステップ453)。
ここで、DがThreshold_Aを超えていると判定されれば、トランザクションサイズ予測部48が予測したNext_Estimated_TxがThreshold_Bを超えているかどうかを判定する(ステップ455)。
この場合、動作決定部49が、RABFの動作、つまり、ABFラップ202で次のデータの書込みの準備が整うのを待つ動作を決定し、動作決定部49からの指示により、動作信号出力部40が、ヘッド位置制御システム17及びモータドライバ18に対してその動作を指示する(ステップ458)。具体的には、ヘッド位置制御システム17に対してラップを切り替えることを指示せず、モータドライバ18に対してバックヒッチを行わずにそのままの速度でテープ23を走行させることを指示する。
ここでは、Threshold_Aを200[MB]とし、Threshold_Bを20[MB]とし、バッファ12のサイズを800[MB]とする。そして、1つ目のABFラップ202から2つ目のABFラップ202へのラップターン時間(テープ23の走行方向の変更に要する時間)を1.5[sec]とし、ホスト30からの転送レートを100[MB/sec]とし、テープ23に書き込むときの転送レートを160[MB/sec]とし、トランザクションサイズを100[MB]とする。
第一に、テープ23が走行している場合、テープドライブ10はホスト30からデータを受け取ると同時にそのデータをテープ23に書き込むことができるものとする。よって、RABF中のオーバーヘッドは、バックヒッチ及びラップターン、再帰的書込みの実行のみであるとする。1回のRABFサイクルにおけるオーバーヘッドは、ラップターン時間の2倍に再帰的書込みの時間を加えた時間であるので、上記の数値を用いると、8[sec](=1.5[sec]×2+800[MB]/160[MB/sec])となる。
第二に、再帰的書込みを行うための条件は、先に述べた第1の条件(バッファ12に空き容量がなくなったという条件)のみであるとする。
まず、一般的なRABFでデータを書き込んだ場合について説明する。
一般的なRABFで10000[MB]のデータを書くのに必要なRABFサイクルの数は、12.5(=10000[MB]/800[MB])であり、全体のオーバーヘッドは、100[sec](=8[sec]×12.5)となる。従って、テープドライブ10がテープ23にデータを書き込んだときの実際の転送レートは、50[MB/sec](=10000[MB]/(10000[MB]/100[MB/sec]+100[sec]))となる。
本実施の形態における手法で10000[MB]のデータを書くのに必要なRABFサイクルの数は、11.1(=10000[MB]/(800[MB]+100[MB]))であり、全体のオーバーヘッドは、88.8[sec](=8[sec]×11.1)となり、11.2[sec]の改善が見込まれる。そして、一般的なRABFと同様の計算を行うと、テープドライブ10がテープ23にデータを書き込んだときの実際の転送レートは、約53[MB/sec](=10000[MB]/(10000[MB]/100[MB/sec]+88.8[sec]))となり、約3[MB/sec]の転送レートの改善が見られる。
また、本実施の形態では、トランザクションサイズが小さいデータが連続する場合には、再帰的書込みデータの容量と組み合わせた判断に基づき、必要以上にバックヒッチをスキップしないようにした。これにより、むやみにバックヒッチをスキップすることによりテープ23上の容量を必要以上に減らしてしまうことが抑制された。
Claims (9)
- 上位装置から送られたデータをバッファに蓄積し、当該上位装置から送られたコマンドに応じて、当該バッファに蓄積された当該データをテープ媒体上の通常記録領域にバックヒッチを伴わずに書き込む第1の動作、及び、当該バッファに蓄積された当該データを当該テープ媒体上の一時記録領域にバックヒッチを伴わずに書き込んだ後、当該一時記録領域に書き込まれた当該データを含むデータ群であって各データ間のギャップを削減したデータ群を通常記録領域に書き込む第2の動作の何れかを選択的に行う装置において、
前記コマンドに応じて前記第1の動作及び前記第2の動作の何れかが行われたことにより第1のデータが前記通常記録領域に書き込まれた際に、当該第1のデータの容量である第1の容量を取得する取得部と、
前記第1のデータが前記通常記録領域に書き込まれた後に送られる前記コマンドに応じて書き込まれる第2のデータの容量である第2の容量を予測する予測部と、
前記取得部により取得された前記第1の容量が第1の閾値を超えているかどうか、及び、前記予測部により予測された前記第2の容量が当該第1の閾値よりも小さい第2の閾値を超えているかどうかを判定する判定部と、
前記判定部により前記第1の容量が前記第1の閾値を超えており前記第2の容量が前記第2の閾値を超えていると判定された場合に、前記第1のデータが前記通常記録領域に書き込まれた後に送られた前記コマンドに応じて、前記第2のデータについて前記第1の動作が行われるように制御し、前記判定部により前記第1の容量が前記第1の閾値を超えており前記第2の容量が前記第2の閾値を超えていないと判定された場合に、前記第1のデータが前記通常記録領域に書き込まれた後に送られた前記コマンドに応じて、前記第2のデータについて前記第2の動作が行われるように制御する制御部と
を含む、装置。 - 前記制御部は、前記判定部により前記第1の容量が前記第1の閾値を超えていないと判定された場合に、前記第1のデータが前記通常記録領域に書き込まれた後に送られた前記コマンドに応じて、前記第2のデータについて前記第2の動作が行われるように制御する、請求項1の装置。
- 前記判定部は、前記予測部により予測された前記第2の容量が前記第2の閾値よりも大きい第3の閾値を超えているかどうかを更に判定し、
前記制御部は、前記判定部により前記第2の容量が前記第3の閾値を超えていると判定された場合に、前記第1のデータが前記通常記録領域に書き込まれた後に送られた前記コマンドに応じて、前記第2のデータについて前記第1の動作が行われるように制御する、請求項1又は請求項2の装置。 - 上位装置から送られたデータをバッファに蓄積し、当該上位装置から送られたコマンドに応じて、当該バッファに蓄積された当該データをテープ媒体上の通常記録領域にバックヒッチを伴わずに書き込む第1の動作、及び、当該バッファに蓄積された当該データを当該テープ媒体上の一時記録領域にバックヒッチを伴わずに書き込んだ後、当該一時記録領域に書き込まれた当該データを含むデータ群であって各データ間のギャップを削減したデータ群を通常記録領域に書き込む第2の動作の何れかを選択的に行う装置において、
前記コマンドに応じて前記第1の動作及び前記第2の動作の何れかが行われたことにより第1のデータが前記通常記録領域に書き込まれた際に、当該第1のデータの容量である第1の容量を取得する取得部と、
前記第1のデータが前記通常記録領域に書き込まれた後に送られる前記コマンドに応じて書き込まれる第2のデータの容量である第2の容量を予測する予測部と、
前記取得部により取得された前記第1の容量が第1の閾値を超えているかどうか、前記予測部により予測された前記第2の容量が当該第1の閾値を超えているかどうか、及び、前記予測部により予測された前記第2の容量が当該第1の閾値よりも小さい第2の閾値を超えているかどうかを判定する判定部と、
前記判定部により前記第2の容量が前記第1の閾値を超えていると判定された場合に、前記第1のデータが前記通常記録領域に書き込まれた後に送られた前記コマンドに応じて、前記第2のデータについて前記第1の動作が行われるように制御し、
前記判定部により前記第1の容量が前記第1の閾値を超えており前記第2の容量が前記第1の閾値を超えておらず前記第2の閾値を超えていると判定された場合に、前記第1のデータが前記通常記録領域に書き込まれた後に送られた前記コマンドに応じて、前記第2のデータについて前記第1の動作が行われるように制御し、
前記判定部により前記第1の容量が前記第1の閾値を超えており前記第2の容量が前記第2の閾値を超えていないと判定された場合に、前記第1のデータが前記通常記録領域に書き込まれた後に送られた前記コマンドに応じて、前記第2のデータについて前記第2の動作が行われるように制御し、
前記判定部により前記第1の容量が前記第1の閾値を超えておらず前記第2の容量が前記第1の閾値を超えていないと判定された場合に、前記第1のデータが前記通常記録領域に書き込まれた後に送られた前記コマンドに応じて、前記第2のデータについて前記第2の動作が行われるように制御する制御部と
を含む、装置。 - 上位装置から送られたデータをバッファに蓄積し、当該上位装置から送られたコマンドに応じて、当該バッファに蓄積された当該データをテープ媒体に書き込む装置における、当該データを書き込む方法であって、
前記コマンドに応じて、前記バッファに蓄積された第1のデータを前記テープ媒体上の一時記録領域にバックヒッチを伴わずに書き込んだ後、当該一時記録領域に書き込まれた当該第1のデータを含むデータ群であって各データ間のギャップを削減したデータ群である第1のデータ群を当該テープ媒体上の通常記録領域に書き込むステップと、
前記第1のデータ群が前記通常記録領域に書き込まれた際に、当該第1のデータ群の総容量である第1の容量を取得するステップと、
前記第1のデータ群が前記通常記録領域に書き込まれた後に送られる前記コマンドに応じて書き込まれる第2のデータの容量である第2の容量を予測するステップと、
取得された前記第1の容量が第1の閾値を超えているかどうかを判定するステップと、
予測された前記第2の容量が前記第1の閾値よりも小さい第2の閾値を超えているかどうかを判定するステップと、
前記第1の容量が前記第1の閾値を超えており前記第2の容量が前記第2の閾値を超えていると判定された場合に、前記第1のデータ群が前記通常記録領域に書き込まれた後に送られた前記コマンドに応じて、前記第2のデータを当該通常記録領域にバックヒッチを伴わずに書き込むステップと、
前記第1の容量が前記第1の閾値を超えており前記第2の容量が前記第2の閾値を超えていないと判定された場合に、前記第1のデータ群が前記通常記録領域に書き込まれた後に送られた前記コマンドに応じて、前記第2のデータを前記一時記録領域にバックヒッチを伴わずに書き込んだ後、当該一時記録領域に書き込まれた当該第2のデータを含むデータ群であって各データ間のギャップを削減したデータ群である第2のデータ群を当該通常記録領域に書き込むステップと
を含む、方法。 - 前記第2のデータが前記通常記録領域に書き込まれた際に、前記第2の容量を取得するステップと、
前記第2のデータが前記通常記録領域に書き込まれた後に送られる前記コマンドに応じて書き込まれる第3のデータの容量である第3の容量を予測するステップと、
取得された前記第2の容量が前記第1の閾値を超えているかどうかを判定するステップと、
予測された前記第3の容量が前記第2の閾値を超えているかどうかを判定するステップと、
前記第2の容量が前記第1の閾値を超えており前記第3の容量が前記第2の閾値を超えていると判定された場合に、前記第2のデータが前記通常記録領域に書き込まれた後に送られた前記コマンドに応じて、前記第3のデータを当該通常記録領域にバックヒッチを伴わずに書き込むステップと、
前記第2の容量が前記第1の閾値を超えており前記第3の容量が前記第2の閾値を超えていないと判定された場合に、前記第2のデータが前記通常記録領域に書き込まれた後に送られた前記コマンドに応じて、前記第3のデータを前記一時記録領域に記録した後、当該一時記録領域に記録された当該第3のデータを含むデータ群であって各データ間のギャップを削減したデータ群である第3のデータ群を当該通常記録領域に書き込むステップとを更に含む、請求項5の方法。 - 前記第1の容量が前記第1の閾値を超えていないと判定された場合に、前記第1のデータ群が前記通常記録領域に書き込まれた後に送られた前記コマンドに応じて、前記第2のデータを前記一時記録領域にバックヒッチを伴わずに書き込んだ後、前記第2のデータ群を当該通常記録領域に書き込むステップを更に含む、請求項5又は請求項6の方法。
- 予測された前記第2の容量が、前記第2の閾値よりも大きい第3の閾値を超えているかどうかを判定するステップと、
前記第2の容量が前記第3の閾値を超えていると判定された場合に、前記第1のデータ群が前記通常記録領域に書き込まれた後に送られた前記コマンドに応じて、前記第2のデータを当該通常記録領域にバックヒッチを伴わずに書き込むステップと
を更に含む、請求項5乃至請求項7の何れかの方法。 - 上位装置から送られたデータをバッファに蓄積し、当該上位装置から送られたコマンドに応じて、当該バッファに蓄積された当該データをテープ媒体上の通常記録領域にバックヒッチを伴わずに書き込む第1の動作、及び、当該バッファに蓄積された当該データを当該テープ媒体上の一時記録領域にバックヒッチを伴わずに書き込んだ後、当該一時記録領域に書き込まれた当該データを含むデータ群であって各データ間のギャップを削減したデータ群を通常記録領域に書き込む第2の動作の何れかを選択的に行うコンピュータにおけるプログラムであって、
前記コンピュータを、
前記コマンドに応じて前記第1の動作及び前記第2の動作の何れかが行われたことにより第1のデータが前記通常記録領域に書き込まれた際に、当該第1のデータの容量である第1の容量を取得する取得部と、
前記第1のデータが前記通常記録領域に書き込まれた後に送られる前記コマンドに応じて書き込まれる第2のデータの容量である第2の容量を予測する予測部と、
前記取得部により取得された前記第1の容量が第1の閾値を超えているかどうか、及び、前記予測部により予測された前記第2の容量が当該第1の閾値よりも小さい第2の閾値を超えているかどうかを判定する判定部と、
前記判定部により前記第1の容量が前記第1の閾値を超えており前記第2の容量が前記第2の閾値を超えていると判定された場合に、前記第1のデータが前記通常記録領域に書き込まれた後に送られた前記コマンドに応じて、前記第2のデータについて前記第1の動作が行われるように制御し、前記判定部により前記第1の容量が前記第1の閾値を超えており前記第2の容量が前記第2の閾値を超えていないと判定された場合に、前記第1のデータが前記通常記録領域に書き込まれた後に送られた前記コマンドに応じて、前記第2のデータについて前記第2の動作が行われるように制御する制御部と
して機能させる、プログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011273880A JP5764050B2 (ja) | 2011-12-14 | 2011-12-14 | データを書き込む装置及び方法 |
US13/706,246 US8665542B2 (en) | 2011-12-14 | 2012-12-05 | Tape buffer used to reduce tape backhitches during writing operations |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011273880A JP5764050B2 (ja) | 2011-12-14 | 2011-12-14 | データを書き込む装置及び方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013125566A JP2013125566A (ja) | 2013-06-24 |
JP5764050B2 true JP5764050B2 (ja) | 2015-08-12 |
Family
ID=48609885
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011273880A Expired - Fee Related JP5764050B2 (ja) | 2011-12-14 | 2011-12-14 | データを書き込む装置及び方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8665542B2 (ja) |
JP (1) | JP5764050B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9501221B2 (en) | 2013-08-26 | 2016-11-22 | International Business Machines Corporation | Dynamically changing a buffer flush threshold of a tape drive based on historical transaction size |
US10437511B2 (en) | 2016-11-22 | 2019-10-08 | International Business Machines Corporation | Data access on tape |
US10467146B1 (en) | 2018-05-02 | 2019-11-05 | International Business Machines Corporation | Tape drive with intelligent selection of wrap / track for temporarily storing flushed data |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6856479B2 (en) * | 2002-01-29 | 2005-02-15 | International Business Machines Corporation | Writing synchronized data to magnetic tape |
JP3900494B2 (ja) * | 2003-05-16 | 2007-04-04 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 記憶装置、制御方法、プログラム、及び記録媒体 |
US6970311B2 (en) | 2003-08-18 | 2005-11-29 | International Business Machines Corporation | Storing data to magnetic tape both to one set of tracks and in the same operation rewritten to another set of tracks |
JP4140913B2 (ja) | 2005-05-12 | 2008-08-27 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 記録媒体の駆動を制御するための装置、方法、及びプログラム |
JP4131517B2 (ja) | 2005-09-06 | 2008-08-13 | インターナショナル・ビジネス・マシーンズ・コーポレーション | テープ媒体にデータを書き込むための装置 |
US7903363B2 (en) * | 2008-06-05 | 2011-03-08 | International Business Machines Corporation | Same Wrap backhitchless write method to encode data on a tape storage medium |
US8810951B2 (en) * | 2009-11-13 | 2014-08-19 | International Business Machines Corporation | Apparatus and method for controlling data writing to a tape medium |
-
2011
- 2011-12-14 JP JP2011273880A patent/JP5764050B2/ja not_active Expired - Fee Related
-
2012
- 2012-12-05 US US13/706,246 patent/US8665542B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2013125566A (ja) | 2013-06-24 |
US8665542B2 (en) | 2014-03-04 |
US20130155540A1 (en) | 2013-06-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5385992B2 (ja) | テープ媒体の走行を制御する装置及び方法 | |
JP4954141B2 (ja) | テープ媒体の走行を制御する装置及び方法 | |
JP4131517B2 (ja) | テープ媒体にデータを書き込むための装置 | |
JP3870215B1 (ja) | テープ記録装置のデータ書込み読取り制御方法 | |
JP4140913B2 (ja) | 記録媒体の駆動を制御するための装置、方法、及びプログラム | |
US8964327B2 (en) | Tape storage device, data writing method, and program | |
TWI447710B (zh) | 可選擇最佳磁帶速度回應於間斷讀取請求之磁帶機,磁帶驅動記錄系統,及選擇最佳磁帶速度之方法 | |
US10353624B2 (en) | Apparatus and method for writing data to recording medium | |
KR20110038639A (ko) | 테이프 매체의 주행 속도 조정 장치, 주행 속도 조정 방법, 및 주행 속도 조정 프로그램 | |
JP5764050B2 (ja) | データを書き込む装置及び方法 | |
JP2010055690A (ja) | データのフォーマットを変換する装置及び方法 | |
JP5476395B2 (ja) | データの書込みを制御する装置及び方法 | |
JP5567260B2 (ja) | テープ媒体にデータを書き込む装置及び方法 | |
US20120079185A1 (en) | Tape storage system including multiple tape storage apparatuses | |
US7870442B2 (en) | Read interchange optimization | |
JP4993265B2 (ja) | スペース・コマンドをテープ記憶システムが取り扱うための方法、システム及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140708 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150225 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150303 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150423 |
|
TRDD | Decision of grant or rejection written | ||
RD14 | Notification of resignation of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7434 Effective date: 20150526 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20150526 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150612 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5764050 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |