JP3548197B2 - 複数ファイル名参照システム - Google Patents

複数ファイル名参照システム Download PDF

Info

Publication number
JP3548197B2
JP3548197B2 JP16714093A JP16714093A JP3548197B2 JP 3548197 B2 JP3548197 B2 JP 3548197B2 JP 16714093 A JP16714093 A JP 16714093A JP 16714093 A JP16714093 A JP 16714093A JP 3548197 B2 JP3548197 B2 JP 3548197B2
Authority
JP
Japan
Prior art keywords
file name
file
formatted
operating system
name
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 - Lifetime
Application number
JP16714093A
Other languages
English (en)
Other versions
JPH06187211A (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.)
Microsoft Corp
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of JPH06187211A publication Critical patent/JPH06187211A/ja
Application granted granted Critical
Publication of JP3548197B2 publication Critical patent/JP3548197B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • 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
    • G06F9/46Multiprogramming arrangements
    • 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/17Details of further file system functions
    • G06F16/178Techniques for file synchronisation in file systems
    • G06F16/1794Details of file format conversion
    • 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/164File meta data generation
    • G06F16/166File name conversion
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Exchange Systems With Centralized Control (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Description

【0001】
【産業上の利用分野】
本発明はファイルシステムの分野、特に異なるフォーマットの複数のファイル名によりファイルを参照できる複数ファイル名参照システムに関する。
【0002】
【従来の技術】
従来、典型的なコンピュータシステム上で実行されるアプリケーションは、基礎となるオペレーティングシステムと同じフォーマットを用いた参照ファイル名を参照しなければならなかった。例えば、(マイクロソフト社より開発された)DOSというオペレーティングシステムでは「8.3」でフォーマットされたファイル名に対応したフォーマットのファイルを参照する。即ち、DOSは「myfile」や「filename」等の8文字以内の主ファイル名(leading name)の後にピリオドを付け、その後に「exe」や「kp」等の3文字以内の拡張子を付けたファイル名を使用する。従って、DOS上で作動するアプリケーションはファイル名をこのフォーマットに限定しなければならない。またDOSのファイル名ではコンピュータの分野で良く知られている制約も受ける。これについては以下の実施例の説明で詳述する。
しかし、コンピュータ産業では既存のオペレーティングシステムに改良を加えたり、またオペレーティングシステムのユーザにより大きな能力を提供すべくオペレーティングシステムの全て或いは一部を変更することは一般的ではない。しかし、例えば既存のオペレーティングシステムを改良すれば、より柔軟性のあるフォーマットでファイルに名前を与えることができる。従って、このような改良されたオペレーティングシステム上で作動するアプリケーションに、より柔軟性のあるフォーマットでファイルを参照させることができる。
【0003】
改良されたオペレーティングシステム上で作動するようにアプリケーションを書けば、アプリケーションはより柔軟性のあるフォーマットを使用してファイルにアクセスしたりファイル名を付けることができる。しかし、コンピュータ産業では既存のオペレーティングシステム上で作動するよう書かれた大量のアプリケーションが市販されている。これらのアプリケーションはこれまでのオペレーティングシステムと同様にファイル名について同じ制約を負っている。例えば、DOS上で作動するよう設計されたアプリケーションはファイル名を上述の「8.3」のフォーマットに限定しなければならない。このような限定があるため、アプリケーションは改良されたオペレーティングシステムのより柔軟性のあるフォーマットのファイル名を使用してファイルを参照することができなかった。また、改良されたオペレーティングシステムがファイルの参照により柔軟性のあるフォーマットを利用できる新たなファイルを作ることもできなかった。
【0004】
【発明が解決しようとする課題】
本発明の目的はファイル名のフォーマットが異なる複数のファイル名を使用して同じファイルを参照すための方法及び手段を提供することを目的とする。
【0005】
【課題を解決するための手段】
本発明の上記及びその他の目的は以下に記載する複数ファイル名参照システムにより達成される。複数ファイル名参照システムは改良されたオペレーティングシステムのファイルシステム内に設けられ、必要に応じてファイル内の複数ファイル名に記憶される。複数ファイル名は異なるオペレーティングシステム上で作動するよう書かれたアプリケーション用にフォーマットされた「アプリケーションでフォーマットされた」ファイル名、及び改良されたオペレーティングシステム上で作動するよう書かれた「オペレーティングシステムでフォーマットされた」ファイル名を含む。オペレーティングシステムでフォーマットされたファイル名を作成する場合、或いはファイル名を変更する場合は、この複数ファイル名参照システムはオペレーティングシステムでフォーマットされた名前とは異なるアプリケーションでフォーマットされたファイル名を自動的に作成する。同様に、この複数ファイル名参照システムはユーザがアプリケーションでフォーマットした名前を作成或いは変更するのに応じてオペレーティングシステムでフォーマットした名前を自動的に作成する。
【0006】
複数ファイル名参照システムはオペレーティングシステムでフォーマットした名前を含むオペレーティングシステムエントリ、及びアプリケーションでフォーマットした名前を含むアプリケーションエントリをBツリー内に保管する。各エントリは両者の名前を参照する同じファイルのアドレスも含んでいる。複数ファイル名参照システムはBツリーにアクセスしてオペレーティングシステムのエントリを参照することによりオペレーティングシステムでフォーマットしたファイル名をアプリケーションでフォーマットしたファイル名に変換する。その結果、特別なファイル名翻訳手段を必要とせずにどちらのファイル名を用いても直接ファイルを参照することができる。
【0007】
【実施例】
図1は本発明の複数ファイル名参照システムを含むコンピュータシステムのブロック図である。同図において、ディスク等の周辺機器上の種々のファイルにアクセス及び記憶するコンピュータ102内にアプリケーション100がある。本発明の好適な実施例では、このアプリケーション100は「8.3」でフォーマットしたファイルを参照するDOSに基づくアプリケーションである。しかし、当業者であれば本発明の作成及び変換工程により他のフォーマットを用いたアプリケーションでも使用できることは理解されよう。またこの好適な実施例では、アプリケーション100は図示されるコンピュータ102内に示されているが、このアプリケーション100をコンピュータ102の外に置いてネットワークを介して接続することもできる。
コンピュータ102内には後述する本発明の方法及びシステムを実行するために複数ファイル名参照システム106が設けられている。この複数ファイル名参照システム106はオペレーティングシステム110のファイルシステム108内に設けられている。このオペレーティングシステム110は「8.3」フォーマット(以下「ショートネーム」と称す)を用いたDOSのオペレーティングシステムからより柔軟性のあるフォーマットの参照オペレーティングシステムでフォーマットしたファイル名に改良されている。このより柔軟性のあるフォーマットにより、DOSの「8.3」フォーマットでは違法と考えられていたスペースや文字、また複数の拡張子を含む255文字までのファイル名を付けることができる。
【0008】
しかし、アプリケーション100はショートネームを使用した既存のDOSのオペレーティングシステム用に書かれていたため、依然としてショートネームを用いたファイルを参照しなければならない。オペレーティングシステムを改良した結果、オペレーティングシステム110にアクセス可能なロングネームは従って、アプリケーション100が使用しなければならないショートネームとは異なる。
通常このような環境では、アプリケーション100はショートネームを用いたオペレーティングシステム110とコミュニケートしなければならず、より柔軟にフォーマットしたファイル名(ロングネーム)にアクセスすることはできなかった。更に、オペレーティングシステム110はアプリケーション100とコミュニケートする際により柔軟なフォーマットのロングネームを使用することもできなかった。しかし、上述のように、本発明は複数ファイル名参照システム106により、オペレーティングシステムでフォーマットしたファイル名(ロングネーム)或いはアプリケーションでフォーマットしたファイル名(ショートネーム)のどちらを使用しても同じファイルを参照できる方法及び手段を提供する。
【0009】
後述するように、複数ファイル名参照システム106は、アプリケーション或いはオペレーティングシステムによりファイルを作成したりファイル名を変更するのに応じて新たに提供されるファイル名のフォーマットとは異なるフォーマットを有するファイル名を作成する。この作成されたファイル名は異なるフォーマットを有しているが、新たに作成したファイル名と同じファイルを参照し、新たに作成したファイル名の拡張子を可能な限り保存する。
複数ファイル名参照システム106は異なるフォーマットを有するファイル名のためにBツリー内の別個のエントリをディスク104等の記憶機構に記憶するための記憶手段としても機能する。例えば、両方共同じファイルを参照するロングネーム及びショートネームのためにロングネームエントリを提供することができる。
また、複数ファイル名参照システム106はあるフォーマットを有するファイル名を異なるフォーマットの対応するファイル名に変換するための変換手段としても機能する。複数ファイル名参照システム106は更に、同じファイルにおいて異なる形式でフォーマットされたファイル名を記憶するためのファイル名記憶手段としても機能する。
【0010】
図2は本発明の複数ファイル名参照システムにより実行される全体的な工程を示すフローチャートである。図2に示される工程は例えば複数ファイル名参照システム106により実行することができる。ブロック200において、複数ファイル名参照システムはユーザがあるフォーマットのファイル名を作成すると、それとは異なるフォーマットのファイル名を作成する。例えば、オペレーティングシステムでフォーマットしたファイル名が作成されると、複数ファイル名参照システムはアプリケーションでフォーマットしたファイル名を作成する。反対に、アプリケーションでフォーマットしたファイル名が作成されると、複数ファイル名参照システムはオペレーティングシステムでフォーマットしたファイル名を作成する。
ブロック202において、複数ファイル名参照システムはオペレーティングシステムでフォーマットした名前を有するオペレーティングシステムエントリ、及びアプリケーションでフォーマットした名前を有するアプリケーションエントリをBツリーに記憶する。本発明の好適な実施例では、上述のようにロングネームを記憶する「ロングネーム」エントリであり、アプリケーションエントリは「8.3」フォーマットのショートネームを記憶する「ショートネーム」エントリである。ブロック204において、複数ファイル名参照システムはBツリーにアクセスしてショートネームを参照することにより、あるフォーマットを有すにファイル名を異なるフォーマットの対応するファイル名に変換する。
Bツリーの記憶及び変換
図8はアプリケーションエントリ(ショートネーム)及び対応するオペレーティングシステムエントリ(ロングネーム)が複数ファイル名参照システムにより図2に示されるブロック202に記憶されているBツリー構造のブロックずである。Bツリーを使用することはコンピュータの分野ではよく知られていることである。Bツリーの詳細についてはCormen, Leiserson及びRivest著のMIT Press第381乃至399頁の「Introduction to Algorithms」の第19章に記載されている。
【0011】
図8に示されるように、Bツリーは工程200で作成された酷なる形式でフォーマットされたファイル名のためのエントリを保持するのに使用される。コンピュータの分野の当業者には良く知られているように、Bツリーはデータを構造内のキーを参照した位置により管理する均衡したサーチツリーのデータ構造である。例えば、図8に示されるようなアルファベット順に配列されたBツリー構造では、M,D,H等の文字がキーとなる。即ち、データはアルファベットの関係に基づきMに分割され、次いでD,Hに分割される。
図8のBツリー構造では、ファイル名はアルファベット順に分割され、従ってFという文字で始まるファイル名は「EG」ノード或いはその下に設けられたノード内に記憶される。従って、本発明では、「filenameofgreatlength.exe」というロングネームを有するファイルがオペレーティングシステム110を介して作成されれば、複数ファイル名参照システムはBツリー内の「EG」ノードのロングネームエントリに「filenameofgreatlength.exe」を記憶する。
本発明によれば、「filenameofgreatlength.exe」というロングネームを有するファイルを作成すると、後述するように対応するショートネームが自動的に作成される。作動しているアプリケーションがDOSのアプリケーションである場合、そのアプリケーションは「8.3」フォーマットのファイル名を使用しており、「8.3」でフォーマットされたショートネームが作成される。
【0012】
例えば、「filenameofgreatlength.exe」というファイル名を作成すると複数ファイル名参照システムは「filename.exe」等のショートネームを作成する。Bツリーに「filename.exe」というファイル名が既に存在していれば、新たに作成した名前をそれがユニークであるまで「filena−1.exe」等に修正することでこの重複は解決される。アプリケーションでフォーマットしたこのユニークなファイル名はその後Bツリー内のアプリケーションエントリに記憶される。
図9に示されるように、オペレーティングシステムエントリ900及びアプリケーションエントリ902は両方共同じファイル904を指定する。その結果、「filena−1.exe」というショートネーム或いは「filenameofgreatlength.exe」というロングネームのどちらを参照しても同じファイル404にアクセスできる。従って、ファイル904内のファイル管理ブロックはロングネーム及びショートネームの両方を含んでいる。ファイル管理ブロックに両方のファイル名を記憶することにより、複数ファイル名参照システムはフォーマットされたファイル名の一方によりファイルにアクセスできると共に他方でフォーマットされたファイル名をも判断することができる。
【0013】
本発明の複数ファイル名参照システムは図8に示されるようなBツリー構造を利用してある形式でフォーマットされたファイル名を図2のブロック204に示されるような別の形式でフォーマットされた対応するファイル名に変換する。複数ファイル名参照システムはBツリーをサーチする基本名として知られているファイル名を使用し、その知っているファイル名をBツリーが分割されるキーと比較する。
知っているファイル名を対応するファイル名に変換(ロングネームからショートネームに或いはその逆への変換)するためのBツリーサーチについては図10を参照しながら説明する。工程1000において、Bツリーをアルファベット順にサーチしてそのファイル名を探すことによりその知っているファイル名の存在位置をBツリー内で見つける。次いで工程1002で、その知っているファイル名を含むリーフノードがアクセスされて対応するファイル名を見つける。一致するファイルポインタを有する対応するエントリが工程1004で発見されれば、変換工程は終了し、対応するファイル名も元に戻される。
殆どの場合はアルファベットが類似しているため、図8に示されるようにショートネームエントリは同じファイルのためのロングネームエントリと同じリーフノードで発見される。通常は、知っているファイル名のエントリは知らないファイルエントリの隣に存在し、従って知っているファイル名は知っているファイル名のエントリのファイルポインタと一致したファイルポインタの隣のエントリをチェックすることにより知らないファイル名に変換することができる。ロングネームとショートネームが隣り合った位置に無い場合には、知っているファイル名のエントリが存在するリーフノード全体をサーチすることによりロングネームエントリをアプリケーションエントリに、或いはその逆に変換することができる。対応するファイル名が同じリーフノード内に無い場合、複数ファイル名参照システムはBツリーをサーチする。最初は知っているファイル名とアルファベットが類似した名前をサーチする。対応するファイル名を作成するファイル名作成工程によりファイル名間に保護された全体的な類似性の結果により、特定の文字を変化させるワイルドカードによるサーチを使用すると一致を生じさせ易い。工程1006では、ワイルドカードを使用してファイル名作成工程で最も変化しやすい名前の文字を変化させる(例えば知っている「filenameofgreatlength.exe」という知っているファイル名に対して「filena??.exe」が作成される)。工程1008において、ワイルドカード可能性のある全てのファイル名に照合されてそれらのファイル名のエントリが発見される。例えば、「filena??.exe」というワイルドカードはfilename.exe」、「filena−1.exe」、「filena−2.exe」等の既存のファイル名と照合される。一致するファイルポインタを有する対応するファイル名が工程1010で発見されれば、変換工程は終了し、対応するファイル名は元に戻される。例えば、「filenameofgreatlength.exe」はそのエントリは同じファイルを指定しているため「filena−1.exe」に変換され、「filena−1.exe」は対応するファイル名として戻される。
【0014】
工程1010でワイルドカードで照合できた名前を持ったエントリに一致するファイルポインタが発見されなかった場合、工程1012及び1014でランダムなワイルドカード「*.*」の照合に基づきBツリーをサーチし、一致するファイルポインタを有する対応するファイル名が戻される。
ショートネームエントリとロングネームエントリが同じリーフノードになかった場合、単にリーフノードをサーチする代わりにワイルドカードによりツリー全体をサーチして一方のファイル名を他方のものに変換することができる。これはファイル名がそれを作成したものとは異なるキーの側にあるような可能性としては低い場合に行われる。例えば、「filenameofgreatlengthe,exe」と「filena−2.exe」とが同じファイルを指定しており、また「filena−1.exe」がBツリー内のキーであった場合、「filena−1.exe」がアルファベット順に分割されて「filenameofgreatlength.exe」及び「filena−2.exe」が別個のリーフノードに分割される。従って、アドレスレスポインタを有するエントリを知っているファイル名のエントリと同じファイルに戻すには、「filena??.exe」というワイルドカードでBツリーをサーチすることが必要であろう。
ファイル名の作成
本発明の好適な実施例では、オペレーティングシステムでフォーマットした知っているファイル名(ロングネーム)に基づいてアプリケーションでフォーマットしたファイル名を作成するため、或いはその逆を行うために、図2のブロック200で示されるファイル名作成工程を使用することができる。後述するようにショートネームは「8.3」フォーマットに限定されるが、ロングネームであれば255文字まで使用でき、違法な文字等に関する規定に拘束されない。
【0015】
図3は異なるフォーマットのファイル名を作成する作成ブロック200のフローチャートである。ショートネームがロングネームから作成された場合、或いはその逆の場合に関わり無く、作成工程は2つの部分に分けられる。先ず工程300において、新たに作成したファイル名を使用して異なるフォーマットのファイル名のための基本名を作成する。後述するように、これには新たに作成した名前を変更して異なる名前のフォーマットにより負わされている拘束に従わせる作業も含まれる。
工程302では、工程300で作成された基本名が必要に応じて修正され、既存のファイル名と重複することを防止する。この基本名が既存のファイル名と重複する場合、この基本名はユニークな名前が得られるまで修正される。
図4は新たに作成されたロングネームに基づくショートネームを作成するのに実行される図3の基本名作成工程300の詳細なフローチャートである。この作成工程は以下の規則に基づいて「8.3」のDOSでフォーマットしたファイル名を作成する。
1.ファイル名内にスペースは認められない。
【0016】
2.ファイル名内で使用できるピリオドは文字間に挟まれた単一のピリオドだけである。即ち、最初或いは最後にピリオドを使用すること、また複数のピリオドを使用することはできない。
3.「:」、「+」、「、」、「;」、「=」、「[」及び「]」は違法でありファイル名内には認められない。
4.ファイル名にピリオドを使用する場合、ピリオドの前の「主ファイル名」は8文字に限定され、その後の「拡張子」は3文字に限定される。
これらの限定に基づき、アプリケーションフォーマット作成工程に対するオペレーティングシステムフォーマットは以下の修正を行う。
1.スペースを除去する。例えば、「My File」は「Myfile」となる。
2.拡張子の前以外に使用されたピリオドは全て削除される。例えば、「.logon」は「logon」に、「backup.c.o」は「backup.co」に、また「main.」は「main」になる。
3.違法な文字は全てアンダースコア「_」に翻訳される。
【0017】
4.主ファイル名は8文字に、また拡張子は3文字に切り詰められる。
図4のフローチャートにおける工程400では、ロングネームからの文字が取り戻され、最初の文字から始まる。工程402において、文字がスペースであった場合にはその文字はアプリケーションでフォーマットしたファイル名内の文字にはならない。
工程404において、文字がピリオドであった場合、別のテストが行われる。そのピリオドがロングネームの最初に使用されていればそれは工程406でショートネームの文字になる。そのピリオドがロングネームで最初に使用されていなければ、それはショートネームの文字にはならない。例えば、ピリオドがロングネームの最初或いは最後にあった場合、或いはピリオドがロングネームの2番目や3番目にあった場合、それはショートネームの文字にはならない。一度最初に使用されたピリオドを発見すると、その後に続く文字はファイル名の拡張子であることを示すべくフラグが設定される。
工程408では、現在の文字がファイル名の拡張子の一部か否かが先ず判断される。拡張子のフラグが設定されていなければ(最初に使用されたピリオドが発見されていないことを示す)、工程410で文字数が依然として8文字以内か否かが判断される。8文字以内であれば、テストは続行される。8文字を越えていれば、その文字は含まれず、次の文字が読み込まれる。
【0018】
拡張子のフラグが設定されていれば(最初に使用されたピリオドが発見されたことを示す)、工程412で現在の文字数が最初の3文字の拡張子であるか否かが判断される。そうであれば、テストを続行する。そうでなければ、その文字は含まれず、次の文字が読み込まれる。
工程414で、文字がDOSで違法とするものに該当する場合、工程416でその違法な文字がアンダースコア「_」に置き換えられ、このアンダースコアがショートネームの文字となる。文字がDOSで違法とするものに該当しない場合には、その文字はそのまま保持されてショートネームの文字とされる。
工程418で、加えようとする文字がショートネーム加えられる。工程418に到達するためには、ファイル名の文字はDOSの名前における文字に要求される規則の何れにも反していてはならず、また上述の規則に合致するよう変更されていなければならない。工程420ではロングネーム内に別の文字が加えられるまで工程400乃至418が繰り返される。
図4に示されるロングネームからショートネームを作成する工程は以下の疑似コードによりより詳細に限定される。
【0019】
newperiod=false
leading count=0
extensioncount=0
extension=false
illegal={“:”、“+”、“、”、“;”、“=”、“[”、“]”
while charactersinname
if newperiod
addcharacter
newperiod=false
get character
if character <> “ ”
if extension
if extensioncount<=3
addcharacter
extensioncount=extensioncount+1
else if leading count <=8
addcharacter
leadingcount=leadingcount+1
elso if leadingcount<>0 and
not extension
newperiod=true
extension=true
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
addcharacter
if character=illegal
character=“_”
図5はロングネームから作成されたショートネームの基本名に適用される図3の重複解決工程302の詳細なフローチャートである。工程500において、他のファイル名と重複する数が0に初期設定される。工程502で、全ての文字がそのファイル名の基本名と同じ名前を持つファイルがBツリー内に他になければ、処理は終了し、その基本名がショートネームとなる。しかし、全ての文字が既存のファイル名と一致していた場合には、工程504に進み、重複する数が加算される。工程506で、主ファイル名の最後の文字が「_」に置き換えられ、その後に遭遇した重複の数を示す文字が加えられる。例えば、「SKIPFILE.EXE」というファイル名で最初の重複に遭遇した場合、そのファイル名は「SKIPFI−1.EXE」に変更される。そして処理は工程502に戻り、そこでこの新たに修正されたファイル名が既存のファイル名と再度比較され、重複が存在するまで工程502から506繰り返される。ユニークなファイル名が得られると、処理は終了してその修正されたファイル名がショートネームとなる。
【0020】
図5に示される重複解決工程は例えば以下の疑似コードに従い実行することができる。 conflicts=0
while all characters match
conflicts=conflicts+1
if conflicts<10
name(7)=“_”
name(8)=char(conflicts)
if conflicts<100
name(6)=“_”
name(7)=char(conflicts)
if conflicts<1000



上記説明から、オペレーティングシステムでフォーマットしたファイル名の拡張子はDOSの「8.3」フォーマットのファイル名の制約内で可能な限り、アプリケーションでフォーマットしたファイル名を作成するために保護されることを理解されたい。そのため、特定のタイプのファイル(従って特定の方法で扱われるファイル)は参照されるフォーマットに関係なくそのように扱われる。例えば、「filenameofgreatlength.exe」というファイル名は「filena−1.exe」に変換され、どちらの名前も実行可能なファイルとしてのファイルのタイプを示している。
【0021】
図6は新たに作成したショートネームに基づいてロングネームを作成するための図3の基本名作成工程300の詳細なフローチャートである。ショートネームからロングネームを作成するにあたり、ショートネームの文字の如何なる順番もロングネームでは合法である。従って、ショートネームは最初にコピーされてロングネームの基本名とされる。工程600では、アプリケーションでフォーマットしたファイル名から最初の文字が確保される。工程602で、その文字がロングネームの基本名の中の対応する文字となる。工程604では、その文字が新たに作成されたショートネームに存在するまで工程600及び602が繰り返される。その結果、新たに作成されたショートネームがロングネームの基本名となる。
図7はユーザが作成したショートネームから作成されたロングネームの基本名に適用される図3の重複解決工程302の詳細なフローチャートである。この工程はロングネームから作成されるショートネームの重複解決工程と類似している。しかし、ロングネームのフォーマットの方がより柔軟性があるため、重複する数は最後の文字と置き換えられる代わりに主ファイル名に追加することができる。
【0022】
工程700では、既存のファイル名と重複する数が0に初期設定される。工程702で、全ての文字がファイル名の基本名と一致するファイルが存在しなければ、処理は終了し、そのファイル名の基本名がロングネームとなる。しかし、工程702で重複があると、処理は工程704に進み、そこで重複の数が加算され、工程706で執刀の名前に「_」及びこれまで重複と判断された数が追加される。例えば、「SKIPFILE.EXE」というファイル名で最初の重複に遭遇した場合、そのファイル名は「SKIPFILE−1.EXE」に変更される。しかし、時として文字が置き換えられるショートネームとは異なり、ロングネームではより長い名前が許されているためロングネームの基本名を単に追加すれば良い。その後工程702に戻り、作成されたファイル名の基本名と重複するファイル名があるまで工程704及び706が繰り返される。ユニークな名前が得られれば、それがロングネームとなる。
図7に示される重複解決工程は例えば以下の疑似コードにより実行することができる。 conflicts=0
while all characters match
conflicts=conflicts+1
name(9)=“_”
name(10,11,...)=char(conflicts)
上記説明からアプリケーションでフォーマットしたファイル名(ショートネーム)の拡張子はオペレーティングシステムでフォーマットしたファイル名(ロングネーム)を作成するために完全に保管されることを理解されたい。その結果、「.EXE」等の拡張子の付いた特定の方法で処理されることを意味するファイルは参照されるフォーマットに関わりなくそのように扱われる。
【0023】
上述の複数ファイル名参照システムを使用することにより、どちらの名前を用いてもファイル名の翻訳手段を追加することなくファイルを正確に直接参照することができる。
以上、本発明を工程な実施例により説明したが、本発明は記載された実施例に限定されるものではない。本発明の精神内で実行及び修正ができることは当業者には明らかであろう。本発明の範囲は特許請求の範囲に限定されている。
【0024】
【発明の効果】
以上のように本発明によれば、コンピュータにより実行されるファイルの参照方法において、該コンピュータはオペレーティングシステムファイル名用のフォーマットを使用するオペレーティングシステムと、アプリケーションファイル名用のフォーマットとを有し、前記方法は、a)前記オペレーティングシステムファイル名用のフォーマットを有するオペレーティングシステムでフォーマットしたファイル名をユーザが作成するのに応じて、アプリケーションファイル名用のフォーマットを有するアプリケーションでフォーマットしたファイル名を作成する工程と;b)オペレーティングシステムでフォーマットしたファイル名のためのオペレーティングシステムエントリと、アプリケーションのファイル名のフォーマットを有するアプリケーションでフォーマットしたファイル名とを記憶する工程と;c)Bツリーにアクセスしてオペレーティングシステムでフォーマットしたファイル名を参照することによりオペレーティングシステムでフォーマットした前記ファイル名をアプリケーションでフォーマットしたファイル名に変換する工程と;よりなるので、フォーマットが異なる複数のファイル名を使用しても特別なファイル名翻訳手段を必要とせずに、目的とするファイルを直接を参照することができる。
【図面の簡単な説明】
【図1】本発明による複数ファイル名参照システムを含んだコンピュータシステムのブロック図である。
【図2】本発明の複数ファイル名参照システムにより実行される工程のフローチャートである。
【図3】図2に示される作成工程200のフローチャートである。
【図4】オペレーティングシステムでフォーマットした新たに作成した名前に基づきアプリケーションでフォーマットしたファイル名を作成すべく実行される図3の作成工程300のフローチャートである。
【図5】オペレーティングシステムでフォーマットしたファイル名から作成されるアプリケーションでフォーマットしたファイル名の基本名に適用される図3の重複解決工程の詳細なフローチャートである。
【図6】ユーザにより新たに作成されたアプリケーションでフォーマットしたファイル名からオペレーティングシステムでフォーマットしたファイル名の基本名を作成するのに実行される図3の基本名作成工程のフローチャートである。
【図7】アプリケーションでフォーマットされたユーザの作成したファイル名から作成されたオペレーティングシステムでフォーマットしたファイル名に適用される図3の重複解決工程302の詳細なフローチャートである。
【図8】本発明の複数ファイル名参照システムによりファイルシステムエントリ及びアプリケーションエントリを記憶するBツリー構造のブロック図である。
【図9】同じファイルを指定したアプリケーションエントリ及びオペレーティングシステムエントリを示す図である。
【図10】本発明により実行される変換工程のフローチャートである。
【符号の説明】
100 アプリケーション
102 コンピュータ
106 複数ファイル名参照システム
110 オペレーティングシステム

Claims (46)

  1. コンピュータにより実行されるファイルの参照方法であって、該コンピュータはオペレーティングシステムファイル名用のフォーマットを使用するオペレーティングシステムと、アプリケーションファイル名用のフォーマットとを有し、前記方法は、
    a)前記オペレーティングシステムファイル名用のフォーマットを有するオペレーティングシステムでフォーマットしたファイル名をユーザが作成するのに応じて、アプリケーションファイル名用のフォーマットを有するアプリケーションでフォーマットしたファイル名を作成する工程と;
    b)前記オペレーティングシステムでフォーマットしたファイル名のためのオペレーティングシステムエントリと、前記アプリケーションのファイル名のフォーマットを有するアプリケーションでフォーマットしたファイル名のためのアプリケーションエントリとをBツリーに記憶する工程であって、前記オペレーティングシステムエントリおよびアプリケーションエントリの両者は、ファイルのアドレスを含むような工程と;
    c)前記オペレーティングシステムでフォーマットしたファイル名の位置に基づいて同じファイルのアドレスを記憶するアプリケーションエントリについて前記BツリーをサーチすることでBツリーにアクセスしてオペレーティングシステムでフォーマットしたファイル名を参照することによりオペレーティングシステムでフォーマットした前記ファイル名をアプリケーションでフォーマットしたファイル名に変換する工程と;よりなるファイルの参照方法。
  2. 前記工程a)は前記オペレーティングシステムでフォーマットしたファイル名と同じ拡張子を有するアプリケーションでフォーマットしたファイル名を作成する工程を有することを特徴とする、請求項1記載の方法。
  3. 前記工程)は前記オペレーティングシステムでフォーマットしたフ
    ァイル名から基本名を作成し、次いでその基本名の拡張子以外の一部を修正してアプリケーションでフォーマットしたファイル名を作成する工程をさらに有することを特徴とする、請求項2記載の方法。
  4. 前記工程a)は前記オペレーティングシステムでフォーマットしたファイル名から全てのスペースを削除する工程を有することを特徴とする、請求項3記載の方法。
  5. 前記工程a)はオペレーティングシステムでフォーマットした前記ファイル名内の最初のピリオド以外のピリオドを全て削除する工程を有することを特徴とする、請求項3記載の方法。
  6. 前記工程a)は予め定義されている違法な文字を全てアンダースコアに置き換える工程を有することを特徴とする、請求項3記載の方法。
  7. 前記工程a)は主ファイル名を切り詰めると共に、オペレーティングシステムでフォーマットしたファイル名の拡張子を切り詰める工程を有することを特徴とする、請求項3記載の方法。
  8. 前記工程a)はオペレーティングシステムでフォーマットした主ファイル名が既存のファイル名と重複していれば、オペレーティングシステムでフォーマットしたファイル名がユニークとなるまで前記主ファイル名を修正する工程をさらに有することを特徴とする、請求項3記載の方法。
  9. オペレーティングシステムでフォーマットしたファイル名とアプリケーションでフォーマットしたファイル名の両方をファイルに記憶する工程d)を更に有することを特徴とする、請求項1記載の方法。
  10. 前記工程c)は前記オペレーティングシステムエントリが記憶されているリーフノード内の全てのエントリをサーチする工程を有することを特徴とする、請求項1記載の方法。
  11. 前記工程c)は前記オペレーティングシステムでフォーマットしたファイル名と共通の文字を有する前記Bツリー内の全てのエントリをサーチする工程を有することを特徴とする、請求項1記載の方法。
  12. 前記工程c)は前記オペレーティングシステムのエントリに記憶されているファイルのアドレスが見つかるまで前記Bツリー内の全てのエントリをランダムにサーチする工程を有することを特徴とする、請求項1記載の方法。
  13. コンピュータにより実行されるファイルの参照方法であって、該コンピュータはオペレーティングシステムファイル名用のフォーマットを使用するオペレーティングシステムと、アプリケーションファイル名用のフォーマットとを有し、前記方法は、
    a)前記アプリケーションファイル名用のフォーマットを有するアプリケーションでフォーマットしたファイル名をユーザが作成するのに応じて、オペレーティングシステムファイル名用のフォーマットを有するオペレーティングシステムでフォーマットしたファイル名を作成する工程と;
    b)前記オペレーティングシステムでフォーマットしたファイル名のためのオペレーティングシステムエントリと、前記アプリケーションでフォーマットしたファイル名のためのアプリケーションエントリとをBツリーに記憶する工程であって、前記オペレーティングシステムエントリおよびアプリケーションエントリの両者は、ファイルのアドレスを含むような工程と;
    c)前記アプリケーションでフォーマットしたファイル名の位置に基づいて同じファイルのアドレスを記憶するオペレーティングシステムエントリについて前記BツリーをサーチすることでBツリーにアクセスしてアプリケーションでフォーマットしたファイル名を参照することによりアプリケーションでフォーマットした前記ファイル名をオペレーティングシステムでフォーマットしたファイル名に変換する工程と;よりなるファイルの参照方法。
  14. 前記工程a)は前記アプリケーションでフォーマットしたファイル名と同じ拡張子を有するオペレーティングシステムでフォーマットしたファイル名を作成する工程を有することを特徴とする、請求項13記載の方法。
  15. 前記工程a)は前記アプリケーションでフォーマットしたファイル名から基本名を作成し、次いでその基本名の拡張子以外の一部を修正してオペレーティングシステムでフォーマットしたファイル名を作成する工程を有することを特徴とする、請求項14記載の方法。
  16. 前記工程a)は前記オペレーティングシステムのファイル名の基本名を前記アプリケーションでフォーマットしたファイル名と等しく設定する工程を有することを特徴とする、請求項1記載の方法。
  17. 前記工程a)は前記アプリケーションでフォーマットしたファイル名が既存のファイル名と重複していれば、そのアプリケーションでフォーマットしたファイル名がユニークになるまで主ファイル名を追加する工程を有することを特徴とする、請求項16記載の方法。
  18. 前記オペレーティングシステムでフォーマットしたファイル名と前記アプリケーションでフォーマットしたファイル名の両方をファイルに記憶する工程d)を更に有することを特徴とする、請求項13記載の方法。
  19. 前記工程c)は前記アプリケーションエントリが記憶されているリーフノード内の全てのエントリをサーチする工程を有することを特徴とする、請求項13記載の方法。
  20. 前記工程c)は前記工程a)で実行される作成に従い、前記アプリケーションでフォーマットしたファイル名と共通の文字を有するBツリー内の全てのエントリをサーチする工程を有することを特徴とする、請求項13記載の方法。
  21. 前記工程c)は前記アプリケーションエントリに記憶されているファイルのアドレスが見つかるまでBツリーの全てのエントリをランダムにサーチすることを特徴とする、請求項13記載の方法。
  22. コンピュータに記憶されているファイルを参照するための複数ファイル名参照システムであって、該コンピュータはオペレーティングシステムのファイル名用のフォーマットを有したオペレーティングシステムと、アプリケーションのファイル名用のフォーマットを使用したアプリケーションとを有し、前記複数ファイル名参照システムは、
    前記オペレーティングシステムのファイル名用のフォーマットを有するオペレーティングシステムでフォーマットしたファイル名をユーザが作成することに応じて、前記アプリケーションのファイル名用のフォーマットを有するアプリケーションでフォーマットしたファイル名を作成するための作成手段と;
    前記オペレーティングシステムでフォーマットしたファイル名のためのオペレーティングシステムエントリと、前記アプリケーションでフォーマットしたファイル名のためのアプリケーションエントリとをBツリーに記憶するための記憶手段であって、前記オペレーティングシステムエントリおよびアプリケーションエントリの両者は、ファイルのアドレスを含むような記憶手段と;
    前記オペレーティングシステムでフォーマットしたファイル名の位置に基づいて同じファイルのアドレスを記憶するアプリケーションエントリについて前記Bツリーをサーチすることで前記Bツリーにアクセスして前記オペレーティングシステムでフォーマットしたファイル名を参照することにより前記オペレーティングシステムでフォーマットしたファイル名を前記アプリケーションでフォーマットしたファイル名に変換するための変換手段と;よりなる複数ファイル名参照システム。
  23. 前記作成手段は前記オペレーティングシステムでフォーマットしたファイル名と同じ拡張子を有するアプリケーションでフォーマットしたファイル名を作成することを特徴とする、請求項22記載の複数ファイル名参照システム。
  24. 前記作成手段は前記オペレーティングシステムでフォーマットしたファイル名から基本名を作成し、次いでその基本名の拡張子以外の一部を修正して前記アプリケーションでフォーマットしたファイル名を作成することを特徴とする、請求項23記載の複数ファイル名参照システム。
  25. 前記作成手段は、前記オペレーティングシステムでフォーマットしたファイル名から全てのスペースを削除し、オペレーティングシステムでフォーマットしたファイル名内の最初のピリオド以外のピリオドを全て削除し、予め違法と定義されている全ての文字をアンダースコアに置き換え、オペレーティングシステムでフォーマットしたファイル名内の主ファイル名及び拡張子を切り詰めることを特徴とする、請求項24記載の複数ファイル名参照システム。
  26. 前記作成手段は、前記オペレーティングシステムでフォーマットしたファイル名が既存のファイル名と重複していれば、該オペレーティングシステムでフォーマットしたファイル名がユニークとなるまでオペレーティングシステムでフォーマットしたファイル名の主ファイル名をさらに修正することを特徴とする、請求項25記載の複数ファイル名参照システム。
  27. 前記オペレーティングシステムでフォーマットしたファイル名と前記アプリケーションでフォーマットしたファイル名の両方をファイルに記憶するためのファイル名記憶手段を更に有することを特徴とする、請求項22記載の複数ファイル名参照システム。
  28. 前記変換手段は前記オペレーティングシステムのエントリが記憶されているリーフノード内の全てのエントリをサーチすることを特徴とする、請求項22記載の複数ファイル名参照システム。
  29. 前記変換手段は前記オペレーティングシステムでフォーマットしたファイル名に共通な文字を有する前記Bツリー内の全てのエントリをサーチすることを特徴とする、請求項22記載の複数ファイル名参照システム。
  30. 前記変換手段は前記オペレーティングシステムのエントリに記憶されているファイルのアドレスが見つかるまで、Bツリー内の全てのエントリをランダムにサーチすることを特徴とする、請求項22記載の複数ファイル名参照システム。
  31. コンピュータに記憶されているファイルを参照するための複数ファイル名参照システムであって、該コンピュータはオペレーティングシステムのファイル名用のフォーマットを有したオペレーティングシステムと、アプリケーションのファイル名用のフォーマットを使用したアプリケーションとを有し、前記複数ファイル名参照システムは、
    前記アプリケーションのファイル名用のフォーマットを有するアプリケーションでフォーマットしたファイル名をユーザが作成することに応じて、前記オペレーティングシステムのファイル名用のフォーマットを有するオペレーティングシステムでフォーマットしたファイル名を作成するための作成手段と;
    前記オペレーティングシステムでフォーマットしたファイル名のためのオペレーティングシステムエントリと、前記アプリケーションでフォーマットしたファイル名のためのアプリケーションエントリとをBツリーに記憶するための記憶手段であって、前記オペレーティングシステムエントリおよびアプリケーションエントリの両者はファイルのアドレスを含むような記憶手段と;
    前記アプリケーションでフォーマットしたファイル名の位置に基づいて同じファイルのアドレスを記憶するオペレーティングシステムエントリについて前記Bツリーをサーチすることで前記Bツリーにアクセスして前記アプリケーションでフォーマットしたファイル名を参照することにより前記アプリケーションでフォーマットしたファイル名を前記オペレーティングシステムでフォーマットしたファイル名に変換するための変換手段と;よりなる複数ファイル名参照システム。
  32. 前記作成手段は前記アプリケーションでフォーマットしたファイル名と同じ拡張子を有するオペレーティングシステムでフォーマットしたファイル名を作成することを特徴とする、請求項31記載の複数ファイル名参照システム。
  33. 前記作成手段は前記アプリケーションでフォーマットしたファイル名から基本名を作成し、次いでその基本名の拡張子以外の一部を修正して前記オペレーティングシステムでフォーマットしたファイル名を作成することを特徴とする、請求項32記載の複数ファイル名参照システム。
  34. 前記作成手段は前記アプリケーションでフォーマットしたファイル名と等しい基本名を設定し、次いで前記アプリケーションでフォーマットしたファイル名の主ファイル名を追加して前記オペレーティングシステムのファイル名を作成することを特徴とする、請求項32記載の複数ファイル名参照システム。
  35. 前記オペレーティングシステムでフォーマットしたファイル名と前記アプリケーションでフォーマットしたファイル名の両方をファイルに記憶するためのファイル名記憶手段を更に有することを特徴とする、請求項31記載の複数ファイル名参照システム。
  36. 前記変換手段は前記アプリケーションのエントリが記憶されているリーフノード内の全てのエントリをサーチすることを特徴とする、請求項31記載の複数ファイル名参照システム。
  37. 前記変換手段は前記アプリケーションでフォーマットしたファイル名に共通な文字を有する前記Bツリー内の全てのエントリをサーチすることを特徴とする、請求項31記載の複数ファイル名参照システム。
  38. 前記変換手段は前記アプリケーションのエントリに記憶されているファイルのアドレスが見つかるまで、Bツリー内の全てのエントリをランダムにサーチすることを特徴とする、請求項31記載の複数ファイル名参照システム。
  39. コンピュータシステムにおいてツリー構造を使用してファイルにアクセスするための方法において、前記コンピュータシステムは、メモリを有しており、前記ツリー構造は、ファイルを識別するファイル名および前記メモリにおけるファイルの位置を指示するファイル記憶指示子を各々記憶する複数のエントリファイルを有しており、前記ファイル名は、長いファイル名フォーマットにおける長いファイル名であるか、または、短いファイル名フォーマットにおける短いファイル名であるかであり、前記方法は、
    ファイルを作成するときに、長いファイル名フォーマットにおける長いファイル名を受け取る工程と、
    前記受け取った長いファイル名を、前記メモリにおけるファイルの位置を指示するファイル記憶指示子と共に、前記ツリー構造の第1のファイルエントリに記憶する工程と、
    短いファイル名フォーマットにおける短いファイル名を自動的に作成する工程と、
    前記作成した短いファイル名を、前記メモリにおけるファイルの位置を指示するファイル記憶指示子と共に、前記ツリー構造の第2のファイルエントリに記憶する工程と、
    含み、前記第2のファイルエントリは、前記第1のファイルエントリとは異なり、前記ファイルは、前記ファイル名に対応するファイルエントリを前記ツリー構造において探すことによりどちらかのファイル名を使用してアクセスされうるようにしたことを特徴とする方法。
  40. 前記短いファイル名を自動的に作成する工程は、前記長いファイル名から前記短いファイル名を導き出すことを含む請求項39記載の方法。
  41. 前記短いファイル名を自動的に作成する工程は、既存のファイル名と重複するときに前記短いファイル名を修正することを含む請求項39記載の方法。
  42. 前記長いファイル名で与えられるとき、前記短いファイル名を検索することを含む請求項39記載の方法。
  43. コンピュータシステムにおいてツリー構造を使用してファイルにアクセスする方法において、前記コンピュータシステムは、メモリを有しており、前記ツリー構造は、ファイルを識別するファイル名および前記メモリにおけるファイルの位置を指示するファイル記憶指示子を各々記憶する複数のファイルエントリを有しており、前記ツリー構造は、アクセスされるべきファイルを識別する長いファイル名フォーマットにおける長いファイル名と、アクセスされるべきファイルを識別する短いファイル名フォーマットにおける短いファイル名とを含んでおり、前記方法は、
    要求されたファイル名のファイルにアクセスする要求を受け取るとき、前記要求されたファイル名が短いファイル名でも長いファイル名でも該要求されたファイル名が記憶されている前記ツリー構造における前記ファイルエントリを探す工程と、
    前記探し出されたファイルエントリに記憶されたファイル記憶指示子を検索する工程と、
    前記検索されたファイル記憶指示子を使用して前記メモリにおける前記ファイルにアクセスする工程と、
    を含むことを特徴とする方法。
  44. 前記長いファイル名で与えられるとき短いファイル名を検索する工程とをさらに含む請求項43記載の方法。
  45. Bツリーを使用してファイルにアクセスするためのコンピュータシステムであって、該コンピュータシステムは、メモリを有しており、前記Bツリーは、ファイルを識別するファイル名と、前記メモリにおけるファイルの位置を指示するファイル記憶指示子とを各々記憶する複数のファイルエントリを有しており、前記ファイル名は、長いファイル名フォーマットにおける長いファイル名であるか、または、短いファイル名フォーマットにおける短いファイル名であるかであり、前記コンピュータシステムは、
    ファイルを作成するとき、長いファイル名フォーマットにおける長いファイル名を受け取り、該受け取った長いファイル名を、前記メモリにおけるファイルの位置を指示するファイル記憶指示子と共に前記Bツリーの第1のファイルエントリに記憶し、短いファイル名フォーマットにて短いファイル名を自動的に作成し、該作成した短いファイル名を、前記メモリにおけるファイルの位置を指示するファイル記憶指示子と共に、前記Bツリーの第2のファイルエントリに記憶する手段であって、前記第2のファイルエントリは、前記第1のファイルエントリとは異なるような手段と、
    前記ファイルにアクセスするとき、前記長いファイル名を受け取る際に、該長いファイル名が記憶されている前記Bツリーにおける前記第1のファイルエントリを探し、該探し出された第1のファイルエントリに記憶された前記ファイル記憶指示子を検索し、該検索されたファイル記憶指示子を使用して前記メモリにおける前記ファイルにアクセスし、前記短いファイル名を受け取る際に、該短いファイル名が記憶されている前記Bツリーにおける前記第2のファイルエントリを探し、該探し出された第2のファイルエントリに記憶された前記ファイル記憶指示子を検索し、該検索されたファイル記憶指示子を使用して前記メモリにおける前記ファイルにアクセスする手段と、
    を備えることを特徴とするコンピュータシステム。
  46. 前記長いファイル名で与えられるとき前記短いファイル名を検索する要求を受け取る手段と、該受け取った要求に応答して、前記与えられた長いファイル名を含むエントリを前記Bツリーにおいて探す手段と、該探し出されたエントリに記憶された前記ファイル記憶指示子を検索する手段と、該検索されたファイル記憶指示子を含む別のエントリを前記Bツリーにおいて探す手段と、該探し出された別のエントリから前記要求された短いファイル名を検索する手段とをさらに備える請求項45記載のコンピュータシステム。
JP16714093A 1992-07-06 1993-07-06 複数ファイル名参照システム Expired - Lifetime JP3548197B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/909984 1992-07-06
US07/909,984 US5745902A (en) 1992-07-06 1992-07-06 Method and system for accessing a file using file names having different file name formats

Publications (2)

Publication Number Publication Date
JPH06187211A JPH06187211A (ja) 1994-07-08
JP3548197B2 true JP3548197B2 (ja) 2004-07-28

Family

ID=25428142

Family Applications (1)

Application Number Title Priority Date Filing Date
JP16714093A Expired - Lifetime JP3548197B2 (ja) 1992-07-06 1993-07-06 複数ファイル名参照システム

Country Status (7)

Country Link
US (1) US5745902A (ja)
EP (1) EP0578205B1 (ja)
JP (1) JP3548197B2 (ja)
KR (1) KR940006029A (ja)
AT (1) ATE190738T1 (ja)
CA (1) CA2099915C (ja)
DE (1) DE69328053T2 (ja)

Families Citing this family (91)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6230211B1 (en) * 1993-01-19 2001-05-08 Canon Kabushiki Kaisha Container-based method for exchanging information between computer processes
US6286013B1 (en) 1993-04-01 2001-09-04 Microsoft Corporation Method and system for providing a common name space for long and short file names in an operating system
CA2120461C (en) * 1993-04-01 2009-09-22 Aaron R. Reynolds Common name space for long and short filenames
JP3402659B2 (ja) * 1993-05-13 2003-05-06 オリンパス光学工業株式会社 画像取り扱い装置
SE503021C2 (sv) * 1994-06-13 1996-03-11 Ericsson Telefon Ab L M Driftstödsnät för ett telekommunikationsnät innefattande nätelement, telekommunikationsnät innefattande nätelement, nätelement samt sätt att strukturera programvara i ett nätelement
EP0821309A4 (en) * 1996-02-09 2008-02-27 Sony Corp INFORMATION PROCESSOR, FILENAMEN CHANGE PROCEDURE AND RECORDING MEDIUM STORED ON A FILENAMEN CHANGE PROGRAM
JP3952518B2 (ja) * 1996-03-29 2007-08-01 株式会社日立製作所 多次元データ処理方法
JPH09330259A (ja) * 1996-06-10 1997-12-22 Toshiba Corp コンピュータシステム及びそのファイルアクセス方法
US5920867A (en) * 1996-12-06 1999-07-06 International Business Machines Corporation Data management system having data management configuration
US6047283A (en) * 1998-02-26 2000-04-04 Sap Aktiengesellschaft Fast string searching and indexing using a search tree having a plurality of linked nodes
US6108649A (en) * 1998-03-03 2000-08-22 Novell, Inc. Method and system for supplanting a first name base with a second name base
KR100539891B1 (ko) * 1998-06-27 2006-03-03 삼성전자주식회사 동명파일 생성억제방법
US6216162B1 (en) * 1998-10-19 2001-04-10 International Business Machines Corp. Extending alias support to heterogeneous servers
US6249782B1 (en) * 1998-12-17 2001-06-19 Apple Computer, Inc. System and method for reducing file name length and for retrieving the reduced file name entitled files
US6405325B1 (en) * 1999-01-30 2002-06-11 Inventec Corp. Method and tool for restoring crashed operation system of computer
US6578054B1 (en) * 1999-10-04 2003-06-10 Microsoft Corporation Method and system for supporting off-line mode of operation and synchronization using resource state information
KR100618734B1 (ko) * 1999-10-19 2006-08-31 엘지전자 주식회사 데이터 파일 관리방법
KR100654023B1 (ko) * 1999-12-10 2006-12-04 엘지전자 주식회사 기록 디지털 스트림의 파일 관리방법
US7421395B1 (en) * 2000-02-18 2008-09-02 Microsoft Corporation System and method for producing unique account names
JP2001256296A (ja) * 2000-03-09 2001-09-21 Just Planning:Kk 飲食店用データ処理管理プロセス及びシステム
US6424976B1 (en) * 2000-03-23 2002-07-23 Novell, Inc. Method of implementing a forward compatibility network directory syntax
JP2002135692A (ja) * 2000-10-27 2002-05-10 Toshiba Corp 電子カメラ装置及びファイル管理方法
JP2002140219A (ja) * 2000-11-01 2002-05-17 Toshiba Corp ファイル処理方法、ファイル処理装置、ファイル管理用記録媒体
JP4142846B2 (ja) * 2000-12-27 2008-09-03 株式会社東芝 電子カメラ装置とその制御方法
US7047420B2 (en) * 2001-01-17 2006-05-16 Microsoft Corporation Exclusive encryption
JP2002258853A (ja) * 2001-03-06 2002-09-11 Yamaha Corp ファイル名表示切替装置及び方法並びに記憶媒体
US7043637B2 (en) 2001-03-21 2006-05-09 Microsoft Corporation On-disk file format for a serverless distributed file system
US7062490B2 (en) * 2001-03-26 2006-06-13 Microsoft Corporation Serverless distributed file system
US6981138B2 (en) 2001-03-26 2005-12-27 Microsoft Corporation Encrypted key cache
KR100906856B1 (ko) * 2001-04-06 2009-07-08 소니 가부시끼 가이샤 디지털 카메라 및 데이터 전송 방법
US6988124B2 (en) * 2001-06-06 2006-01-17 Microsoft Corporation Locating potentially identical objects across multiple computers based on stochastic partitioning of workload
JP4492838B2 (ja) * 2001-08-10 2010-06-30 理想科学工業株式会社 印刷情報記憶方法および装置
US7062710B2 (en) * 2002-01-16 2006-06-13 Vmp Mortgage Solutions, Inc. File transforming output engine having a decomposer and multiple writers
US6959309B2 (en) * 2002-01-31 2005-10-25 Freescale Semiconductor, Inc. Interface between programming languages and method therefor
US6909910B2 (en) * 2002-02-01 2005-06-21 Microsoft Corporation Method and system for managing changes to a contact database
US7370065B1 (en) * 2002-08-21 2008-05-06 Adobe Systems Incorporated Renaming multiple files
JP2004185450A (ja) * 2002-12-05 2004-07-02 Oki Electric Ind Co Ltd ロングファイルネームの管理方法
US20040177159A1 (en) * 2003-03-04 2004-09-09 Webpost Enterprises Ltd. Systems for uploading and automatically processing computer files
JP2004280283A (ja) * 2003-03-13 2004-10-07 Hitachi Ltd 分散ファイルシステム、分散ファイルシステムサーバ及び分散ファイルシステムへのアクセス方法
KR20050118731A (ko) * 2003-04-14 2005-12-19 코닌클리케 필립스 일렉트로닉스 엔.브이. 유니버셜 드라이브장치용 포맷 매핑 방식
US7149728B1 (en) * 2003-04-28 2006-12-12 Microsoft Corporation Recursive file backup
US7644376B2 (en) * 2003-10-23 2010-01-05 Microsoft Corporation Flexible architecture for notifying applications of state changes
US20050102258A1 (en) * 2003-11-12 2005-05-12 Tecu Kirk S. Saving a file as multiple files
US20060265329A1 (en) * 2003-11-21 2006-11-23 Realnetworks System and method for automatically transferring dynamically changing content
US8996420B2 (en) 2003-11-21 2015-03-31 Intel Corporation System and method for caching data
US8738537B2 (en) * 2003-11-21 2014-05-27 Intel Corporation System and method for relicensing content
US20060259436A1 (en) * 2003-11-21 2006-11-16 Hug Joshua D System and method for relicensing content
US7451153B2 (en) 2004-01-26 2008-11-11 Nokia Corporation Method and apparatus for symmetrical filename encoding
US7907492B1 (en) 2004-03-17 2011-03-15 Doug Carson & Associates, Inc. Data storage medium with improved multi-session recording format
US7509343B1 (en) * 2004-06-09 2009-03-24 Sprint Communications Company L.P. System and method of collecting and reporting system performance metrics
US7617501B2 (en) 2004-07-09 2009-11-10 Quest Software, Inc. Apparatus, system, and method for managing policies on a computer having a foreign operating system
JP4275611B2 (ja) * 2004-12-02 2009-06-10 ソニー株式会社 再生装置、再生方法および再生プログラム、記録媒体、ならびに、データ構造体
US8606830B2 (en) * 2004-12-17 2013-12-10 Microsoft Corporation Contiguous file allocation in an extensible file system
US8321439B2 (en) * 2004-12-17 2012-11-27 Microsoft Corporation Quick filename lookup using name hash
US9639554B2 (en) * 2004-12-17 2017-05-02 Microsoft Technology Licensing, Llc Extensible file system
US7873596B2 (en) 2006-05-23 2011-01-18 Microsoft Corporation Extending cluster allocations in an extensible file system
US7493314B2 (en) * 2005-01-10 2009-02-17 Cyberlink Corp. System and method for providing access to computer files across computer operating systems
US7676797B2 (en) * 2005-01-31 2010-03-09 Computer Associates Think, Inc. System and method for managing long names in an application programming interface
US8516093B2 (en) 2005-04-22 2013-08-20 Intel Corporation Playlist compilation system and method
US20070067309A1 (en) 2005-08-05 2007-03-22 Realnetworks, Inc. System and method for updating profiles
US7904949B2 (en) * 2005-12-19 2011-03-08 Quest Software, Inc. Apparatus, systems and methods to provide authentication services to a legacy application
US8156090B1 (en) * 2005-12-22 2012-04-10 Unisys Corporation Maintaining file name uniqueness in an application development environment of a computing system
EP1814046A3 (en) * 2006-01-25 2008-12-24 Océ-Technologies B.V. System and method providing a file list display function and a file name generation function
US8087075B2 (en) * 2006-02-13 2011-12-27 Quest Software, Inc. Disconnected credential validation using pre-fetched service tickets
JP2007249754A (ja) * 2006-03-17 2007-09-27 Internatl Business Mach Corp <Ibm> 情報処理装置、情報処理方法およびプログラム
US8429712B2 (en) 2006-06-08 2013-04-23 Quest Software, Inc. Centralized user authentication system apparatus and method
WO2008027035A1 (en) * 2006-08-28 2008-03-06 Thomson Licensing Method and apparatus for multi-format data exchange
US8086710B2 (en) * 2006-10-30 2011-12-27 Quest Software, Inc. Identity migration apparatus and method
US7895332B2 (en) * 2006-10-30 2011-02-22 Quest Software, Inc. Identity migration system apparatus and method
US7769779B2 (en) * 2006-11-02 2010-08-03 Microsoft Corporation Reverse name mappings in restricted namespace environments
US20080109466A1 (en) * 2006-11-02 2008-05-08 Microsoft Corporation Virtual Deletion In Merged Registry keys
KR20080047129A (ko) * 2006-11-24 2008-05-28 삼성전자주식회사 파일명 단축 장치 및 방법
US8212819B2 (en) * 2007-05-22 2012-07-03 Yamaha Corporation Display control apparatus
CN101169796B (zh) * 2007-11-20 2012-01-11 中兴通讯股份有限公司 一种存储文件名及判断文件名超长的方法
GB2455983A (en) * 2007-12-24 2009-07-01 Symbian Software Ltd Assigning and locating directory names or file names for in a file system
JP4999791B2 (ja) * 2008-06-30 2012-08-15 キヤノン株式会社 情報処理装置、その制御方法、及びプログラム
US8024719B2 (en) * 2008-11-03 2011-09-20 Advanced Micro Devices, Inc. Bounded hash table sorting in a dynamic program profiling system
US9298480B2 (en) * 2009-02-26 2016-03-29 Red Hat, Inc. Programmatic editing of text files
US8341652B2 (en) * 2009-02-26 2012-12-25 Red Hat, Inc. Method for programmatic editing of configuration files
US9171004B2 (en) * 2009-03-09 2015-10-27 Sandisk Il Ltd. System and method to respond to a data file deletion instruction
FR2946211B1 (fr) * 2009-05-28 2011-05-27 Sagem Comm Procede de traitement de document par un ordinateur distant, systeme et dispositif amovible connectable a chaud pour la mise en oeuvre de ce procede
US8255984B1 (en) 2009-07-01 2012-08-28 Quest Software, Inc. Single sign-on system for shared resource environments
JP5599327B2 (ja) * 2011-01-20 2014-10-01 日置電機株式会社 測定装置およびショートファイルネーム決定方法
JP5594269B2 (ja) * 2011-09-29 2014-09-24 コニカミノルタ株式会社 ファイル名作成装置、画像形成装置、およびファイル名作成プログラム
GB2507751A (en) 2012-11-07 2014-05-14 Ibm Storing data files in a file system which provides reference data files
US20140157324A1 (en) * 2012-11-30 2014-06-05 Comcast Cable Communications, Llc Content Identification and Management
CN103064934B (zh) * 2012-12-24 2016-08-17 珠海市君天电子科技有限公司 一种安卓文件的管理方法和装置
CN104572059B (zh) * 2013-10-29 2020-04-10 中兴通讯股份有限公司 一种修改应用名称的处理方法及装置
CN103593330A (zh) * 2013-11-01 2014-02-19 深圳报业集团印务有限公司 一种外报文件名格式化处理的方法
CN105808246A (zh) * 2016-03-01 2016-07-27 宇龙计算机通信科技(深圳)有限公司 桌面图标文件夹的名称切换方法、装置及电子设备
US10706101B2 (en) 2016-04-14 2020-07-07 Advanced Micro Devices, Inc. Bucketized hash tables with remap entries

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4945475A (en) * 1986-10-30 1990-07-31 Apple Computer, Inc. Hierarchical file system to provide cataloging and retrieval of data
JP2606222B2 (ja) * 1987-08-06 1997-04-30 富士ゼロックス株式会社 ファイル名の長さ制限拡張方式
US5307494A (en) * 1987-08-05 1994-04-26 Fuji Xerox Co., Ltd. File name length augmentation method
US5179703A (en) * 1987-11-17 1993-01-12 International Business Machines Corporation Dynamically adaptive environment for computer programs
US5129088A (en) * 1987-11-30 1992-07-07 International Business Machines Corporation Data processing method to create virtual disks from non-contiguous groups of logically contiguous addressable blocks of direct access storage device
US4945476A (en) * 1988-02-26 1990-07-31 Elsevier Science Publishing Company, Inc. Interactive system and method for creating and editing a knowledge base for use as a computerized aid to the cognitive process of diagnosis
US4999766A (en) * 1988-06-13 1991-03-12 International Business Machines Corporation Managing host to workstation file transfer
JPH028943A (ja) * 1988-06-27 1990-01-12 Fuji Electric Co Ltd ファイル名の動的変換方式
JPH02165241A (ja) * 1988-12-19 1990-06-26 Toshiba Corp ファイルアクセス方式
CA2014799A1 (en) * 1989-05-08 1990-11-08 John W. Whisler System and method for reading and writing disks formatted for an operating system foreign to the host computer
US5291595A (en) * 1989-05-22 1994-03-01 Martins Augusto B Batch/application program processing
JPH0317753A (ja) * 1989-06-14 1991-01-25 Fuji Xerox Co Ltd ファイルアクセス方式
US5485606A (en) * 1989-07-10 1996-01-16 Conner Peripherals, Inc. System and method for storing and retrieving files for archival purposes
JPH0368042A (ja) * 1989-08-07 1991-03-25 Nec Corp ファイルアクセス方式
US5317733A (en) * 1990-01-26 1994-05-31 Cisgem Technologies, Inc. Office automation system for data base management and forms generation
US5202982A (en) * 1990-03-27 1993-04-13 Sun Microsystems, Inc. Method and apparatus for the naming of database component files to avoid duplication of files
US5359724A (en) * 1992-03-30 1994-10-25 Arbor Software Corporation Method and apparatus for storing and retrieving multi-dimensional data in computer memory

Also Published As

Publication number Publication date
EP0578205A2 (en) 1994-01-12
US5745902A (en) 1998-04-28
CA2099915A1 (en) 1994-01-07
CA2099915C (en) 2003-09-16
JPH06187211A (ja) 1994-07-08
EP0578205A3 (en) 1994-05-18
EP0578205B1 (en) 2000-03-15
KR940006029A (ko) 1994-03-22
DE69328053D1 (de) 2000-04-20
DE69328053T2 (de) 2000-07-13
ATE190738T1 (de) 2000-04-15

Similar Documents

Publication Publication Date Title
JP3548197B2 (ja) 複数ファイル名参照システム
US10515052B2 (en) File system that supports both case sensitive and case insensitive directory lookup
EP2324440B1 (en) Providing data structures for determining whether keys of an index are present in a storage system
US7228299B1 (en) System and method for performing file lookups based on tags
US5590320A (en) Computer file directory system
US7593938B2 (en) Systems and methods of directory entry encodings
US5754844A (en) Method and system for accessing chunks of data using matching of an access tab and hashing code to generate a suggested storage location
US6594665B1 (en) Storing hashed values of data in media to allow faster searches and comparison of data
US7752226B1 (en) Reverse pathname lookup by inode identifier
US6370549B1 (en) Apparatus and method for searching for a file
US10452716B2 (en) Optimizing complex path endpoint resolution
US7720869B2 (en) Hierarchical structured abstract file system
US7769779B2 (en) Reverse name mappings in restricted namespace environments
US8898167B2 (en) Method of accessing files in electronic devices
US20060059204A1 (en) System and method for selectively indexing file system content
JP2004038960A (ja) ファイルシステムフィルタドライバのためのファイルネームを管理するシステム及び方法
JP2010157204A (ja) 検索可能なブロックを用いた連想記憶システムおよびその方法
JP2007527074A (ja) ファイルシステム内での効率的なファイルコンテンツをサーチするためのシステム及び方法
US8086638B1 (en) File handle banking to provide non-disruptive migration of files
US9971607B1 (en) Method of accessing files in electronic devices
JPH0358249A (ja) フアイルのアクセス方法
US20030154221A1 (en) System and method for accessing file system entities
KR101828466B1 (ko) 파일시스템을 기반으로 하는 저장장치에서 객체기반 스토리지 인터페이스를 제공하는 방법 및 장치
GB2403316A (en) Accessing files within different directory hierarchies
US9020995B2 (en) Hybrid relational, directory, and content query facility

Legal Events

Date Code Title Description
A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20031201

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20031204

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040301

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040416

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20090423

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20090423

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100423

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110423

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20120423

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20120423

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20130423

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20130423

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20140423

Year of fee payment: 10

EXPY Cancellation because of completion of term