ファイル、ディレクトリとオペレーティング・システム

共通科目情報処理(講義)、体育専門学群対象、2000年05月11日

                                       電子・情報工学系
                                       新城 靖
                                       <yas@is.tsukuba.ac.jp>

このページは、次の URL にあります。
http://www.hlla.is.tsukuba.ac.jp/~yas/ipe/taiiku-kougi-2000/2000-05-11
あるいは、次のページから手繰っていくこともできます。
http://www.hlla.is.tsukuba.ac.jp/~yas/ipe/
http://www.hlla.is.tsukuba.ac.jp/~yas/index-j.html
http://www.ipe.tsukuba.ac.jp/~yshinjo/

■復習

情報処理の種類 情報量の単位。
ビット(bit,b)
コンピュータで扱う情報の最小単位。 通信速度を表現する時によく使われる。
1ビットの情報で扱えるものには次のようなものがある。
バイト(byte,B)
(アメリカなら)1文字を扱える程度の情報量。 記憶容量を表す時によく使われる。1バイトは、8ビットに等しい。 1バイトのデータで256通りのものを区別することができる。 bit, byte には、次のような係数がことがある。
k (キロ、ケイ)
1024 か 1000
M (メガ)
k の 1024 倍か 1000 倍。1,000,000 くらい。
G (ギガ)
M の 1024 倍か 1000 倍。1,000,000,000 くらい。
T (テラ)
G の 1024 倍か 1000 倍。1,000,000,000,000 くらい。
コンピュータで情報を扱うためには、情報をビット列(ビットの並び、ビット パタン)に変換する必要がある。これを、「符合化する」するという。

コンピュータに仕事をさせるとは

情報量の感覚。

1 ビット
白黒の区別
1 バイト (8ビット)
ヨーロッパ系文字 1 文字。256色。
2 バイト (16ビット)
日本語の漢字 1 文字。60000色。
4 バイト (32 ビット)
現在広く使われているコンピュータが 一度に計算できる情報量。整数なら40臆くらい。
数 k バイト (32 ビット)
典型的な電子メール1通の大きさ。数千文字。
256 ビット (32バイト)
16ドット×16ドットの白黒の画像(ビットマップ)で 漢字 1 文字を表現した時の情報量。
8k バイト (64 k ビット)
1秒間に電話の品質で音声を記録した時の情報量。
1 M バイト (1,000,000 バイト)
フロッピディスク1枚に保存できる情報量。
640M バイト (640,000,000 バイト)
CD 1 枚に保存できる情報量。
5G バイト (5,000,000,000 バイト)
DVD 1 枚に保存できる情報量。
コンピュータの内部にある重要な部品
CPU 。
計算を行う。計算の速度を決める。クロックの周波数(単位はHz(へルツ)) が速度の目安になる。
メモリ(RAM(Random Access Memory))
実行中のプログラムを保持する。加工するデータを一時的に保持する。 揮発的(電源を切ると消えてしまう)。非常に速い。容量は、ハードディスクよ りは小さい。
ハード・ディスク (HD(Hard Disk), HDD(Hard Disk Drive))
プログラムやデータをデータを保持する。揮発的(電源を切ると消えてし まう)。容量は、メモリより大きい。
2000/05/10 ごろの典型的なコンピュータ。 コンピュータをうまく使うためには、コンピュータの内部にある記憶のための 部品の性質を知る必要がある。

■今日の重要な話

コンピュータをうまく使いこなすには、いくつかのコンピュータの内部にある 幻影が存在すると信じることができるかどうかにかかっている。その中で、ファ イルという幻影がもっとも重要である。

人間は(コンピュータがなくても)さまざまな幻影を使っている。

■ファイルとディレクトリ

ファイルとは

ディレクトリとは

コンピュータで ファイルとは、情報を保存しておくための箱のことである。 コンピュータで扱える情報は、ビットの並び表現されるが、それらを保存する ために様々な記憶媒体(ハードウェア)が使われる。記憶媒体としては、ハー ドディスク、フロッピ・ディスク、CD-ROM、光磁気ディスクがなどがある。そ れらの記憶媒体は、日常的に扱う情報を保存するためには大きすぎる。扱い方 がそれぞれの記憶媒体ごとに違っていては困る。

このような問題を解決するための仕掛がファイルである。ファイルは、(後述 するオペレーティング・システムというプログラムの働きで)、大きな記憶媒 体を扱いやすい大きさに分割して、かつ、記憶媒体が変わっても同じように扱 えるようにしたものである。

ファイルには、情報を保存する役割に加えてもう1つ大事な機能がある。それ は、「情報に名前を付ける」という機能である。この機能は、あたりまえすぎ てすぐに有難みがわかないかもしれない。しかし、もし全ての自分の情報をフ ロッピ・ディスク1枚1枚に入れてフロッピのラベルに書かれた情報の名前を 自分で読んで操作しなければならないことを想像すれば、情報の名前を計算機 が管理してくれる有難みを実感であろう。

ファイルに名前を付ける働きを持っている仕掛けは、ディレクトリ (directory)と呼ばれています。ディレクトリは、フォルダ(folder)と呼 ばれることもある。コンピュータの中では、ディレクトリは、ファイルの名前 の一覧表として現れる。

◆ファイルの性質

◆記憶媒体の初期化(フォーマット)

♪涙のフォーマット。フィジカル・フォーマット。

記憶媒体の種類

買ってきた記憶媒体。ビットを保存するための小さな場所が並んでいる。その ままでは、ファイルを作成することはできない。

図? フォーマットされていない記憶媒体

図? フォーマットされていない記憶媒体

ファイルを作成るためには、記憶媒体をある大きさの区画に区切り、ファイル の名前を保存する場所(ディレクトリ)を作成する必要がある。この操作を記 憶媒体の初期化(initialize)とか、フォーマット()という。

図? フォーマットされた記憶媒体

図? フォーマットされた記憶媒体

1区画は、512 k バイト〜8k バイトが多い。 ディレクトリのための領域が作られる。

ファイルを作ると、名前がディレクトリに記録される。ディレクトリには、デー タがどこにある場所や属性が記録される。

図? ファイルがつくられた記憶媒体

図? ファイルがつくられた記憶媒体

フォーマットの方法には、2種類ある。

物理フォーマット(physical )
磁気的な方法、あるいは、電気的な方法など 記憶媒体に固有の方法で完全に買ってきた時と同じ状態に戻す。
論理フォーマット(logical )
ディレクトリを空にする。名前を消し、 データの区画への参照を消してしまう。 フォーマットしてしまうと、データは完全に消されてしまって、元に戻すこと はできない。特に物理フォーマットの場合は、戻すことができない。

物理フォーマットという考え方がない記憶媒体もある。たとえば、光磁気ディ スクなど。

同じ物理媒体でも、フォーマットの方法は違う。フロッピでデータを交換する 時には、双方のコンピュータで扱えるものを使う。よく使われるものは、 「MS-DOS 1440KBフォーマット」と呼ばれるものである。

◆テキスト・ファイルとテキスト・エディタ

ファイルの内容による分類

テキスト・ファイル(text file)
内容として符合化された文字だけを含むファイル
バイナリ・ファイル(binary file)
テキスト・ファイル以外のファイル。CPUが解釈できるプログラムや 画像・音声データを含んだファイル。
ただし、「文字」といっても、ASCII という方法で符合化されたものだけを指 すことがある。日本語の漢字を含むファイルの場合、テキスト・ファイルとし て扱えることもあるが、バイナリ・ファイルとして扱わなければならないこと がある。たとえば、インターネットでファイルをコピーするプログラム(ftp) では、漢字を含むデータをコピーする時に、バイナリ・ファイルとして扱う必 要がある場合がある。

テキスト・ファイルは、次のような所で使われている。

  • 電子メールの1つひとつ
  • ネットワーク・ニュースの記事1つひとつ
  • WWW のデータのうち、HTML で書かれたもの
  • ソース・プログラム

テキスト・ファイルを作ったり、内容を修正するには、テキスト・エディタ (text editor)というプログラムを使う。実習では、電子メールを書く時に、 emacs (mule) という名前のテキスト・エディタを使う。実習室のパソコンに は、「メモ帳」という名前のテキスト・エディタが使えるようになっている。

■オペレーティング・システム

オペレーティング・システム(Operating System, OS)とは

  • 基本ソフトウェア(プログラム)。
  • 電源を入れて、使えるようになった時に動いているプログラム。 (オペレーティング・システム以外のプログラムは、 すべてオペレーティング・システムの働きで実行される。)
  • コンピュータの「顔」を作る。基本的な考え方と操作方法とを決める。 同じハードウェアでも、違うオペレーティング・システムが動くと、 考え方も操作方法も違う。
  • ソフトウェアにより、基本的なもの(幻影、オブジェクト)を提供する。
    • ファイルとディレクトリ
    • プロセス
    • ウィンドウ、アイコン。
  • 管理職。ハードウェアを管理する。メモリ管理、CPU管理。

徒然草(つれづれぐさ)。八になりし年。最初の仏問題。 OSは、誰が実行するか。

ブート・ストラップ(Boot strap,靴ひも)。 ほら吹き男爵は、底なし沼に落ちた時に、自力で脱出するために、自分の靴ひ もにつかまって脱出した。

オペレーティング・システムの種類

  • Microsoft Windows95/98/2000/NT
  • MS-DOS
  • Unix, Linux
  • MacOS
歴史
  • Loader
  • Monitor
  • バッチ処理
  • TSS
  • ワークステーション、GUI
  • パソコン用OS
  • ネットワークOS, 分散OS
  • 実時間OS
構成要素
  • カーネル
  • シェル(User Interface)
  • ウィンドウ・システム
  • コマンド群
  • Application Interface (API) (ライブラリ、システム・コール)

図オペレーティング・システムの構成要素

図オペレーティング・システムの構成要素

■仮想記憶(仮想メモリ)

コンピュータには、2種類の記憶するためのハードウェアが使われている。

揮発的記憶。メモリ(memory)、あるいは、主記憶(main memory,primary storage)
CPUと同じく、半導体で作られている(IC)。電源を切ると、内容が 失われる。速度が速く、値段が高い。
永続的記憶。二次記憶(secondary storage)
ハードディスク、フロッピ・ディスク、磁気テープ(8mmビデオなど)、 CD-ROM などで作られている。電源を切っても、内容は保存される。半導体の メモリと比較して、速度が遅く、値段が安い。

仮想記憶とは、実際に備えているメモリ容量よりも大きなプログラムを動かす ための仕組みでである。たとえば、仮想記憶を使うと、メモリが100Mバイ トしかないコンピュータで、200Mバイトのメモリを使うプログラムを実行 することができるようになる。もともとは、1つのプログラムで実際のメモリ 容量以上のものを使うための仕組みである。最近では、 複数のプログラムが使うメモリの総量で考えることもある。

仮想記憶の基本的なアイディアは、 すぐに使うところだけを速いメモリ(IC)に、当分 使わない所を、遅いハードディスクに置き、ディスクとメモリの内容を入れ替 えながら仕事を進めることである。この時、速いメモリを主記憶(main memory, primary storage)、遅いハードディスクを二次記憶(secondary storage)とい います。

置き換えアルゴリズム

  • OPTアルゴリズム。最も遠い将来まで利用されない部分を二次記憶へ。
  • FIFOアルゴリズム。最も早い時刻に読み込まれた部分を二次記憶へ。
  • Randomアルゴリズム。ランダムに選んで二次記憶へ。
  • LRU((Least Recentry Used))アルゴリズム。最も長い時間参照されてい ない部分を二次記憶へ。

一番いいのは、OPTアルゴリズムだが、実現不可能。未来の情報を使うので。 LRU は、過去の情報を使って未来を予測する方法。

超整理法の押し出しファイルは、LRUアルゴリズム。

仮想
仮に考えること。仮に想定すること。例:仮想敵国。(広辞苑)
仮想敵国
a hypothetical [potential] enemy。
virtual--形A(比較なし)
1 (表面または名目上はそうでないが)事実上の, 実 質上の,実際(上)の: It was a virtual promise. (約束ではないが)約束も 同然だった /He was the virtual leader of the movement. 彼はその運動 の事実上の指導者だった.
2 【光】虚像の(#/ng/real): a virtual image 虚像.

■プロセス

プログラムとプロセス。

プロセスとは、オペレーティング・システムによって メモリに読み込まれ、実行可能になったプログラム。

単にファイル(ハードディスク)に入っていも、プログラムはプログラムであ る。 1つのプログラムを同時に2個動かすことを考えると、プログラムとプロセス の違いがわかる。

利用者の代理

プロセスは、コンピュータの中で利用者の代理という意味がある。利用者は、 コンピュータが持っているハードウェア資源を利用したい時、直接コンピュー タの中に入り込むことはできない。そこで、代理人としてプロセスを作る。プ ロセスは、利用者の代わりに、計算機の中で活動する。

プロセスの操作

  • 生成(作成)
  • 消滅(削除、終了と強制終了)
  • 切り替え
  • (プロセス間通信)

プロセスの生成・消滅

プロセスを作るには、プログラムを実行する。WindowsやMacintosh では、プ ログラムが入っているファイルのアイコンをダブルクリックする。Unixでは、 プログラムが保存されているファイルの名前をキーボードで打ち込む。

プロセスを消すには、実行しているプログラム(プロセス)の終了の手順を 行う。


↑[もどる] ←[4月27日] ・[5月11日] →[5月18日]
Last updated: 2000/05/11 00:47:31
Yasushi Shinjo / <yas@is.tsukuba.ac.jp>