JP4908849B2 - ファイル削除方法、ファイル・オープン方法、ファイル削除プログラム、および、ファイル・オープン・プログラム - Google Patents

ファイル削除方法、ファイル・オープン方法、ファイル削除プログラム、および、ファイル・オープン・プログラム Download PDF

Info

Publication number
JP4908849B2
JP4908849B2 JP2006003348A JP2006003348A JP4908849B2 JP 4908849 B2 JP4908849 B2 JP 4908849B2 JP 2006003348 A JP2006003348 A JP 2006003348A JP 2006003348 A JP2006003348 A JP 2006003348A JP 4908849 B2 JP4908849 B2 JP 4908849B2
Authority
JP
Japan
Prior art keywords
file
directory entry
acquired
information
deletion
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
Application number
JP2006003348A
Other languages
English (en)
Other versions
JP2007188130A (ja
Inventor
直樹 阿部
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Semiconductor Ltd
Original Assignee
Fujitsu Semiconductor Ltd
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 Fujitsu Semiconductor Ltd filed Critical Fujitsu Semiconductor Ltd
Priority to JP2006003348A priority Critical patent/JP4908849B2/ja
Priority to US11/468,592 priority patent/US8150809B2/en
Priority to CNB2006101541946A priority patent/CN100456303C/zh
Priority to KR1020060092659A priority patent/KR100844058B1/ko
Publication of JP2007188130A publication Critical patent/JP2007188130A/ja
Application granted granted Critical
Publication of JP4908849B2 publication Critical patent/JP4908849B2/ja
Expired - Fee Related 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/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • G06F16/162Delete operations
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、ファイル削除方法およびファイル・オープン方法に関し、特に、条件を指定して行うファイル削除方法および条件を指定して行うファイル処理(例えば、ファイル・プレビュー処理)の前処理としてのファイル・オープン方法に関する。
アプリケーションとデバイスドライバの間に設けられるミドルウェアの1つにFATファイルシステムがある。例えば、非特許文献1には、FATファイルシステムにおけるディレクトリエントリの読み込み処理、等の処理が解説されている。また、FATファイルシステムの仕様書として、非特許文献2がある。なお、FATとは、File Allocation Tablesの略称であり、FATファイルシステムとは、MS-DOSやWindows(登録商標)など、Microsoft社製のOSで使用されるファイルシステムである。
例えば、デジタルカメラでは、記憶媒体(二次記憶ともいう)の急激な容量増加に伴い、その記憶媒体上に数万個のオーダーの画像ファイルを保存することが可能になってきた。そして、このことに伴い、その記憶媒体上に存在する特定の条件を持つ画像を読み込みスムーズにプレビューしたり、その記憶媒体上に存在する特定の条件を持つ画像を削除したりする機能がデジタルカメラに必要になってきた。
「需要が高まるファイルシステムの実践的研究」、Interface、2001年7月号、pp55−134 「Microsoft Extensible Firmware Initiative FAT32 File System Specification」, Hardware White Paper, Microsoft Corporation
しかし、上述のFATファイルシステムでは、画像プレビューの前処理として画像ファイルをオープンしたり、ファイル削除処理においてファイルを削除したりする際に、ディレクトリ内部をシーケンシャルに検索して、ファイル位置を特定するため、処理対象となるファイル数が増大すると、そのディレクトリ内の検索時間が飛躍的に増大するという問題がある。
本発明の第1の課題は、所定の条件を満たすファイルを削除する場合に、その削除処理を高速に実行することが可能なファイル削除方法およびファイル削除プログラムを提供することである。
本発明の第2の課題は、所定の条件を満たすファイルに対し、そのファイルをオープンして行う所定の処理を実施する場合に、その所定の処理を高速に実行することが可能なファイル・オープン方法およびファイル・オープン・プログラムを提供することである。
本発明の第1態様のファイル削除方法は、アプリケーションからの所定の条件を満たすファイルの削除指示に対応する指示をデバイスドライバ側へ出力する処理をコンピュータが実行するファイル削除方法において、削除対象となるファイルの格納先ディレクトリのディレクトリエントリ情報を、二次記憶中の実データ領域から一次記憶上に1クラスタ分、取得するディレクトリエントリ取得ステップと、取得したディレクトリエントリ内のファイルが、前記所定の条件を満たし削除対象となった場合に、その取得したディレクトリエントリ内のファイルに対して削除マークを前記一次記憶上で付加する削除マーク付加処理ステップと、削除マークが付加されたファイルに対応する二次記憶中のFATに保持されるFAT情報を解放する解放処理ステップと、前記取得したディレクトリエントリ内のすべてのファイルに対して、前記削除マーク付加処理ステップが実行された場合に、その一次記憶上のディレクトリエントリの内容を二次記憶中の実データ領域の対応部分に書き込むディレクトリエントリ書き込みステップと、を備えることを特徴とするファイル削除方法である。
ここで、条件を指定して行うファイル削除処理をアプリケーションとしてではなく、ファイルシステムの1機能単位としたことで、その機能単位の実行中にデバイスドライバを他タスクが使用できなくなる排他制御をその機能単位に対して設定することが可能となるため、その条件を指定して行うファイル削除処理をアプリケーションで実行した場合にその処理中に発生する削除対象のファイルの格納先ディレクトリのディレクトリエントリ情報の検索ループの二重化が回避できる。よって、従来の場合に比較し、ファイル削除処理中の検索処理に要する時間を短縮することが可能となり、その条件を指定して行うファイル削除処理を高速に実行することができる。
また、取得したディレクトリエントリ内のすべてのファイルに対して、前記削除マーク付加処理ステップが実行されたタイミングでしか、二次記憶上へのディレクトリエントリ情報の書き込みは行わないので、その削除対象のファイルの格納先ディレクトリがフラッシュメモリ等のクラスタ単位でデータの読み書きを行う記憶媒体上に存在する場合のように、1ファイル分のエントリ情報も1クラスタ分のエントリ情報も書き込み時間が同じ場合には、それぞれのファイルのエントリ情報に削除マークを付加する毎に二次記憶に書き込む従来の場合に比較し、ファイル削除処理中の二次記憶への削除情報の書き込み時間を短縮することが可能になり、その条件を指定して行うファイル削除処理を高速に実行することができる。
本発明の第2態様のファイル削除方法は、アプリケーションからの所定の条件を満たすファイルの削除指示に対応する指示をデバイスドライバ側へ出力する処理をコンピュータが実行するファイル削除方法において、削除対象となるファイルの格納先ディレクトリのディレクトリエントリ情報を、二次記憶中の実データ領域から一次記憶上に取得するディレクトリエントリ取得ステップと、取得したディレクトリエントリ内のファイルが、前記所定の条件を満たし削除対象となった場合に、その取得したディレクトリエントリ内のファイルに対して削除マークを前記一次記憶上で付加する削除マーク付加処理ステップと、前記削除マーク付加処理ステップの処理結果を二次記憶中の実データ領域の対応部分に書き込むディレクトリエントリ書き込みステップと、削除マークが付加されたファイルに対応する二次記憶中のFATに保持されるFAT情報を解放する解放処理ステップを備えることを特徴とするファイル削除方法である。
ここで、条件を指定して行うファイル削除処理をアプリケーションとしてではなく、ファイルシステムの1機能単位としたことで、その機能単位の実行中にデバイスドライバを他タスクが使用できなくなる排他制御をその機能単位に対して設定することが可能となるため、その条件を指定して行うファイル削除処理をアプリケーションで実行した場合にその処理中に発生する削除対象のファイルの格納先ディレクトリのディレクトリエントリ情報の検索ループの二重化が回避できる。よって、従来の場合に比較し、ファイル削除処理中の検索処理に要する時間を短縮することが可能となり、その条件を指定して行うファイル削除処理を高速に実行することができる。
本発明の第3態様のファイル・オープン方法は、第1のアプリケーションからの所定の条件を満たすファイルへの所定の処理の実施指示を基に、前記所定の処理を行う第2のアプリケーションにオープンしたファイルの情報を出力する処理をコンピュータが実行するファイル・オープン方法において、処理対象となるファイルの格納先ディレクトリのディレクトリエントリ情報を、二次記憶中の実データ領域から一次記憶上に取得するディレクトリエントリ取得ステップと、取得したディレクトリエントリ内のファイルが、前記所定の条件を満たし処理対象となった場合に、その取得したディレクトリエントリ内のファイルのファイルサイズ、ファイルポインタを一次記憶上に読み込む参照情報読み込みステップと、読み込まれたファイルサイズ、ファイルポインタに対して、オープン番号を割り当てるオープン番号割り当てステップと、前記ファイルサイズ、ファイルポインタが割り当てられたオープン番号を一次記憶上のオープンファイルリストに追加するオープン番号追加ステップと、前記取得したディレクトリエントリ内のすべてのファイルに対して、前記参照情報読み込みステップ、オープン番号割り当てステップ、オープン番号追加ステップが実行された場合に、そのオープンファイルリストを、前記第2のアプリケーションに出力する処理結果出力ステップを備えることを特徴とするファイル・オープン方法である。
ここで、条件を指定して行うファイル処理中のその条件を満たすファイルをオープンする処理をアプリケーション中から呼び出す代わりに、ファイルシステムの1機能単位としたことで、その機能単位の実行中にデバイスドライバを他タスクが使用できなくなる排他制御をその機能単位に対して設定することが可能となるため、その条件を指定して行うファイル処理をアプリケーションで実行した場合にその処理中に発生する処理対象のファイルの格納先ディレクトリのディレクトリエントリ情報の検索ループの二重化が回避できる。よって、従来の場合に比較し、ファイル処理中の検索処理に要する時間を短縮することが可能となり、その条件を指定して行うファイル処理を高速に実行することができる。
なお、条件を指定して行うファイル処理とは、その条件を満たすファイルをオープンして行う任意の処理であり、ファイル・プレビュー処理、オープンした条件を満たすファイルへのデータ書き込み処理、オープンした条件を満たすファイルからのデータ読み出し処理、等が考えられる。
本発明によれば、所定の条件を満たすファイルを削除する場合に、その削除処理を高速に実行することができる。
また、本発明によれば、所定の条件を満たすファイルをオープンし、そのファイルに所定の処理を実施する場合に、その所定の処理を高速に実行することができる。
以下、本発明の実施の形態を、図面を参照しながら詳細に説明する。
図1は、本発明の第1実施形態のファイル削除処理部の構成を示すブロック図である。
図1に示すファイル削除処理部はミドルウェアの1つであり、アプリケーションからの所定の条件を満たすファイルの削除指示に対応する指示をデバイスドライバ側へ出力している。
図1において、ファイル削除処理部10は、削除対象となるファイルの格納先ディレクトリのディレクトリエントリ情報を、二次記憶中の実データ領域から一次記憶上に1クラスタ分、取得するディレクトリエントリ取得部11、取得したディレクトリエントリ情報内のデータを検索し、そのディレクトリエントリ中にファイルが存在するか、存在する場合はそのファイルが上記所定の条件を満たすかを判定する検索・条件判定部13、取得したディレクトリエントリ内のファイルが、上記所定の条件を満たし削除対象となった場合に、その取得したディレクトリエントリ内のファイルに対して削除マークを一次記憶上で付加する削除マーク付加処理部12、削除マークが付加されたファイルに対応する二次記憶中のFATに保持されるFAT情報を解放する各部(FAT情報取得部15、解放処理部16、FAT情報書き込み部17)、上記取得したディレクトリエントリ内のすべてのファイルに対して、上記削除マーク付加処理ステップが実行された場合に、その一次記憶上のディレクトリエントリの内容を二次記憶中の実データ領域の対応部分に書き込むディレクトリエントリ書き込み部14、各部を制御する制御部18を備える。
上記FAT情報取得部15は、二次記憶中のFAT(File Allocation Table)に保持されるFAT情報の所定数の項目を一次記憶に取得する。上記解放処理部16は、一次記憶のFAT情報中に解放すべきものとして指定された項目が含まれる場合、その項目を解放する。上記FAT情報書き込み部17は、一次記憶のFAT情報中に解放すべきものとして指定された項目が含まれていない場合、その一次記憶のFAT情報を二次記憶のFATの対応部分に書き込む。
また、ディレクトリエントリ取得部11によって取得したディレクトリエントリ情報に続きがある場合、制御部18は、ディレクトリエントリ書き込み部14によるディレクトリエントリ情報の書き込み処理の実行後に、ディレクトリエントリ取得部11を再起動して、その後続のディレクトリエントリ情報を保持するクラスタを取得するとともに、その後続のディレクトリエントリに対して、上記検索・条件判定部13、削除マーク付加処理部12、FAT情報取得部15、解放処理部16、FAT情報書き込み部17、ディレクトリエントリ書き込み部14が起動される。
図2は、本実施形態のファイル削除処理部がインストールされたハードウェア(パソコン、デジタルカメラ、ボイスレコーダ、等)の二次記憶内のディレクトリの構成を示す図である。
図2において、「/」はルートディレクトリを示している。また、「Dir1」は、ハードウェアの二次記憶内の削除対象となるファイルが格納されるディレクトリである。デジタルカメラの場合、撮像して得た複数の画像ファイルに対し、それら画像ファイルのファイル番号の範囲を指定して削除処理を実行することがある。「Dir1」は、例えば、その取り込んだ画像ファイルの格納先のディレクトリである。デジタルカメラのシステムでは、この画像ファイルの格納先ディレクトリを把握している。
また、このディレクトリ(「Dir1」)に3つのファイル(「File1.dat」、「File2.dat」、「File3.dat」)が存在することが図2には示されている。
図3は、図2のファイル情報に対応するファイル情報が格納された二次記憶の実データ領域内のデータ構成を示す図である。
また、図4は、図3の実データ領域に対応する二次記憶内のFATのデータ構成を示す図である。
例えば、図3の「0x0」で始まるクラスタ(データ処理単位)に、ルートディレクトリのディレクトリエントリ情報が格納されている。この図3の「0x0」で始まるクラスタに対応するFATの項目を図4で参照すると、その項目のポインタ情報が「End」に設定されているので、ルートディレクトリのディレクトリエントリ情報は、図3の「0x0」で始まるクラスタで完結していることが分かる。
また、この図3の「0x0」で始まるクラスタに保持される情報からルートディレクトリにディレクトリ「Dir1」が存在することが分かり、そのディレクトリ「Dir1」のディレクトリエントリ情報が「0x1」で始まるクラスタに格納されていることが分かる。
この図3の「0x1」で始まるクラスタに対応するFATの項目を図4で参照すると、その項目のポインタ情報が「0x5」に設定されていることから、ディレクトリ「Dir1」のディレクトリエントリ情報は、図3の「0x1」で始まるクラスタだけでは完結せず、図3の「0x5」で始まるクラスタにも格納されていることが分かる。
この図3の「0x5」で始まるクラスタに対応するFATの項目を図4で参照すると、その項目のポインタ情報が「End」に設定されているので、ディレクトリ「Dir1」のディレクトリエントリ情報は、「0x1」で始まるクラスタと「0x5」で始まるクラスタの2つのクラスタで完結していることが分かる。
また、図3の「0x1」および「0x5」で始まるクラスタに保持される情報から、ディレクトリ「Dir1」には、3つのファイル「File1.dat」、「File2.dat」、「File3.dat」が存在すること、「File1.dat」、「File2.dat」、「File3.dat」のデータが、それぞれ「0x2」、「0x4」、「0x6」で始まるクラスタを含む1以上のクラスタに格納されていること、が分かる。
さらに、図3の「0x2」、「0x4」、「0x6」で始まるクラスタに対応するFATの項目を図4で参照すると、「File1.dat」のデータは、図3の「0x2」で始まるクラスタと「0x3」で始まるクラスタに格納されていること、「File2.dat」のデータは、図3の「0x4」で始まるクラスタに格納されていること、「File3.dat」のデータは、図3の「0x6」で始まるクラスタと「0x7」で始まるクラスタに格納されていること、が分かる。
図5は、ファイル削除処理のフローチャートである。この処理は、図1のファイル削除処理部によって行われる。
ユーザがアプリケーションを介して指定した条件(削除対象のファイルが満たすべき条件)をファイル削除処理部10が受け付けることで一連の処理が始まる。
なお、この図5のフローチャートでは、削除対象のファイルの格納先のディレクトリはフラッシュメモリ上に存在するものとする。フラッシュメモリでは、周知のように、データの読み書きは規格上、消去ブロック毎に行われる。そこで、ファイルシステムは、実データ領域をクラスタに分割する際に、この消去ブロックに対応させる。したがって、1つのファイルについての情報を変更する場合、そのファイル情報が格納されたディレクトリエントリ情報を有する1クラスタ分のデータが二次記憶から一次記憶に読み出され、そのファイル情報が一次記憶上で変更された後に、その変更後のディレクトリエントリ情報がクラスタ単位で二次記憶に書き込まれる。
削除対象のファイルの格納先のディレクトリがフラッシュメモリ以外の二次記憶上に存在する場合、二次記憶からのデータ読み出しや二次記憶へのデータ書き込みについてクラスタ単位で行わなければならないという上述の制約はなくなる。
まず、ステップS101で、削除対象となるファイルの格納先ディレクトリのディレクトリエントリ情報が、ディレクトリエントリ情報取得部11によって、二次記憶から一次記憶上に取得される。格納先ディレクトリがフラッシュメモリ上にある場合、このディレクトリエントリ情報の取得はクラスタ単位で行われる。
そして、ステップS102で、ステップS101で取得したクラスタが含まれる実データ領域に対応するFAT情報の所定数の項目が、FAT情報取得部15によって取得される。例えば、FAT情報取得部15は、ステップS101で取得したクラスタに対応するFATの項目を含むFAT情報の所定数の項目を取得する。
そして、ステップS103で、検索・条件判定部13によって、ステップS101で取得したディレクトリエントリ情報中の先頭の検索位置が、ファイル検索位置を示す変数p1に設定される。
ステップS104では、検索・条件判定部13によって、取得したディレクトリエントリ情報中のデータが検索され、そのディレクトリエントリ中にファイルが存在するか、存在する場合はそのファイルが上述の削除対象のファイルが満たすべき条件を満たすかが判定される。
ステップS105では、ステップS104の検索・条件判定部13による検索結果を得ている。ディレクトリエントリ情報中の取得した1クラスタ分の情報については検索が終了したが、このディレクトリエントリ情報が後続のクラスタに続きの情報を持つ場合、ファイルが見つかった場合、ディレクトリエントリ情報の末端まで達した場合、の3通りに、この検索結果は分類される。
図6は、一次記憶に読み出された1クラスタ分のディレクトリエントリ情報の一例を示す図である。図6を参照して、検索・条件判定部13による検索処理をより具体的に説明する。
まず、図中、「File1」、「File2」、「<0xe5>File3」、「File4」、「<0xe5>File5」、「0x00」、「File6」、「0x00」は、それぞれのファイル検索位置に存在する情報であり、これらはいずれもファイル名を示している。「<0xe5>」は、文字コードの「0xe5」番目に対応し、規格上定められた削除マークである。この削除マークが先頭に付加されているファイル名のファイルは既に削除されている。
検索・条件判定部13は、現在の検索位置に、この削除マークが既に付加されているファイルが存在した場合、次の検索位置に進む。
また、「<0x00>」は、文字コードの「0x00」番目に対応し、規格上定められたディレクトリエントリ情報の末端を示すコードである。検索・条件判定部13は、現在の検索位置に、このディレクトリエントリ情報の末端を示すコード(「0x00」)が存在した場合に、その現在の検索位置をディレクトリエントリ情報の末端だとみなす。図6に示すように、そのディレクトリ末端を過ぎた場所にファイルを示す情報(「File6」)が存在しても、そのようなファイルは存在しないものとされる。
なお、取得したクラスタのディレクトリエントリ情報の末端まで、「0x00」が検索位置にない場合、続きのディレクトリエントリ情報が別のクラスタ上に存在する可能性がある。その場合、検索・条件判定部13は、取得したディレクトリエントリ情報に対応するFATの項目を参照して後続のディレクトリエントリ情報の有無を判定する。
例えば、図2、図3、図4のデータにおいて、ファイル削除処理を実行する場合、削除対象のファイルの格納先ディレクトリ「Dir1」のディレクトリエントリ情報として、まず、図3の「0x1」で始まるクラスタの情報が取得される。この図3の「0x1」で始まるクラスタに対応するFAT情報の項目(図4の「0x1」で始まる項目)のポインタ情報は「0x5」に設定されている。この場合、図3の「0x5」で始まるクラスタが「0x1」で始まるクラスタの後続のクラスタであることが分かる。
再び図5のフローチャートの説明に戻る。
ステップS105で、このディレクトリエントリ情報が後続のクラスタに続きの情報を持つと検索・条件判定部13によって判定された場合、ステップS106で、ディレクトリエントリ書き込み部14が起動され、そのディレクトリエントリ書き込み部14によって、検索が終了したディレクトリエントリ情報(1クラスタ分の情報)が一次記憶から二次記憶(記憶媒体)上に書き込まれる。
そして、続く、ステップS107で、後続のディレクトリエントリ情報(1クラスタ分の情報)が、ディレクトリエントリ情報取得部11によって、二次記憶から一次記憶上に取得され、ステップS103に戻る。ステップS103では、その後続のディレクトリエントリ情報中の先頭位置がファイル検索位置を示す変数p1に設定される。
なお、クラスタ単位で読み書きを行う必要がない記憶媒体を二次記憶を用いている場合、ステップS106の書き込み処理やステップS107の読み込み処理は、クラスタ単位で行わなくてもよい。
ステップS105で、ファイルが見つかったと検索・条件判定部13によって判定された場合、ステップS108で、その見つかったファイルが削除対象のファイルが満たすべき条件を満たしているかが検索・条件判定部13によって判定される。
ステップS108で、その見つかったファイルが削除対象のファイルが満たすべき条件を満たしていないと判定された場合、ステップS109で、残りファイルリストにそのファイル名を格納し、ステップS104に戻り、次の検索位置を変数p1に設定して検索を続行する。残りファイルリストとは、削除処理の結果として、対象ディレクトリに残ったファイルのファイル名一覧のリストである。残りファイルリストに格納されるファイル名は、削除対象のファイルが満たすべき条件を満たさなかったファイルのファイル名、その条件を満たし、かつ、そのファイル属性が「Read Only」や「Write Protect」であるファイルのファイル名、である。この残りファイルリストを基に、削除処理を実行するアプリケーションは、この残りファイルリストからファイル名を1つずつ取り出して表示部上に表示し、ユーザは、そのファイル名を参照して削除するかどうかをそのアプリケーションに対して指示する。
ステップS108で、その見つかったファイルが削除対象のファイルが満たすべき条件を満たしていると判定された場合、ステップS110で、削除マーク付加処理部12によって、その見つかったファイルのファイル名の先頭位置に削除されたことを示す情報(削除マーク)が付加される。この削除マークの付加処理は一次記憶上で行われる。そして、ステップS111で、FAT情報取得部15、解放処理部16、FAT情報書き込み部17によって、削除マークが付加されたファイルに対応する二次記憶中のFATの項目が解放される。そして、ステップS104に戻り、次の検索位置が変数p1に設定され検索が続行される。
ステップS105で、ディレクトリエントリ情報の末端まで達したと検索・条件判定部13によって判定された場合、ステップS112で、ディレクトリエントリ書き込み部14が起動され、そのディレクトリエントリ書き込み部14によって、現在一次記憶上にあるディレクトリエントリ情報が二次記憶(記憶媒体)上に書き込まれる。また、ステップS113で、FAT情報書き込み部17が起動され、そのFAT情報書き込み部17によって、現在一次記憶上にあるFAT情報が二次記憶(記憶媒体)上に書き込まれ、一連の処理を終了する。
図7は、図5の削除マークが付加されたファイルのFAT情報を解放する処理(ステップS111の処理)をより詳細に説明する図である。
まず、ステップS201で、削除マーク付加処理部12から削除マークの付加処理が対象ファイルになされたことを示す情報を制御部18が受け付けると、制御部18は、FAT情報取得部15によって一次記憶上に既に取得されているFAT情報の所定数の項目を検索して、その所定数の項目中に対象ファイルの関連項目があるかを判定する。なお、関連項目とは、次に解放すべき項目である。
対象ファイルのFAT情報が未解放の状態では、関連項目は対象ファイルのFAT情報の先頭の項目になる。この先頭の項目については、その対象ファイルのディレクトリエントリ中に記載された情報から関連項目が分かる。対象ファイルのFAT情報の2番目以降を解放する場合は、1つ前に解放した項目のポインタ情報から関連項目が分かる。
ステップS201で、対象ファイルの関連項目が一次記憶のFAT情報中にないと判定された場合、ステップS202で、制御部18によって、FAT情報書き込み部17が起動され、そのFAT情報書き込み部17によって、現在一次記憶上に存在するFAT情報が二次記憶の対応箇所に書き込まれる。
そして、ステップS203で、制御部18によって、FAT情報取得部15が起動され、そのFAT情報取得部15によって、その対象ファイルの関連項目を含むFAT情報の所定数の項目が取得され、ステップS204に進む。
ステップS201で、対象ファイルの関連項目が一次記憶のFAT情報中にあると判定された場合、または、ステップS203の処理を経て、ステップS204の処理が行われる。ステップS204では、解放処理部16によって、一次記憶上のFAT情報の関連項目が解放される。
続く、ステップS205では、制御部18によって、対象ファイルの関連項目がまだ存在するかが判定される。この際、ステップS204で解放した項目のポインタ情報が参照される。このポインタ情報に「End」が設定されていた場合、図5のステップS104に戻る。一方、このポインタ情報に「End」以外の意味のあるポインタ値が設定されていた場合、ステップS201に戻り、その「End」以外の意味のあるポインタ値から始まる項目が一次記憶のFAT情報中にあるかが制御部18によって判定される。
なお、1つのファイルに対応するFAT情報がFAT上の項目に不連続に分散して存在すると、ステップS202のFAT情報の二次記憶への書き込みや、ステップS203のFAT情報の二次記憶からの読み出しの回数が多くなり、FAT情報の解放処理に時間がかかってしまう。実データ領域に対して予めデフラグメンテーション処理を実施することで、実データ領域の個々のファイルデータに対し、実データ領域上の不連続なクラスタに分散して格納されるデータを連続したクラスタに格納するようにすれば、対応するFAT情報の項目も連続してFAT上に格納される。このようにすれば、FAT情報の二次記憶への読み書きの回数を減らすことができ、FAT情報の解放処理にかかる時間を短縮できる。
例えば、図2、図3、図4のデータにおいて、「File3.dat」のファイルが削除対象のファイルであり、FAT情報取得部15がFAT情報の4項目(図4の各行)を一度に取得する場合を考える。
この場合、ファイル名「File3.dat」に削除マークを付加した後に、その「File3.dat」に対応するFAT情報の項目(図4の「0x6」と「0x7」で始まる項目)を解放することになる。すなわち、図3の「0x5」で始まるクラスタのディレクトリエントリ情報から、「File3.dat」の最初のFAT情報の項目は、FAT情報の「0x6」で始まる項目であることが分かる。また、そのFAT情報の「0x6」で始まる項目のポインタ情報を参照することで、次に解放すべきFAT情報の項目が、FAT情報の「0x7」で始まる項目であることが分かる。
さらに、そのFAT情報の「0x7」で始まる項目のポインタ情報を参照することで、次に解放すべきFAT情報の項目が存在しないことが分かり、「File3.dat」のファイルのFAT情報の解放処理が終了する。
図8Aおよび図8Bを参照して、二次記憶からのFAT情報の取得処理についてさらに説明する。
ここでは、FAT情報取得部15がFAT情報の16項目を一度に取得する場合を考える。図8AのFAT情報では、「0x01」で始まるFATの項目のポインタ情報が「0x11」に設定されている。そこで、記憶媒体上のFATの上半分が一次記憶上に現在取得されている場合、その「0x01」で始まるFATの項目の後続の項目は、現在一次記憶上には存在しないことになる。
この場合、図8Bに示すように、FAT情報書き込み部17によって、その一次記憶上のFAT情報が記憶媒体の対応部分に上書きされ、FAT情報取得部15によって、そのFATの後続の項目を含む、記憶媒体上のFATの下半分が一次記憶上に取得される。そして、以降のFATの項目についての解放処理がなされる。
続いて、本発明の第2実施形態のファイル削除処理について説明する。
ミドルウェア(ファイルシステム)は、ファイルについての基本的な処理のみを機能単位として実装すべきである、というのが従来のファイルシステムについての考えである。そして、それら基本的処理(ミドルウェアの機能単位)を繰り返し用いて達成できる処理、それら基本的処理を組み合わせて達成できる処理、等については、アプリケーションからそのミドルウェアの機能単位を呼び出して実現するものとしている。
条件を指定して実行するファイルの削除処理に、この従来の考えを適用することで、第2実施形態のファイル削除処理のフローチャート、すなわち、図9Aに示すフローチャートが得られる。
図9Aにおいて、1つのファイルの削除処理(1ファイル分のファイル削除処理)は、ファイルシステムが備える機能単位の1つであり、その1ファイル分のファイル削除処理の機能単位が、指定された条件を満たすファイルの削除処理を実行するアプリケーション(図9Aの処理を実行するアプリケーション)から呼び出されている。
図9Bは、この1ファイル分の削除処理のフローチャートである。また、図9Aと図9Bのフローチャートを合わせると、図10のフローチャートが得られる。
図10のフローチャートの処理を以下に説明する。
まず、ステップS301で、削除対象となるファイルの格納先ディレクトリのディレクトリエントリ情報が二次記憶から一次記憶上に取得されるとともに、そのディレクトリエントリ情報が含まれる実データ領域に対応するFAT情報が取得される。そして、取得したディレクトリエントリ情報中の先頭の検索位置が、ファイル検索位置を示す変数p1に設定される。
ステップS302では、取得したディレクトリエントリ情報中のデータが検索され、そのディレクトリエントリ中にファイルが存在するか、存在する場合はそのファイルが上述の削除対象のファイルが満たすべき条件を満たすかが判定される。
ステップS303では、ステップS302の検索結果を得ている。ファイルが見つかった場合、ディレクトリエントリ情報の末端まで達した場合の2通りに、この検索結果は分類される。
ステップS303で、ディレクトリエントリ情報の末端まで達したと判定された場合、一連の処理を終了する。
ステップS303で、ファイルが見つかったと判定された場合、ステップS304で、その見つかったファイルが削除対象のファイルが満たすべき条件を満たしているかが判定される。
ステップS304で、その見つかったファイルが削除対象のファイルが満たすべき条件を満たしていないと判定された場合、ステップS302に戻り、次の検索位置を変数p1に設定して検索を続行する。
ステップS304で、その見つかったファイルが削除対象のファイルが満たすべき条件を満たしていると判定された場合、ステップS305に進む。
図10中、ステップS305〜ステップS311は、ミドルウェアの機能単位が実行する処理である。
この図10のフローチャートには、ステップS302からステップS311に至るディレクトリエントリ情報の検索ループが外側に存在する。そして、その検索ループの中に、ステップS306〜ステップS308に至るディレクトリエントリ情報の検索ループが存在する。ディレクトリエントリ情報の検索ループがこのように二重になっているのは、一見すると不自然な印象を与える。しかし、ファイルシステムについて知識があれば、このような二重ループを用いる処理が不可避であることが分かる。
すなわち、図10のステップS301〜ステップS304の処理は、アプリケーションが実行する処理であるため、これらの処理を実行している間に、ファイルシステムで不良クラスタの発生が検出され、ファイルの二次記憶(記憶媒体)上の位置が書き換えられる場合がある。
このような場合、ステップS302で変数p1に設定した検索位置を用いてファイルを削除しようとしても、その検索位置の情報が、その時点での二次記憶上のディレクトリエントリ情報と異なる可能性がある。このような不都合を回避するには、図10に示すように、ステップS302からステップS311に至るディレクトリエントリ情報の検索ループ内に別の検索ループ(ステップS306〜ステップS308に至る検索ループ)を設け、その内側の検索ループで、最新のディレクトリエントリ情報に基づく検索を行う必要がある。
なお、ステップS305〜ステップS311の処理はミドルウェアの処理であるから、通常、それらステップが実行される間はデバイスドライバに対し排他制御が行われている。すなわち、デバイスドライバは、他タスクからの二次記憶への書き込み要求を受け付けても、ステップS305〜ステップS311のステップが実行される間は、その他タスクからの要求に基づく二次記憶への書き込みを行わない。
以下に、ステップS305〜ステップS311のステップについて説明する。
まず、ステップS305で、削除対象となるファイルの格納先ディレクトリのディレクトリエントリ情報が二次記憶から一次記憶上に再度取得されるとともに、そのディレクトリエントリ情報が含まれる実データ領域に対応するFAT情報が取得される。そして、取得したディレクトリエントリ情報中の先頭の検索位置が、ファイル検索位置を示す変数p2に設定される。
ステップS306では、取得したディレクトリエントリ情報中のデータが検索され、そのディレクトリエントリ中にファイルが存在するか、存在する場合はそのファイルが上述の削除対象のファイルが満たすべき条件を満たすかが判定される。
ステップS307では、ステップS306の検索結果を得ている。ファイルが見つかった場合、ディレクトリエントリ情報の末端まで達した場合の2通りに、この検索結果は分類される。
ステップS307で、ディレクトリエントリ情報の末端まで達したと判定された場合、一連の処理がエラー終了する。
ステップS307で、ファイルが見つかったと判定された場合、ステップS308で、その見つかったファイルが削除対象のファイルが満たすべき条件を満たしているかが判定される。
ステップS308で、その見つかったファイルが削除対象のファイルが満たすべき条件を満たしていないと判定された場合、ステップS306に戻り、次の検索位置を変数p2に設定して検索を続行する。
ステップS308で、その見つかったファイルが削除対象のファイルが満たすべき条件を満たしていると判定された場合、ステップS309で、そのファイルの属性が判定される。すなわち、そのファイルが「Read Only」や「Write Protect」の属性を持つと判定された場合、ステップS306に戻り、次の検索位置を変数p2に設定して検索を続行する。
一方、ステップS309で、その見つかったファイルが「Read Only」や「Write Protect」の属性を持たないと判定された場合、ステップS310で、その見つかったファイルのファイル名の先頭位置に削除されたことを示す情報(削除マーク)が付加され、二次記憶にその情報が書き込まれる。
また、ステップS311で、削除マークが付加されたファイルに対応する二次記憶中のFATの項目が解放される。そして、ステップS302に戻る。
第2実施形態の条件を指定して行うファイル削除処理と、第1実施形態の条件を指定して行うファイル削除処理とを以下に比較する。
まず、第1実施形態の条件を指定して行うファイル削除処理は、ファイルシステム(ミドルウェア)上の1機能単位である。したがって、その実行中に、デバイスドライバに対して排他制御をかけることが容易に行える。この結果、第1実施形態の処理では、図10のフローチャートに見られるようなディレクトリエントリ情報の検索ループが二重化することを避けることが可能となり、ファイル削除処理の一部である検索時間の大幅な短縮が第2実施形態に対して可能となる。
なお、この検索時間は、第2実施形態では、検索対象となるディレクトリエントリ内のファイル数の二乗に比例するのに対し、第1実施形態では、ディレクトリエントリ内のファイル数に比例する。
第2実施形態と第1実施形態とのシミュレーション結果が図11Aに示されている。
このシミュレーションにおいては、削除対象となるファイル数が20,000個に設定されている。第2実施形態では、検索ループのループ回数がファイル数の二乗の200,000,000回、処理時間が30分である。これに対し、第1実施形態では、検索ループのループ回数が20,000回、処理時間が1秒である。すなわち、第1実施形態のファイル削除処理は、第2実施形態のファイル削除処理と比較して、10,000倍程度の高速化が、そのファイル削除処理中のファイル検索部分で実現できる。
次に、データの書き込みや読み出しがクラスタ単位で行われることが規格上定められている記憶媒体、例えば、フラッシュメモリに、削除対象となるファイルの格納先ディレクトリが存在する場合を考える。
第1実施形態のファイル削除処理では、一次記憶上に取得したディレクトリエントリ情報(1クラスタ分)について、削除マークの付加処理が完了したタイミング(図5のステップS106)と、すべてのディレクトリエントリ情報について、削除マークの付加処理が完了したタイミング(図5のステップS112)とでしか、二次記憶上へのディレクトリエントリ情報の書き込みは行わない。
これに対し、第2実施形態のファイル削除処理では、図10のステップS302からステップS311に至るディレクトリエントリ情報の検索ループ上で、毎回、二次記憶上へのディレクトリエントリ情報の書き込みを実行している(図10のステップS310)。
第1実施形態、第2実施形態のいずれも、1クラスタ分のデータが1回の書き込みで記憶媒体に書き込まれることを考慮すると、書き込み回数が少ない分、第1実施形態の方が第2実施形態より削除処理にかかる時間が短縮される。
第2実施形態と第1実施形態とのシミュレーション結果が図11Bに示されている。
このシミュレーションにおいては、削除対象となるファイル数が20,000個、1クラスタのサイズは16Kbyteに設定されている。また、規格上、ディレクトリエントリ中の1ファイル分の情報の格納スペースは32byteに定められている。すなわち、1クラスタ中には、約500個のファイルのエントリ情報を格納できる。よって、20,000個のファイルが削除対象のファイルの格納先ディレクトリにあれば、そのディレクトリのディレクトリエントリ情報は、40個分のクラスタに格納される。
第2実施形態では、ファイル数と等しい数の削除処理が実行される。すなわち、削除されたことを示す情報の二次記憶への書き込み処理が20,000回実行される。この書き込みに要する時間は3分である。これに対し、第1実施形態では、ディレクトリエントリ情報が格納されるクラスタを切り替えるタイミングでしか二次記憶への書き込みを行わないので、その書き込み回数は、ディレクトリエントリ情報を格納するクラスタ数に一致し、40回となる。すなわち、第1実施形態のファイル削除処理は、第2実施形態のファイル削除処理と比較して、500倍程度の高速化が、そのファイル削除処理中のファイル情報の二次記憶への反映部分で実現できる。
図12は、本発明の第3実施形態のファイル・オープン処理部の構成を示すブロック図である。
図12に示すファイル・オープン処理部はミドルウェアの1つであり、第1のアプリケーションからの所定の条件を満たすファイルのプレビュー指示に対し、そのプレビューの条件を満たすファイルのリストであるオープンファイルリストを第2のアプリケーションに出力している。
図12において、ファイル・オープン処理部20は、処理対象(例えば、プレビュー対象)となるファイルの格納先ディレクトリのディレクトリエントリ情報を、二次記憶中の実データ領域から一次記憶上に取得するディレクトリエントリ取得部21、取得したディレクトリエントリ情報内のデータを検索し、そのディレクトリエントリ中にファイルが存在するか、存在する場合はそのファイルが上記所定の条件を満たすかを判定する検索・条件判定部22、取得したディレクトリエントリ内のファイルが、上記所定の条件を満たし処理対象となった場合に、その取得したディレクトリエントリ内のファイルのファイルサイズ、ファイルポインタを一次記憶上に読み込む参照情報読み込み部23、読み込まれたファイルサイズ、ファイルポインタに対して、オープン番号を割り当てるオープン番号割り当て部24、上記ファイルサイズ、ファイルポインタが割り当てられたオープン番号を一次記憶上のオープンファイルリストに追加するオープン番号追加部25、上記ディレクトリエントリ取得部21、検索・条件判定部22、参照情報読み込み部23、オープン番号割り当て部24、オープン番号追加部25を制御するとともに、上記取得したディレクトリエントリ内のすべてのファイルに対して、上記参照情報読み込みステップ、オープン番号割り当てステップ、オープン番号追加ステップが実行された場合に、例えば、そのオープンファイルリストの先頭を指すポインタ情報を呼び出し元のアプリケーションに出力する制御部26を備える。なお、第3実施形態では、その呼び出し元のアプリケーションは、生成されたオープンファイルリストを基に、ファイルをオープンし表示部上に表示する処理を行う。
図13は、ファイル・プレビュー処理のフローチャートである。このファイル・プレビュー処理は、ファイル・プレビュー処理の前処理としてのファイル・オープン処理と、その前処理の結果を基に実行されるファイル・プレビュー処理に分けられる。ファイル・オープン処理は、図12のファイル・オープン処理部20によって行われる。また、ファイル・プレビュー処理は、ファイル・オープン処理の結果として出力されたオープンファイルリストを基に、アプリケーションによって実行される。
ユーザがアプリケーションを介して指定した条件(プレビュー対象のファイルが満たすべき条件)をファイル・オープン処理部20が受け付けることで一連の処理が始まる。
まず、ステップS401で、プレビュー対象となるファイルの格納先ディレクトリのディレクトリエントリ情報が、ディレクトリエントリ情報取得部21によって、二次記憶から一次記憶上に取得される。
そして、ステップS402で、検索・条件判定部22によって、取得したディレクトリエントリ情報中の先頭の検索位置が、ファイル検索位置を示す変数p1に設定される。
ステップS403では、検索・条件判定部22によって、取得したディレクトリエントリ情報中のデータが検索され、そのディレクトリエントリ中にファイルが存在するか、存在する場合はそのファイルが上述の削除対象のファイルが満たすべき条件を満たすかが判定される。
ステップS404では、ステップS403の検索・条件判定部22による検索結果を得ている。取得したディレクトリエントリ情報だけでは、対象とするディレクトリのディレクトリエントリ情報が完結せず、ディレクトリエントリ情報に続きがある場合、ファイルが見つかった場合、ディレクトリエントリ情報の末端まで達した場合、の3通りに、この検索結果は分類される。
ステップS404で、ディレクトリエントリ情報に続きがあると検索・条件判定部22によって判定された場合、ステップS405で、ディレクトリエントリ取得部21によって、後続のディレクトリエントリ情報が、二次記憶から一次記憶上に上書きされ、ステップS402に戻る。ステップS402では、その後続のディレクトリエントリ情報中の先頭の検索位置がファイル検索位置を示す変数p1に設定される。
ステップS404で、ファイルが見つかったと検索・条件判定部22によって判定された場合、ステップS406で、その見つかったファイルがプレビュー対象のファイルが満たすべき条件を満たしているかが検索・条件判定部22によって判定される。
ステップS406で、その見つかったファイルがプレビュー対象のファイルが満たすべき条件を満たしていないと判定された場合、ステップS403に戻り、次の検索位置を変数p1に設定して検索を続行する。
ステップS406で、その見つかったファイルがプレビュー対象のファイルが満たすべき条件を満たしていると判定された場合、ステップS407で、参照情報読み込み部23によって、その見つかったファイルのファイルサイズ、ファイルポインタが一次記憶上に読み込まれる。ここで、ファイルポインタとは、ファイルについての各種情報が設定される構造体である。この構造体には、ファイルのオープン時の読み出し位置、そのファイルのデータが格納された実データ領域中の位置、等の情報が設定される。
そして、ステップS408で、オープン番号割り当て部24によって、読み込まれたファイルサイズ、ファイルポインタに対して、オープン番号が割り当てられるとともに、オープン番号追加部25によって、そのファイルサイズ、ファイルポインタが割り当てられたオープン番号が一次記憶上のオープンファイルリストに追加される。
なお、オープン番号には、例えばファイルポインタの先頭を示すポインタ情報が設定されている。そして、ステップS403に戻り、次の検索位置を変数p1に設定して検索を続行する。
ステップS404で、ディレクトリエントリ情報の末端まで達したと検索・条件判定部22によって判定された場合、ファイルシステム(ミドルウェア)の1機能単位としてのファイル・オープン処理(所定の条件を満たすファイルのオープンファイルリストへの登録処理)が終了する。この際、この機能単位から呼び出し元のアプリケーションに、そのオープンファイルリストのポインタ情報が出力される。
このポインタ情報(オープンファイルリスト)を受け取ったアプリケーションでは、そのオープンファイルリストを基に、ファイルのプレビュー処理(ステップS409〜S412の処理)を実行する。
まず、ステップS409で、検索位置がオープンファイルリストの先頭の位置に設定され、その検索位置にオープン番号が存在するかが判定される。
ステップS409で、設定された位置にオープン番号がない場合、一連の処理を終了する。ステップS409で、設定された位置にオープン番号がある場合、ステップS410で、そのオープン番号をオープンファイルリストから取り出し、変数fnoに設定する。
そして、ステップS411で、その変数fnoに設定された番号で、記憶媒体からファイルデータを読み出し、ステップS412で、その読み出したファイルデータを表示部に送ることで、その表示部上にファイルデータ、例えば、画像データを表示する。そして、その後、ステップS409に戻る。
ステップS409では、検索位置がオープンファイルリストの次の位置に設定され、その検索位置にオープン番号が存在するかが判定される。
続いて、本発明の第4実施形態のファイル・プレビュー処理(ファイル・オープン処理)について説明する。
ミドルウェア(ファイルシステム)は、ファイルについての基本的な処理のみを機能単位として実装すべきである、というのが従来のファイルシステムについての考えである。そして、それら基本的処理(ミドルウェアの機能単位)を繰り返し用いて達成できる処理、それら基本的処理を組み合わせて達成できる処理、等については、アプリケーションからそのミドルウェアの機能単位を呼び出して実現するものとしている。
条件を指定して実行するファイルのプレビュー処理に、この従来の考えを適用することで、第4実施形態のファイル・プレビュー処理のフローチャート、すなわち、図14Aに示すフローチャートが得られる。
図14Aにおいて、1つのファイルのオープン処理(1ファイル分のファイル・オープン処理)は、ファイルシステムが備える機能単位の1つであり、その1ファイル分のファイル・オープン処理の機能単位が、指定された条件を満たすファイルのプレビュー処理を実行するアプリケーション(図14Aの処理を実行するアプリケーション)から呼び出されている。
図14Bは、この1ファイル分のファイル・オープン処理のフローチャートである。また、図14Aと図14Bのフローチャートを合わせると、図15のフローチャートが得られる。
図15のフローチャートの処理を以下に説明する。
まず、ステップS501で、プレビュー対象となるファイルの格納先ディレクトリのディレクトリエントリ情報が二次記憶から一次記憶上に取得される。そして、取得したディレクトリエントリ情報中の先頭の検索位置が、ファイル検索位置を示す変数p1に設定される。
ステップS502では、取得したディレクトリエントリ情報中のデータが検索され、そのディレクトリエントリ中にファイルが存在するか、存在する場合はそのファイルが上述のプレビュー対象のファイルが満たすべき条件を満たすかが判定される。
ステップS503では、ステップS502の検索結果を得ている。ファイルが見つかった場合、ディレクトリエントリ情報の末端まで達した場合の2通りに、この検索結果は分類される。
ステップS503で、ディレクトリエントリ情報の末端まで達したと判定された場合、一連の処理を終了する。
ステップS503で、ファイルが見つかったと判定された場合、ステップS504で、その見つかったファイルがプレビュー対象のファイルが満たすべき条件を満たしているかが判定される。
ステップS504で、その見つかったファイルが削除対象のファイルが満たすべき条件を満たしていないと判定された場合、ステップS502に戻り、次の検索位置を変数p1に設定して検索を続行する。
ステップS504で、その見つかったファイルが削除対象のファイルが満たすべき条件を満たしていると判定された場合、ステップS505に進む。
図15中、ステップS505〜ステップS510は、ミドルウェアの機能単位が実行する処理である。
この図15のフローチャートには、ステップS502からステップS512に至るディレクトリエントリ情報の検索ループが外側に存在する。そして、その検索ループの中に、ステップS506〜ステップS508に至るディレクトリエントリ情報の検索ループが存在する。ディレクトリエントリ情報の検索ループがこのように二重になっているのは、第2実施形態で述べたように、図15のステップS501〜ステップS504の処理の実行中に、ファイルの二次記憶(記憶媒体)上の位置が書き換えられる場合に対処するためである。すなわち、図15に示すように、ステップS506〜ステップS508に至る検索ループにおいて、最新のディレクトリエントリ情報を取得して検索を行うようにすればよい。
なお、ステップS505〜ステップS510の処理はミドルウェアの処理であるから、通常、それらステップが実行される間はデバイスドライバに対し排他制御が行われている。すなわち、デバイスドライバは、他タスクからの二次記憶への書き込み要求を受け付けても、ステップS505〜ステップS510のステップが実行される間は、その他タスクからの要求に基づく二次記憶への書き込みを行わない。
以下に、ステップS505〜ステップS510のステップについて説明する。
まず、ステップS505で、プレビュー対象となるファイルの格納先ディレクトリのディレクトリエントリ情報が二次記憶から一次記憶上に取得される。そして、取得したディレクトリエントリ情報中の先頭の検索位置が、ファイル検索位置を示す変数p2に設定される。
ステップS506では、取得したディレクトリエントリ情報中のデータが検索され、そのディレクトリエントリ中にファイルが存在するか、存在する場合はそのファイルが上述のプレビュー対象のファイルが満たすべき条件を満たすかが判定される。
ステップS507では、ステップS506の検索結果を得ている。ファイルが見つかった場合、ディレクトリエントリ情報の末端まで達した場合の2通りに、この検索結果は分類される。
ステップS507で、ディレクトリエントリ情報の末端まで達したと判定された場合、一連の処理がエラー終了する。
ステップS507で、ファイルが見つかったと判定された場合、ステップS508で、その見つかったファイルがプレビュー対象のファイルが満たすべき条件を満たしているかが判定される。
ステップS508で、その見つかったファイルがプレビュー対象のファイルが満たすべき条件を満たしていないと判定された場合、ステップS506に戻り、次の検索位置を変数p2に設定して検索を続行する。
ステップS508で、その見つかったファイルがプレビュー対象のファイルが満たすべき条件を満たしていると判定された場合、ステップS509で、その見つかったファイルのファイルサイズ、ファイルポインタが一次記憶上に読み込まれる。そして、ステップS510で、読み込まれたファイルサイズ、ファイルポインタに対して、オープン番号が割り当てられ、呼び出し元のアプリケーションに制御を戻す。
ファイルシステムの1機能単位(ステップS505〜S510)から制御を渡されたアプリケーションでは、ステップS511で、ステップS510で割り当てたオープン番号を変数fnoに設定し、その変数fnoに設定された番号で、記憶媒体からファイルデータを読み出す。そして、ステップS512で、その読み出したファイルデータを表示部に送ることで、その表示部上にファイルデータ、例えば、画像データを表示する。そして、その後、ステップS502に戻る。
ステップS502では、検索位置が取得したディレクトリエントリ情報の次の位置に設定され、その取得したディレクトリエントリ情報中のデータの検索が実行される。
第4実施形態の条件を指定して行うファイル・プレビュー処理と、第3実施形態の条件を指定して行うファイル・プレビュー処理とを以下に比較する。
まず、第3実施形態の条件を指定して行うファイル・プレビュー処理中のオープンファイルリスト生成処理(ファイル・オープン処理)は、ファイルシステム(ミドルウェア)上の1機能単位である。したがって、その実行中に、デバイスドライバに対して排他制御をかけることが容易に行える。この結果、第3実施形態の処理では、図15のフローチャートに見られるようなディレクトリエントリ情報の検索ループが二重化することを避けることが可能となり、ファイル・プレビュー処理の一部である検索時間の大幅な短縮が可能となる。
なお、この検索時間は、第4実施形態では、検索対象となるディレクトリエントリ内のファイル数の二乗に比例するのに対し、第3実施形態では、ディレクトリエントリ内のファイル数に比例する。よって、第1実施形態と第2実施形態を比較した、図11のファイル検索時間のシミュレーション結果が第3実施形態と第4実施形態の間でも同様に成立する。
なお、第3実施形態および第4実施形態は、条件を満たすファイルをオープンして行う任意のファイル処理に適用可能である。このようなファイル処理としては、ファイル・プレビュー処理、オープンした条件を満たすファイルへのデータ書き込み処理、オープンした条件を満たすファイルからのデータ読み出し処理、等が考えられる。
本発明の各実施形態のファイル削除処理部、オープンしたファイルを用いるファイル処理の前処理部(ファイル・オープン処理部)はソフトウェアとして構成することが可能である。図16は、本発明の各実施形態をプログラムで実現する場合のハードウェア環境を示す図である。
図16では、ハードウェアとして画像情報、音声情報、等の各種情報を扱う装置、または、それら情報のいずれかを扱う装置が想定されている。例えば、デジタルカメラの場合、音声入力装置102を備えないこともある。また、ボイスレコーダの場合、画像入力装置104を備えないこともある。また、パーソナル・コンピュータ、携帯電話、等は、音声入力装置102、画像入力装置104の双方を備えることが多い。すなわち、対象とするハードウェアにより図16の一部のユニットを備えない場合がある。
図16において、ハードウェアとしてのコンピュータは、CPU91、ROM92、RAM(一次記憶)93、メディアアクセス装置95、入力部99、条件表示部101、音声入力装置102、画像入力装置104、出力装置106を備え、それらがバス97を介して接続されている。
図16において、CPU91は、コンピュータ全体を制御する。ファイル削除処理部、ファイル処理の前処理部等のプログラムは、RAM93上で実行される。
入力部99を介して、ユーザは、本発明のファイル削除処理やファイルをオープンして行う処理に対する条件等を指定する。
削除やオープンの対象となるファイルが満たすべき条件としては、例えば以下のような条件が指定可能である。
1.ファイル番号(開始番号と終了番号で対象ファイルを指定)
2.拡張子
3.ファイル属性(例えば、読み取り専用か否か)
4.タイムスタンプ(更新日時の開始と終了で対象ファイルを指定)
デジタルカメラで用いられているDCF規格では、ファイル名を番号とすることが規定されているので、条件1.のようなファイル番号の範囲による対象ファイルの指定が可能となる。なお、DCFとは、Design rule for Camera File systemの略称であり、DCF規格とは、日本電子工業振興協会(JEIDA)が制定した、デジタルカメラ用画像フォーマットである。ユーザは入力部99を介して行った条件の指定結果を条件表示部101で確認することができる。
音声情報は、音声入力装置102を介してコンピュータ内部に取り込まれる。この音声ファイルを再生し、出力装置106を介して出力することもできる。画像情報は、画像入力装置104を介してコンピュータ内部に取り込まれる。この画像ファイルは出力装置106を介して出力することもできる。二次記憶中に格納された画像情報、音声情報、等の各種情報を、メディアアクセス装置95を介してコンピュータ内部に取り込むこともできる。メディアアクセス装置95を介して取り込んだ情報を出力装置106を介して出力することができる。
処理対象のファイル情報は二次記憶に格納される。そのファイル情報は、ファイル処理の際に、メディアアクセス装置95を介してRAM93に読み出される。
図16とは別のハードウェア環境において、本発明の各実施形態のプログラムが実行されてもよい。この別のハードウェア(ファイル処理装置)では、決められた処理のみを実行するプロセッサと、RAMと、各実施形態のプログラムが格納されたROMと、処理対象のファイルを特定する条件等を入力する入力部と、二次記憶(記憶媒体)にアクセスする際に用いるメディアアクセス装置がバスに接続されている。処理対象のファイル情報は二次記憶に格納される。そのファイル情報は、ファイル処理の際に、メディアアクセス装置を介してRAMに読み出される。
図17は、記憶媒体例を示す図である。
本発明のファイル削除処理、ファイル・オープン処理は、デジタルカメラ、ボイスレコーダ、パーソナル・コンピュータ、携帯電話、等の画像、音声を含む各種情報を扱う装置、または、それら情報のいずれかを扱う装置114によって実現することが可能である。この場合、装置114の記憶装置112から本発明の処理のためのプログラムなどを装置114のメモリにロードして実行することも、可搬型記憶媒体113から本発明の処理のためのプログラムなどを装置114のメモリにロードして実行することも、また、外部記憶装置111側からネットワークを介して本発明の処理のためのプログラムなどを装置114のメモリにロードして実行することも可能である。
本発明は下記構成でもよい。
(付記1) アプリケーションからの所定の条件を満たすファイルの削除指示に対応する指示をデバイスドライバ側へ出力する処理をコンピュータが実行するファイル削除方法において、
削除対象となるファイルの格納先ディレクトリのディレクトリエントリ情報を、二次記憶中の実データ領域から一次記憶上に1クラスタ分、取得するディレクトリエントリ取得ステップと、
取得したディレクトリエントリ内のファイルが、前記所定の条件を満たし削除対象となった場合に、その取得したディレクトリエントリ内のファイルに対して削除マークを前記一次記憶上で付加する削除マーク付加処理ステップと、
削除マークが付加されたファイルに対応する二次記憶中のFATに保持されるFAT情報を解放する解放処理ステップと、
前記取得したディレクトリエントリ内のすべてのファイルに対して、前記削除マーク付加処理ステップが実行された場合に、その一次記憶上のディレクトリエントリの内容を二次記憶中の実データ領域の対応部分に書き込むディレクトリエントリ書き込みステップと、を備えることを特徴とするファイル削除方法。
(付記2) 前記ディレクトリエントリ取得ステップにおいて取得したディレクトリエントリ情報に続きが存在する場合に、前記ディレクトリエントリ取得ステップを再起動して、その後続のディレクトリエントリ情報を1クラスタ分、取得するとともに、
その後続のディレクトリエントリ情報に対して、前記削除マーク付加処理ステップ、解放処理ステップ、ディレクトリエントリ書き込みステップが起動されることを特徴とする付記1記載のファイル削除方法。
(付記3) 二次記憶中のFATに保持されるFAT情報の項目の所定数を一次記憶上に取得するFAT情報取得ステップ、をさらに備え、
前記解放処理ステップは、削除マークが付加されたファイルに対応するFATの各項目について、
前記一次記憶に取得したFAT情報中に解放すべき項目が含まれている場合に、その一次記憶に取得したFAT情報中でその項目を解放し、かつ、
取得したFAT情報中に解放すべき項目が含まれていない場合に、その取得したFAT情報を二次記憶中のFATの対応部分に書き込むとともに、前記FAT情報取得ステップを再起動して、その解放すべき項目を含むFAT情報の項目の所定数を一次記憶に取得し、その一次記憶に取得したFAT情報中でその項目を解放することを特徴とする付記1記載のファイル削除方法。
(付記4) 前記コンピュータは、デジタルカメラに内蔵されることを特徴とする付記1記載のファイル削除方法。
(付記5) アプリケーションからの所定の条件を満たすファイルの削除指示に対応する指示をデバイスドライバ側へ出力する処理をファイル処理装置が実行するファイル削除方法において、
削除対象となるファイルの格納先ディレクトリのディレクトリエントリ情報を、二次記憶中の実データ領域から一次記憶上に1クラスタ分、取得するディレクトリエントリ取得ステップと、
取得したディレクトリエントリ内のファイルが、前記所定の条件を満たし削除対象となった場合に、その取得したディレクトリエントリ内のファイルに対して削除マークを前記一次記憶上で付加する削除マーク付加処理ステップと、
削除マークが付加されたファイルに対応する二次記憶中のFATに保持されるFAT情報を解放する解放処理ステップと、
前記取得したディレクトリエントリ内のすべてのファイルに対して、前記削除マーク付加処理ステップが実行された場合に、その一次記憶上のディレクトリエントリの内容を二次記憶中の実データ領域の対応部分に書き込むディレクトリエントリ書き込みステップと、を備えることを特徴とするファイル削除方法。
(付記6) 前記ファイル処理装置は、デジタルカメラに内蔵されることを特徴とする付記5記載のファイル削除方法。
(付記7) アプリケーションからの所定の条件を満たすファイルの削除指示に対応する指示をデバイスドライバ側へ出力する処理をコンピュータが実行するファイル削除方法において、
削除対象となるファイルの格納先ディレクトリのディレクトリエントリ情報を、二次記憶中の実データ領域から一次記憶上に取得するディレクトリエントリ取得ステップと、
取得したディレクトリエントリ内のファイルが、前記所定の条件を満たし削除対象となった場合に、その取得したディレクトリエントリ内のファイルに対して削除マークを前記一次記憶上で付加する削除マーク付加処理ステップと、
前記削除マーク付加処理ステップの処理結果を二次記憶中の実データ領域の対応部分に書き込むディレクトリエントリ書き込みステップと、
削除マークが付加されたファイルに対応する二次記憶中のFATに保持されるFAT情報を解放する解放処理ステップを備えることを特徴とするファイル削除方法。
(付記8) 二次記憶中のFATに保持されるFAT情報の項目の所定数を一次記憶上に取得するFAT情報取得ステップ、をさらに備え、
前記解放処理ステップは、削除マークが付加されたファイルに対応するFATの各項目について、
前記一次記憶に取得したFAT情報中に解放すべき項目が含まれている場合に、その一次記憶に取得したFAT情報中でその項目を解放し、かつ、
取得したFAT情報中に解放すべき項目が含まれていない場合に、その取得したFAT情報を二次記憶中のFATの対応部分に書き込むとともに、前記FAT情報取得ステップを再起動して、その解放すべき項目を含むFAT情報の項目の所定数を一次記憶に取得し、その一次記憶に取得したFAT情報中でその項目を解放することを特徴とする付記7記載のファイル削除方法。
(付記9) 前記コンピュータは、デジタルカメラに内蔵されることを特徴とする付記7記載のファイル削除方法。
(付記10) アプリケーションからの所定の条件を満たすファイルの削除指示に対応する指示をデバイスドライバ側へ出力する処理をファイル処理装置が実行するファイル削除方法において、
削除対象となるファイルの格納先ディレクトリのディレクトリエントリ情報を、二次記憶中の実データ領域から一次記憶上に取得するディレクトリエントリ取得ステップと、
取得したディレクトリエントリ内のファイルが、前記所定の条件を満たし削除対象となった場合に、その取得したディレクトリエントリ内のファイルに対して削除マークを前記一次記憶上で付加する削除マーク付加処理ステップと、
前記削除マーク付加処理ステップの処理結果を二次記憶中の実データ領域の対応部分に書き込むディレクトリエントリ書き込みステップと、
削除マークが付加されたファイルに対応する二次記憶中のFATに保持されるFAT情報を解放する解放処理ステップを備えることを特徴とするファイル削除方法。
(付記11) 前記ファイル処理装置は、デジタルカメラに内蔵されることを特徴とする付記10記載のファイル削除方法。
(付記12) 第1のアプリケーションからの所定の条件を満たすファイルへの所定の処理の実施指示を基に、前記所定の処理を行う第2のアプリケーションにオープンしたファイルの情報を出力する処理をコンピュータが実行するファイル・オープン方法において、
処理対象となるファイルの格納先ディレクトリのディレクトリエントリ情報を、二次記憶中の実データ領域から一次記憶上に取得するディレクトリエントリ取得ステップと、
取得したディレクトリエントリ内のファイルが、前記所定の条件を満たし処理対象となった場合に、その取得したディレクトリエントリ内のファイルのファイルサイズ、ファイルポインタを一次記憶上に読み込む参照情報読み込みステップと、
読み込まれたファイルサイズ、ファイルポインタに対して、オープン番号を割り当てるオープン番号割り当てステップと、
前記ファイルサイズ、ファイルポインタが割り当てられたオープン番号を一次記憶上のオープンファイルリストに追加するオープン番号追加ステップと、
前記取得したディレクトリエントリ内のすべてのファイルに対して、前記参照情報読み込みステップ、オープン番号割り当てステップ、オープン番号追加ステップが実行された場合に、そのオープンファイルリストを、前記第2のアプリケーションに出力する処理結果出力ステップを備えることを特徴とするファイル・オープン方法。
(付記13) 前記コンピュータは、デジタルカメラに内蔵されることを特徴とする付記12記載のファイル・オープン方法。
(付記14) 第1のアプリケーションからの所定の条件を満たすファイルへの所定の処理の実施指示を基に、前記所定の処理を行う第2のアプリケーションにオープンしたファイルの情報を出力する処理をファイル処理装置が実行するファイル・オープン方法において、
処理対象となるファイルの格納先ディレクトリのディレクトリエントリ情報を、二次記憶中の実データ領域から一次記憶上に取得するディレクトリエントリ取得ステップと、
取得したディレクトリエントリ内のファイルが、前記所定の条件を満たし処理対象となった場合に、その取得したディレクトリエントリ内のファイルのファイルサイズ、ファイルポインタを一次記憶上に読み込む参照情報読み込みステップと、
読み込まれたファイルサイズ、ファイルポインタに対して、オープン番号を割り当てるオープン番号割り当てステップと、
前記ファイルサイズ、ファイルポインタが割り当てられたオープン番号を一次記憶上のオープンファイルリストに追加するオープン番号追加ステップと、
前記取得したディレクトリエントリ内のすべてのファイルに対して、前記参照情報読み込みステップ、オープン番号割り当てステップ、オープン番号追加ステップが実行された場合に、そのオープンファイルリストを、前記第2のアプリケーションに出力する処理結果出力ステップを備えることを特徴とするファイル・オープン方法。
(付記15) 前記ファイル処理装置は、デジタルカメラに内蔵されることを特徴とする付記14記載のファイル・オープン方法。
(付記16) アプリケーションからの所定の条件を満たすファイルの削除指示に対応する指示をデバイスドライバ側へ出力する処理をコンピュータに実行させるファイル削除プログラムにおいて、
削除対象となるファイルの格納先ディレクトリのディレクトリエントリ情報を、二次記憶中の実データ領域から一次記憶上に1クラスタ分、取得するディレクトリエントリ取得ステップと、
取得したディレクトリエントリ内のファイルが、前記所定の条件を満たし削除対象となった場合に、その取得したディレクトリエントリ内のファイルに対して削除マークを前記一次記憶上で付加する削除マーク付加処理ステップと、
削除マークが付加されたファイルに対応する二次記憶中のFATに保持されるFAT情報を解放する解放処理ステップと、
前記取得したディレクトリエントリ内のすべてのファイルに対して、前記削除マーク付加処理ステップが実行された場合に、その一次記憶上のディレクトリエントリの内容を二次記憶中の実データ領域の対応部分に書き込むディレクトリエントリ書き込みステップと、を前記コンピュータに実行させることを特徴とするファイル削除プログラム。
(付記17) 前記ディレクトリエントリ取得ステップにおいて取得したディレクトリエントリ情報に続きが存在する場合に、前記ディレクトリエントリ取得ステップを再起動して、その後続のディレクトリエントリ情報を1クラスタ分、取得するとともに、
その後続のディレクトリエントリ情報に対して、前記削除マーク付加処理ステップ、解放処理ステップ、ディレクトリエントリ書き込みステップが起動されることを特徴とする付記16記載のファイル削除プログラム。
(付記18) 二次記憶中のFATに保持されるFAT情報の項目の所定数を一次記憶上に取得するFAT情報取得ステップ、をさらに備え、
前記解放処理ステップは、削除マークが付加されたファイルに対応するFATの各項目について、
前記一次記憶に取得したFAT情報中に解放すべき項目が含まれている場合に、その一次記憶に取得したFAT情報中でその項目を解放し、かつ、
取得したFAT情報中に解放すべき項目が含まれていない場合に、その取得したFAT情報を二次記憶中のFATの対応部分に書き込むとともに、前記FAT情報取得ステップを再起動して、その解放すべき項目を含むFAT情報の項目の所定数を一次記憶に取得し、その一次記憶に取得したFAT情報中でその項目を解放することを特徴とする付記16記載のファイル削除プログラム。
(付記19) 前記コンピュータは、デジタルカメラに内蔵されることを特徴とする付記16記載のファイル削除プログラム。
(付記20) アプリケーションからの所定の条件を満たすファイルの削除指示に対応する指示をデバイスドライバ側へ出力する処理をファイル処理装置に実行させるファイル削除プログラムにおいて、
削除対象となるファイルの格納先ディレクトリのディレクトリエントリ情報を、二次記憶中の実データ領域から一次記憶上に1クラスタ分、取得するディレクトリエントリ取得ステップと、
取得したディレクトリエントリ内のファイルが、前記所定の条件を満たし削除対象となった場合に、その取得したディレクトリエントリ内のファイルに対して削除マークを前記一次記憶上で付加する削除マーク付加処理ステップと、
削除マークが付加されたファイルに対応する二次記憶中のFATに保持されるFAT情報を解放する解放処理ステップと、
前記取得したディレクトリエントリ内のすべてのファイルに対して、前記削除マーク付加処理ステップが実行された場合に、その一次記憶上のディレクトリエントリの内容を二次記憶中の実データ領域の対応部分に書き込むディレクトリエントリ書き込みステップと、を前記ファイル処理装置に実行させることを特徴とするファイル削除プログラム。
(付記21) 前記ファイル処理装置は、デジタルカメラに内蔵されることを特徴とする付記20記載のファイル削除プログラム。
(付記22) アプリケーションからの所定の条件を満たすファイルの削除指示に対応する指示をデバイスドライバ側へ出力する処理をコンピュータに実行させるファイル削除プログラムにおいて、
削除対象となるファイルの格納先ディレクトリのディレクトリエントリ情報を、二次記憶中の実データ領域から一次記憶上に取得するディレクトリエントリ取得ステップと、
取得したディレクトリエントリ内のファイルが、前記所定の条件を満たし削除対象となった場合に、その取得したディレクトリエントリ内のファイルに対して削除マークを前記一次記憶上で付加する削除マーク付加処理ステップと、
前記削除マーク付加処理ステップの処理結果を二次記憶中の実データ領域の対応部分に書き込むディレクトリエントリ書き込みステップと、
削除マークが付加されたファイルに対応する二次記憶中のFATに保持されるFAT情報を解放する解放処理ステップを前記コンピュータに実行させることを特徴とするファイル削除プログラム。
(付記23) 二次記憶中のFATに保持されるFAT情報の項目の所定数を一次記憶上に取得するFAT情報取得ステップ、をさらに備え、
前記解放処理ステップは、削除マークが付加されたファイルに対応するFATの各項目について、
前記一次記憶に取得したFAT情報中に解放すべき項目が含まれている場合に、その一次記憶に取得したFAT情報中でその項目を解放し、かつ、
取得したFAT情報中に解放すべき項目が含まれていない場合に、その取得したFAT情報を二次記憶中のFATの対応部分に書き込むとともに、前記FAT情報取得ステップを再起動して、その解放すべき項目を含むFAT情報の項目の所定数を一次記憶に取得し、その一次記憶に取得したFAT情報中でその項目を解放することを特徴とする付記22記載のファイル削除プログラム。
(付記24) 前記コンピュータは、デジタルカメラに内蔵されることを特徴とする付記22記載のファイル削除プログラム。
(付記25) アプリケーションからの所定の条件を満たすファイルの削除指示に対応する指示をデバイスドライバ側へ出力する処理をファイル処理装置に実行させるファイル削除プログラムにおいて、
削除対象となるファイルの格納先ディレクトリのディレクトリエントリ情報を、二次記憶中の実データ領域から一次記憶上に取得するディレクトリエントリ取得ステップと、
取得したディレクトリエントリ内のファイルが、前記所定の条件を満たし削除対象となった場合に、その取得したディレクトリエントリ内のファイルに対して削除マークを前記一次記憶上で付加する削除マーク付加処理ステップと、
前記削除マーク付加処理ステップの処理結果を二次記憶中の実データ領域の対応部分に書き込むディレクトリエントリ書き込みステップと、
削除マークが付加されたファイルに対応する二次記憶中のFATに保持されるFAT情報を解放する解放処理ステップを前記ファイル処理装置に実行させることを特徴とするファイル削除プログラム。
(付記26) 前記ファイル処理装置は、デジタルカメラに内蔵されることを特徴とする付記25記載のファイル削除プログラム。
(付記27) 第1のアプリケーションからの所定の条件を満たすファイルへの所定の処理の実施指示を基に、前記所定の処理を行う第2のアプリケーションにオープンしたファイルの情報を出力する処理をコンピュータに実行させるファイル・オープン・プログラムにおいて、
処理対象となるファイルの格納先ディレクトリのディレクトリエントリ情報を、二次記憶中の実データ領域から一次記憶上に取得するディレクトリエントリ取得ステップと、
取得したディレクトリエントリ内のファイルが、前記所定の条件を満たし処理対象となった場合に、その取得したディレクトリエントリ内のファイルのファイルサイズ、ファイルポインタを一次記憶上に読み込む参照情報読み込みステップと、
読み込まれたファイルサイズ、ファイルポインタに対して、オープン番号を割り当てるオープン番号割り当てステップと、
前記ファイルサイズ、ファイルポインタが割り当てられたオープン番号を一次記憶上のオープンファイルリストに追加するオープン番号追加ステップと、
前記取得したディレクトリエントリ内のすべてのファイルに対して、前記参照情報読み込みステップ、オープン番号割り当てステップ、オープン番号追加ステップが実行された場合に、そのオープンファイルリストを、前記第2のアプリケーションに出力する処理結果出力ステップを前記コンピュータに実行させることを特徴とするファイル・オープン・プログラム。
(付記28) 前記コンピュータは、デジタルカメラに内蔵されることを特徴とする付記27記載のファイル・オープン・プログラム。
(付記29) 第1のアプリケーションからの所定の条件を満たすファイルへの所定の処理の実施指示を基に、前記所定の処理を行う第2のアプリケーションにオープンしたファイルの情報を出力する処理をファイル処理装置に実行させるファイル・オープン・プログラムにおいて、
処理対象となるファイルの格納先ディレクトリのディレクトリエントリ情報を、二次記憶中の実データ領域から一次記憶上に取得するディレクトリエントリ取得ステップと、
取得したディレクトリエントリ内のファイルが、前記所定の条件を満たし処理対象となった場合に、その取得したディレクトリエントリ内のファイルのファイルサイズ、ファイルポインタを一次記憶上に読み込む参照情報読み込みステップと、
読み込まれたファイルサイズ、ファイルポインタに対して、オープン番号を割り当てるオープン番号割り当てステップと、
前記ファイルサイズ、ファイルポインタが割り当てられたオープン番号を一次記憶上のオープンファイルリストに追加するオープン番号追加ステップと、
前記取得したディレクトリエントリ内のすべてのファイルに対して、前記参照情報読み込みステップ、オープン番号割り当てステップ、オープン番号追加ステップが実行された場合に、そのオープンファイルリストを、前記第2のアプリケーションに出力する処理結果出力ステップを前記ファイル処理装置に実行させることを特徴とするファイル・オープン・プログラム。
(付記30) 前記ファイル処理装置は、デジタルカメラに内蔵されることを特徴とする付記29記載のファイル・オープン・プログラム。
本発明の第1実施形態のファイル削除処理部の構成を示すブロック図である。 本実施形態のファイル削除処理部がインストールされたハードウェアの二次記憶内のディレクトリの一例である。 図2のファイル情報に対応するファイル情報が格納された二次記憶の実データ領域内のデータ構成を示す図である。 図3の実データ領域に対応する二次記憶内のFATのデータ構成を示す図である。 本発明の第1実施形態のファイル削除処理のフローチャートである。 一次記憶に読み出された1クラスタ分のディレクトリエントリ情報の一例を示す図である。 図5の削除マークが付加されたファイルのFAT情報を解放する処理をより詳細に説明する図である。 二次記憶からのFAT情報の取得処理を説明する図(その1)である。 二次記憶からのFAT情報の取得処理を説明する図(その2)である。 本発明の第2実施形態のファイル削除処理のフローチャート(その1)である。 ファイルシステムの機能単位が実行する1ファイル分の削除処理のフローチャートである。 本発明の第2実施形態のファイル削除処理のフローチャート(その2)である。 第1実施形態と第2実施形態のシミュレーション結果を比較した図である。 本発明の第3実施形態のファイル・オープン処理部の構成を示すブロック図である。 ファイル・プレビュー処理のフローチャートである。 本発明の第4実施形態のファイル・プレビュー処理のフローチャート(その1)である。 ファイルシステムの機能単位が実行する1ファイル分のファイル・オープン処理のフローチャートである。 本発明の第4実施形態のファイル・プレビュー処理のフローチャート(その2)である。 本発明の各実施形態をプログラムで実現する場合のハードウェア環境を示す図である。 記憶媒体例を示す図である。
符号の説明
10 ファイル削除処理部
11 ディレクトリエントリ取得部
12 削除マーク付加処理部
13 検索・条件判定部
15 FAT情報取得部
16 解放処理部
17 FAT情報書き込み部
18、26 制御部
20 ファイル・オープン処理部
21 ディレクトリエントリ取得部
22 検索・条件判定部
23 参照情報読み込み部
24 オープン番号割り当て部
25 オープン番号追加部

Claims (10)

  1. アプリケーションからの所定の条件を満たすファイルの削除指示に対応する指示をデバイスドライバ側へ出力する処理をコンピュータまたはファイル処理装置が実行するファイル削除方法において、
    削除対象となるファイルの格納先ディレクトリのディレクトリエントリ情報を、二次記憶中の実データ領域から一次記憶上に1クラスタ分、取得するディレクトリエントリ取得ステップと、
    取得したディレクトリエントリ内のファイルが、前記アプリケーションから指示された削除対象のファイルに対する条件である前記所定の条件を満たすか否かを判定し、前記所定の条件を満たさない場合はその取得したディレクトリエントリ内のファイルに対して削除マークを付加せず、前記所定の条件を満たしていてもRead Only又はWrite Protectのファイル属性を有する場合はその取得したディレクトリエントリ内のファイルに対して削除マークを付加せず、前記所定の条件を満たしRead Only又はWrite Protectのファイル属性を有しない場合に、その取得したディレクトリエントリ内のファイルに対して削除マークを前記一次記憶上で付加する削除マーク付加処理ステップと、
    削除マークが付加されたファイルに対応する二次記憶中のFATに保持されるFAT情報を解放する解放処理ステップと、
    前記取得したディレクトリエントリ内のすべてのファイルに対して、前記削除マーク付加処理ステップが実行された場合に、その一次記憶上のディレクトリエントリの内容を二次記憶中の実データ領域の対応部分に書き込むディレクトリエントリ書き込みステップと、を備えることを特徴とするファイル削除方法。
  2. 前記ディレクトリエントリ取得ステップにおいて取得したディレクトリエントリ情報に続きが存在する場合に、前記ディレクトリエントリ取得ステップを再起動して、その後続のディレクトリエントリ情報を1クラスタ分、取得するとともに、
    その後続のディレクトリエントリ情報に対して、前記削除マーク付加処理ステップ、解放処理ステップ、ディレクトリエントリ書き込みステップが起動されることを特徴とする請求項1記載のファイル削除方法。
  3. 二次記憶中のFATに保持されるFAT情報の項目の所定数を一次記憶上に取得するFAT情報取得ステップ、をさらに備え、
    前記解放処理ステップは、削除マークが付加されたファイルに対応するFATの各項目について、
    前記一次記憶に取得したFAT情報中に解放すべき項目が含まれている場合に、その一次記憶に取得したFAT情報中でその項目を解放し、かつ、
    取得したFAT情報中に解放すべき項目が含まれていない場合に、その取得したFAT情報を二次記憶中のFATの対応部分に書き込むとともに、前記FAT情報取得ステップを再起動して、その解放すべき項目を含むFAT情報の項目の所定数を一次記憶に取得し、その一次記憶に取得したFAT情報中でその項目を解放することを特徴とする請求項1記載のファイル削除方法。
  4. アプリケーションからの所定の条件を満たすファイルの削除指示に対応する指示をデバイスドライバ側へ出力する処理をコンピュータまたはファイル処理装置が実行するファイル削除方法において、
    削除対象となるファイルの格納先ディレクトリのディレクトリエントリ情報を、二次記憶中の実データ領域から一次記憶上に取得するディレクトリエントリ取得ステップと、
    取得したディレクトリエントリ内のファイルが、前記アプリケーションから指示された削除対象のファイルに対する条件である前記所定の条件を満たすか否かを判定し、前記所定の条件を満たさない場合はその取得したディレクトリエントリ内のファイルに対して削除マークを付加せず、前記所定の条件を満たしていてもRead Only又はWrite Protectのファイル属性を有する場合はその取得したディレクトリエントリ内のファイルに対して削除マークを付加せず、前記所定の条件を満たしRead Only又はWrite Protectのファイル属性を有しない場合に、その取得したディレクトリエントリ内のファイルに対して削除マークを前記一次記憶上で付加する削除マーク付加処理ステップと、
    前記削除マーク付加処理ステップの処理結果を二次記憶中の実データ領域の対応部分に書き込むディレクトリエントリ書き込みステップと、
    削除マークが付加されたファイルに対応する二次記憶中のFATに保持されるFAT情報を解放する解放処理ステップを備えることを特徴とするファイル削除方法。
  5. 第1のアプリケーションからの所定の条件を満たすファイルへの所定の処理の実施指示を基に、前記所定の処理を行う第2のアプリケーションにオープンしたファイルの情報を出力する処理をコンピュータまたはファイル処理装置が実行するファイル・オープン方法において、
    処理対象となるファイルの格納先ディレクトリのディレクトリエントリ情報を、二次記憶中の実データ領域から一次記憶上に取得するディレクトリエントリ取得ステップと、
    取得したディレクトリエントリ内のファイルが、前記第1のアプリケーションから指示された処理対象のファイルに対する条件である前記所定の条件を満たすか否かを判定し、前記所定の条件を満たし処理対象となった場合に、その取得したディレクトリエントリ内のファイルのファイルサイズ、ファイルポインタを一次記憶上に読み込み、前記所定の条件を満たさない場合はその取得したディレクトリエントリ内のファイルの次のファイルが前記所定の条件を満たすか否かを判定する参照情報読み込みステップと、
    読み込まれたファイルサイズ、ファイルポインタに対して、オープン番号を割り当てるオープン番号割り当てステップと、
    前記ファイルサイズ、ファイルポインタが割り当てられたオープン番号を一次記憶上のオープンファイルリストに追加するオープン番号追加ステップと、
    前記取得したディレクトリエントリ内のすべてのファイルに対して、前記参照情報読み込みステップ、オープン番号割り当てステップ、オープン番号追加ステップが実行された場合に、そのオープンファイルリストを、前記第2のアプリケーションに出力する処理結果出力ステップを備えることを特徴とするファイル・オープン方法。
  6. アプリケーションからの所定の条件を満たすファイルの削除指示に対応する指示をデバイスドライバ側へ出力する処理をコンピュータまたはファイル処理装置に実行させるファイル削除プログラムにおいて、
    削除対象となるファイルの格納先ディレクトリのディレクトリエントリ情報を、二次記憶中の実データ領域から一次記憶上に1クラスタ分、取得するディレクトリエントリ取得ステップと、
    取得したディレクトリエントリ内のファイルが、前記アプリケーションから指示された削除対象のファイルに対する条件である前記所定の条件を満たすか否かを判定し、前記所定の条件を満たさない場合はその取得したディレクトリエントリ内のファイルに対して削除マークを付加せず、前記所定の条件を満たしていてもRead Only又はWrite Protectのファイル属性を有する場合はその取得したディレクトリエントリ内のファイルに対して削除マークを付加せず、前記所定の条件を満たしRead Only又はWrite Protectのファイル属性を有しない場合に、その取得したディレクトリエントリ内のファイルに対して削除マークを前記一次記憶上で付加する削除マーク付加処理ステップと、
    削除マークが付加されたファイルに対応する二次記憶中のFATに保持されるFAT情報を解放する解放処理ステップと、
    前記取得したディレクトリエントリ内のすべてのファイルに対して、前記削除マーク付加処理ステップが実行された場合に、その一次記憶上のディレクトリエントリの内容を二次記憶中の実データ領域の対応部分に書き込むディレクトリエントリ書き込みステップと、を前記コンピュータまたはファイル処理装置に実行させることを特徴とするファイル削除プログラム。
  7. 前記ディレクトリエントリ取得ステップにおいて取得したディレクトリエントリ情報に続きが存在する場合に、前記ディレクトリエントリ取得ステップを再起動して、その後続のディレクトリエントリ情報を1クラスタ分、取得するとともに、
    その後続のディレクトリエントリ情報に対して、前記削除マーク付加処理ステップ、解放処理ステップ、ディレクトリエントリ書き込みステップが起動されることを特徴とする請求項6記載のファイル削除プログラム。
  8. 二次記憶中のFATに保持されるFAT情報の項目の所定数を一次記憶上に取得するFAT情報取得ステップ、をさらに備え、
    前記解放処理ステップは、削除マークが付加されたファイルに対応するFATの各項目について、
    前記一次記憶に取得したFAT情報中に解放すべき項目が含まれている場合に、その一次記憶に取得したFAT情報中でその項目を解放し、かつ、
    取得したFAT情報中に解放すべき項目が含まれていない場合に、その取得したFAT情報を二次記憶中のFATの対応部分に書き込むとともに、前記FAT情報取得ステップを再起動して、その解放すべき項目を含むFAT情報の項目の所定数を一次記憶に取得し、その一次記憶に取得したFAT情報中でその項目を解放することを特徴とする請求項6記載のファイル削除プログラム。
  9. アプリケーションからの所定の条件を満たすファイルの削除指示に対応する指示をデバイスドライバ側へ出力する処理をコンピュータまたはファイル処理装置に実行させるファイル削除プログラムにおいて、
    削除対象となるファイルの格納先ディレクトリのディレクトリエントリ情報を、二次記憶中の実データ領域から一次記憶上に取得するディレクトリエントリ取得ステップと、
    取得したディレクトリエントリ内のファイルが、前記アプリケーションから指示された削除対象のファイルに対する条件である前記所定の条件を満たすか否かを判定し、前記所定の条件を満たさない場合はその取得したディレクトリエントリ内のファイルに対して削除マークを付加せず、前記所定の条件を満たしていてもRead Only又はWrite Protectのファイル属性を有する場合はその取得したディレクトリエントリ内のファイルに対して削除マークを付加せず、前記所定の条件を満たしRead Only又はWrite Protectのファイル属性を有しない場合に、その取得したディレクトリエントリ内のファイルに対して削除マークを前記一次記憶上で付加する削除マーク付加処理ステップと、
    前記削除マーク付加処理ステップの処理結果を二次記憶中の実データ領域の対応部分に書き込むディレクトリエントリ書き込みステップと、
    削除マークが付加されたファイルに対応する二次記憶中のFATに保持されるFAT情報を解放する解放処理ステップを前記コンピュータまたはファイル処理装置に実行させることを特徴とするファイル削除プログラム。
  10. 第1のアプリケーションからの所定の条件を満たすファイルへの所定の処理の実施指示を基に、前記所定の処理を行う第2のアプリケーションにオープンしたファイルの情報を出力する処理をコンピュータまたはファイル処理装置に実行させるファイル・オープン・プログラムにおいて、
    処理対象となるファイルの格納先ディレクトリのディレクトリエントリ情報を、二次記憶中の実データ領域から一次記憶上に取得するディレクトリエントリ取得ステップと、
    取得したディレクトリエントリ内のファイルが、前記第1のアプリケーションから指示された処理対象のファイルに対する条件である前記所定の条件を満たすか否かを判定し、前記所定の条件を満たし処理対象となった場合に、その取得したディレクトリエントリ内のファイルのファイルサイズ、ファイルポインタを一次記憶上に読み込み、前記所定の条件を満たさない場合はその取得したディレクトリエントリ内のファイルの次のファイルが前記所定の条件を満たすか否かを判定する参照情報読み込みステップと、
    読み込まれたファイルサイズ、ファイルポインタに対して、オープン番号を割り当てるオープン番号割り当てステップと、
    前記ファイルサイズ、ファイルポインタが割り当てられたオープン番号を一次記憶上のオープンファイルリストに追加するオープン番号追加ステップと、
    前記取得したディレクトリエントリ内のすべてのファイルに対して、前記参照情報読み込みステップ、オープン番号割り当てステップ、オープン番号追加ステップが実行された場合に、そのオープンファイルリストを、前記第2のアプリケーションに出力する処理結果出力ステップを前記コンピュータまたはファイル処理装置に実行させることを特徴とするファイル・オープン・プログラム。
JP2006003348A 2006-01-11 2006-01-11 ファイル削除方法、ファイル・オープン方法、ファイル削除プログラム、および、ファイル・オープン・プログラム Expired - Fee Related JP4908849B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2006003348A JP4908849B2 (ja) 2006-01-11 2006-01-11 ファイル削除方法、ファイル・オープン方法、ファイル削除プログラム、および、ファイル・オープン・プログラム
US11/468,592 US8150809B2 (en) 2006-01-11 2006-08-30 File delete method, file open method, storage medium storing file delete program, and storage medium storing file open program
CNB2006101541946A CN100456303C (zh) 2006-01-11 2006-09-18 文件删除方法和文件打开方法
KR1020060092659A KR100844058B1 (ko) 2006-01-11 2006-09-25 파일 삭제 방법, 파일·오픈 방법, 파일 삭제 프로그램, 및파일·오픈·프로그램

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006003348A JP4908849B2 (ja) 2006-01-11 2006-01-11 ファイル削除方法、ファイル・オープン方法、ファイル削除プログラム、および、ファイル・オープン・プログラム

Publications (2)

Publication Number Publication Date
JP2007188130A JP2007188130A (ja) 2007-07-26
JP4908849B2 true JP4908849B2 (ja) 2012-04-04

Family

ID=38233970

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006003348A Expired - Fee Related JP4908849B2 (ja) 2006-01-11 2006-01-11 ファイル削除方法、ファイル・オープン方法、ファイル削除プログラム、および、ファイル・オープン・プログラム

Country Status (4)

Country Link
US (1) US8150809B2 (ja)
JP (1) JP4908849B2 (ja)
KR (1) KR100844058B1 (ja)
CN (1) CN100456303C (ja)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6749588B1 (en) * 1998-04-09 2004-06-15 Becton Dickinson And Company Catheter and introducer needle assembly with needle shield
KR100987320B1 (ko) * 2008-07-24 2010-10-12 강릉원주대학교산학협력단 고속 파일 복구가 가능한 fat 파일시스템을 사용한데이터 처리장치 및 데이터 처리방법
US8429331B2 (en) * 2008-12-03 2013-04-23 Texas Instruments Incorporated Storage optimizations by directory compaction in a fat file system
CN101882130B (zh) * 2009-05-07 2012-10-03 安凯(广州)微电子技术有限公司 一种fat格式文件系统中加速打开/关闭文件的方法
US20110208898A1 (en) * 2010-02-23 2011-08-25 Samsung Electronics Co., Ltd. Storage device, computing system, and data management method
US8812563B2 (en) * 2010-03-02 2014-08-19 Kaspersky Lab, Zao System for permanent file deletion
CN102214088B (zh) * 2010-04-07 2015-07-01 腾讯科技(深圳)有限公司 文件解锁的方法和装置
CN102253938B (zh) * 2010-05-18 2015-05-20 深圳市朗科科技股份有限公司 一种文件写入、恢复方法和装置
JP5652036B2 (ja) * 2010-07-29 2015-01-14 ソニー株式会社 通信システム、通信装置及び通信方法、並びにコンピューター・プログラム
WO2015084354A1 (en) * 2013-12-04 2015-06-11 Hewlett-Packard Development Company, L.P. Data sanitization
CN104700037B (zh) * 2013-12-10 2018-04-27 杭州海康威视系统技术有限公司 保护云存储视频数据的方法及其系统
KR101583009B1 (ko) 2013-12-30 2016-01-11 김철기 Sns 상에서의 파일 완전 삭제 방법 및 이를 위한 시스템
CN103870549B (zh) * 2014-02-27 2017-10-17 中国石油天然气股份有限公司 石油地质软件数据的清理方法及装置
CN104331378B (zh) * 2014-11-20 2018-01-30 三木控股集团有限公司 一种数据清洗控制方法及其设备
KR101698936B1 (ko) 2015-04-14 2017-02-13 주식회사 앤커넥트 데이터 저장 시스템 및 그 동작 방법
CN106293783B (zh) * 2015-05-15 2022-06-03 腾讯科技(深圳)有限公司 一种安装包的清理方法和设备
CN106326384A (zh) * 2016-08-16 2017-01-11 中国科学院长春光学精密机械与物理研究所 基于fpga的适用于高速海量存储的文件存储方法
TWI631461B (zh) * 2017-06-27 2018-08-01 晨星半導體股份有限公司 行車記錄器之儲存裝置的控制方法與儲存裝置控制系統
US11435922B2 (en) 2017-06-27 2022-09-06 Sigmastar Technology Ltd. Control method for storage device of driving recorder and storage device control system
CN109388624A (zh) * 2018-10-09 2019-02-26 郑州云海信息技术有限公司 分布式文件删除方法、装置、系统及计算机可读存储介质
CN111198793A (zh) * 2018-11-19 2020-05-26 北京京东尚科信息技术有限公司 数据删除方法及系统、介质及计算机系统
CN112328327B (zh) * 2020-11-20 2023-10-27 杭州迪普科技股份有限公司 配置分区整理方法、装置
CN113672565B (zh) * 2021-08-09 2022-08-05 深圳市猿人创新科技有限公司 一种文件标记方法、装置、电子设备及存储介质

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0588958A (ja) * 1991-09-27 1993-04-09 Nec Corp フアイル消去装置
US5564037A (en) * 1995-03-29 1996-10-08 Cheyenne Software International Sales Corp. Real time data migration system and method employing sparse files
JPH1027116A (ja) * 1996-07-12 1998-01-27 Oki Electric Ind Co Ltd 不要ファイル削除装置
US5909540A (en) * 1996-11-22 1999-06-01 Mangosoft Corporation System and method for providing highly available data storage using globally addressable memory
CA2272708A1 (en) * 1996-11-27 1998-06-04 Kurt E. Godwin File directory and file navigation system
JPH10289144A (ja) * 1997-04-11 1998-10-27 Pioneer Electron Corp メモリの制御方法
US5960446A (en) * 1997-07-11 1999-09-28 International Business Machines Corporation Parallel file system and method with allocation map
JPH1185609A (ja) * 1997-09-09 1999-03-30 Mitsubishi Electric Corp 半導体記憶装置及びそのデータ管理方法
KR20000001443A (ko) * 1998-06-11 2000-01-15 김영환 디티에이디에서의 메시지 운용 제어방법
US7536524B2 (en) * 1998-07-31 2009-05-19 Kom Networks Inc. Method and system for providing restricted access to a storage medium
US6633893B2 (en) * 1998-09-04 2003-10-14 Canon Kabushiki Kaisha File management system and method, and storage medium
US6823398B1 (en) * 2000-03-31 2004-11-23 Dphi Acquisitions, Inc. File system management embedded in a storage device
JP2001325135A (ja) * 2000-05-15 2001-11-22 Nippon Columbia Co Ltd データ記憶再生装置及びデータ記憶再生方法
US6615217B2 (en) * 2001-06-29 2003-09-02 Bull Hn Information Systems Inc. Method and data processing system providing bulk record memory transfers across multiple heterogeneous computer systems
JP2003058400A (ja) * 2001-08-10 2003-02-28 Sharp Corp ファイル管理システムにおけるセクタ管理方法およびセクタ管理プログラムならびにセクタ管理プログラムを記録したコンピュータ読み取り可能な記録媒体
AU2003202528A1 (en) * 2002-04-01 2003-10-23 Sony Corporation Track management method and apparatus for managing tracks on a storage medium
JP2004030305A (ja) * 2002-06-26 2004-01-29 Brother Ind Ltd ファイルシステム
US7716187B2 (en) * 2003-05-21 2010-05-11 Microsoft Corporation System and method for transparent storage reorganization
JP2005159902A (ja) * 2003-11-27 2005-06-16 Olympus Corp 画像管理装置及び画像管理方法
JP4239812B2 (ja) * 2003-12-18 2009-03-18 セイコーエプソン株式会社 ファイル管理装置、ファイル管理プログラム、ファイル管理方法、電子アルバム装置およびディジタルカメラ
US20080288710A1 (en) * 2004-01-26 2008-11-20 Takuji Maeda Semiconductor Memory Device and Its Control Method

Also Published As

Publication number Publication date
KR100844058B1 (ko) 2008-07-07
CN100456303C (zh) 2009-01-28
CN101000614A (zh) 2007-07-18
JP2007188130A (ja) 2007-07-26
KR20070075250A (ko) 2007-07-18
US20070162525A1 (en) 2007-07-12
US8150809B2 (en) 2012-04-03

Similar Documents

Publication Publication Date Title
JP4908849B2 (ja) ファイル削除方法、ファイル・オープン方法、ファイル削除プログラム、および、ファイル・オープン・プログラム
JP5149570B2 (ja) ファイル管理装置、ファイル管理装置の制御方法、及びプログラム
US20060020645A1 (en) Information processing apparatus and recording medium
JP2003259268A (ja) 動画像管理方法及び装置
US20080134023A1 (en) Document processing device, computer readable recording medium, and computer data signal
JP4338210B2 (ja) 画像管理装置及び画像管理方法、プログラム
US20050018057A1 (en) Image capture device loaded with image metadata
JP5601513B2 (ja) 画像表示装置及びプログラム
JP5448412B2 (ja) 情報処理装置およびその方法、プログラム、記録媒体
KR20060073407A (ko) 파일 정보의 기록 처리 방법 및 프로그램
JP4674728B2 (ja) 画像選択装置および画像選択装置の制御方法およびプログラムおよび記録媒体
JP2016085522A (ja) 情報管理装置
JP2019128859A (ja) 情報処理装置
JP6471621B2 (ja) 情報処理装置、情報処理方法、及びプログラム
JP7185866B2 (ja) 情報処理装置、情報処理方法、コンピュータプログラム
JP2005242707A (ja) ファイル管理方法
JP5065980B2 (ja) 画像記録装置及び画像記録方法
JP4507609B2 (ja) ファイル管理プログラム及びファイル管理装置
JP2009217588A (ja) ファイルシステム、電子カメラ、ファイルアクセス方法及びプログラム
JP2009077448A (ja) 画像選択装置および画像選択装置の制御方法およびプログラムおよび記録媒体
JP4504956B2 (ja) 画像蓄積システム及び画像蓄積方法
JP5067041B2 (ja) 文書処理装置及び文書処理プログラム
JP2001128094A (ja) 画像処理装置および記録装置および画像処理方法および記録方法および記憶媒体および記録フォーマット
JP2006127444A (ja) ファイル管理プログラム、データ構造及びファイル管理装置
JP2005277669A (ja) ファイル処理装置、及び電子カメラ装置

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20080730

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080917

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110502

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110510

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110704

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: 20120110

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120113

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

Free format text: PAYMENT UNTIL: 20150120

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4908849

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees