(Translated by https://www.hiragana.jp/)
長いファイル名 - Wikipedia コンテンツにスキップ

ながいファイルめい

出典しゅってん: フリー百科ひゃっか事典じてん『ウィキペディア(Wikipedia)』
印刷いんさつようページはサポート対象たいしょうがいです。表示ひょうじエラーが発生はっせいする可能かのうせいがあります。ブラウザーのブックマークを更新こうしんし、印刷いんさつにはブラウザーの印刷いんさつ機能きのう使用しようしてください。

ながいファイルめいえい: Long filenameLFN)のサポートは、DOSで使用しようされる8.3形式けいしきファイルめいみじかいファイルめい命名めいめい方式ほうしきマイクロソフトによる下位かい互換ごかんせいのある拡張かくちょうである。ロングファイルめいロングファイルネームとも。ながいファイルめいは、.jpg, .tif, .htm, .xhtなどの特殊とくしゅ短縮たんしゅくめいではなく、.jpeg, .tiff, .html, .xhtmlなどのほかのオペレーティングシステムで一般いっぱんてきながいファイルめい拡張子かくちょうしふくむ、よりわかりやすくすることができる。この標準ひょうじゅんは、1994ねんWindows NT 3.5最初さいしょ実装じっそうされて以来いらいファイルアロケーションテーブル(FAT)ファイルシステム共通きょうつうである。

ふるいオペレーティングシステムとの互換ごかんせい維持いじするために、マイクロソフトは、ながいファイルめいから8.3形式けいしきのファイルめい生成せいせいし(たとえば Microsoft.txtからMICROS~1.TXT)、それをファイルに関連付かんれんづける方法ほうほう考案こうあんした。

互換ごかんせい問題もんだい

マイクロソフトは、FATファイルシステムにLFNのサポートを実装じっそうし、なが名前なまえ格納かくのうするためにボリュームラベルタイプのかくしディレクトリエントリを使用しようしている。この方式ほうしきVFATばれ、ボリュームラベルは、通常つうじょう、プログラムやオペレーティングシステム(OS)コンポーネントによって無視むしされるため、互換ごかんせいたもつために選択せんたくされた。ふるいOSじょう動作どうさするプログラムは、つづみじかいファイルめいでアクセスでき、あたらしいLFN対応たいおうのOSやプログラムは、なが名前なまえ使用しようすることができる。

LFNサポートがWindows 95かたちDOSベースのオペレーティングシステムにはじめて導入どうにゅうされたとき、ふるいプログラムはいくつかの問題もんだいこした。たとえば、WindowsがDOSモードのときにセクタレベルのディレクトリ操作そうさおこなうDOSプログラムは、ながいファイルめい情報じょうほう破壊はかいする可能かのうせいがあるため、デフォルトでは、このモードでハードディスクへのセクタレベルのアクセスは禁止きんしされていた。

プレーンDOSで起動きどうすると、VFAT LFNドライバがインストールされていないかぎり、ながいファイルめい表示ひょうじされない。マイクロソフトは、Windows 3.1x(Windows for Workgroups)のファイル管理かんりソフトであるFile ManagerあたらしいオペレーティングシステムのシェルであるWindows Explorerによって廃止はいしされた)をふくむ、ふるいプログラムのおおくでLFNをサポートしなかった。Windows NTはNT 3.1のリリース以降いこうのNTFSファイルシステムでLFNをサポートし、File ManagerをふくむすべてのユーティリティはLFNをサポートするように更新こうしんされた。NT 3.5ではWindows 95の準備じゅんびとしてFAT LFNのサポートが追加ついかされた。ただし、File ManagerのWindows 95バージョンはWindows for Workgroups 3.11から提供ていきょうされた。

OS/2は、FATファイルシステムようのLFNを.LONGNAME拡張かくちょう属性ぞくせい格納かくのうしているが、これはマイクロソフトの実装じっそう互換ごかんせいがなく、OS/2の標準ひょうじゅんをサポートするツールにしか表示ひょうじされない。パスめいによるファイルへのアクセスを提供ていきょうするおおくのAPIは、サポートされているドライバなしでは、あたらしいなが名前なまえ表示ひょうじできない。

制限せいげん

FAT LFNの実装じっそうは、よりふるく、より限定げんていされた命名めいめいシステムのうえ構築こうちくされているため、最初さいしょの6文字もじおなじファイルをあまりに多数たすう作成さくせいしようとすると、必然ひつぜんてき複雑ふくざつになる[1]。また、FAT12FAT16はハードディスクじょうの512のルートディレクトリエントリしかスペースを確保かくほしていないため、ルートディレクトリにファイルやフォルダを作成さくせいするさい問題もんだい発生はっせいする可能かのうせいたかくなる。ながいファイルめい複数ふくすうのディレクトリエントリを使用しようするため、この問題もんだいはルートディレクトリないのファイルまたはフォルダが512未満みまん場合ばあい発生はっせいする可能かのうせいがある[2]最大さいだいちょう(512/(1+20))の24ながいファイルめいようのスペースしかない。この問題もんだいFAT32ボリュームには存在そんざいしない。

ながいファイルめいシステムでは、空白くうはく英数字えいすうじ以外いがい文字もじふくめ、最大さいだいちょう255文字もじUCS-2文字もじ使用しようできる[3][4](ただし、COMMAND.COMコマンドインタプリタやオペレーティングシステムカーネルない特別とくべつ意味いみつぎ文字もじのぞく: \ / : * ? " < > |)。これは、2バイトのUnicode文字もじをそれぞれ13文字もじずつ、最大さいだい20までのディレクトリエントリを連結れんけつすることで実現じつげんされる[4]。パスめい最大さいだいちょうは256文字もじで、これにはすべてのしんディレクトリとファイルめいふくむ。255文字もじ大文字おおもじ小文字こもじ混在こんざいしたながいファイルめいは、任意にんいのドライブのルートフォルダにあるファイル、またはサブフォルダをたないフォルダにたいしてのみ使用しよう可能かのうである。

VFAT LFNドライバ

以下いかは、Windows 95で使用しようされているようなVFATロングファイルめいのサポートを提供ていきょうするために使用しようできるドライバのリストである。DOSLFNのようなドライバはほとんどすべてのバージョンのDOSでロードでき、MS-DOS 7.10のようなLFN自体じたいをサポートしているDOSバージョンで最適さいてき動作どうさするため、DIRなどのDOSコマンドでもながいファイルめい表示ひょうじできる。

OS ドライバめい 提供ていきょうしゃ
任意にんい単純たんじゅんDOS DOSLFN、LFNDOS サードパーティー
DR-DOS LONGNAME ふくまれる
OS/2 VFAT-OS2.IFS サードパーティー
Windows NT 4.0 までの NTVDM NTLFN サードパーティー

その実装じっそう

LFNサポートがFATファミリのファイルシステムに実装じっそうされるまえは、さまざまなファイルマネージャが、よりながいファイル記述きじゅつ添付てんぷして維持いじするための独自どくじ方法ほうほう提供ていきょうしていた。最初さいしょにそうしたのは、内蔵ないぞうDESCRIBEコマンドと対応たいおうするDESCRIPT.ION (英語えいごばんファイルを代替だいたいコマンドラインプロセッサ4DOS英語えいごばんNDOS英語えいごばんである。後者こうしゃは、かくディレクトリないにあるオプションのかくしファイルで、ディレクトリないにあるファイルめいくだりベースのリストを、それらのテキスト説明せつめいとオプションのメタデータエントリ(たとえば、のプログラムのための拡張かくちょう属性ぞくせい設定せっていデータ)ととも格納かくのうする。説明せつめいぶん最大さいだい511文字もじまでのながさがあり、DIRリストでながいファイルめいみじかいファイルめい別名べつめいならんで表示ひょうじされるのと同様どうように、ファイルめい沿って表示ひょうじされる。あるファイルにたいするエントリが存在そんざいする場合ばあい、これらのコマンドラインプロセッサを使用しようして操作そうさおこなかぎり、そのエントリはファイルとともにコピーおよび移動いどうされる[5]。この方式ほうしきは、4OS2, 4NT / Take Commandなどの後継こうけいプログラムによってつづ維持いじされている。これは、Volkov Commander (VC)、DOS Navigator (DN)、Open DOS Navigator (ODN)、Necromancer's DOS Navigator (NDN)、Windows CommanderTotal Commander、Double Commander、7-ZipXnViewACDSee、Newsbin Pro、V、FreeCOM[6]、および一部いちぶのCUI_LIB[7]ベースのアプリケーションプログラムでも採用さいようされている。

1986ねん以降いこう、シャープX68000コンピュータのオペレーティングシステムであるHuman68Kは、拡張かくちょうFATファイルシステムにもとづいている。ファイルめいには最大さいだい18.3文字もじまで使用しようでき(FATの8.3文字もじわりに)、大文字おおもじ小文字こもんじ(およびシフトJISコードの漢字かんじふくむ)を区別くべつして使用しようできる。大文字おおもじのみの8.3形式けいしきのファイルめい使用しよう制限せいげんされている場合ばあい、Human68Kフロッピーは、日本にっぽんの1232 KiB標準ひょうじゅんFATフロッピー形式けいしき (英語えいごばん(77シリンダー、2ヘッド、8セクタ、1024バイト/セクタ)と完全かんぜん互換ごかんせいがある。このフォーマットは、NEC PC-9800富士通ふじつうFMRおよびFM Townsシリーズのコンピュータで使用しようされている[よう出典しゅってん]

Novell NetWareバージョン 3.x および 4.x ボリューム (英語えいごばんは、追加ついかNetWare Loadable Module英語えいごばん(NLM)をロードすることで、マイクロソフト互換ごかんながいファイルめいもサポートできる[8]

VFAT互換ごかん方式ほうしき実装じっそうせずにJavaアプリケーションをサポートするために、FlexOS英語えいごばんベースのIBM 4690 OS英語えいごばんバージョン2では、ながいファイルめいをFATファイルシステムに下位かい互換ごかんせいのある方法ほうほう保存ほぞんする独自どくじ仮想かそうファイルシステム(VFS)アーキテクチャを導入どうにゅうした。これを有効ゆうこうにすると、実際じっさいのファイルめい(RFN)はもとのドライブ文字もじした利用りよう可能かのうであるのにたいし、仮想かそうファイルめい(VFN)はべつ論理ろんりドライブ文字もじした利用りよう可能かのうになる[9]

参照さんしょう項目こうもく

脚注きゃくちゅう


  1. ^ CocoaDev: MSDOSFileSystem Archived 2006-10-18 at the Wayback Machine.
  2. ^ Errors Creating Files or Folders in the Root Directory
  3. ^ Making Room for Long Filenames”. 2008ねん4がつ23にち時点じてんオリジナルよりアーカイブ。2007ねん4がつ19にち閲覧えつらん
  4. ^ a b Long Filename Specification”. 2015ねん10がつ25にち時点じてんオリジナルよりアーカイブ。2013ねん5がつ22にち閲覧えつらん
  5. ^ 4DOS 8.00 online help. (2002-02-27) 
  6. ^ FreeCom and 4DOS DESCRIPT.ION files”. FreeDOS. 2016ねん11月11にち時点じてんオリジナルよりアーカイブ。2016ねん11月11にち閲覧えつらん
  7. ^ Hinweise zu JPSofts 4DOS 5.5b/c, 5.51, 5.52a und NDOS” (ドイツ). MPDOSTIP (1997ねん5がつ1にち). 2016ねん11月4にち時点じてんオリジナルよりアーカイブ。2015ねん5がつ8にち閲覧えつらん (NB. The provided link points to a HTML-converted version of the 4DOS5TIP.TXT file, which is part of the MPDOSTIP.ZIP collection.) [1]
  8. ^ Novell (1999ねん2がつ11にち). “TID1002030 Windows NT, Long File Names on NetWare”. 2021ねん1がつ16にち閲覧えつらん
  9. ^ 4690 OS Programming Guide Version 5.2. IBM. (2007-12-06). IBM document SC30-4137-01. ftp://ftp.software.ibm.com/software/retail/pubs/sw/opsys/4690/ver5r2/bsi1_PG_mst.pdf 

外部がいぶリンク