(Translated by https://www.hiragana.jp/)
ファイル (コンピュータ) - Wikipedia コンテンツにスキップ

ファイル (コンピュータ)

出典しゅってん: フリー百科ひゃっか事典じてん『ウィキペディア(Wikipedia)』

コンピュータにおけるファイルえい: file)は、コンピュータでデータあつかいやすくするための仕組しくみ。場合ばあいによってはデータセットえい: data set)ともばれる。

概要がいよう

[編集へんしゅう]

ファイルはデータのやりとりをおこなうための統一とういつてき仕組しくみである。いいかえるとファイルはセンサプリンターなどの外部がいぶ装置そうち周辺しゅうへん機器ききなどが該当がいとうする)、あるいはプログラム動的どうてきなデータの入出力にゅうしゅつりょくおこなう(パイプ参照さんしょうのこと)ためのものである。ファイルはハードディスクUSBメモリなどの記憶きおく媒体ばいたいにデータを保存ほぞんするためだけのものだととらえられがちであるが、記憶きおく媒体ばいたいへの入出力にゅうしゅつりょく記憶きおく媒体ばいたいという装置そうちへの入出力にゅうしゅつりょくぎない。ほかにもディレクトリをサポートするファイルシステムでは、ディレクトリはファイルを格納かくのうするためのファイルとみなすことができ、インターネットを実現じつげんするために重要じゅうようソケットもファイルに抽象ちゅうしょうされているなど、多様たよう利用りよう形態けいたいがある。

かつてのパンチカードのようなかみ媒体ばいたい、あるいは磁気じきテープといったシーケンシャルアクセスつよ媒体ばいたいでは連続れんぞくした領域りょういきにデータをむことが一般いっぱんてきであったが、近年きんねんのファイルシステムは磁気じきディスクなどがもつランダムアクセスせいかして不連続ふれんぞく領域りょういきにわたってデータを保存ほぞんすること(フラグメンテーション)がおおい。これは、アクセス速度そくどおそくなるわりに無駄むだになる領域りょういきらし、よりおおくのデータを格納かくのうすることにつながる。ファイルにはアプリケーション作成さくせいしたデータのほかに、ファイルめい様々さまざま属性ぞくせいがあり、この属性ぞくせいはファイルシステムに依存いぞんする。

ファイルのなかれるデータの種類しゅるいもさまざまである。たとえばコンピュータプログラムはいったファイルがあり、これをプログラムファイルとぶ。同様どうように、データベースファイル、文書ぶんしょファイル、おもて計算けいさんファイル、画像がぞうファイル、音楽おんがくファイル、動画どうがファイルなどがある。これらをファイルフォーマットぶ。

歴史れきし

[編集へんしゅう]
パンチカードのファイル
IBM 305 システム。2だいディスクファイル

「ファイル」という言葉ことばがコンピュータの記憶きおく装置そうち関連かんれんする用語ようごとして使つかわれはじめたのは1952ねんで、当初とうしょパンチカード格納かくのうされた情報じょうほうした言葉ことばだった[1]初期しょきのころは格納かくのうされている中身なかみ情報じょうほうよりも、装置そうち自体じたいをファイルとぶことがおおかった。たとえば、IBM 350 のディスク装置そうちは「ディスクファイル」とばれていた[2]

1962ねんCTSSではファイルシステム機能きのうがあり、1つの補助ほじょ記憶きおく装置そうちじょう複数ふくすうの「ファイル」が存在そんざいするという形態けいたい登場とうじょうした。これが現代げんだいてき意味いみでのファイルのはじまりである。CTSSではファイルめいが2つの部分ぶぶん構成こうせいされていた。1つはユーザーがめるプライマリめいで、セカンダリめいはファイルの種類しゅるいあらわしていた[3][4]。このようなファイルめい構成こうせい方法ほうほうMicrosoft Windows などの現代げんだいオペレーティングシステムにもがれている。

ふる用法ようほう情報じょうほう格納かくのうするものを「ファイル」と使つかかた)はほとんどられなくなったが、たとえばレジスタあつまりをレジスタファイル[5]のはふる用法ようほう名残なごりである。

ファイルの概念がいねん

[編集へんしゅう]

非常ひじょうにシンプルな基本きほんてき構成こうせいのコンピュータではファイルというものはない。使用しよう入力にゅうりょくというものもある。これをさい利用りよう可能かのうとするため、いちあつかうデータを外部がいぶ記憶きおく媒体ばいたいにアウトプットしたあつまりがファイルである。コンピュータのファイルはそれぞれかくアプリケーションが作成さくせい使用しようするデータであるため、ファイルとはアプリケーションが認識にんしきすればよく、従来じゅうらいがたおおくのコンピュータでは使用しようするアプリケーションを選択せんたくしてから、そのアプリケーションで使用しようするデータのファイルを指定していした。

しかし、オブジェクト指向しこうかんがかた導入どうにゅう使用しようしゃ中心ちゅうしんにおいたAppleMacintoshにおいて、ファイルの取扱とりあつかいにリソース概念がいねんれられた。ファイルないにデータとともにリソースを保管ほかんしたことで、ファイル作成さくせいは、そのファイルを選択せんたくすれば(たとえばGUI画面がめんじょうでファイルを選択せんたくするためダブルクリックすれば)、オペレーティングシステムによって最適さいてきなアプリケーションが選択せんたくされる(起動きどうされる)ようになった。一般いっぱんてきなパソコン利用りようしゃには、どんなアプリケーションでつくったかを事前じぜんおもすことなく、作成さくせいみのファイルの名前なまえさえ識別しきべつして選択せんたくすれば、適切てきせつなソフトウェアが起動きどうされるようになり、これにより使つか勝手がって向上こうじょうした。Windowsにおいてこのリソースの概念がいねん使用しようしゃには「拡張子かくちょうしによるアプリケーションの関連かんれんづけ」として提示ていじされるものとしてられる。

ファイルの区分くぶん

[編集へんしゅう]

ファイルの区分くぶんのひとつに、バイナリファイルとテキストファイルに大別たいべつするかんがかたがある。この2だい区分くぶんかんがかた基礎きそには、データをすべてバイナリファイルとしてあつかUNIXにおいて、文字もじ情報じょうほうだけのテキスト情報じょうほう識別しきべつする意味いみがあり、UNIXのかんがかたいだ個人こじん利用りようようコンピュータオペレーティングシステムのDOSやWindows、Macintoshなどでもこのかんがかた適用てきようされている。

バイナリファイルとは、コンピュータ内部ないぶでプログラムが直接ちょくせつ処理しょりするデータ(ビット列びっとれつ)をそのまま格納かくのうするものでそのビット列びっとれつ意味いみするものは、かくアプリケーションソフトごとことなる。一方いっぽう、テキストファイルとは、そのビット列びっとれつがある基準きじゅん制定せいていされた文字もじコードしたがったビット列びっとれつ格納かくのうされているものである。テキストファイルとはある基準きじゅん文字もじコード(ビット列びっとれつ)のみで構成こうせいされたバイナリファイルとおなじもので、バイナリファイルの一種いっしゅ特別とくべつあつかいしている。テキストファイルはそのデータビット列びっとれつ定義ていぎ文字もじ情報じょうほうというひろ使つかわれる情報じょうほうであるため、いいかえれば、バイナリファイルは、データビット列びっとれつ定義ていぎかくアプリケーション固有こゆう一方いっぽう、テキストファイルは標準ひょうじゅんされたビット列びっとれつ定義ていぎっているファイル、となる。

文字もじ情報じょうほうだけをあつかテキストエディタひとし(Windowsでは「メモちょうとう)バイナリファイルはいわゆる「文字もじけ」をこすのにたいして、テキストファイルは(当然とうぜんながら)一定いってい文字もじれつとなって表示ひょうじされる。今日きょうひろ利用りようされているワープロソフトで作成さくせいされた文章ぶんしょうファイルは、文字もじ情報じょうほうだけでなく、文字もじおおきさ、いろれつ情報じょうほう、ページ情報じょうほう、などさまざまな固有こゆうデータをとりあつかうもので、そのファイル形式けいしきはバイナリファイルの一種いっしゅとなる。

ここでのテキストデータとは、あいうえおの「あ」や「い」そのものしかあらわさない。「あ」の文字もじおおきさ、フォント、字形じけい、「い」のいろなどはふくまない。しかし、「改行かいぎょう」や「空白くうはく」などはふくまれる。タイプライター時代じだい文字もじ概念がいねんがコンピュータされたもの。

バイナリファイルは、アプリケーションが固有こゆう定義ていぎしたデータれつであるが、業界ぎょうかい標準ひょうじゅんされたデータ形式けいしきふくんだものもある。また、アプリケーションが稼動かどうするオペレーティングシステムで標準ひょうじゅんされた構造こうぞうとなっていることもある。

たとえば、ファイルの先頭せんとう部分ぶぶん(あるいは末尾まつび部分ぶぶん)など、それぞれに定義ていぎされた場所ばしょ定義ていぎされたデータをふくむ。これらの情報じょうほう参照さんしょうし、データ種別しゅべつや、データのフォーマット、そのバージョンなどを判断はんだんする。データが自分じぶんつくったものでない場合ばあい、パソコンにすで導入どうにゅうされているソフトウェアでけるかどうか確認かくにんする場合ばあいなど。

バイナリファイルをビット列びっとれつとしてあつかうソフトウェアとしてビット列びっとれつ直接ちょくせつ編集へんしゅうする(これを「ていレベル」と表現ひょうげんする)ソフトウェアがある。これはバイナリエディタばれる。(「えがく」など人間にんげん動作どうさちかいことをおこなうアプリケーションを「こうレベル」、「ビットをオンオフする」などコンピュータよりの仕事しごとおこなうアプリケーションを「ていレベル」とぶ。これは、アプリケーションプログラム作成さくせいのレベルをあらわすこともあるが、その仕事しごとがすばらしいかどうかということをつね高低こうていけし価値かちけしているというものでもなく、「たん習慣しゅうかんてきにそうぶ」場合ばあいおおい。)

バイナリファイルもテキストファイルも一般いっぱんてきには使用しようにその全体ぜんたいがアプリケーションにまれ使用しようされるものであるが、データが大量たいりょうになれば、いち全体ぜんたいむことはプログラムにとってもハードウェアにとってもおおきな損失そんしつとなる。そのため、必要ひつようなときに必要ひつようなデータだけをダイナミックに提供ていきょうできるようなファイルシステムとしてファイルをより構造こうぞうしたデータベースつくられるようになった。

ファイルの保護ほご

[編集へんしゅう]

最近さいきんのコンピュータでは、ファイルをあやまって(または故意こいに)えたり削除さくじょしたりといったことから保護ほごする方法ほうほうそなわっている。マルチユーザー環境かんきょうでは、ファイルパーミッションによって、だれがそのファイルを修正しゅうせいしたり削除さくじょしたり、あるいはファイルやフォルダーを作成さくせいしたりできるかを規定きていしている。これにより、特定とくていのユーザーだけがファイルやフォルダーを作成さくせいしたり修正しゅうせいしたりできるよう設定せっていしたり、特定とくていのユーザーだけが中身なかみめるように設定せっていしたりできる。

もう1つの保護ほご機構きこうとしてよく使つかわれるのは、「リードオンリー」フラグを使つか方法ほうほうである。ファイルにたいしてこのフラグをてると、ファイルの内容ないようむことはできるが、えることはできなくなる。これは変更へんこうされたり消去しょうきょされたりするとこま重要じゅうよう情報じょうほう保護ほごするのに便利べんりで、システムファイルなどの保護ほご使つかわれる。システムによっては「かく属性ぞくせい」フラグもっていて、指定していしたファイルを(通常つうじょう手段しゅだんでは)えないようにできる。これもユーザーにえられるとこまるシステムファイルをかくすのに使つかわれる。

ファイルの格納かくのう

[編集へんしゅう]

ファイルはユーザーから概念的がいねんてき存在そんざいであると同時どうじに、物理ぶつりてき実体じったいともなう。すなわち、実際じっさいのコンピュータにおけるファイルにはかなら物理ぶつりてき実体じったい存在そんざいする。おおくの場合ばあい、ファイルはなんらかの記憶きおく装置そうち格納かくのうされている。たとえば、おおくのオペレーティングシステムはファイルを格納かくのうする装置そうちとしてハードディスクドライブ使用しようしており、もっと一般いっぱんてき不揮発ふきはつせい記憶きおく装置そうちになっている。一時いちじてき情報じょうほう格納かくのうするだけのファイルは、揮発きはつせいRAMうえ格納かくのうすることもある。

UnixけいOSでは、実際じっさい記憶きおく装置そうち対応たいおうしていないファイルも数多かずおお存在そんざいする。/dev/null など、/dev 配下はいかのファイルや /proc や /sys 配下はいかのファイルがそれにたる。これらはユーザーからはファイルとしてアクセスできるが、実際じっさいにはOSのカーネルうちのオブジェクトとして存在そんざいする仮想かそうファイルである。

ファイルを格納かくのうする電子でんし媒体ばいたいとしては、磁気じきテープもある。ほかにも可能かのうコンパクトディスクDVDZIPUSBメモリなどにも格納かくのうできる。

コンピュータがわからたファイル

[編集へんしゅう]

コンピュータがわでは、いくつかの段階だんかいて、画面がめんじょうにデータのひとつのかたまりとして表示ひょうじしているが、これをよりコンピュータがわからの視点してん場合ばあいに、いくつものデータをあつめてひとつにせていることもある。

ハードディスクはこれらファイルを保存ほぞんしておくための記憶きおく装置そうちだが、このなかにはトラックやセクター(さらにはクラスタ)とばれるこまかい区分くぶん用意よういされており、このこまかい区分くぶん複数個ふくすうこまたがって情報じょうほう格納かくのうされる。丁度ちょうどなんかんにもかれている大作たいさく長編ちょうへん小説しょうせつのように区分くわけされて保管ほかんされた情報じょうほうは、さらめればビットばれるON/OFFの関係かんけいにあるてん(スイッチ)の集合しゅうごうであるが、これらはコンピュータの基礎きそ部分ぶぶんのプログラムやOSのファイルシステムによって制御せいぎょされ、最終さいしゅうてきひとつのファイルのかたち画面がめんじょう表示ひょうじされている。

フラグメンテーション

[編集へんしゅう]

とく長期間ちょうきかん使つかっているハードディスクでは、コンピュータは情報じょうほうさいに、いている場所ばしょ随時ずいじむように設計せっけいされているが、あつかうデータが一定いっていのサイズではないため、なんいたりしたりとった操作そうさかえうちに、フラグメンテーションばれる現象げんしょう発生はっせいする。この現象げんしょうは、たとえるなら前出ぜんしゅつ長編ちょうへん小説しょうせつの1かん本棚ほんだなみぎじょう・2かん左隅ひだりすみ・3かん中央ちゅうおう…といった具合ぐあいである。

だがコンピュータの誤動作ごどうさとうにより、このこまかい区分くぶん統合とうごうするための情報じょうほうそこなわれた場合ばあいに、これら情報じょうほう正確せいかく統合とうごうして利用りようしゃ提供ていきょうすること出来できなくなる。前出ぜんしゅつ長編ちょうへん小説しょうせつさらたとえるなら「かん何処どこったか見当みあたらない」というような状態じょうたいだ。このようなファイル破損はそんでは、自動的じどうてき復旧ふっきゅうするツールもあるが、その機能きのう絶対ぜったいではなく、とくにOSのプログラムファイルが破損はそんしたり、設定せっていファイルせなくなった場合ばあいには、致命ちめいてき問題もんだい発生はっせいする。

なおコンピュータのファイルは、基本きほんてき複製ふくせいつくこと非常ひじょう容易たやすい。破損はそんしてこまるデータは、積極せっきょくてきバックアップことすすめられる。

バックアップ

[編集へんしゅう]

非常ひじょう重要じゅうよう情報じょうほうふくむファイルを破壊はかいするような障害しょうがい災害さいがいからまもるには、バックアップおこなう。バックアップとは、ファイルの複製ふくせいつくることであり、それをべつ場所ばしょ保管ほかんすることで、ファイルをあやまって削除さくじょした場合ばあいなどに復旧ふっきゅうできるようにする。

バックアップ方法ほうほう様々さまざまである。ほとんどのコンピュータシステムにはバックアップようのユーティリティプログラムがそなわっているが、多数たすうのファイルをバックアップする作業さぎょう時間じかんがかかる。一般いっぱん可能かのうなCDや磁気じきテープにバックアップを保管ほかんする。おなじコンピュータシステムないべつのディスク装置そうちにコピーした場合ばあいもとのディスク装置そうち障害しょうがいたいしては復旧ふっきゅう可能かのうだが、システム全体ぜんたい火事かじ消失しょうしつするなどの災害さいがいにはやくにたない。そのため、本当ほんとう重要じゅうようなファイルはべつ媒体ばいたいにバックアップし、それをべつ場所ばしょ保管ほかんすべきである。

ファイルシステムとファイルマネージャ

[編集へんしゅう]

コンピュータがファイルを構成こうせいし、命名めいめいし、格納かくのうし、操作そうさする体系たいけい一般いっぱんファイルシステムぶ。ほとんどのコンピュータにはすくなくとも1つのファイルシステムがある。なかには、いくつかのことなる種類しゅるいのファイルシステムが使つかえるものもある。たとえばWindowsでは、MS-DOS時代じだいから使つかわれているFATくわえて、NTFSがあり、最近さいきんでは後者こうしゃがデフォルトになっている。ファイルシステムにはそれぞれに利点りてん欠点けってんがある。標準ひょうじゅんのFATではファイルめいは8文字もじまで(それにくわえて拡張子かくちょうしが3文字もじ)で、空白くうはく文字もじをファイルめいふくめることもできない(8.3形式けいしき)。これにたいしてNTFSではもっとながいファイルめいけることができ、空白くうはく文字もじ使つかえる。たとえば、NTFSではPayroll recordsというファイルめいけられるが、FATではpayroll.datなどとなる(ただし、FATにもながいファイルめい使つかえる拡張かくちょう存在そんざいする)。

ファイルマネージャとは、ユーザーがファイルを直接ちょくせつ操作そうさできるようにしたユーティリティプログラムである。ファイルやフォルダーを移動いどう作成さくせい削除さくじょ改名かいめいできるが、ファイルの中身なかみ完全かんぜん閲覧えつらんすることはできない。コンピュータシステムにはほぼかならずファイルマネージャが存在そんざいする。Windowsの場合ばあい標準ひょうじゅんWindows Explorerがよく使つかわれている。

脚注きゃくちゅう

[編集へんしゅう]
  1. ^ Robert S. Casey, et al. Punched Cards: Their Applications to Science and Industry, 1952. ISBN.
  2. ^ Martin H. Weik. Ballistic Research Laboratories Report #1115. March 1961. pp. 314-331.
  3. ^ Fernando J. Corbató et al. "An Experimental Time-Sharing System." May 3, 1962.
  4. ^ Jerome H. Saltzer CTSS Technical Notes. Project MIT-LCS-TR016
  5. ^ L.Hennessy, John; A.Patterson, David (1994). Computer Organization and Design: The Hardware/Software Interface. Morgan Kaufmann Publishers. p. 276-278. ISBN 1-55860-281-X 

関連かんれん項目こうもく

[編集へんしゅう]

外部がいぶリンク

[編集へんしゅう]
ファイル拡張子かくちょうしかんする情報じょうほうサイト
Windowsのファイルにかんするサイト