JP5062909B2 - 1つのディレクトリから別のディレクトリへのファイルのコピー - Google Patents

1つのディレクトリから別のディレクトリへのファイルのコピー Download PDF

Info

Publication number
JP5062909B2
JP5062909B2 JP2009164635A JP2009164635A JP5062909B2 JP 5062909 B2 JP5062909 B2 JP 5062909B2 JP 2009164635 A JP2009164635 A JP 2009164635A JP 2009164635 A JP2009164635 A JP 2009164635A JP 5062909 B2 JP5062909 B2 JP 5062909B2
Authority
JP
Japan
Prior art keywords
files
name
directory
file
unique identifier
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.)
Active
Application number
JP2009164635A
Other languages
English (en)
Other versions
JP2010044753A (ja
Inventor
レディ タッドヴァイ サチャナラヤナ
Original Assignee
エヌヴィディア コーポレイション
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by エヌヴィディア コーポレイション filed Critical エヌヴィディア コーポレイション
Publication of JP2010044753A publication Critical patent/JP2010044753A/ja
Application granted granted Critical
Publication of JP5062909B2 publication Critical patent/JP5062909B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/11File system administration, e.g. details of archiving or snapshots
    • G06F16/116Details of conversion of file system types or formats
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs

Description

[0002]本発明は、デジタル処理システムにおけるファイルの記憶に関し、より詳細には、1つのディレクトリから別のディレクトリへのファイルのコピーに関する。
[0004]ファイルとは、一般的に、メモリに記憶されたデータ要素の集合を指している。普通のシナリオでは、希望の内容(例えば、ソング、ワードプロセッサにより編集されたテキスト等)は、バイトの論理シーケンスとして不揮発性メモリに記憶されている。2次記憶装置は、ある場合には、それらファイルにアクセスするデジタル処理システム内に設けられ、また、ある場合には、他のシステム(例えば、別の汎用デジタル処理システム又は特殊ファイルサーバー等)に外部的に設けられる。
[0005]ファイルは、階層構造に組織されたディレクトリの形に組織されていることが多い。階層構造は、多数のレベルを意味し、典型的に、その各ディレクトリは、1つの名にて識別されている。より低いレベルのディレクトリは、サブディレクトリと称されることが多く、その直ぐ上のレベルのディレクトリは、親ディレクトリと称される。トップレベルは、ルートレベルと称され、ファイル/ディレクトリは、このルートから出発する。ファイルは、この階層構造の任意のレベルに配置することができる。
[0006]1つのディレクトリから別のディレクトリへとファイルをコピーする必要がしばしばある。例えば、1つのシステムの1つのディレクトリに記憶されたソングを、別のシステムへとコピーすることが望まれることがある。その環境に特定の種々な必要条件を満たしつつ、ソング/ファイルをコピーすることが望まれる。
[0007]以下に簡単に説明する添付図面を参照して、本発明の実施形態を説明する。
本発明の幾つかの特徴が実施される典型的な環境を例示するブロック図である。 本発明の一実施形態においてソースディレクトリのファイルがターゲットディレクトリへとコピーされる仕方を例示するフローチャートである。 本発明の一実施形態におけるデジタル処理システムの実施を例示するブロック図である。 一実施形態において、位置及び名が各ファイルに対して決定される仕方を例示するブロック図である。 本発明の幾つかの特徴がソフトウエア命令の実行時に動作できる典型的な実施形態を例示するブロック図である。
[0013]図において、同様の参照番号は、一般的には、同一の、機能的に同様の、及び/又は構造的に同様の要素を示している。要素が最初に現れている図番は、対応する参照番号の最も左側の桁の数字により示されている。
1.概説
[0015]本発明の一態様は、ソースディレクトリのファイルをターゲットディレクトリに記憶することである。一実施形態では、それらファイルの各々に対して固有の識別子が生成され、そのファイルに対して、新しい位置(location)及び新しい名(name)が生成される。その新しい位置は、そのファイルが記憶されるターゲットの特定のサブディレクトリを表している。そのファイルは、その新しい位置にその新しい名で記憶される。新しい名で新しい位置でのこのような記憶は、対応する環境における種々な問題に対処するのに効果的に使用できる。
[0016]1つの環境では、ターゲットディレクトリは、組み込みシステムに限られたリソースで記憶され、ソースディレクトリは、実質的に重複した名を有する幾つかのファイルを含む(これは、特定のファイルを探すのに相当のリソースを必要とする)。固有の識別子は、ファイル/ディレクトリの各々に対するオブジェクト識別子等を生成するメディア転送プロトコル(MTP)に従って生成される。ファイル名及び位置は、オブジェクト識別子を固有の識別子として使用することにより、生成される。以下に説明する実施形態の結果として、増強されたセキュリティー及びスループット性能が得られる。
[0017]本発明の幾つかの態様について、例示のための実施例に関して以下説明する。しかしながら、当業者には、特定の細部のうちの1つ以上のものが無くとも、又は、他の方法、コンポーネント、マテリアル等でもっても、本発明を実施することができることは認識できよう。その他の場合において、本発明の特徴を分かり難くしないようにするため、よく知られた構造、マテリアル又はオペレーションについては示していない。更にまた、ここに説明する特徴/態様は、種々な組合せにて実施することができるのであるが、ここでは、簡明とするため、それらの組合せのうちの幾つかのみについて説明する。
2.例示的な環境
[0019]図1は、本発明の幾つかの態様が実施される典型的な環境を例示するブロック図である。このブロック図は、ソースシステム110及びターゲットシステム150を含むように示されている。ソースシステム110は、ソースディレクトリに複数のファイルを記憶している。ターゲットシステム150は、それらファイルがコピーされる別のシステムを表している。これら2つのシステムは、ネットワーク(例えば、TCP/IP、LAN、ATM等に基づくもの)及びポイントツーポイント接続(例えば、ダイヤルアップ)の如き技法により接続される(パス115)。
[0020]本発明の幾つかの態様によりファイルがコピーされる仕方について、実施例に関して以下に更に詳細に説明する。例示として、ソースシステム110における(ソース)ディレクトリからターゲットシステム150における別の(ターゲット)ディレクトリへファイルがコピーされると仮定する。しかしながら、それらソースディレクトリ及びターゲットディレクトリは、同じシステムにあってもよい。
3.ファイルのコピー
[0022]図2は、本発明の一態様に従ってファイルがターゲットディレクトリへとコピーされる仕方を例示するフローチャートである。このフローチャートは、単なる例示として、図1に関して記述されている。しかしながら、ここになされている説明を読むならば当業者には明らかなように、本発明の種々な態様の範囲及び精神から逸脱せずに、他の環境においても種々な特徴を実施することができるものである。
[0023]更にまた、当業者には明らかなように、それらステップのうちのあるものは、特定の環境に適合された以下に説明するものとは異なるシーケンスにて行うことができるものである。そのような実施のうちの多くのものは、本発明の幾つかの態様により包含されるものと考えられる。このフローチャートは、ステップ201にて開始され、このステップ201において、制御は、直ぐにステップ210へと移行する。
[0024]ステップ210において、ターゲットシステム150は、ターゲットディレクトリへコピーされるべきファイルを受け取る。一般的に、このファイルは、名及び内容(典型的には、バイトのシーケンスの形における)を有している。このファイルは、ソースシステム110のあるディレクトリにおける第1の位置に置かれたものであってよい。
[0025]ステップ220において、ターゲットシステム150は、そのファイルに対する固有の識別子を形成する。一般的に、コピーされるべきファイルの各々に対して、対応する固有の識別子を与えることが必要である。これら固有の識別子は、特定の環境に適したように、種々な仕方にて生成することができる。
[0026]ステップ240において、ターゲットシステム150は、その固有の識別子に基づいてターゲットディレクトリにおける名及び位置を決定する。このことは、固有の識別子が名及び位置の算出において(オペランドとして)使用されることを意味している。その位置は、そのファイルが記憶されるべきターゲットディレクトリの個々のサブディレクトリを特定している。
[0027]ステップ260において、ターゲットシステム150は、ターゲットディレクトリにおけるその位置にその名と共にそのファイルを記憶させる。このように記憶させることは、必然的に、そのファイルの内容が、それらファイルを記憶するのに使用されるファイルシステムと調和しているメモリ(ここに、ターゲットディレクトリが記憶される)の適当な位置にコピーされることになる。
[0028]ステップ270において、ターゲットシステム150は、コピーされるべき更なるファイルがあるかについてチェックする。それらファイルがソースディレクトリに既に存在していると仮定すると、すべてのファイルがターゲットディレクトリへコピーされていないならば、付加的なファイルがあることになる。他方、もし、ファイルが動的に生成されていて、ステップ210において受け取られつつある場合には、そのようなファイルの付加的なファイルが生成される時に、コピーするための付加的ファイルがあることになる。
[0029]制御は、もし、更なるファイルがあるならば、ステップ210へ移行し、さもなければ、ステップ299へ移行する。ステップ210から270のループは、コピーされるべきファイルの各々に対して行われ、各ファイルは、前述したステップ210の「ファイル」として取り扱われる。すべてのファイルがコピーされる時、このフローチャートは、ステップ299にて終了する。
[0030]図2のコピーは、種々な環境において、その環境における対応する要件を満たし又はその環境において存在する問題に対処するようにして、適用されることは理解されたい。典型的な諸問題に対処するように前述の種々な特徴を適用することに関して説明を続ける。
4.例示的な諸問題
[0032]1つの実施形態では、コピーされるべきファイルは、ソースシステム110に存在しており、組み込みシステムを表すターゲットシステム150へコピーされるべきである。更に、各ファイルは、ソングを表現していると仮定する。しかし、代替的実施形態においては、その内容は、その他のある情報を表現することもできる。また、それらファイルの全ては、単一ディレクトリにあると仮定される。
[0033]更にまた、各ファイルは、実質的に重複する(又は、同じ又は共通の)部分を有する長い名を有していると仮定する。例えば、第1のファイルは、「映画名音楽家名ソング1」の名を有し、第2のファイルは、「映画名音楽家名ソング2」の名を有する。この実施例では、その部分「映画名音楽家名ソング」は、実質的に重複する部分を表しており、値1及び値2は、異なる部分を表している。
[0034]組み込みシステムであると、ターゲットシステム150は、限られたリソース(例えば、処理パワー)を有していると仮定され、また、情報セキュリティーが希望の特徴であると仮定される。あるファイルがファイル名に基づいて探索されるべきであるときには、この探索は、相当のリソースを消費するかもしれない。例えば、文字毎の比較が使用されると仮定すると、整合するものがないとの結論に達するためには、実質的重複部分の全てについて比較する必要があり、これは、計算要件として増強されたものが必要となってしまう。
[0035]ソースディレクトリにおけるのと同じファイル名を使用する場合には、セキュリティー露出となることが十分に考えられる。何故ならば、第三者である侵入者がそのファイル名を見ることによりそのファイルの内容の性質を理解してしまうことが考えられるからである。
[0036]本発明の幾つかの態様は、少なくとも、典型的な実施形態において以下により詳細に説明するような問題に対処するものである。この実施形態は、メディア転送プロトコル(MTP)を使用しており、従って、MTPについて先ず簡単に説明する。
5.メディア転送プロトコル
[0038]メディア転送プロトコル(MTP)は、USB又はIPの如きトランスポート機構の任意のものを使用して、組み込み装置へメディア内容を転送するためのプロトコル仕様である。ここで説明する実施形態の動作を理解するのに適切であると考えられるようなMTPの詳細についてのみ、ここでは説明する。MTPの更なる詳細については、ワシントン州レドモンドのマイクロソフト社から入手できる、2006年8月31日付けの「Media Transfer Protocol Enhanced」と題する文書、改訂版0.96を参照されたい。
[0039]MTPは、問題の各エンティティをオブジェクトとして表している。全てのオブジェクトは、プロパティのあるセットと関連付けられており、任意的にあるデータと関連付けられている。フォルダ、メディアファイル、テキストファイル、バイナリーファイル、プレイリストの如きエンティティの全ては、プロパティの区別されたセットを有するオブジェクトとして取り扱われる。従って、MTPとのインターフェースをする外部アプリケーション/デバイスは、(最終的に問題のデータを記憶する2次記憶装置の記憶ユニットをブロックが表しているブロックレベルの代わりに)オブジェクトレベルにて動作する。MTPは、オブジェクト、プロパティ及び関連付けの形においてその仮想ビューを有するのであるが、種々な下位ファイルシステムによって支援されることのできるものである。
[0040]MTPがファイルをターゲットディレクトリへコピーするのに使用される仕方について、例示としての実施例に関して以下説明する。
6.ターゲット装置
[0042]図3は、本発明の一実施形態におけるターゲットの詳細を例示するブロック図である。ターゲットシステム150は、MTPインターフェース310、ユーザーアプリケーション320、MTPアプリケーション330、メモリ340、アクセスブロック350、ファイルシステム370及び2次記憶装置390を含むように示されている。各ブロックについて、以下より詳細に説明する。
[0043]ユーザーアプリケーションブロック320は、問題のアプリケーションを一緒になって支援する命令及びハードウエアを表している。例えば、メディアプレーヤーの場合には、そのハードウエアは、再生、停止、巻戻し、次のソング等の如き指令を与えるために押される種々な物理ボタンを含むことができる。メモリ340は、揮発性(ランダムにアクセスできる)ユニット及び持続性ユニットの両者を含むことができ、また、メモリ340のうちのある部分は、2次記憶装置390と一体化することができる。
[0044]MTPブロック330は、前述したようなMTPプロトコルを実施する。本発明の幾つかの態様及び組み込み装置として動作するに適切なものとして、MTPブロック330は、セーブされようとしているエンティティの各々に対して(ソースファイルシステムに関連した)固有の(オブジェクト)識別子を生成する。更にまた、MTPブロック330は、図4に関して以下に説明するように、対応する情報をメモリ340にテーブルとして(持続性のある仕方にても)記憶/維持する。
[0045]MTPブロック330は、ソースディレクトリにおける(ソース)名と共にファイルのオブジェクト識別子を決定するのに、そのテーブルの情報を使用する。もし、そのファイルにアクセスする必要がある場合には、MTPブロック330は、そのアクセス要求を、決定されたオブジェクト識別子と共に、アクセスブロック350へと送る。アクセスブロック350は、そのアクセス要求の実行を行うことができるようにする。
[0046]MTPブロック330は、特定のエンティティのオブジェクト識別子に対する(正当と認められた)要求に応答することもでき、又は、(親の如き)他の要求された情報を与えるように応答することもできる。簡潔なものとするためここでは説明しないのであるが、MTPブロック330は、前述したようなMTP仕様に記載された種々な他の特徴を支援することができる。
[0047]MTPインターフェース310は、パス152にて外部装置とインターフェースするとき、種々な物理、電気及びトランスポートプロトコル(例えば、USB、TCP/IP、LAN)を与える。このような特徴に基づいて、MTPインターフェース310は、種々なMTP関連トランザクション要求(ファイルを記憶すること、ファイルを検索すること、エンティティに対応するオブジェクト識別子を与えること等)を受け取ると仮定される。
[0048]MTPインターフェース310は、更に、ユーザーアプリケーション320から又はパス152にて種々なトランザクション要求(ファイルの記憶、ファイルの検索)を受け取り、それらをMTPアプリケーション330へと送る。その応答(MTPブロック330から受け取られるとき)は、その要求が受け取られた同じパスにて送り返される。
[0049]2次記憶装置390は、ファイルが記憶される不揮発性メモリを表している。この不揮発性メモリは、磁気メモリ(ハードディスク)、フラッシュメモリ等の如き種々な技法を使用して実施することができる。ファイルシステム370は、各ファイルが2次記憶装置に記憶される仕方を特定し、当分野にてよく知られている種々な方法を使用して実施することができる。以下に説明する実施形態では、ファイルシステム370は、種々なパーソナルコンピュータシステムにて使用できるFATファイルシステムとして実施することもできる。
[0050]アクセスブロック350は、記憶されるべきファイルのオブジェクト識別子を受け取り、ファイルを記憶させるため図2に関して説明された種々な動作を行う。従って、アクセスブロック350は、各ファイルの位置及び名を決定し、それから、ファイルシステム370とのインターフェースを行い、そのファイルがターゲットディレクトリの決定された位置(サブディレクトリ)にその決定された名で記憶されるようにする。
[0051]それから、アクセスブロック350は、それらファイルの検索ができるようにすることができる。アクセスブロック350は、前述したステップ240の決定に対応するリバースロジックを行うことにより、その固有のオブジェクト識別子に基づいて、そのファイルの特定の位置及び(ターゲット)名を決定する。本明細書の説明を読むことにより、当業者には、種々なロジック(対応するリバースロジックでの)が明らかとなろう。1つの実施形態におけるアクセスブロック350の動作を例示するため、このようなロジックの実施例について説明を続ける。
7.例示的な記憶
[0053]図4は、本発明の一実施形態においてファイルが記憶され検索される仕方を例示している。例示として、ソースディレクトリは、参照番号410にて全体的に示されるサブディレクトリ及びファイル(ソース名を有する)を含むと仮定される。従って、楽曲は、コピーされるべきソースディレクトリの名を表し、サブディレクトリとして「アーティスト1」及び「アーティスト2」を有している。サブディレクトリ「アーティスト1」は、1000個のファイル/ソングで示されている。
[0054]理解されるように、ファイルの全ては、各名において実質的に重複する部分として「テスト」を有しており、これは、前述したように探索において効率を悪くしてしまうことがあるかもしれない。以下に説明するように、それらファイルは、このような問題の少なくともあるものを克服するように、ターゲットディレクトリへコピーされる。
[0055]前述したように、MTPは、「仮想」ファイルシステム(MTPのビューにおいて)を介して記憶されようとしているエンティティの各々に対して、固有のオブジェクト識別子を指定する。テーブル420は、メモリ340に記憶される対応する情報を示している。
[0056]各エンティティに対応する情報は、対応する行に記憶されるように示されている。各行は、オブジェクト識別子(OID)、エンティティ名、親識別子(PID)及びタイプを有する。OIDは、順次に指定されていると仮定されているが、他のプロパティを有する番号/識別子を使用することもできる。親識別子は、ソースディレクトリの階層構造における親のオブジェクト識別子を表している。従って、この情報は、MTPがフラット構造(オブジェクト識別子を有する)におけるオブジェクトのビューを与えているのであるが、ソースディレクトリの階層構造の再構成を行うことができるようにする。
[0057]テーブル420に存在しているオブジェクト識別子及び他の情報に基づいて、アクセスブロック350は、以下に更に詳細に説明するような本発明の幾つかの態様に従ってファイルの記憶及び検索を行うことができるようにする。
[0058]アクセスブロック350は、先ず、ターゲットディレクトリにおいて使用される多数のレベル及び最も低いレベルで各サブディレクトリに記憶されるファイルの数を決定することができる。一実施形態では、このような決定のために、次の式が使用される。
16(X+Y)=M…………式(1)
[0060]ここで、Xは、サブディレクトリのレベルを表すのに使用されるニブル(各々4ビット)の数を表しており、
[0061]Yは、最も低いレベルでのサブディレクトリ当たりのファイルを表すのに使用されるニブルの数を表しており、
[0062]Mは、組み込み装置によって支援されるMTPオブジェクトの最大数を表している。
[0063]M=64K(=16)と仮定すると、(X+Y)は、4に等しいことが必要であろう。例示として、X=3及びY=1と仮定すると、最も低いレベルでの単一サブディレクトリには、16個のファイルを記憶することができることが理解されよう。
[0064]ここで、各オブジェクト識別子が32ビットを有するように設計されていると仮定すると、LSB12−15が、サブディレクトリの第1のレベルを名付けるのに使用され、LSB8−11が、その第2のレベルを名付けるのに使用され、LSB4−7が、その第3のレベルを名付けるのに使用される。サブディレクトリの第3のレベルの各々に、16個のファイルを記憶することができ、そのファイルの(ターゲット)名は、LSB0−3に基づくことができる。前述の方法を使用し、16進法において前述のニブルを表すと、その位置/ファイル名は、”$MTPROOT/LSB[12−15]/LSB[8−11]/LSB[4−7]/LSB[0−3].datに等しくなる。それらのファイルは、2次記憶装置390に記憶され、典型的なファイル430及び440により示されている。
[0065]この例示の実施例では、これは、64kのオブジェクトを、各レベルが16以下のオブジェクトを有するようにして、4以下のレベル(そのMTP内容の全てが記憶される3つのサブディレクトリ+1つのルートディレクトリ)でディレクトリ構造に亘って分散させる。例えば、1−16からのRIDを有する16のファイルが次のように分散される。
“$MTPROOT/0/0/0/1.dat
“$MTPROOT/0/0/0/2.dat


“$MTPROOT/0/0/0/15.dat
“$MTPROOT/0/0/1/1.dat
[0066]しかしながら、異なる数のサブディレクトリを使用し及び/又はノンリーフサブディレクトリにファイルを記憶するのに、別の方法を使用することもできる。更にまた、前述の方法/ロジックは、新しいターゲット名でファイルを記憶する仕方を例示しているが、希望のファイルにアクセスするのに同じロジックを使用することができることは理解されよう。先ず、ユーザーアプリケーション320が、例えば、MTPインターフェースでインターフェースすることにより、アクセスされようとしているファイルのオブジェクト識別子を決定したと仮定する。そのとき、ユーザーアプリケーション320は、そのオブジェクト識別子を与えることにより、そのファイルについてアクセスブロック350に要求することができる。
[0067]別の仕方として、ユーザーアプリケーション320は、単にソースファイル名を与えて、アクセスブロックが、メモリ340に記憶されたテーブルにおける情報に基づいてオブジェクト識別子を決定することができる。
[0068]前述したのと同じ方法を使用して、アクセスブロック350は、オブジェクト識別子をその位置及びターゲットファイル名へマップすることができる。そのとき、そのファイルは、その決定された位置及びファイル名を使用してアクセスされる。
[0069]ユーザーアプリケーションがメディアプレーヤーであり、それらファイルが前述したように相当に重複する名を有するソングを表すと仮定すると、比較の数は、最大で16個のファイルの名のみを比較すればよいので、最大16までに減ぜられることは理解されよう。これと対比的に、もし、図4の「楽曲/アーティスト1/テスト1 mp3」ディレクトリのファイルの全てが、同じディレクトリに記憶されているならば、最悪の場合、所定のファイルを探し出すのに1000回の探索が必要とされてしまう。
[0070]性能比較として、ファイルシステム370が、512バイトのセクタサイズを有し各セクタが10個の名を記憶するようなFATファイルシステムとして実施されると仮定すると、それらファイルが図2に従って記憶されていない時には、約100個のセクタにアクセスする必要があるかもしれない。他方では、図2の方法が使用されているときには、最大で2個のセクタにアクセスすることが必要とされるだけで、希望のファイルにアクセスすることができるのである。希望のファイルが素早く探し出されてアクセスすることができるので、メディアプレーヤーのユーザーの待ち時間を減少することができる。
[0071]前述の方法は、特に、デジタルライツ管理(DRM)のコンテクストにおいて、付加的なセキュリティーを与えることもできる。理解されるように、2次記憶装置390における位置及びターゲットファイル名は、そのファイルに対して生成された固有の識別子によって決定されることに加えて、ソースファイル名とは異なる。従って、侵入者は、前述の実施例において記憶された.datファイルが何を表しているのかを直ぐには理解できず、これにより、付加的なセキュリティーが提供される。
[0072]単なる例示として、ソースシステム110のディレクトリにおけるファイルがターゲットシステム150における別のディレクトリへとコピーされると仮定する。しかしながら、本発明の幾つかの特徴は、他のタイプのシステムからファイルをコピーするとき、他のタイプのシステムへファイルをコピーするとき、及び単一のシステム内でファイルをコピーするときでも、実施することのできるものである。
[0073]更にまた、前述した諸問題/解決法は、単なる例示であり、本発明の幾つかの特徴は、対応する異なる要件/問題を有する他の環境に適応できるものであることは、本明細書の記載を読むことにより、当業者には明らかとなろう。
[0074]前述したブロック/特徴は、ハードウエア、コンピュータ読み取り可能な媒体に記憶された実行モジュール、又は両者の組み合わせたものにより実現できることは、理解されたい。このような特徴/ブロックが実施される典型的なデジタル処理システムに関して、説明を続ける。
8.デジタル処理システム
[0076]図5は、本発明の種々な態様が適当なソフトウエア命令の実行により動作できるようなデジタル処理システム500の詳細を例示するブロック図である。このデジタル処理システム500は、ターゲットシステム150に対応できる。
[0077]デジタル処理システム500は、中央処理装置(CPU)510の如き1つ以上のプロセッサ、ランダムアクセスメモリ(RAM)520、2次メモリ530、グラフィックコントローラ560、表示装置570、ネットワークインターフェース580及び入力インターフェース590を含むことができる。表示装置570を除いて、これら構成部分の全ては、当業分野においてよく知られているような幾つかのバスを含む通信パス550を介して、互いに通信することができる。図5のこれらの構成部分について、以下より詳細に説明する。
[0078]CPU510は、本発明の幾つかの特徴を与えるため、RAM520に記憶された命令を実行することができる。CPU510は、各々が特定のタスクを行えるように設計された複数の処理装置を含むことができる。別の仕方として、CPU510は、単一の汎用処理装置のみを含むことができる。RAM520は、通信パス550を使用して2次メモリ530から命令を受け取ることができる。
[0079]グラフィックコントローラ560は、CPU510から受け取られたデータ/命令に基づいて、表示装置570への表示信号(例えば、RGBフォーマットにて)を生成する。表示装置570は、それら表示信号によって定められた画像を表示するための表示スクリーンを含む。入力インターフェース590は、キーボード及びポインティングデバイス(例えば、タッチパッド、マウス)に相当することができ、そして、入力を与えるのに(例えば、メディアプレーヤーの場合には、ソングを再生/停止するのに)使用することができる。ネットワークインターフェース580は、(例えば、インターネットプロトコルを使用して)ネットワークへのコネクティビティを与え、他の接続システムと通信するのに使用することができる。
[0080]2次メモリ530は、ハードドライブ535、フラッシュメモリ536及びリムーバブル記憶装置ドライブ537を含むことができる。2次メモリ530は、デジタル処理システム500が本発明に従って幾つかの特徴を与えることができるようにするデータ及びソフトウエア命令を記憶することができる。
[0081]これらデータ及び命令のうちのあるもの又は全てを、リムーバブル記憶装置540に与えることができ、それらデータ及び命令は、リムーバブル記憶装置ドライブ537により読み出されてCPU510へと与えられる。このようなリムーバブル記憶装置ドライブ537の実施例としては、フロッピードライブ、磁気テープドライブ、CD−ROMドライブ、DVDドライブ、フラッシュメモリ、リムーバブルメモリチップ(PCMCIAカード、EPROM)がある。
[0082]リムーバブル記憶装置540は、リムーバブル記憶装置ドライブ537がデータ及び命令を読み出すことができるように、そのリムーバブル記憶装置ドライブ537とコンパチブルな媒体及び記憶フォーマットを使用して実施することができる。従って、リムーバブル記憶装置540は、コンピュータソフトウエア及び/又はデータを記憶したコンピュータ読み取り可能な(記憶)媒体を含む。しかしながら、コンピュータ(又は、一般的には、マシン)読み取り可能な媒体は、他の形式(例えば、ノンリムーバブル、ランダムアクセス等)のものであることもできる。
[0083]本明細書では、用語「コンピュータプログラム製品」は、一般的には、リムーバブル記憶装置540又はハードドライブ535にインストールされたハードディスクを指すのに使用されている。これらのコンピュータプログラム製品は、デジタル処理システム500へソフトウエアを与えるための手段である。CPU510は、前述したような本発明の種々な特徴を与えるため、ソフトウエア命令を検索して、それら命令を実行することができる。
[0084]本発明を十分に理解できるように、多くの詳細、関係及び方法について説明されていると理解されたい。例えば、本明細書において説明する機能ユニットの多くは、それらの実施独立性をより特定して強調するため、モジュール/ブロックとしてラベル付けされている。
[0085]モジュール/ブロックは、カスタム超大規模集積回路又はゲートアレイ、ロジックチップの如き既製半導体、トランジスタ又は他の分離コンポーネントを含むハードウエア回路として実施することができる。また、モジュール/ブロックは、フィールドプログラマブルゲートアレイ、プログラマブルアレイロジック、プログラマブルロジックデバイス等の如きプログラマブルハードウエアデバイスにおいて実施することもできる。
[0086]モジュール/ブロックは、種々なタイプのプロセッサにより実行されるソフトウエアにても実施することができる。実行コードの識別モジュールは、例えば、コンピュータ命令の1つ以上の物理又は論理ブロックを含むことができ、それらコンピュータ命令は、例えば、オブジェクト、プロシージャ又はファンクションとして組織されている。しかしながら、識別モジュールの実行部分は、物理的に一緒に配置される必要はなく、異なる位置に記憶される異なる命令を含むことができる。それら異なる位置は、論理的に一緒に結合されるとき、そのモジュール/ブロックを構成し、そのモジュール/ブロックの所定の目的を達成することができる。
[0087]実行コードのモジュール/ブロックは、単一の命令であっても多数の命令であってもよく、異なるプログラムの間に、幾つかのメモリデバイスに渡り、幾つかのコードセグメントに亘って分散されていてもよいことは、理解されよう。更にまた、単一モジュール/ブロックに関して説明した機能は、複数のモジュール/ブロックに亘って分割されてもよく、又は、別の仕方として、複数のモジュール/ブロックに関して説明した機能は、単一のもの(又はブロックの他の組合せ)へと組み合わせてもよいことは、本明細書の記載に基づくならば、当業者には明となろう。
[0088]同様に、演算データは、モジュール内で識別されここに例示され、また、任意の適当な形式にて実施され、任意の適当なタイプのデータ構造内に組織されることができる。これら演算データは、単一データとして集約されてもよいし、又は、異なるメンバーディスクに亘ることを含めて異なる位置に亘って分散されてもよいし、また、単にシステム又はネットワークの電子信号として、少なくとも部分的に存在するようなものでもよい。
[0089]本明細書を通して、「1つの実施形態」、「一実施形態」又は類似の表現への参照は、その実施形態に関して説明された特定の特徴、構成又は特性が、本発明の少なくとも1つの実施形態に含まれることを意味している。従って、本明細書を通して現れる表現「1つの実施形態において」、「一実施形態において」及び類似の表現は、必ずしもそうではないが、全て同じ実施形態を指しているとも言える。
[0090]更にまた、本発明の前述した特徴、構造又は特性は、1つ以上の実施形態において任意の適当な仕方にて組み合わすことができる。次の説明において、本発明の実施形態の完全な理解を与えるように、プログラミング、ソフトウエアモジュール、ユーザー選択、ネットワークトランザクション、データベースクエリ、データベース構造、ハードウエアモジュール、ハードウエア回路、ハードウエアチップ等の実施例の如き多くの特定の詳細が与えられている。
9.結論
[0092]本発明の種々な実施形態について前述してきたのであるが、これら実施形態は、実施例としてのみなされているものであり、本発明をこれに限定するものではないことを理解されたい。従って、本発明の幅及び範囲は、前述した典型的な実施形態のいずれによっても限定されるべきものでなく、特許請求の範囲及びそれらの均等物に従ってのみ限定されるべきものである。
110・・・ソースシステム、115・・・パス、150・・・ターゲットシステム、152・・・パス、310・・・MTPインターフェース、320・・・ユーザーアプリケーション、330・・・MTPアプリケーション(MTPブロック)、340・・・メモリ、350・・・アクセスブロック、370・・・ファイルシステム、390・・・2次記憶装置、410・・・ソースディレクトリ(サブディレクトリ及びファイル)、420・・・テーブル、430・・・ファイル、440・・・ファイル、500・・・デジタル処理システム、510・・・中央処理装置(CPU)、520・・・ランダムアクセスメモリ(RAM)、530・・・2次メモリ、535・・・ハードドライブ、536・・・フラッシュメモリ、537・・・リムーバブル2次記憶装置ドライブ、540・・・リムーバブル記憶装置、550・・・通信パス、560・・・グラフィックコントローラ、570・・・表示装置、580・・・ネットワークインターフェース、590・・・入力インターフェース

Claims (20)

  1. 第1の階層構造を有する第1のディレクトリに記憶された複数のファイルをコピーする方法であって、
    前記複数のファイルに含まれ、第1の名を有し且つ前記第1の階層構造における第1の位置にある第1のファイルに対して固有の識別子を形成するステップと、
    第2の複数のレベルを含み且つ前記第1の階層構造と同一ではない第2の階層構造における第2の名及び第2の位置のそれぞれを、前記固有の識別子の少なくとも一部に基づいて決定するステップと、
    前記第2の階層構造における前記第2の位置に前記第1のファイルを前記第2の名で記憶するステップと、を含む方法。
  2. 前記複数のファイルの全てが前記第2の階層構造での第2のディレクトリへとコピーされるように、前記複数のファイルの各々を前記第1のファイルとして扱いながら、前記形成するステップ、決定するステップ及び記憶するステップを繰り返すステップを更に含む、請求項1に記載の方法。
  3. 前記形成するステップは、
    設計されたプロトコルアプリケーションへ前記第1の名及び前記第1の位置を送って、前記複数のファイルの各々に対して前記対応する固有の識別子を生成するようにした段階と、
    前記第1の名及び前記第1の位置を送ることに応答して、前記対応する固有の識別子を受け取る段階と、を含み、
    前記決定するステップ及び前記記憶するステップは、前記対応する固有の識別子を受け取る後に行われる、請求項2に記載の方法。
  4. 前記第2の数のレベルは、前記複数のファイルが前記第1のディレクトリに記憶されるレベルの数より多い、請求項3に記載の方法。
  5. 前記複数のファイルの各々に対して前記対応する固有の識別子を指示するテーブルを維持するステップを更に含む、請求項4に記載の方法。
  6. 前記プロトコルアプリケーションは、ディレクトリの名及びファイルの名を受け取り且つ前記ディレクトリの名及びファイルの名の各々に対して前記対応する固有の識別子を与えるように設計されており、前記維持するステップは、前記テーブルの複数の行の各々にタイプ、前記対応する固有の識別子及び前記名を含む、請求項5に記載の方法。
  7. 前記複数のファイルの各々は、ソングを含み、各ソングの前記第1の名は、実質的に重複する部分を有し、前記複数のファイルの全ては、前記第1のサブディレクトリの単一サブディレクトリに記憶され、前記ソングは、前記第2のディレクトリにおける複数のサブディレクトリに記憶される、請求項6に記載の方法。
  8. システムがファイルを記憶し検索するようにするための命令の1つ以上のシーケンスを記憶しているコンピュータ読み取り可能な媒体であって、
    1つ以上のプロセッサによる前記命令の1つ以上のシーケンスの実行により、前記システムが、
    複数のファイルに含まれ、第1の名を有し且つ第1の階層構造における第1の位置にある第1のファイルに対して固有の識別子を形成し、
    第2の複数のレベルを含み且つ前記第1の階層構造と同一ではない第2の階層構造における第2の名及び第2の位置のそれぞれを、前記固有の識別子の少なくとも一部に基づいて決定し、
    前記第2の階層構造における前記第2の位置に前記第1のファイルを前記第2の名で記憶する、各動作を実行させる、コンピュータ読み取り可能な媒体。
  9. 前記複数のファイルの全てが前記第2の階層構造での第2のディレクトリへとコピーされるように、前記複数のファイルの各々を前記第1のファイルとして扱いながら、前記形成する動作、決定する動作及び記憶する動作を繰り返す動作を更に含む、請求項8に記載のコンピュータ読み取り可能な媒体。
  10. 前記形成する動作は、
    前記複数のファイルの各々に対して前記対応する固有の識別子を生成するように設計されたプロトコルアプリケーションへ前記第1の名及び前記第1の位置を送り、
    前記第1の名及び前記第1の位置を送ることに応答して、前記対応する固有の識別子を受け取る、ことを含み、
    前記決定する動作及び前記記憶する動作は、前記対応する固有の識別子を受け取る後に行われる、請求項9に記載のコンピュータ読み取り可能な媒体。
  11. 前記第2の数のレベルは、前記複数のファイルが前記第1のディレクトリに記憶されるレベルの数より多い、請求項10に記載のコンピュータ読み取り可能な媒体。
  12. 前記複数のファイルの各々に対して前記対応する固有の識別子を指示するテーブルを維持する動作を更に含む、請求項11に記載のコンピュータ読み取り可能な媒体。
  13. 前記プロトコルアプリケーションは、ディレクトリの名及びファイルの名を受け取り且つ前記ディレクトリの名及びファイルの名の各々に対して前記対応する固有の識別子を与えるように設計されており、前記維持する動作は、前記テーブルの複数の行の各々にタイプ、前記対応する固有の識別子及び前記名を含む、請求項12に記載のコンピュータ読み取り可能な媒体。
  14. 前記複数のファイルの各々は、ソングを含み、各ソングの前記第1の名は、実質的に重複する部分を有し、前記複数のファイルの全ては、前記第1のサブディレクトリの単一サブディレクトリに記憶される、請求項13に記載のコンピュータ読み取り可能な媒体。
  15. 複数のファイルを受け取るためのインターフェースであって、各ファイルは、対応するソース名及び対応するソース位置に関連付けられており、前記ソース位置は、前記ファイルが前記ソース名で記憶されるソースディレクトリにおけるサブディレクトリを表すようなインターフェースと、
    前記複数のファイルの各々に対して対応する固有の識別子を生成するための第1のアプリケーションブロックと、
    前記複数のファイルの各々に対してターゲットディレクトリにおける対応するターゲット名及び対応するターゲット位置のそれぞれを、前記固有の識別子の少なくとも一部に基づいて生成し且つ2次記憶装置の前記対応するターゲット位置に前記対応するターゲット名で各ファイルを記憶するためのアクセスブロックであって、前記ターゲット位置は、前記ターゲットディレクトリにおけるサブディレクトリを識別するようなアクセスブロックと、を備えるデジタル処理システムであって、
    前記ソースディレクトリにおけるサブディレクトリの階層構造は、前記ターゲットディレクトリにおけるサブディレクトリの階層構造とは同一ではない、デジタル処理システム。
  16. 前記ターゲットディレクトリにおいて前記複数のファイルを記憶するサブディレクトリの数は、前記第1のディレクトリにおいて前記複数のファイルを記憶するサブディレクトリの数より多い、請求項15に記載のデジタル処理システム。
  17. 前記第1のアプリケーションブロックは、前記サブディレクトリ及びファイルの各々に対してオブジェクト識別子を与えるように設計されており、前記オブジェクト識別子は、前記対応するファイルに対する固有の識別子として使用される、請求項15に記載のデジタル処理システム。
  18. 前記ターゲット位置は、サブディレクトリのセットを含み、前記サブディレクトリのセットの各々は、前記オブジェクト識別子の対応するものにより決定され、前記ターゲット名は、前記オブジェクト識別子を含む、請求項17に記載のデジタル処理システム。
  19. 前記第1のアプリケーションは、メディア転送プロトコル(MTP)を実施するように設計されている、請求項18に記載のデジタル処理システム。
  20. メディアプレーヤーを実施するユーザーアプリケーションブロックを更に備え、前記複数のファイルの各々は、対応するソングを含む、請求項15に記載のデジタル処理システム。
JP2009164635A 2008-07-23 2009-07-13 1つのディレクトリから別のディレクトリへのファイルのコピー Active JP5062909B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/178,593 US8738580B2 (en) 2008-07-23 2008-07-23 Copying files from one directory to another
US12/178,593 2008-07-23

Publications (2)

Publication Number Publication Date
JP2010044753A JP2010044753A (ja) 2010-02-25
JP5062909B2 true JP5062909B2 (ja) 2012-10-31

Family

ID=41569579

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009164635A Active JP5062909B2 (ja) 2008-07-23 2009-07-13 1つのディレクトリから別のディレクトリへのファイルのコピー

Country Status (4)

Country Link
US (1) US8738580B2 (ja)
JP (1) JP5062909B2 (ja)
KR (1) KR101099802B1 (ja)
TW (1) TWI528194B (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104077378A (zh) * 2014-06-23 2014-10-01 广东新支点技术服务有限公司 Mtp文件系统优化方法和装置
JP6327028B2 (ja) * 2014-07-14 2018-05-23 日本電気株式会社 オブジェクトストレージシステムおよびその制御方法およびその制御プログラム
CN104199894A (zh) * 2014-08-25 2014-12-10 百度在线网络技术(北京)有限公司 一种文件扫描方法及装置
US20200192872A1 (en) * 2018-12-13 2020-06-18 Zoox, Inc. Device message framework
CN113127419B (zh) * 2019-12-30 2023-09-22 腾讯科技(深圳)有限公司 文件检出方法、装置、计算机设备及存储介质
CN111666257B (zh) * 2020-06-03 2024-03-19 中国建设银行股份有限公司 一种文件分片存储的方法、装置、设备和存储介质
CN111984300B (zh) * 2020-09-08 2024-01-23 网易(杭州)网络有限公司 代码复制方法及装置、电子设备和计算机可读存储介质
CN114172897B (zh) * 2021-12-09 2023-08-25 西安邮电大学 一种PC端和Android端文件传输方法及系统

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5295261A (en) * 1990-07-27 1994-03-15 Pacific Bell Corporation Hybrid database structure linking navigational fields having a hierarchial database structure to informational fields having a relational database structure
CA2110243C (en) * 1992-12-31 1998-08-11 Philip Steven Winterbottom Apparatus and methods for making a portion of a first name space available as a portion of a second name space
JP2000207264A (ja) 1999-01-19 2000-07-28 Canon Inc バックアップ方法およびリストア方法
JP2001346135A (ja) 2000-06-01 2001-12-14 Nikon Gijutsu Kobo:Kk デジタルプリントの注文・作成方法及び装置、並びに画像データの管理方法
US20020049760A1 (en) * 2000-06-16 2002-04-25 Flycode, Inc. Technique for accessing information in a peer-to-peer network
JP2002268931A (ja) 2001-03-13 2002-09-20 Casio Comput Co Ltd ファイル管理装置及びそのプログラム
US7062490B2 (en) 2001-03-26 2006-06-13 Microsoft Corporation Serverless distributed file system
JP2003016250A (ja) * 2001-06-28 2003-01-17 Pioneer Electronic Corp 顧客検索装置及びシステム並びに方法
US20030182402A1 (en) * 2002-03-25 2003-09-25 Goodman David John Method and apparatus for creating an image production file for a custom imprinted article
JP3789842B2 (ja) 2002-03-28 2006-06-28 エヌ・ティ・ティ・コムウェア株式会社 コンテンツのセキュリティ機能付き管理方法およびセキュリティ機能付きコンテンツ管理装置
AU2003298560A1 (en) 2002-08-23 2004-05-04 Exit-Cube, Inc. Encrypting operating system
US7587422B2 (en) * 2003-04-24 2009-09-08 Neopath Networks, Inc. Transparent file replication using namespace replication
US7403769B2 (en) * 2004-03-23 2008-07-22 Nokia Corporation System and method for music synchronization in a mobile device
US7984372B2 (en) * 2004-04-28 2011-07-19 Research In Motion Limited Markup language element to provide label for stored URI
US7774326B2 (en) * 2004-06-25 2010-08-10 Apple Inc. Methods and systems for managing data
JP2006260176A (ja) 2005-03-17 2006-09-28 Ex's Annex:Kk 機密文書管理方法及び機密文書管理システム
JP2007079685A (ja) 2005-09-12 2007-03-29 Hitachi Software Eng Co Ltd ファイル共用管理システム
JP2007148739A (ja) 2005-10-25 2007-06-14 Mitsubishi Materials Corp ファイル管理システム及びそのプログラム
US7827208B2 (en) * 2006-08-11 2010-11-02 Facebook, Inc. Generating a feed of stories personalized for members of a social network
JP2007310603A (ja) 2006-05-18 2007-11-29 Fuji Xerox Co Ltd 文書処理装置及び文書処理プログラム
CN100590622C (zh) 2006-10-04 2010-02-17 联发科技股份有限公司 多媒体管理及播放装置及数据处理方法
US8612439B2 (en) * 2009-06-30 2013-12-17 Commvault Systems, Inc. Performing data storage operations in a cloud storage environment, including searching, encryption and indexing

Also Published As

Publication number Publication date
KR20100010914A (ko) 2010-02-02
TWI528194B (zh) 2016-04-01
KR101099802B1 (ko) 2011-12-27
TW201022970A (en) 2010-06-16
US8738580B2 (en) 2014-05-27
US20100023563A1 (en) 2010-01-28
JP2010044753A (ja) 2010-02-25

Similar Documents

Publication Publication Date Title
JP5062909B2 (ja) 1つのディレクトリから別のディレクトリへのファイルのコピー
CN102938039B (zh) 针对应用的选择性文件访问
US10936547B2 (en) Filesystem replication using a minimal filesystem metadata changelog
JP5238685B2 (ja) フラッシュ・ストレージの離散領域を記述して問い合わせること
US7191189B2 (en) Organizing data objects in a storage device
CN101650660B (zh) 从中央存储装置引导计算机系统
KR20170133247A (ko) 어드레스 기반의 멀티-스트림 스토리지 장치 액세스
US9477487B2 (en) Virtualized boot block with discovery volume
US7769779B2 (en) Reverse name mappings in restricted namespace environments
US20170344430A1 (en) Method and apparatus for data checkpointing and restoration in a storage device
US10261709B2 (en) Memory data hole enabled management system
JP2008547074A5 (ja)
JP2012527046A (ja) リアルタイムでlunをファイルに、またはファイルをlunに変換すること
US20190095336A1 (en) Host computing arrangement, remote server arrangement, storage system and methods thereof
JP2004265110A (ja) メタデータ配置方法、プログラムおよびディスク装置
US20110271064A1 (en) Storage device and method for accessing the same
US9792042B2 (en) Systems and methods for set membership matching
US20090210617A1 (en) Multi-level volume table of contents
JP2005108239A (ja) 階層的データ構造体にデータを記憶する記憶システム
US20110153674A1 (en) Data storage including storing of page identity and logical relationships between pages
US11200203B1 (en) Accessing files stored in a firmware volume from a pre-boot application
US8977814B1 (en) Information lifecycle management for binding content
CN112905381A (zh) 用于获取调用栈中栈帧信息的方法、装置、设备和介质
US6625614B1 (en) Implementation for efficient access of extended attribute data
JP2006146907A (ja) 電子ファイルシステムにおけるリストおよびその他の項目の管理

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120110

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120410

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120413

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120510

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120515

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120605

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120710

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120806

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120806

R150 Certificate of patent or registration of utility model

Ref document number: 5062909

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150817

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250