JP2006018426A - データ処理装置及びデータ転送方法 - Google Patents
データ処理装置及びデータ転送方法 Download PDFInfo
- Publication number
- JP2006018426A JP2006018426A JP2004193759A JP2004193759A JP2006018426A JP 2006018426 A JP2006018426 A JP 2006018426A JP 2004193759 A JP2004193759 A JP 2004193759A JP 2004193759 A JP2004193759 A JP 2004193759A JP 2006018426 A JP2006018426 A JP 2006018426A
- Authority
- JP
- Japan
- Prior art keywords
- data
- external storage
- storage device
- buffer
- size
- 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.)
- Pending
Links
Images
Abstract
【課題】外部記憶装置間のデータ転送を効率的に行う「データ処理装置及びデータ転送方法」を提供する。
【解決手段】バッファとして転送元ボリュームのセクタサイズと転送先ボリュームのセクタサイズの最小公倍数の、正の整数倍のバッファサイズのバッファを確保する。そして、転送元ファイルからバッファサイズ分の#1〜#3のセクタをバッファにリードし、バッファのデータを転送先ファイルの#11と#12にライトする(b1)処理を、転送元ファイルのデータの転送先ファイルへの転送が完了するまで繰り返す(b2)。
【選択図】図4
【解決手段】バッファとして転送元ボリュームのセクタサイズと転送先ボリュームのセクタサイズの最小公倍数の、正の整数倍のバッファサイズのバッファを確保する。そして、転送元ファイルからバッファサイズ分の#1〜#3のセクタをバッファにリードし、バッファのデータを転送先ファイルの#11と#12にライトする(b1)処理を、転送元ファイルのデータの転送先ファイルへの転送が完了するまで繰り返す(b2)。
【選択図】図4
Description
本発明は、複数の外部記憶装置を備えたデータ処理装置における外部記憶装置間のデータ転送の技術に関するものである。
複数の外部記憶装置を備えたデータ処理装置におけるデータ転送の技術としては、HDD(ハードディスクドライブ)とCD-DAドライバとを外部記憶装置として備えたオーディオ装置において、CD-DAドライバに装着されたCD-DAに記録された楽曲データを、個人的利用目的のためにHDDに転送して記録する技術が知られている(たとえば、特許文献1)。
ここで、複数の外部記憶装置を備えたデータ処理装置における、外部記憶装置間のデータ転送は、データ処理装置内に設けたバッファを介して行われることが一般的である。すなわち、外部記憶装置間のデータ転送は、転送元の外部記憶装置からバッファサイズ分のデータをバッファに読込み、バッファに読み込んだデータを転送先の外部記憶装置に書き込むことを、データ処理装置が所要回数繰り返すことにより実現される。
特開2002-203361号公報
さて、HDDやCD-DAドライバなどの外部記憶装置は、その種別毎に、データ処理装置がアクセスできるデータの単位が定まっている。たとえば、HDDでは、データ処理装置がアクセスできる単位は512Byte長のセクタであり、CD-DAドライバでは、データ処理装置がアクセスできる単位は2352Byte長のセクタである。したがって、データ処理装置は、たとえば、CD-DAドライバからデータをHDDに転送する場合には、2352Byte長のセクタを単位としてCD-DAからデータをバッファに読み込み、バッファのデータを512Byte長のセクタを単位としてHDDに書き込む必要がある。
したがって、データ処理装置内に設けるバッファサイズを任意に定めたのでは、効率的に外部記憶装置間のデータ転送を行うことができない。たとえば、バッファサイズがCD-DAのセクタのデータ長の整数倍でなければ、バッファの全てをCD-DAからのデータ読み出しに使用することができず、バッファサイズがHDDのセクタのデータ長の整数倍でなければ、バッファにバッファサイズ分格納されたデータの全てを、まとめてHDDに書き込むことはできない。
そこで、本発明は、データ処理装置において、外部記憶装置間のデータ転送を効率的に行うことを課題とする。
前記課題達成のために、本発明は、最小データアクセス単位のデータサイズが相互に異なる第1の外部記憶装置と第2の外部記憶装置とを含む複数の外部記憶装置を備えたデータ処理装置に、記憶装置と、データの転送元となる第1の外部記憶装置から、データの転送先となる第2の外部記憶装置にデータを転送する場合に、第1の外部記憶媒体の最小データアクセス単位のデータサイズと第2の外部記憶媒体の最小データアクセス単位のデータサイズとの最小公倍数の、正の整数倍のバッファサイズを持つバッファを前記記憶装置の記憶空間上に設定するバッファ設定手段と、前記第1の外部記憶装置から前記第2の外部記憶装置に転送するデータを、前記バッファサイズと同じデータサイズ毎に、順次、対象データとして、当該各対象データの前記第1の外部記憶装置からバッファへのリードと前記バッファから前記第2の外部記憶装置へのライトを行うデータ転送手段とを備えたものである。
このようなデータ処理装置によれば、バッファサイズの全てを転送元外部記憶装置からのデータのリードと、転送先外部記憶装置へのライトに用いることができる。また、後に発明の実施の形態において詳述するように、第1の外部記憶装置からバッファにリード可能なデータサイズと、バッファから第2の外部記憶装置にライト可能なデータサイズの違いによって生じる端数データの処理のためのオーバーヘッドも発生しない。
したがって、外部記憶装置間のデータ転送を効率的に行うことができる。
なお、以上のデータ処理装置において、前記第1の外部記憶装置や第2の外部記憶装置は、CDまたはDVDを再生するドライブ装置やハードディスクドライブ装置などであってよい。また、この場合、各外部記憶装置の最小データアクセス単位は前記ドライブ装置に装着された記録媒体のセクタやハードディスクのセクタとなる。また、以上のデータ処理装置において、前記第1の外部記憶装置から前記第2の外部記憶装置に転送するデータは、ファイルであってよい。なお、ここでいうファイルには、CD-DAのオーディオトラックを含む。
なお、以上のデータ処理装置において、前記第1の外部記憶装置や第2の外部記憶装置は、CDまたはDVDを再生するドライブ装置やハードディスクドライブ装置などであってよい。また、この場合、各外部記憶装置の最小データアクセス単位は前記ドライブ装置に装着された記録媒体のセクタやハードディスクのセクタとなる。また、以上のデータ処理装置において、前記第1の外部記憶装置から前記第2の外部記憶装置に転送するデータは、ファイルであってよい。なお、ここでいうファイルには、CD-DAのオーディオトラックを含む。
以上のように、本発明によれば、外部記憶装置間のデータ転送を効率的に行うことができる。
以下、本発明の実施形態をオーディオ装置への適用を例にとり説明する。
図1に、本実施形態に係るオーディオ装置の構成を示す。
図示するように、本オーディオ装置は、汎用コンピュータと同様の構成を、その基本構成として備えている。
すなわち、プロセッサバス3に接続したCPU1とキャッシュ2とブリッジ4、ブリッジ4を介してプロセッサバス3に接続するグラフィックコントローラ7とI/Oコントローラ9とメモリコントローラ5、グラフィックコントローラ7によって表示が制御される表示装置8、メモリコントローラ5によってアクセスが制御されるメモリ6、I/Oコントローラ9によって入出力が制御される入力装置10とHDD11とCD/DVDドライバ12とサウンドコントローラ13、サウンドコントローラ13によって出力が処理されるスピーカ14などを備えている。
図1に、本実施形態に係るオーディオ装置の構成を示す。
図示するように、本オーディオ装置は、汎用コンピュータと同様の構成を、その基本構成として備えている。
すなわち、プロセッサバス3に接続したCPU1とキャッシュ2とブリッジ4、ブリッジ4を介してプロセッサバス3に接続するグラフィックコントローラ7とI/Oコントローラ9とメモリコントローラ5、グラフィックコントローラ7によって表示が制御される表示装置8、メモリコントローラ5によってアクセスが制御されるメモリ6、I/Oコントローラ9によって入出力が制御される入力装置10とHDD11とCD/DVDドライバ12とサウンドコントローラ13、サウンドコントローラ13によって出力が処理されるスピーカ14などを備えている。
そして、このような構成において、CPU1のHDD11に記憶されたプログラムのロードと実行によって、図2に示す機能構成がオーディオ装置上に形成される。
すなわち、オーディオ装置は、機能的には、オペレーティングシステム200と、オペレーティングシステム200の上でアプリケーションとして稼働するオーディオ再生アプリケーション210、リッピング処理アプリケーション212、その他のアプリケーションである他アプリケーション212、メモリ6を用いて構成される主記憶220等を備えている。
すなわち、オーディオ装置は、機能的には、オペレーティングシステム200と、オペレーティングシステム200の上でアプリケーションとして稼働するオーディオ再生アプリケーション210、リッピング処理アプリケーション212、その他のアプリケーションである他アプリケーション212、メモリ6を用いて構成される主記憶220等を備えている。
そして、このような構成において、オペレーティングシステム200は、オーディオ再生アプリケーション210やリッピング処理アプリケーション212や他アプリケーション212に、入力装置10や表示装置8やスピーカやHDD11やCD/DVDドライバ12や主記憶220との間の入出力機能を提供する。また、このために、オペレーティングシステム200は、HDD11やCD/DVDドライバ12や表示装置8や入力装置10などの周辺装置との間の入出力を制御するデバイスドライバ202や、デバイスドライバ202を利用してアプリケーションに対してファイルに対するアクセス機能を提供するファイルシステムドライバ201などを備えている。また、ファイルシステムドライバ201は、CD/DVDドライバ12に装着されたCD/DVDドライバ12に装着されたCD-DAのオーディオトラックを、各アプリケーションがファイルとして取り扱えるようにする処理なども行う。
すなわち、たとえば、オペレーティングシステム200は、オーディオ再生アプリケーション210に、HDD11に格納されたオーディオファイルや、CD/DVDドライバ12に装着されたCD-DAのオーディオトラックや、CD/DVDドライバ12に装着されたCD-ROMやDVD-ROMなどの記憶媒体のオーディオファイルへのアクセス機能を提供する。そして、オーディオ再生アプリケーション210は、この機能を利用してオーディオファイルやオーディオトラックをHDD11やCD/DVDドライバ12に装着されたCD-DAやCD-ROMやDVD-ROMから読み出して再生し、スピーカから出力することができる。
以下、リッピング処理アプリケーション212が行う処理について説明する。
リッピング処理アプリケーション212は、ユーザの入力装置10からの要求に応じて、CD/DVDドライバ12に装着されたCD-DAやCD-ROMやDVD-ROMに記録されているオーディオトラックやオーディオファイルのデータを、HDD11に記録する処理を行う。または、CD/DVDドライバ12にCD-DAやCD-ROMやDVD-ROMが装着された時点で、自動的に、装着されたCD-DAやCD-ROMやDVD-ROMに記録されている各オーディオトラックや各オーディオファイルのデータを、HDD11に記録する処理を行う。
リッピング処理アプリケーション212は、ユーザの入力装置10からの要求に応じて、CD/DVDドライバ12に装着されたCD-DAやCD-ROMやDVD-ROMに記録されているオーディオトラックやオーディオファイルのデータを、HDD11に記録する処理を行う。または、CD/DVDドライバ12にCD-DAやCD-ROMやDVD-ROMが装着された時点で、自動的に、装着されたCD-DAやCD-ROMやDVD-ROMに記録されている各オーディオトラックや各オーディオファイルのデータを、HDD11に記録する処理を行う。
ここで、リッピング処理部は、CD/DVDドライバ12にCD-DAやCD-ROMやDVD-ROMに記録されているオーディオトラックやオーディオファイルのデータのHDD11への記録を、各オーディオトラックや各オーディオファイルについて、以下に示すファイル転送処理を実行することにより行う。
図3に、このファイル転送処理の手順を示す。
図示するように、このファイル転送処理では、オペレーティングシステム200を介してCD/DVDドライバ12に装着されているCD-DAまたはCD-ROMまたはDVD-ROMである転送元ボリュームのセクタサイズを取得する(ステップ302)。ここで、CD-DAとCD-ROMの場合はセクタサイズが2352Byte、DVD-ROMの場合はセクタサイズが2048Byteとなる。
図示するように、このファイル転送処理では、オペレーティングシステム200を介してCD/DVDドライバ12に装着されているCD-DAまたはCD-ROMまたはDVD-ROMである転送元ボリュームのセクタサイズを取得する(ステップ302)。ここで、CD-DAとCD-ROMの場合はセクタサイズが2352Byte、DVD-ROMの場合はセクタサイズが2048Byteとなる。
次に、オペレーティングシステム200を介してデータの転送先となるボリュームのセクタサイズを取得する(ステップ304)。ここでは、HDD11が転送先のボリュームであり、そのセクタサイズは512Byteとなる。
そして、転送元のボリュームのセクタサイズと転送先のボリュームのセクタサイズの最小公倍数の、正の整数倍のサイズであって、現時点で主記憶220に確保できる容量以下または所定のしきい値以下のサイズをバッファサイズとして設定する(ステップ306)。すなわち、たとえば、転送元のボリュームがCD-DAとCD-ROMの場合は、そのセクタサイズと転送先ボリュームであるHDD11のセクタサイズとの最小公倍数は75264Byteとなるので、75264×n(nは正の整数)Byteがバッファサイズとして設定される。また、転送元のボリュームがDVD-ROMの場合は、そのセクタサイズと転送先ボリュームであるHDD11のセクタサイズとの最小公倍数は2048Byteとなるので、2048×nByteがバッファサイズとして設定される。
そして、転送元のボリュームのセクタサイズと転送先のボリュームのセクタサイズの最小公倍数の、正の整数倍のサイズであって、現時点で主記憶220に確保できる容量以下または所定のしきい値以下のサイズをバッファサイズとして設定する(ステップ306)。すなわち、たとえば、転送元のボリュームがCD-DAとCD-ROMの場合は、そのセクタサイズと転送先ボリュームであるHDD11のセクタサイズとの最小公倍数は75264Byteとなるので、75264×n(nは正の整数)Byteがバッファサイズとして設定される。また、転送元のボリュームがDVD-ROMの場合は、そのセクタサイズと転送先ボリュームであるHDD11のセクタサイズとの最小公倍数は2048Byteとなるので、2048×nByteがバッファサイズとして設定される。
次に、設定したバッファサイズをLとして、主記憶220のバッファサイズL分の大きさの領域をバッファとして確保し(ステップ308)、転送元ボリュームの転送元ファイル(転送元ボリュームがCD-DAの場合は実際にはトラック)をオープンし(ステップ310)、転送先ボリュームに転送先ファイルを作成する(ステップ312)。
そして、転送元ファイルから読み出していないデータのデータサイズがバッファサイズL未満となるか(ステップ316)、転送元ファイルから全てのデータの読み出しが完了するまで(ステップ322)、iを0から1ずつ増加させながら(ステップ314、324)以下の処理を行う。
すなわち、転送元ファイルより、転送元ファイル中のi×LByteから{(i+1)×L-1}ByteまでのデータサイズLのデータをバッファにリードする(ステップ318)。そして、バッファに格納されたデータサイズLのデータを、転送先ファイルのi×Lからi×L+Lまでのデータとしてライトする(ステップ320)。
すなわち、転送元ファイルの先頭から順次データサイズLのデータをリードしてバッファに格納し、バッファに格納したデータサイズLのデータを、転送先ファイルの先頭から順次ライトする。
ここで、この転送元ファイルのデータのバッファへの読み出しと、転送先ファイルへのバッファのデータの書き出しは、オペレーティングシステム200がアプリケーションに提供するオペレーティングシステム200の内部バッファを使用せずに、アプリケーションが自身で用意したバッファとファイルとの間で直接行われる。すなわち、オペレーティングシステム200は、内部バッファを用いることによりアプリケーションにバイト単位でファイルの任意のデータのアクセス機能を提供するAPIと、アプリケーションにセクタ単位に直接ファイルのデータにアクセスする機能を提供するAPIを備えており、ファイル転送処理では、後者のAPIを用いて、転送元ファイルのデータのバッファへの読み出しと、転送先ファイルへのバッファのデータの書き出しを行う。なお、一般のオペレーティングシステム200が確保する内部バッファは容量が小さく、ファイルなどの比較的容量が大きなデータについての高速な転送の用途には適していない。
ここで、この転送元ファイルのデータのバッファへの読み出しと、転送先ファイルへのバッファのデータの書き出しは、オペレーティングシステム200がアプリケーションに提供するオペレーティングシステム200の内部バッファを使用せずに、アプリケーションが自身で用意したバッファとファイルとの間で直接行われる。すなわち、オペレーティングシステム200は、内部バッファを用いることによりアプリケーションにバイト単位でファイルの任意のデータのアクセス機能を提供するAPIと、アプリケーションにセクタ単位に直接ファイルのデータにアクセスする機能を提供するAPIを備えており、ファイル転送処理では、後者のAPIを用いて、転送元ファイルのデータのバッファへの読み出しと、転送先ファイルへのバッファのデータの書き出しを行う。なお、一般のオペレーティングシステム200が確保する内部バッファは容量が小さく、ファイルなどの比較的容量が大きなデータについての高速な転送の用途には適していない。
そして、転送元ファイルから全てのデータの読み出しが完了したならば(ステップ322)、転送元ファイルと転送先ファイルをクロウズし(ステップ334)、処理を終了する。
一方、転送元ファイルから読み出していないデータのデータサイズがバッファサイズL未満となった場合には(ステップ316)、この残るL未満のデータサイズのデータを、転送元ファイルからリードして転送先ファイルにライトする処理を行う。
すなわち、まず、転送元ファイルから読み出していないデータのデータサイズ以上のサイズとなる、転送元ボリュームのセクタサイズの最小倍数をKとして求める(ステップ326)。また、転送元ファイルから読み出していないデータのデータサイズ以上のサイズとなる、転送先ボリュームのセクタサイズの最小倍数をJとして求める(ステップ328)。
一方、転送元ファイルから読み出していないデータのデータサイズがバッファサイズL未満となった場合には(ステップ316)、この残るL未満のデータサイズのデータを、転送元ファイルからリードして転送先ファイルにライトする処理を行う。
すなわち、まず、転送元ファイルから読み出していないデータのデータサイズ以上のサイズとなる、転送元ボリュームのセクタサイズの最小倍数をKとして求める(ステップ326)。また、転送元ファイルから読み出していないデータのデータサイズ以上のサイズとなる、転送先ボリュームのセクタサイズの最小倍数をJとして求める(ステップ328)。
そして、転送元ファイルより、転送元ファイル中の読み出していないデータの先頭からデータサイズKのデータをバッファにリードする(ステップ330)。そして、バッファの先頭からデータサイズJのデータを、転送先ファイルの既存のデータ以降のデータとしてライトする(ステップ320)。
そして、転送元ファイルと転送先ファイルをクロウズし(ステップ334)、処理を終了する。
以上、ファイル転送処理について説明した。
ここで、図4に以上のファイル転送処理の処理例を示す。
図示するように、ここでは説明の簡明化のために、転送先ボリュームのセクタサイズは、転送元ボリュームのセクタサイズの3/2倍であり、転送元ファイルが転送元ボリュームのセクタ#1〜#6のセクタに記録されている場合を例にとり説明する。
この場合、本実施形態に係るファイル転送処理では、バッファとして転送元ボリュームのセクタサイズと転送先ボリュームのセクタサイズの最小公倍数(転送元ボリュームのセクタサイズの3倍=転送先ボリュームのセクタサイズの2倍)の、正の整数倍のバッファサイズのバッファが確保される。
以上、ファイル転送処理について説明した。
ここで、図4に以上のファイル転送処理の処理例を示す。
図示するように、ここでは説明の簡明化のために、転送先ボリュームのセクタサイズは、転送元ボリュームのセクタサイズの3/2倍であり、転送元ファイルが転送元ボリュームのセクタ#1〜#6のセクタに記録されている場合を例にとり説明する。
この場合、本実施形態に係るファイル転送処理では、バッファとして転送元ボリュームのセクタサイズと転送先ボリュームのセクタサイズの最小公倍数(転送元ボリュームのセクタサイズの3倍=転送先ボリュームのセクタサイズの2倍)の、正の整数倍のバッファサイズのバッファが確保される。
まず、本実施形態の有効性の比較例として、転送元ボリュームのセクタサイズと転送先ボリュームのセクタサイズの最小公倍数の、正の整数倍とならないサイズである、転送元ボリュームのセクタサイズの4倍のバッファサイズを持つバッファを用いた場合のファイル転送例を図中aに示す。
この場合は、まずa1に示すように、転送元ファイルの#1〜#4のセクタをバッファにリードし、バッファのデータを転送先ファイルの#11から#13にライトする。ただし、この時点でバッファに転送先ファイルの3セクタ分のデータは格納されていないので、転送先ファイルの#13のセクタの後半部分401のデータは無意なデータとなる。
そこで、この転送先ファイルの#13のセクタを完全なものとするために、次に、a2に示すように転送先ファイルの#13のセクタをバッファにリードする。また、a3に示すように、このバッファ内に格納した転送先ファイルの#13のセクタの後半部分に上書する形態で、バッファに転送元ファイルの#5と#6のセクタをリードする。
そして、最後にバッファのデータを転送先ファイルの2セクタ分、転送先ファイルの#13と#14のセクタにライトする。
以上のように、この場合には、転送元ファイルからの2度のリード、転送先ファイルからの1度のリード、転送先ファイルへの2度のライトが必要となる。そして、バッファと転送元ボリューム及び転送先ボリュームとの間のデータの総転送量は、転送元ファイルのデータ量の2倍に、転送先ボリュームのセクタのデータ量の2倍を加えた量となる。
以上のように、この場合には、転送元ファイルからの2度のリード、転送先ファイルからの1度のリード、転送先ファイルへの2度のライトが必要となる。そして、バッファと転送元ボリューム及び転送先ボリュームとの間のデータの総転送量は、転送元ファイルのデータ量の2倍に、転送先ボリュームのセクタのデータ量の2倍を加えた量となる。
また、転送先ファイルへのリードとライトが交互に行われているために、転送先ボリュームがディスクキャッシュを備えているHDD11である場合には、ディスクキャッシュによる効果が発揮されず、逆に、リードとライトのディスクキャッシュ処理を切り替えるためのオーバーヘッドが生じる場合もある。
次に、以上と同じ転送元ボリューム、転送元ファイル、転送先ボリュームについて、本実施形態のファイル転送処理を行った場合のファイル転送例を示す。
まず、この場合、前述したようにバッファとして転送元ボリュームのセクタサイズと転送先ボリュームのセクタサイズの最小公倍数(転送元ボリュームのセクタサイズの3倍=転送先ボリュームのセクタサイズの2倍)の、正の整数倍のバッファサイズのバッファが確保される。ここでは、一例として、転送元ボリュームのセクタサイズの3倍のバッファサイズを持つバッファが確保されるものとする。
まず、この場合、前述したようにバッファとして転送元ボリュームのセクタサイズと転送先ボリュームのセクタサイズの最小公倍数(転送元ボリュームのセクタサイズの3倍=転送先ボリュームのセクタサイズの2倍)の、正の整数倍のバッファサイズのバッファが確保される。ここでは、一例として、転送元ボリュームのセクタサイズの3倍のバッファサイズを持つバッファが確保されるものとする。
この場合、まずb1に示すように、転送元ファイルの#1〜#3のセクタをバッファにリードし、バッファのデータを転送先ファイルの#11と#12にライトする。そして、次に、b2に示すように、転送元ファイルの#4〜#6のセクタをバッファにリードし、バッファのデータを転送先ファイルの#13と#14にライトする。
以上のように、この場合には、転送元ファイルからの2度のリード、転送先ファイルへの2度のライトでファイルの転送が完了している。そして、バッファと転送元ボリューム及び転送先ボリュームとの間のデータの総転送量は、転送元ファイルのデータ量の2倍となる。
すなわち、以上の比較例では、本実施形態のファイル転送によって、より少ないバッファサイズのバッファを用いているにもかかわらず、より効率的で高速なファイル転送が実現されている。
以上、本発明の実施形態について説明した。
なお、以上の実施形態では、外部記憶装置としてHDD11、CD/DVDドライブを対象とする場合について説明したが、本実施形態は外部記憶装置として、カード型またはスティック型のメモリ装置や、その他の任意の外部記憶装置を対象とする場合について同様に適用することができる。
すなわち、以上の比較例では、本実施形態のファイル転送によって、より少ないバッファサイズのバッファを用いているにもかかわらず、より効率的で高速なファイル転送が実現されている。
以上、本発明の実施形態について説明した。
なお、以上の実施形態では、外部記憶装置としてHDD11、CD/DVDドライブを対象とする場合について説明したが、本実施形態は外部記憶装置として、カード型またはスティック型のメモリ装置や、その他の任意の外部記憶装置を対象とする場合について同様に適用することができる。
また、以上では、アプリケーションにおいてのファイル転送処理を行う場合について説明したが、本実施形態で示したアプリケーションからのファイルやトラックの転送の要求に応じて、オペレーティングシステム200が行う機能として、ファイル転送処理をオペレーティングシステム200に備えるようにしてもよい。または、各アプリケーションがファイルの転送に共用可能なライブラリ関数(DLLなど)として、以上のファイル転送処理を実現するようにしてもよい。
また、以上では、オーディオ装置への適用を例にとり説明したが、本実施形態に係る外部記憶装置間のデータ転送の技術は、複数の外部記憶装置を備えたデータ処理装置における外部記憶装置間のデータ転送に同様に適用することができる。
1…CPU、2…キャッシュ、3…プロセッサバス、4…ブリッジ、5…メモリコントローラ、6…メモリ、7…グラフィックコントローラ、8…表示装置、9…I/Oコントローラ、10…入力装置、11…HDD、12…CD/DVDドライバ、13…サウンドコントローラ、200…オペレーティングシステム、201…ファイルシステムドライバ、202…デバイスドライバ、210…オーディオ再生アプリケーション、212…リッピング処理アプリケーション、212…他アプリケーション、220…主記憶。
Claims (5)
- 最小データアクセス単位のデータサイズが相互に異なる第1の外部記憶装置と第2の外部記憶装置とを含む複数の外部記憶装置を備えたデータ処理装置であって、
記憶装置と、
データの転送元となる第1の外部記憶装置から、データの転送先となる第2の外部記憶装置にデータを転送する場合に、第1の外部記憶媒体の最小データアクセス単位のデータサイズと第2の外部記憶媒体の最小データアクセス単位のデータサイズとの最小公倍数の、正の整数倍のバッファサイズを持つバッファを前記記憶装置の記憶空間上に設定するバッファ設定手段と、
前記第1の外部記憶装置から前記第2の外部記憶装置に転送するデータを、前記バッファサイズと同じデータサイズ毎に、順次、対象データとして、当該各対象データの前記第1の外部記憶装置からバッファへのリードと前記バッファから前記第2の外部記憶装置へのライトを行うデータ転送手段とを有することを特徴とするデータ処理装置。 - 請求項1記載のデータ処理装置であって、
前記第1の外部記憶装置はCDまたはDVDを再生するドライブ装置であって、前記第2の外部記憶装置はハードディスクドライブ装置であり、前記第1の外部記憶装置の最小データアクセス単位は前記ドライブ装置に装着された記録媒体のセクタであり、前記第2の外部記憶装置の最小データアクセス単位はハードディスクのセクタであることを特徴とするデータ処理装置。 - 請求項1または2記載のデータ処理装置であって、
前記第1の外部記憶装置から前記第2の外部記憶装置に転送するデータは、ファイルであることを特徴とするデータ処理装置。 - 最小データアクセス単位のデータサイズが相互に異なる第1の外部記憶装置と第2の外部記憶装置とを含む複数の外部記憶装置を備えたデータ処理装置において、第1の外部記憶装置から第2の外部記憶装置にデータを転送するデータ転送方法であって、
前記第1の外部記憶媒体の最小データアクセス単位のデータサイズと前記第2の外部記憶媒体の最小データアクセス単位のデータサイズとの最小公倍数の、正の整数倍のバッファサイズを持つバッファを設けるステップと、
前記第1の外部記憶装置から前記第2の外部記憶装置に転送するデータを、前記バッファサイズと同じデータサイズ毎に、順次、対象データとして、当該各対象データの前記第1の外部記憶装置からバッファへのリードと前記バッファから前記第2の外部記憶装置へのライトを行うステップとを有することを特徴とするデータ転送方法。 - コンピュータによって読み取られ実行されるコンピュータプログラムであって、
前記コンピュータに、
データの転送元となる第1の外部記憶媒体の最小データアクセス単位のデータサイズと、データの転送先となる最小データアクセス単位が前記第1の外部記憶装置と異なる第2の外部記憶媒体の最小データアクセス単位のデータサイズとの最小公倍数の、正の整数倍のバッファサイズを持つバッファを設けるステップと、
前記第1の外部記憶装置から前記第2の外部記憶装置に転送するデータを、前記バッファサイズと同じデータサイズ毎に、順次、対象データとして、当該各対象データの前記第1の外部記憶装置からバッファへのリードと前記バッファから前記第2の外部記憶装置へのライトを行うステップとを実行させることを特徴とするコンピュータプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004193759A JP2006018426A (ja) | 2004-06-30 | 2004-06-30 | データ処理装置及びデータ転送方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004193759A JP2006018426A (ja) | 2004-06-30 | 2004-06-30 | データ処理装置及びデータ転送方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006018426A true JP2006018426A (ja) | 2006-01-19 |
Family
ID=35792668
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004193759A Pending JP2006018426A (ja) | 2004-06-30 | 2004-06-30 | データ処理装置及びデータ転送方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006018426A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010113491A1 (ja) | 2009-03-31 | 2010-10-07 | パナソニック株式会社 | データ転送方法 |
JP2010268293A (ja) * | 2009-05-15 | 2010-11-25 | Hitachi Ltd | 通信装置及び通信処理方法 |
US8332933B2 (en) | 2007-11-30 | 2012-12-11 | Sharp Kabushiki Kaisha | Processing apparatus with touch panel |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10240632A (ja) * | 1997-02-27 | 1998-09-11 | Nippon Telegr & Teleph Corp <Ntt> | 外部記憶装置のオンライン交換方法 |
JPH11242563A (ja) * | 1997-12-24 | 1999-09-07 | Sony Corp | ディスク媒体アクセスインタフェース装置およびそのアクセス方法およびディスクドライブ装置 |
JP2003018551A (ja) * | 2001-07-04 | 2003-01-17 | Toshiba Corp | データ処理装置、データ処理方法 |
JP2004013276A (ja) * | 2002-06-04 | 2004-01-15 | Victor Co Of Japan Ltd | ファイルシステム及び記録媒体 |
-
2004
- 2004-06-30 JP JP2004193759A patent/JP2006018426A/ja active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10240632A (ja) * | 1997-02-27 | 1998-09-11 | Nippon Telegr & Teleph Corp <Ntt> | 外部記憶装置のオンライン交換方法 |
JPH11242563A (ja) * | 1997-12-24 | 1999-09-07 | Sony Corp | ディスク媒体アクセスインタフェース装置およびそのアクセス方法およびディスクドライブ装置 |
JP2003018551A (ja) * | 2001-07-04 | 2003-01-17 | Toshiba Corp | データ処理装置、データ処理方法 |
JP2004013276A (ja) * | 2002-06-04 | 2004-01-15 | Victor Co Of Japan Ltd | ファイルシステム及び記録媒体 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8332933B2 (en) | 2007-11-30 | 2012-12-11 | Sharp Kabushiki Kaisha | Processing apparatus with touch panel |
WO2010113491A1 (ja) | 2009-03-31 | 2010-10-07 | パナソニック株式会社 | データ転送方法 |
JP2010268293A (ja) * | 2009-05-15 | 2010-11-25 | Hitachi Ltd | 通信装置及び通信処理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO1999015954A1 (en) | Large block allocation for disk based file systems | |
JP2005196769A (ja) | フラッシュメモリのデータ管理装置及び方法 | |
KR20080036931A (ko) | 정보 처리 장치, 정보 처리 방법, 프로그램, 프로그램 기록매체 | |
JP4227931B2 (ja) | 情報記憶装置、情報格納方法及び情報記憶処理プログラム | |
JP6391061B2 (ja) | テープ上へのファイル書き込み方法 | |
US9875030B2 (en) | Media write operation | |
JP2005339262A (ja) | ファイルシステムおよびその制御方法 | |
JP4791807B2 (ja) | パソコン装置における音声映像データの読み書き方法とシステム | |
US20050259542A1 (en) | Reproduction device and method, recording medium, and program | |
JP2006018426A (ja) | データ処理装置及びデータ転送方法 | |
JP2005078378A (ja) | データ記憶装置及び不揮発性メモリに対するデータ書き込み方法 | |
JP4313720B2 (ja) | データ処理プログラムおよびデータ処理装置 | |
JP2007257061A (ja) | データ記憶装置及びデータアクセス方法 | |
JP2008269520A (ja) | 記録装置及び記録方法 | |
KR20030061948A (ko) | 정보 저장 장치 및 그를 이용한 파일 관리 방법 | |
JP2005122252A (ja) | 再生装置、再生記録装置および映像編集装置 | |
US20060020751A1 (en) | Medium storage device, cache segment switching method for medium storage device, and medium storage system | |
JP2008293161A (ja) | 記録再生装置 | |
JP2009169682A (ja) | データアクセス方法およびデータアクセス装置 | |
JP2005228421A (ja) | ディジタル情報記録再生装置 | |
JP2004086439A (ja) | データ記録・再生装置およびそのハード・ディスク・ドライブに対するデータ読み書き制御方法 | |
TW200529194A (en) | Storage performance improvement using data replication on a disk | |
JP2001325135A (ja) | データ記憶再生装置及びデータ記憶再生方法 | |
JP2003151243A (ja) | 音楽記録再生方法および装置 | |
US20070064324A1 (en) | Discontinuous copying method and system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Effective date: 20070227 Free format text: JAPANESE INTERMEDIATE CODE: A621 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20091201 |
|
A131 | Notification of reasons for refusal |
Effective date: 20101005 Free format text: JAPANESE INTERMEDIATE CODE: A131 |
|
A02 | Decision of refusal |
Effective date: 20110308 Free format text: JAPANESE INTERMEDIATE CODE: A02 |