UNIX - みる会図書館


検索対象: UNIX MAGAZINE 1997年3月号
186件見つかりました。

1. UNIX MAGAZINE 1997年3月号

連載 /FreeBSD ノート -0 写真 1 Lion's Commentary on UNIX 6th Edi- tion, with Source Code 虹血 0 単 気 UNIX@ SO て ce Code 「 UNIX 」と書かれるようになる ) か誕生した。 1969 年の ことである。 Multics をもじった名前の示すとおり、機能 のひとつひとつを十分に検討して耳対尺をおこない、た いへんスマートでエレガントな OS となった。 ベル研は MuItics に懲りて、 OS 開発を進めるつもりは なかったようである。嘘のような話だが、最初に UNIX が作られたのは、放置されていた DEC の PDP-7 で space travel というゲームを動かして遊ぶためだった。 Dennis Ritchie は BCPL を改良した B 言語、さら には B を改良した C 言語を作成した。当初アセンプラで 書かれていた UNIX は、 1973 年には C 言語て書き直さ れた。これによって、 UNIX は高い移植陸を有するよう 1978 年、 UNIX ノヾージョン 7 が発表された。 C コン になった。 ノヾイラや Bourne シェル (sh) 、 awk や make 、そして 1974 年に Thompson と Ritchie の両氏による論文 uucp など、 UNIX の原型がこの時点でほは周まった。 「 The UNIX Time-Sharing System 」が発表される 1979 年には、 Microsoft が XENIX の名前で UNIX と、ベル研には問合せが頻繁にくるようになった。当時 の販売を開始した。 XENIX はのちに、同年設立された AT&T は独占禁止法でコンピュータ事業を禁じられてい SCO (Santa Cruz Operations) から販売されるように たので、大学に対してわすかな金額で UNIX のライセン なる。 XENIX は PC 上て動く UNIX の草分けであっ スをなえた。 た。現在は名前を SCO OpenServer と変え、ひろく使 AT&T から正式に外部にライセンスされるようになっ われている。 たのは 1976 年の UNIX ノヾージョン 6 で、 UNIX の爆発 1984 年の分割にともない、コンピュータ事業か解禁さ 的な普及が始まった。同時に、 UNIX のさまざまなバー れた AT&T からも UNIX か製品として提供されるよう ジョンか開発されることになった。 になる。これが System III である。のちに SystemV 、 SystemV Release 4 などへと発展するこの系絲充は、 BSD 当時、 AT&T はバクイ多正などのサポートはいっさいし ないという方針をとっていた。そのため、ユーサーどうし 系と並んで UNIX の 2 大瀚充を作ることになる。 の情報交換カヾ舌発化した。ューサーグルーフ。の会報がさか UNIX にさまざまな機能が加わり、肥大し始めたのも んに発行さソフトウェアの交換会もおこなわれるよう このころである。ソースコードを教育目的に使えなくなっ たこともあって、アムステルダム自由大学の Andrew S. になった。これがのちに UNIX のユーザー・コミュニティ Tanenbaum は 1987 年、ソースコードを教育用に利用で へと発展し、高い技術力をもつようになる。 きる UNIX ノヾージョン 7 互換のオペレーティング・シス ーサウス・ウェールズ大 ! 学の John Lions 1977 年、 テム (OS) として MINIX を開発した。 が「 Lion's Commentary on UNIX 6th Edition, with MINIX はその後 UNIX のソースをみることができな Source Code 」の配布を始めた。これは授業で使用する い人びとの渇きをおおいに癒すものとなった。日本ではア ために、当時の UNIX ノヾージョン 6 のソースコードに スキーから PC98 用に不舞直された MINIX 1.2 および 1.5 言田な注釈を加えたものである。当時のライセンスは日 か版売されたはか、日経 MIX のグループによる PC98 へ で、こういったことか明確に禁止されていなかった。しか の移植もおこなわれた。 Tanenbaum の OS の教科、書に し、この本の正式な出版は長いあいだ : 見せす、関係者の は MINIX 1.1 のソースコードがはは、すべて求されて あいだではコピーがでまわっていた。 1996 年にようやく Peer-to-Peer Communications から出版されて、入手 いる。 このころから、商業 UNIX の陣営間で勢力争いか繰り できるようになった ( 写真 1 ) 。 20 年を経た今日でもたい 返されるようになった。一方で、標準化のイ 1 璞も進められ、 へんに興架い文献である。 Foreword by Dennis Ritchie 139 UNIX MAGAZINE 1997.3

2. UNIX MAGAZINE 1997年3月号

連載 UNIX Communication Notes—O 4.3BSD UNIX では、この要求を満たすためにアドレ スをキーとしたハッシュテープル (hash table) を用いた 実装をおこなっていた。この実装の特徴は、ホスト経路と ネットワーク経路のそれぞれにハッシュテープルを作って いる点にある。図 2 は、 4.3BSD UNIX での経路表の念 図である。 rthost と rtnet は、それぞれホスト経路、ネッ トワーク糸登各についてのハッシュテープルである。テープ ルの各要素は構造体 rtentry であり、各ハッシュテープ ルはその配列として構成されている。構造体 rtentry で は、 1 つの構造体で 1 つの経路情報を表すことができる。 同レ、ツシュ値をもつ経路情報は、テープルの先に糸新彡リ ストとしてオ翻タされる。この経路表は、ハッシュでタグ付 けされた線形リストテープルと呼んでもよい。経路の検索 は、次のようなガ去でおこなわれる。 1. 送り先のホストアドレスから、ハッシュ値を計算する。 同様に、送り先のホストアドレスからネットワーク・ア ドレスを求め、その値でハッシュ値を計算する。 では、前者をホスト経路に対するハッシュ値、後者を ネットワーク経路に対するノ、ツシュ値と呼ぶ。 2. ます、ホスト経路に対するハッシュ値をインデックス として配列 rthost を検索する。このハッシュ値がれで あった場合、配列のれ番目から始まる糸新彡リストを検 索する。 こで、目的とする経路情報があれば、それに もとづいて IP データグラムを転送する。 3. 酉 d91Jrthost の検索に失敗したときは、ネットワーク経 路に対するハッシュ値をインデックスとして酉 d51Jrtnet を検索する。ここでの検索は rthost の場合と同じで、 ハッシュ値でインデックスされた配列要素から始まる 線形リストを検索する。 こで、目的とする経路情報が あった場合には、それにもとづいて IP データグラムを 転送する。 4. どちらの酉冽の検索にも失敗した場合は、デフォルト経 路を用いる。 5. デフォルト経路か設定されていなけれは、本の対象と なった送り先アドレスに対する経路情報がないため、転 送処理は不可能である。したがって、 IP データグラム か冲幻医できなかったときの適切な処理をおこなう。たと えば、その IP データグラムが中継処理中のものであっ たら、 ICMP Destination Unreach メッセージを生 UNIX MAGAZINE 1997.3 成し、中継処理中の IP データグラムを破棄する処理を おこなう。 Radix Tree の利用 4.3BSD UNIX での実装は、経路情報の追加や削除の 処理がやや複雑になったものの、高速な検索が可能で、か っメモリの使用量が少ないという長所があった。ところ が、その後の BSD UNIX の開発過程で、ハッシュテ ープルにもとづく経路表では不具合が多いことが分かって きた。 最大の原因は、 4.3BSD UNIX 以降の開発において、 マルチプロトコルに対応したネットワーク機能か実装され たことである。それまでの BSD UNIX の実装でも、同 様の機能の寒見が目標とされていた。 4.2BSD UNIX からは、 IP だけではなく、 Xerox の XNS の実装も含まれていた。 4.3BSD UNIX までは、経 路表は IP および XNS の両方で同し欟冓、すなわちハッ シュテープルにもとづく実装を共通に利用していた。 4.3BSD UNIX 以降は、 OSI プロトコルの実装竹業も 始められた。山も匠は、コンピュータ・ネットワークの世界 で OSI プロトコルはほとんど話題にならないが、 4.3BSD UNIX のリリース以降しはらくのあいだは、業界を挙げて OSI プロトコルの実装 0 コり組んでいた。 こで問題となったのは、 OSI プロトコルで使われる アドレス体系である。 IP も XNS も、どちらも短い固定 長のアドレス ()P では 4 オクテット、 XNS では 6 オク テット ) を用いていた。固定長のアドレスであれば、ハッ シュ値の言算や経路情報をオタする構造体の定義は簡単に できるし、ハッシュによる検索布間用クメ交込みも有効に機能 する。しかし、 OSI プロトコルではきわめて長いアドレス を使っている。長いアドレスをⅱ財是とした場合、ハッシュ テープルによる実装は非効率的である。しかも、 OSI プロ トコルにおけるアドレスは固定長ではない。 OSI プロトコ ルでは、アドレスの最長バイト数は分かっているが、可変 長のアドレスをとりうるのである。したがって、メモリ管 理などの面で固定長アドレスを前提とした経路表は扱いに くくなってしまう。このような理由から、 OSI プロトコ ルでのアドレスにも有効な、すなわち高速な検索が可能な 経路表の構成を考える必要が生した。 もう 1 つの大きな問題は、ハッシュテープルによる実 51

3. UNIX MAGAZINE 1997年3月号

現在のところ、 FreeBSD-3.0-current への変更は順次 FreeBSD-2.2 へと反映されているので、このスナップシ ョットは 2.2 系列とはとんど差がない。今後、 3.0 系列の 開発にともなう大きな変更があれは、新たなスナップショ ットカイ乍成される予定である。 X ℃ e86 3.2 の public patch 1 公開 XFree86 3.2 では、 Mach64 と S3V のサーノヾーに一部 のカードで問題があった。これを修正する public patch 1 が、 XFree86 プロジェクト (http://www.xfree86. org/) から公開された。 Mach64 のはうは Rage Ⅱチッ プセットおよび 264CT 、 264VT 、 264GT の一 - 一 ; 、 S3V は Diamond Stealth 3D 3000 シリーズが対象である。 現在のところソースに対するパッチのみが公開されてい るので、必要な場合はソースコードからコンパイルしなく てはならない。このパッチは、 ftp://www.xfree86.org /pub/XFree86/3.2/fixes/3.2ー6Xー0.1 から入手できる。 日本国内では ftp://ftp ・ iij ・ ad ・ jp/pub/X/XFree86/ XFree86/3.2/fixes/3.2-fix-O.1 にミラーされている。 このパッチを含めたべータ版のバイナリリリースも予定 連載 /FreeBSD ノートー0 freeBSD の歴史 されている。 Multics はきわめて高機能な OS で、現在でははとん と表記 ) 。 ern Electric か共同で所有していたが、以下では AT&T ード、ベル研 ) である (AT&T とそのイ絵社である West- のがゼネラル・エレクトリック (GE) とベル研究所 ( 以 Service) カ甘是案された。この Multics の開発に加わった MuItics (MuItipIexed lnformation and Computing (Multiple Access Computers) プロジェクトにより 1964 年、マサチューセッツ工科大学 (MIT) の MAC UNIX 以前 食い違いもあり、その場合は私の判断 0 尺した。 年代は当事者の文章をもとにしているが、資料 - によって 386BSD から派生した NetBSD も簡単に触れる。 FreeBSD の順にみていく。また、 FreeBSD と同時期に みたあと、 FreeBSD の前身にあたる 386BSD 、そして UNIX 誕生以前から、 UNIX 、 BSD の歴史をざっと 138 ど伝説と化した存在である。セグメント化およびページン グによるイ反想記慮、高級言語 PL / 12 による OS の言当、メ モリを共有するマルチプロセッサ・システム、リレーショ ナル・データベース、アクセス制蹤卩によるセキュリティ保 護機能、重加勺再構成など、当時としては画期的な機能を満 載していた。今日でははとんど当り前のように使われてい る階層化ファイルシステム、コマンド・インタープリタ (UNIX でいうシェル ) や、入出力のキャストも Multics カ起源である。 Multics システムの要求するリソースは膨大なものであ ったが、当時は大型コンヒュータでも 80286 マシン程度 の処理能力しかなく、処理ロリな景グが出た。端末のサ ポートは言妬 1 ・では 1 , 000 個だったが、実際に処理できたの は同時に 3 つまでだった、あるいは OS の起動に 1 時間 近くも費やした、といった逸話カ戯っている。もちろん、 そのままでは使いものにならないのて処理能力を向上させ る工夫か重ねられた。 けっきよく、ベル研は 1969 年に MuItics から手を引 いた。ベル研力法ったあとも MuItics の開発は続いた。そ の後 UN Ⅸからもさまざまな機能がとりいれら C 言 語も樹直された。最盛期には数ーわカ所で実際に使われてい たようである。そして驚くべきことに、 Multics は現在で も使われ続けている。 Multics は UNIX の源の 1 つであるとともに、簡潔 さが身上であったオリジナルの UNIX とは対極にある OS である。初期の UNIX ューザーのなかには、 Mul- tics をすいぶん馬鹿にする傾向があったようだ。しかし、 時間の流れとともに UNIX はどんどん MuItics に近つ、 いているようにもみえる。 Multics の文献をよく読むと 「あっ、これは UNIX の〇〇ではないか」という箇戸励ゞ 随所にみられて興味が尽きない。 UNIX を別の角度から 眺めてみるのにたいへん有効であると思う。 MuItics に ついては、 Tom Van Vleck が WWW で公開している http://www.best.com/-thvv/multics.html にかなり 詳しい 'l 帯長がある。 UNIX 一方、ベル研では、 Ken Thompson により、 Mul- tics の経験を活かした新たな OS 「 UNICS 」 ( のちに 2 ピーエル・ワンと読む。 UNIX MAGAZINE 1997.3

4. UNIX MAGAZINE 1997年3月号

連載 /FreeBSD ノートー0 SC 翡 たのしい IJN Ⅸ CJN ー X への招待 坂本文著定価 L900 円 LJN Ⅸを物つどたのしくる入門書 たし飛Ⅸ 「 UNIX MAGAZINE 」連載当初から好評 い取′、求物 の「 UNIX への招侍」を単行本化。 UNIX の根底にある文化や流儀をまじえつつ再構成、 大幅加筆。ワークステーションの急な普及に よって UNIX の習得が急務と言われる現在、 まさに必言 ) 1 冊。 続・たのしい IJN Ⅸ シェルへの招待 坂本文著定価し 900 円 rLJN Ⅸへの招待」単行本化第 2 弾 物・たのい山 シェルは UNIX の世界のいわば「裏方さん」。 その動きや仕組みを知れば、 UNIX がいっそ う楽しく、便利に使えるようになる。本書は、ひろく 使われている C シェルを中心に、シェルの使 い方から仕組みまて、を分かりやすく解譓前巻と ともに入門者必孑 ) 1 冊。 Life with UNIX IJ N Ⅸを愛するすべての人に ドン・ライプ、サンディ・レスラ共著、坂本文尺、ネ諍俊博訳定価 3 , 000 円 だれも知らなかった IJN Ⅸの魅力の世界 LifcwithV>JI UNIX の歴史的背景や社会動向とともに UNIX の技術面や市場面、今後の展望などを 幅広く解説。また UNIX 人名辞典、アングラ 情報、名言などの貴重なデータや一風変わっ た情報を満載、 UNIX ューザーに新しい視野 を提供する好言勿。 文書処理システム ラ・テ・ツク レスト・ランポート著、エドガー・クック、倉沢良一監修、大野俊治、小暮博道、藤浦はる美訳定価 2 , 繝円 使いやすさと豊富な機能を備えたマクロ・バッケージ い X は、もっとも進歩した組版システムといわ れる TEX の実用性をさらに高め、使いやすくし たマクロ・パッケージ。これを利用すれば、複 ょ数式すらユーザー自身の手て、自在にレイ アウトて、きる。開発者の手による解説書の決定 版。 ルート こなうアルフア版、とくにサイトを限定しないべータ版、 そして最後に正式リリースという順に開発は進められた。 4.2 BSD の場合には、 4. la がアルフア版、 4. lb がその 続き、 4. lc がべータ版、そして最後に正式リリースの 4.2 BSD である。 そのほか、一ヨ殳のユーサーからもバグや改良についての 情報を収集するために、 NetNews カヾ舌用された。 comp ・ bugs. 4bsd などはその名残である。 FreeBSD も、基本的にこういうリリース・エンジニア リングを受け継いでいる。しかし、 CSRG と違って Free- BSD の開発チームは組織として緩やかであり、ユーサー にはっきりした組系アない。リリース・エンジニアリング のあり方もそれに対応して CSRG のころとは異なってき ている。 FreeBSD-2.0.5-RELEASE の公開後に始まった 2.2 系列の開発を例にみてみよう。 FreeBSD では開発の最先 端は current と呼ばれる。 FreeBSD-2.2-current として 作業か進めら途中、開発者の便宜を図るスナップショ ットと呼ばれるテスト版が作られた。スナップショット は、 current をインストールしやすいようにまとめたもの である。 リリースが近づくと、 ALPHA 、 BETA などと名前の 付いたテスト版が公開される。 CSRG のころのアルファ テスト、べータテストの名残の名前カ咐いているが、公開 の範囲をとくに定めているわけではない ( さらに GAM- MA などのテスト版が公開されることもある ) 。このテス ト版は、できるだけ多くの開発者カ躾際に使って問題を洗 い出し、リリースに応央させることを目的としている。 問題の修正かると、 FreeBSD-2.2-RELEASE が公 開されることになっている。同時に、 2.2 系列の開発は FreeBSD-2.2-STABLE に移行する。これは、基本的 に新しい機能は追加せず、 2.2 のバグ修正をおこなうも のである。必要に応して、こから修正版が公開される こともある。たとえば 2.1 系列では、 FreeBSD-2.1.5- RELEASE に続いて FreeBSD-2.1.6-RELEASE が公 開されている。 図 2 に 2.0 以降の開発の流れを示す。 STABLE の系列は本来保守か読けられるべきものであ るが、ソースコード管理ツールの都合上、 2.1 系列の開発 は FreeBSD-2.1.6 で終了することになった。将来的に ルート root から / へのメッセージ 高野豊著定価し 600 円 人とコンビュータを観察するスーバーユーサーの目 日本に UNIX が導入されたばかりの頃、突然 管理者を任された著者の悪苦闘の経験をつ づる。著者が、今日まて、めぐりあったさまざまな エピソードを紹介。示唆に富む告白談と、飽くな き探求心の牛吾は、システム管理者に限らず多く のユーザーの共感を乎ぶだろう。 ※表示定価は消費税込みです。 い ( 破、こへのメッセーシ 株式会社アスキー 〒ト 24 東京都渋谷区代々木 4 ー 33 ヨ 0 株式会社アスキー出版営業部電話 ( 03 ) 535 ト 8194 145 UNIX MAGAZINE 1997.3

5. UNIX MAGAZINE 1997年3月号

連載 /FreeBSD/ ートー 0 写真 4 Plan9 P れ 9 UNIX MAGAZINE 1997.3 6 もっとも、お堅い AT&T のお偉方はずいぶん頭を悩ませたように 竹を接いだような違和感がある。 : 見されているものもあるが、しよせんはあとづけで木に レガントに実現されている。同様の機能で 4.4 BSD でも とれていなかったネットワークなどの機能が、きわめて工 といえる。 UNIX ではあとからどんどん追加されて統一が Plan9 はある未で UNIX よりも UNIX らしい OS り設立された Lucent TechnoIogies に移っている。 なお、こののち 1996 年にベル研は、 AT&T の再編によ ら「 8 亠」と呼はれるなど、舮斤に遊び心か謚れている 6 る。そのウインドウ・システムはやはり日画のタイトルか といういささか奇妙な名称は有名な B 級 SF 映回に由来す /ssg/html/plan-9. htm) を発表した ( 写真 4 ) 。「 Plan9 」 1995 年に Plan9 (http://www.bell-labs.com/80.org のと同し作業を、肥大化した UNIX に対しておこない、 ベル研では、 MuItics の経験から UNIX が生まれた なものになっているので、なおさらである。 張で、初期の UNIX からはおよそ考えられないはど巨大 きわめて大きな労力を必要とする。 BSD は相次ぐ機能拡 このように、新たな機能をあとから付け加えていくのは Plan9 だろう。 からは面倒でも上記のようなことを考えざるをえなくなる し、実現できる機能や性能面などに限界があるので、これ りあえす使えることを目標に竹喋か進んできている。しか これまでのところは、あまり難しいことは考えす、と らどうするか、などのさまざまな間題がある。 べきだが、どこで識別するか、その間にアクセスがあった PIan9 を使っていると、「ひょっとすると、 FreeBSD の開発を続けるのは日罸に遅れの OS にしがみつく思行かも しれない」と思うことがある。すくなくとも、言気 1 ・の古い ものにあまり多くを夢みて労力を注ぎ込むのは効率が悪い のはたしかである。 FreeBSD 関連の作業にあたっては、 このあたりのバランス感覚を失わないようにしたいもので ある。 147 ご意見をくださった方々に感謝したい。 この 2 点は、読者の方からご孑商いただいた。このはか sd0s2f となる。 sd0s2d 、 /dev/sd0s2e はそれぞれ / dev / sd0s2e 、 /dev/ 使われない。ふつうにインストールすると、図中の /dev/ 文にあるとおり、最後に d の付くパーティションは通常 のパーティションに /dev/sd0s2d が使われているが、本 1 月号で、ディスクのパーティション分割を示した図中 NetBSD-pc98/) で公開されている。 式の情報が WWW (http://www.soum ・ co ・ jp/-atsu/ NetBSD/pc98-a と書かなけオ・しはならないようである。公 NetBSD 1.0 ) 、略して NetBSD/pc98-aIpha あるいは ストで、正式には NetBSD/pc98-alpha(based on ( 98 ) と書いたが、現在公開されているのはアルフアテ 1996 年 12 月号で PC98 用の NetBSD を NetBSD アフターケア ( はまだ・なおき ) について説明する。 次回は、ハードディスクの増設や他 OS との共存など ☆

6. UNIX MAGAZINE 1997年3月号

ASCII たのしい IJNIX IJN Ⅸへの招待 坂本文著定価し 900 円 LJNIX をっと″たのしく学べる入門書 TJNIX MAGAZINE 」連載当初から好評の TJNIX への招待」 を単行本化。 UN Ⅸの根底にある文化や流儀をまじえつつ再構成、 大幅加筆。ワークステーションの急速な普及によって UNIX の習 得が急務と言われ見在、まさに必言 ) 1 冊。 続・たのしい IJN Ⅸノエの招待 坂本文著定価し 900 円 「 LJN Ⅸへの招待」単行本第 2 弾 シェルは UNIX の世界のいわー裏方さん」。その動きや仕組みを 知れば、 UNIX がいっそう楽しく、便利にイ - るようになる。本書は、ひ ろく使われている C シェルを中心に、シェルの使い方から仕組みまて、 を分かりやすく解言前巻とともに入門者必携の 1 冊。 ハッピー・ネットワーキング 新入生のためのインターネット入門 山本和彦著価格し 500 円 豊富な実例で学ぶインターネット 世界各地の二百数十万台ものコンヒ。ュータを結ぶ巨大なネットワー ク、インターネット。利用て、きる環境にありながら使い方が分からずに 鬟著している人たちを対象に、 UNIX 上の Emacs を使ったメール やニュースの読み書き、ファイル市幻医のイ士組みなど 文書システム - ラテ・ツク レスト・ランポー工ドガークッ久倉沢良一懿、台卩」髄、藤尺定面 a800 円 使いやすさと豊富な機能を備えたマクロ・バッケージ い X は、もっとも進歩した組版システムといわれる X の実用性 をさらに高め、使いやすくしたマクロ・パッケージ。これを利用すれば、 複ょ数式すらユーザー自身の手て、自在にレイアウトて、きる。開発 者の手による角見書の決定 SLJN システム里 写真 1 筐体の南京錠 図 1 南京錠にケーカレを通す 下山智明、城谷洋司共著定価 7 , 000 円 SunOS 4 ココ (SPARC system 、 Sun3) 文寸応 TFS 、 RFS の機能のほか、マニュアルて、は見つけにくい dump 時 のパラメータやテープの不頁、オートマウントの設定を詳説。さらに システムにトラブルが生じた際の対処方法、メモリ UNIX やミニル ートの使い方など、システム管理に必要な情報を満 Life with IJNIX LJN Ⅸを愛するすべての人に ドン・ライプ、サンディ・レスラ共著、坂本文監訳、福夋博訳定価 3 , 円 だれも知らなかった LJNIX の魅力の世界 UNIX の歴史的背景や社会動向とともに、 UNIX の技術面や市場 面、今後の展望などを幅広く解説。また UNIX 人名辞典、アングラ 情報、名言などの貴重なデータや一風変わった情報を満載、 UNIX ューザーに新しいネ f を提供する好言彌勿。 ルート ルート 「 00t から / へのメッセージ 高野豊著定価し 600 円 人とコンビュータを観察するスーバーユーサーの目 日本に UNIX が導入されたばかりの頃、管理者を任された著者の 悪成苦闘の経験をつづる。著者が、今日まて、めぐりあったさまざまな ェヒ。ソードを紹介。夋に富む告白談と、飽くなき探求心の物語は、シ ステム管理者に限らず多くのユーザーの共感平ぶだろう。 ※表示定価は消費税込みです。 険に入ることは不可能です。レンタル業者はおそらく独自 にイ尉をかけているでしようが、それは業者の資産が盜難 で失われることに対す引尉です。機器の盜難カ起きた場 合、借りている側は代替機か補充されないだけでなく、存 在しない機械に対してレンタル費を払い続けなければなら なくなります。 内部のポードやメモリの盗難防止のために、筐体に鍵を かけています。鍵の付いた筐体の PC はそう珍しいもの ではありません。しかし、一部の PC では鍵をかけると 電源が入らなくなるなど、 PC がいっさい利用できなくな ります。これは完全に個人専有使用の形態に対応したもの で、席を外しているあいだにいたすらされないために鍵を かけるということのようです。 今回の新システムでは、筐体は錠のないタイプを選び、 南京錠をかける方式にしています ( 写真 1 ) 。 1 つには、 のほうがマスターキーをイ墫合してもらいやすいからです。 また、図 1 のように南京錠にピデオ、キーポード、マウ 株式会社アスキー 〒ト 24 東京都渋谷区代々木 4 ー 33-10 株式会社アスキー出版営業部電話 ( 03 ) 535 ト田 94 81 UNIX MAGAZINE 1997.3

7. UNIX MAGAZINE 1997年3月号

連載 /UNIX Communication Notes— 図 3 Radix Tree による表 0 end 8 5 0 4 0 0 0 0 表 1 ー」 経路 133.5.23 / 24 133.5.16 / 24 133.5 / 16 133.4 / 16 0 / 0 0 15 8 5 0 5 0 0 0 0 1 19 8 5 0 510 0 0 end 21 アドレス 85040000 85050000 85051000 85051700 00000000 マスク 00000000 ffffffOO ffffffOO ffffOOOO ffffOOOO 場合、単純な SequentiaI TabIe などと上交して処理が 54 の 4 カ所で分岐が発生することになる。これらの経路情報 ・ 21 ビット目 ・ 19 ビット目 ・ 15 ピット目 ・ 0 ピット目 クスの最初を 0 ビット目と数えると、 このような経路かオ絲タされている経路表では、インデッ の、、 0 / 0 " はデフォルト経路を表している。 スクは、それぞれ 16 進数表示をしたものである。最後 示した経路かオタされているとする。表中のアドレスとマ 経路表の例を考えてみよう。現在の経路表に、表 1 に 経路表の例 置いているからである。 報かオタされている場合の経路検索処理の高速化に重点を UNIX における経路表に関する処理では、大量の経路情 やや複雑になるきらいがある。これは、現在の 4.4BSD 8 5 0 517 0 0 UNIX MAGAZINE 1997.3 January, pp. 93 ー 103 for BerkeIey UNIX ” Proceedings of USENIX 1991 [ 1 ] Keith SkIower, "A Tree-based packet Routing Table [ 赭文献 ] ( やまぐち・すぐる奈良先端科学オ支術大学半完大学 ) する。 詳細、経路表と ARP テープルの融合などを中心に解説 は、この Radix Tree を使った経路検索の方式、実装の われている Radix Tree の構造について説明した。次回 今回は、経路制御冓のインターフェイスと、内部で使 ☆ 味については、次可に説明する。 ット目と 19 ビット目のノード ) がある。このマスクの意 葉以外のノードにも、マスクか書かれているもの ( 0 ピ オ褓内されている。 ット数を表している。葉の部分には、経路情報とマスクが 葉以外の部分のノードの内部の数字は、皮が発生するピ UNIX における Radix Tree のネノ祺月化によるものである。 ト目にもノードの分岐が発生しているが、これは 4.4BSD をオ褓内している状況を図式化したのカ 3 である。 1 ビッ

8. UNIX MAGAZINE 1997年3月号

UNiX UNIX REVIEW 誌提携 MACAZINE CONTENTS 97 / 特集 " 岡山聖彦、片山喜章 カーネルを読もう ( 7 ) UNIX Communication Notes ・・ お手紙書こうよ UN Ⅸ 14 モーレッ UN ー X 教室・ 連載 47 55 59 66 85 95 99 107 1 15 インターネットの利用と仕組み ロ村ア ネットワークのトラブル・シューティング ( 3 ) ーイ 4 を - UN Ⅸ知恵袋 " " " 島慶ー ネ - ムサーバー 倉敷芸術科学大学のネットワーク構築・ 光ファイバー・ケーブルあれこれ NET WORTH ・”・・・ M. steven Baker Microsoft と IBM の TCP/IP " 小林和真 ← Daemons & Dragons ・・・・••Dinah McNutt & peter GaIvin キャッシュ・ファイルシステムの利用法 プログラマー入門・・・・・・荒井美千子 JavaScript ( 5 ) UN Ⅸ流プログラミング 今泉貴史 yacc PERL ADV OR ・・・・・・ Randa . schwartz ヒアドキュメント 表紙・目次デザ不ノ・園部真美 ( AUDREYTHE DESIGN)

9. UNIX MAGAZINE 1997年3月号

特集モーレッ IJN Ⅸ ・ユーサープロセス : ューサーカ位ち上げるプロセス。コ マンド発行によって生成される。 ・システムプロセス : UNIX システム自身が立ち上げる プロセス。オペレーティング・システムとしての仕事を 担う。ー鍛にプート時に生成される。 UNIX は、プロセスを仕事の単位として CPU に割り 当てます。各プロセスには優先測立か設定されており、早 く CPU に割り当ててほしいプロセスは、ほかのものより も高い優先順位か轂定されます。 UNIX はこの優先順位 などを勘案して、プロセスを順に CPU に割り当てます。 UNIX 計算機には、普通のシステムで数ヨ - ・個 ( おおむね 20 個以 E) 、サーバーなど多くの仕事を任されているもの なら 200 個以 E のプロセスか存在しています。これだけ の数のプロセスが、それぞれ自分の仕事をおこなうことに よって、 UNIX 全体がうまく機能しているわけです。 プロセスを覗く UNIX を 1 ューサーとしてふつうに使っていると、あ まりプロセスを意識することはないかもしれません。しか し、計機の管理者であれは、引・算機の状態を知るために プロセスの状態を知る必要があります。ここで対象にして いる読者の皆さんは管理者ではありませんが、おそらく誰 もが「おいおい、中身はどうなってるんや ? 」というメ - は寺 ちを抱いている、ことでしよう 27 。そこで、ますはシステム 上のプロセスを石忍するガ去を紹介しましよう。 ある点て起動されているプロセスを見るためのコマン ドが ps です。なお、 ps コマンドから得られる情報はた いへん奧が架く ( ! ? ) 、 こではすべてを扱いきれません。 重要なところ以外の説明は軽く飛ばしますので、お許しく ださい。 使い方は次のとおりです ( オプションは主要なものの み ) 。 ・ BSD 系 (BSD/OS) ps [aeghj lmruvwx] [-p 記 ] [-t tty] ・ SystemV 系 (IRIX) ps [-edajMf1c] [-p 〃記 ] [-t れⅵ BSD 系と SystemV 系でオプションカ吠きく異なりま 27 でもあまり深く突っ込むと、どこカくへ飛よされてしまう特集カ鮗 らなくなるともいう ) ので、さらっといきましよう。 UNIX MAGAZINE 1997.3 すが、こでは BSD 系を中心に説明します。いすれも非 常にたくさんのオプションが用意されています。 何も引数を指定せすに実行した場合の例を図 22 に示し ます。 ps コマンドの出力結果を簡単に説明しましよう。出力 のフォーマットは、プロセス番号順にソートさ左から 順に、 ・プロセス番号 (PID) ・制御端末 (TT) ・プロセスの状態 (STAT) 実行日糶」 (TIME) 起動されたコマンド (COMMAND) となっています。 これらはすべて、 ps コマンドを実行したユーサーのプ ロセスです。たとえは、プロセス番号 1692 を見てくださ い。これは、 ps コマンドを実行したことによって生成さ れたプロセスです。 COMMAND が ps と表示されてい ることから分かりますね。図 22 の例ではオプションをケ えていないので、必要最小限の情報しか出力されていませ んが、たくさん用意されているオプションを組み合わせる ことにより、さまざまな情報を取り出せます。 ps コマンドの出力フォーマットの詳しい解説はひとま すおいて、さきほど紹介した BSD 系の ps コマンドのオ プションを説明します。なお、説明のなかで、、キーワード (%cpu 、 rss など ) " という言葉を用いていますが、これに ついては彳幻します。 ・ a : 自分のプロセスだけでなく、他のユーサーのプロセ スも表示する。 ・ e : プロセスカリ用している竟変数を表示する。 ・ g : すべてのプロセスを表小する。 ・ h : ページごとに、ヘッダ部分を表小する。 ・ j : 次のキーワードの情報を表示する。 user 、 pid 、 ppid 、 pgid 、 sess 、 jobc 、 state 、 tt 、 time 、 command ・ 1 : 次のキーワードの清報を表示する。 uid 、 pid 、 ppid 、 cpu 、 pri 、 nice 、 vsz 、 rss 、 wchan 、 state 、 tt 、 time 、 command ・ m : メモリ使用齣頂に出力する。 ・て : CPU の使用頂に出力する。 33

10. UNIX MAGAZINE 1997年3月号

特集 monkey : 話の流れを考えたよい質問やな。 あつぶる : 人からは聞き上手つていわれます。 モーレッ UN Ⅸ 図 21 UNIX 中のプロセス UNIX の中 monkey : そうやろな。 1 つの CPU で同時にたくさん 仕事をこなしているようにみせてるのは、 TSS (Time Sharing System) っちゅう方式を使ってるからや。日 本語やったら、時分割方式っちゅうねんけどな。 あつぶる : 時間で分けて共用するっていう意味ですと いうことは・ monkey : 聡明なあつぶるちゃんやったらもうだいたい 分かったやろ。 あつぶる : なんとなく分かったような気もしますが・ monkey : つまり、 CPU はやらなあかん仕事を、その 優頂位によって順番にちょっとすっ処理するんや。そ のちょっとすつの時間がごっつい短いから、あたかも同 時にこなしているようにみえるっちゅう一去や。 あつぶる : なるほど。じつは同時には 1 つしか仕事をし ていなくても、たくさんの仕事を高速て切り替えてるか ら、すべての仕事か伺時に進んでいるようにみえるんで すね。 monkey : そのとおり。会席弁当を食べるときに全部の おかすをすこしすっ、しかも高速に食べていったら、同 時に全部カヾ咸っていくようにみえると・・ : なんや、いろいろ用意してきたのにな。もっ あっぷる : 十分に理解できましたから、例はけっこうで : そ、そうか。そしたら、慕の内弁当を・・ : 変なたとえですれ monkey す。 monkey あっぷる プロセス Mule LaTeX kterm たいない。 : もう満腹です。 あつぶる monkey : それは残念や。そや、 こからか本題やった あっぷる : いまのは前振りだったんですね。で、本題って ? monkey : UNIX システムが CPU に仕事を割り振るん やが、その仕事の単位をプロセスちゅうんや。 あっぷる : よく聞く言葉ですね。プロセスチーズのプロセ スですか ? monkey : 、、処理 " という意味では同しかもしれんが、そ れは違うと答えとこ。プロセスちゅうのは、 UNIX の なかでのイ士事の単位やと考えてくー殳に、 1 つのプ ロセスは 1 つのプログラムに対応してる ( 図 21 ) 。 32 あつぶる : ということは、 Mule で仕事をしてるときには、 MuIe のプロセスが CPU に割り当てられていると。 monkey : そういうことや。まあ、 1 つのコマンドで複 数のプロセスを立ち上げるやつも、もちろんあるんやけ どな。 あっぷる : たとえは ? monkey : たくさんあるけど、これまで説明してきたも のやったら gtar なんかがそうやな。あれは、オプショ ンに z を指定したときは、 gtar 本体のプロセスと、圧 縮 / 伸長するために gzip のプロセスが生成される。 あっぷる : なるほど。 1 つのプログラムでも複数の仕事を するようなものは、プロセスも複数できるんですね。 monkey : そういう意味で、プロセスは仕事の単位って ゆうたわけや。 あっぷる : 分かりました。 monkey ・というわけで、プロセス関係の説明をもうす こし詳しくしていこか。 あっぷる : は一い。なんだかきようの monkey さん、カッ 0 0 ・の 早く仕事がしたいよーリ 優先順位にしたがって CPU を割り当てる スケジューラ CPU もカッコええで。 monkey : へへ、そ、そうか ? ・・・・いや、わしはいつつ コよく見えますよ。 UNIX MAGAZINE 1997.3 スは、次の 2 不鶤頁に大別されます。 カ士事をこなすうえでの単位と考えられます。このプロセ m 。 nkey 君も説明していたように、プロセスは UNIX プロセスって何 ? なあ。 あっぷる : ちょっとは遠慮っていうものが・・・・・・あるのか