オペレーティングシステム - みる会図書館


検索対象: プロフェショナルBSD
38件見つかりました。

1. プロフェショナルBSD

1 章 BSD オペレーティングシステム レーティングシステムがフリーソフトウェアとして配布されるようになった。 また、 BerkeIey Software Design 社 (BSDI) は、 BSD/386 というシステムを、 ソースコードを含めて販売している。 これらのことに対し、 USL とカリフォルニア大学、 BSDI の間で訴訟が起 こされたが、 1994 年の初めに和解が成立している。その結果、 NET/2 その ものは USL のライセンスを必要とする部分を含んでいるが、それらの部分 を排除し新たに開発した 4.4BSD ー Lite をカリフォルニア大学は開発し、その 配布に関しては USL のライセンスを求めないとなっている。 4.4BSD-Lite のソースコードは CD-ROM などで入手可能であり、 BSD/386 などへの取り込み作業が行われている。今、大学の研究室では、 BSD/386 な どを用いて研究や実験が行われるようになってきている。また、 IBM PC 互 換機などで利用できるため、個人の自宅の計算機のオペレーティングシステ ムとして大きな役割を担うようになってきている。このように、 BSD オペ レーティングシステムは Unix とは異なる、新たな道を歩み始めたといえる であろう。 今、世界をおおうインターネットの構成要素として BSD オペレーティン グシステムは重要な役割を果たしている。今後、 BSD オペレーティングシ ステムは、新たな技術や機能を取り込みながら発展を続けていくであろう。 1.2 BSD オペレーティングシステムの特徴ー ソフトウェアは、人間が計算機ハードウェアを利用する際に、その仲介を する役割を果たす。オペレーティングシステムは、その中でも最も基本的な 部分を担う。 BSD オペレーティングシステムは、役割や機能において、他の オペレーティングシステムとは大きく異なる特徴を持つ。 ・標準オペレーティングシステムとしての資格 もともと、異なるメーカーの計算機では異なる仕様のオペレーティングシ ステムが利用されており、利用方法も異なっていた。したがって、古い機械 から新しい機械へ、あるいはある場所の機械から別の場所の機械へ移ったと きに、ユーサーは利用方法を新たに学ばなければならない。 しかし、 BSD は研究や開発にかかわるコミュニティーにおいて広く利用さ 26

2. プロフェショナルBSD

目次 はじめに 1 章 BSD オペレーティングシステム 1 . 1 UNIX から Unix へ、そして BSD 1 .2 BSD オペレーティングシステムの特徴 1 . 3 BSD オペレーティングシステムの応用分野 2 章 BSD の構造 2 . 1 動作原理 2 . 1 . 1 UN Ⅸの処理単位 ( プロセス ) ・ 2 . 1 . 2 プログラムとプロセス・・ 2 . 1 . 3 プロセスと入出力・・ 2 .2 プロセス管理 2 . 2 . 1 処理の流れ・・ 2 . 2 . 2 プロセスの状態・・ 2 . 2 . 3 プロセスの優先度・・ 2 . 2 . 4 プロセスの終了・・ 2 . 2 . 5 プロセスの成仏・・ 2 .3 仮想記憶 2 .4 プートストラップ 2 . 4 . 1 ブート・・ 2 . 4 . 2 UN Ⅸ自身の main 関数・・ 2 . 4 . 3 プロセス 1 の働き・・ ( 0 ( 0 C) 2 2 1 1 つ」 2 2 4 ・ C) 一 0 LO LO 6 8 9 9 0 3 3 3 3 4 4 4 4 4 4 4 5 5 5 5 5

3. プロフェショナルBSD

1 章 BSD オペレーティングシステム ステムの大きな特徴は、新しい概念でオペレーティングシステムを構成しな がら、従来の Unix のインターフェイスを提供することである。これにより、 過去の資産を生かしながら新しいシステムを利用できるようになる。 1986 年に発表された Mach 2.5 では、まだマイクロカーネルによる実装 が完了しておらす、オペレーティングシステム機能の分割は実現していな かったが、 1988 年に発表された Mach3.0 では、マイクロカーネルと U ⅲ x (4.3BSD) サーバや MS-DOS サーバ、 MacOS サーバなどが発表されている。 ■ Free Software Foundation ネットワークの文化は、ユーザー同志のコミュニケーションを円滑にする だけでなく、新たな文化を生み出した。これは、ネットワークを用いて広く 自分のソフトウェアを公開し、利用者の意見を取り入れながら改良を続けて いくソフトウェア群である。特に、無償で公開されているソフトウェアはフ リーソフトウェアと呼ばれ、 Unix 文化やネットワーク文化の発展に大きく 寄ケしている。その中で、最も大きな活動が RichardStallman を中心とし て Free Software Foundation (FSF) が行っている GNU Project である。 こでは、配布したソフトウェアの利用者からの寄付だけでプロジェクトの運 営を賄い、さまざまなソフトウェアの開発 / 配布を行っている。現在配布さ れているソフトウェアには、エデイタ GNU Emacs や GNU C コンパイラ、 GNUawk などのツール群などがあり、 Mach オペレーティングシステムを基 本とした Hurd と呼ばれるオペレーティングシステムの開発も行われている。 わが国でも、 JUNET の普及と韭に ー、こうした文化が浸透してきている。特 に、 JUNET では当初 ASC Ⅱ文字しか利用できなかったためメッセージの記 述が面倒であった。そのため、メッセージの流通量もそれはど大きくなかっ た。しかし、当時東京工業大学の橘浩志氏による x ウインドウシステム用の Public 漢字フォント k14 や KABA (Kyoto Artificial Brain Associates) のグ ループによるかな漢字変換ソフトウェア wnn 、電子技術総合研究所の半田 剣一氏による GNU Emacs の日本語化 (Nemacs) によって、通常の Unix で も容易に日本語が利用できるようになり、 JUNET の広がりを大きく加速し た。また、 こうしたソフトウェアはネットワークで育てられていくことにな る。たとえば、 Wnn では良い変換辞書を作ることが重要な課題の 1 つであっ 22

4. プロフェショナルBSD

1 .2 BS D オペレーティングシステムの特徴 れてきたこと、移植性が高くさまざまな計算機システム上で利用できること などから、標準的な利用環境を提供するオペレーティングシステムと考える ことができる。 こうした、共通のオペレーティングシステム環境であるという特徴は BSD の技術的な特徴ではないが、 BSD 上で稼働するソフトウェアの流通基盤と して大きな意味を持っている。 ーソースコードの配布 もう 1 つの技術的でない特徴は、ソースコードによって配布されるソフト ウェアであるということである。これは、 BSD オペレーティングシステムだ けでなく、そこで動作するソフトウェアもソースコードと共に配布されるこ とが多い。 このような配布形態は、ネットワーク文化の発展とあいまって、ソフトウェ アの進化を促進してきたと考えられる。「ソースコードでお渡ししますから、 何かあったらご自分でやってください」という形式は、作者が問い合わせに 忙殺されることなく、問題点が改善されソフトウェアが加速度的に進化して いくという特徴を生み出す。 ・ TSS / マルチプロセス環境 TSS ( 時分割システム ) は、もともと高価な CPU を複数のユーザーで共有 するために、時間を区切って複数の仕事に順に CPU を割り当てていく技術 である。したがって、各ューサーに公平に CPU が割り当てられることが重 要であった。 しかし、研究室の中で誕生した BSD では、ユーサーではなくプロセスと 呼ばれる各プログラムの実行形式に CPU を割り当てていく。したがって、 ある 1 人のユーザーがいくつものプログラムを同時に実行することが可能と なっている。つまり、、、 & 〃による複数コマンドの並列実行やパイプライン処 理によるコマンド数に制限がないことを意味している。 これは、顔見知りの間ではマナーが守られることを前提にシステムが簡略 化されたものであるが、ワークステーションや個人用計算機のオペレーティ ングシステムとして活躍するようになったときに、非常に重要な意味を持っ 27

5. プロフェショナルBSD

8 章 文書処理 正式名称 BSD Ancestral M anual Documents BSD System Manager's M anual BSD Reference Manual BSD Programmer's Manual BSD Manual Master lndex ( i386 / i486 Architecture) 略称 AMD SMM URM PRM IND i386 ・オペレーティングシステムの名前とバージョン オペレーティングシステム名を記述する。 . Os 名前バー 名前には BSD か ATT のいすれかを指定する。バージョンは省略可能であ る。なお、オペレーティングシステム名とバージョンの組み合わせによって は別の名前に展開される場合がある。たとえば、次のように記述すると . Os BSD 4 . 4 "BSDI BSD / 386 〃と展開される。 これはあらかしめ定義されている。 ・日時 マニュアル作成日を指定する。 . Dd 月日 , 年 月の部分に数字を指定すると、 SJanuary" というように英語名に直してくれ る。何もしないと、、 Epoch" ( 創世紀 ) と出力される。また次のように指定す ると roff コマンドを実行した日時を出力する。 . Dd TODAY * 6 * 7 * 6 tmac. doc ー co 皿 0 Ⅱを参照のこと。 * 7 実は TODAY の部分は何でもよい。 410

6. プロフェショナルBSD

4 章システム環境の設定と管理 UNIX はマルチューサー・マルチタスクのオペレーティングシステムてある。当然、 システムもそれなリに大きなものになリ、機能も豊富になってくる。このようなオペ レーティングシステムを快適に利用するためには、きちんとメンテナンスする必要が ある。 快適な環境を得るためには 設定 トラブルへの対処 が必要てある。 4.1 システム設定・ UNIX は柔軟性に富んだオペレーティングシステムである。 UNIX ではユー ザーからのさまざまな要求に応えるため、ほとんどの機能に対して設定ファ イルが存在する。この設定ファイルで適切な設定を記述して、初めて UNIX を自分の要求どおりに使用することができる。 41.1 ユーサー管理 UNIX では資源に対するアクセス権の制御をユーザー、または、グループ単 位で行っている。その結果、 UNIX におけるユーザーは実在するユーサーだ けでなく、管理の都合上必要なアクセス権に対しても割り当てられる。スー パーユーザーもこの一例と考えられる。 ■ユーザー管理ファイル /etc/master. passwd 、 /etc/passwd 4.3BSD 以前の UNIX ではユーザー情報は /etc/passwd で管理されてい 1 しかし、この方法では / etc / passwd に含まれているユーサーのパスワー * 1 現在でも SunOS 、 NEWS-OS などの多くのオペレーティングシステムでは /etc/passwd でユー ザー情報の管理が行われている。 128

7. プロフェショナルBSD

1 章 BSD オペレーティングシステム * 6 きるとして、ネットワークなどを経由して容易に利用できるようになった。 多くのワークステーションなどの Unix において 4.3BSD や 4.3BSD-tahoe のネットワーク機能を用いていたため、この NET/I を用いることで、部分 的ではあるがユーサーは再びオペレーティングシステムのソースコードを得 ることができるようになったのである。 ■ Unix の統合 System V と 4.2BSD の登場から、 2 つの流れは大きく異なる方向へと向 かい、しはしはどちらの Unix を用いるのかが論争の種となってきた。この 論争に終止符を打っため、 1989 年 Sun と AT&T は 2 つの Unix の統合を行 うと発表した。これが、 System V Release 4 である。しかし、これと同時 に IBM 、 DEC 、 HP を中心とするグループが別に U Ⅱⅸの統合を行うための 団体として Open Software Foundation の設立を発表した。当初、これら 2 つの陣営は平行線をたどり、 2 つの新たな流れができそうになったが、 1993 年に統一した Un ⅸ仕様 * 7 を決定し、それに基づく Unix を各社が開発する こととなった。これと同時に Unix という商標は Unix System Laboratories (USL) * 8 から、 X/Open という業界の標準化団体に移管され、統合 Unix の 仕様を満たすオペレーティングシステムに与えられる商標となった。 ■インターネットと BSD ての地位を確立したのである。 ラットフォームとして、ビジネスの領域でのオペレーティングシステムとし トウェアが利用できることが保証されるようになり、 こうして Unix は、提供するべンダーによらす同一のソースコードのソフ アプリケーション・プ 24 * 8 AT&T が Unix ビジネスのために設立した。現在は、 Novell に売却され、合併した。 を Unified Unix—統合 Unix—と呼んでいる。 * 7 決められた仕様の数が 1170 あることから SPEC1170 と呼ばれている。また、これに基づく Unix Tahoe はバークレーの近くにある湖の名。 独自で開発したコードであるとして、 AT&T のライセンスによらない配布が行われた。ちなみに * 6 4.3BSD-tahoe 版そのものは、 AT&T のライセンスが必要。 Network Release 版は、バークレー 大なネットワークに成長し、そこに住むューザーたちの生活基盤となって インターネットは世界中に設置された約 200 万台の計算機を接続する巨

8. プロフェショナルBSD

1.1 U N Ⅸから U n ⅸへ、そして BS D いても X ウインドウシステムを基本としたシステムを用いている。 X ウイン ドウシステムは、 1984 年頃から開発が始められているが、 1986 年に Version 10 ReIease 3 の配布が始まり広くひろまるようになった。特に、移植性の高 い実装とネットワークを考慮したサーバ / クライアント型の機構、ソースコー ドによる配布が、普及の大きな要因になっている。 1987 年には現在広く用い られている Version 11 の配布が開始された。なお現在のバージョンは、 1994 年 5 月に配布が開始された ReIease 6 である。 ・ N EWS ワークステーション登場 1986 年には、国産として初めて標準でネットワーク機能を搭載し、 X ウィ ンドウシステムを用いたワークステーション NEWS が SONY より発表され た。 NEWS は、当時のワークステーションの価格と比較して、一段低価格 に設定されており、これにより国内の大学などにおいてワークステーション とネットワークが普及した。 ・ 4.3 BSD と M ach オペレーティングシステム 4.2BSD は、機能的には大幅に強化されていたが、性能的に見たとき非常 に不満の残るシステムであった。そこで、バークレーのグループでは、徹底 的な性能解析を行い、強力なチューニングを行った。こうして 1986 年に登 場したのが 4.3BSD である。機能的に強化された部分は、シグナル関係など 一部だけであったが、性能的不満は解消されるシステムとなった。 これに対しカーネギーメロン大学 ( CMU ) では、さまざまな機能を取り込み 肥大化するオペレーティングシステムの構成方法を根本から見直す作業が始 められた。これが、 MachProject である。このプロジェクトは、 CMU で開 発されたネットワーク・オペレーティングシステム Accent の流れをくんでお り、分散環境、マルチプロセッサ、巨大なメモリ空間を基本に新しい概念に基 づいてオペレーティングシステムの設計を行っている。 こでは、オペレー ティングシステムの基本機能を提供するマイクロカーネルとオペレーティン グシステムの各サービスを提供するサーバ群に分割してシステムを構成する ことにより、機能拡張を容易にすると共に、必要な機能を提供するサーバを 用いることで、システムの肥大化を防いでいる。 Mach オペレーティングシ 21

9. プロフェショナルBSD

1.3 BSD オペレーティングシステムの応用分野 ルの、、終わり (EOF) 〃で終わるバイト列である。この EOF は、なんらかの データではなく論理的な概念である。ディスクなどの各ハードウェアに対応 するスペシャルファイルや、ディスク上に格納されたデータ ( 通常のファイ ル、ディレクトリ ) などがある。 こで重要なことは、いすれのファイルも同一の構造をしていることであ る。つまり、たとえ tt/dev/ttyXX というスペシャルファイルからデータを 読み込んだ場合も、 EOF を示す約束になっている D が入力されるまでのバ イト列が 1 つのファイルとして扱われる。またディスプレイは、いくらでも 書き込めるファイルである。 このようにすべてのファイルが同一の構造をしていることで、コマンドや ツールは対象を意識することなく自由に処理を行うことができるのである。 言い替えると、 BSD オペレーティングシステムは、ディスクを読み書きする ための複雑な操作や、プリンタに文字を送るといった手順を、すべてバイト 列として、、ファイル〃に見えるようにする役割を持っているのである。 さらに、これらの情報が 1 つの木構造の名前空間の中に格納されており、 すべての情報に対して同じ形式の名前が付けられていることも、もう 1 つの 重要な特徴である。 1.3 BSD オペレーティングシステムの応用分野■ ■ソフトウェア開発基盤として BSD の最も得意とする守備範囲はやはりソフトウェア開発である。これ は、歴史的にそのような目的の環境として利用されてきており、また社会的 にもこの点において大きな評価を受けているからである。 人間がソフトウェアを作成する過程において、アイディアから設計、コー ディン久テスト、デバッ久マニュアルやドキュメントの作成、保守に至 るまで、すべての範囲で有効に作用する環境構築の可能性を持っている。 ■ソフトウェアの流通基盤として BSD は共通のインターフェイスを提供するため、同しソフトウェアを共通 に利用する可能性を提供する。つまり、あるところで開発された便利なソフ 29

10. プロフェショナルBSD

1 章 BSD オペレーティングシステム BSD がユーザーに提供する機能はさまさまてある。 BSD のプロフェショナルとし て効率的な環境作リをしていくためには、これらの機能を熟知している必要がある。 しかし、 BSD とその前身てある Unix の思想的な背景や社会的な背景を理解していれ ば、 BSD に関する技術的な知識を生かし、さらに将来へ向けて発展していくための基 盤として BSD を活用てきるようになるてあろう。 1.1 UNIX から Unix へ、そして BSD UNIX は 1969 年に AT&T ベル研究所で誕生した。つまり、その誕生から すでに四半世紀の歳月を経て、なお利用され発展を続けているのである。た かだか 50 年程度の計算機の歴史の中で、 1 つのソフトウェアがこのような 寿命を保つのは明らかに異常な出来事である。この理由には、ハードウェア とは独立した発展を続けてきたことと、大学や研究所を中心とした開発体制 がある。 ー 1969 年 UNIX 誕生 UNIX 誕生の経緯については、「 The Evolution of the UNIX Time-sharing system * 1 」「 Reflections on Software Research* 2 」に譲るとして、 UNIX の 発展に最も影響を及ばしたいくっかの要素について確認をしておく。 UNIX がベル研究所で誕生したこと 当時のオペレーティングシステムは、ほとんどハードウェアメーカーが開 発したものであった。これは、オペレーティングシステムがハードウェアを 直接操作するソフトウェアであって、十分な性能を引き出すためには、ハー ドウェアに熟知したメーカーが設計するのが一般的だったためである。 しかし、 UNIX は ( 少なくとも当時は ) 計算機ハードウェアを販売していな * 1 D. M. Ritchie, Lecture Notes in Computer Science, No. 79 , Spriner-Verlag, 1980. 邦訳 : 生島 誠訳「 UNIX 誕生」 , bit, V01.15 , No. 7 , pp. 51 ー 64. * 2 D. M. Ritchie, Communications of ACM, V01.27 , No. 8 , Aug. 1984 , pp. 758 ー 760. 邦訳 : 奧野博 訳「ソフトウェア研究に思う」 , bit, V01. 16 , No. 13 , pp. 4-8.