SunOS4.1 の概要 さらに、システムの内部 ( とくにカーネル ) を拡張あるい は変更しているプログラムは、書換えが必要になるかもし れません。カーネルは、新しいマシンタイプや周辺機器を サポートしたり仮想記憶システム ( VM ) の機能を拡張し ているため、それらの変史によって互換性が損なわれる可 能性があります。 デバイスドライバは基本的に再コンパイルするだけでよ いはすですが、以前と同しように動作するかは検査する必 要があるでしよう。 なお、 SunOS4.1 で作成したプログラムの旧 OS との互 換性は保証されていません。 ファイルシステムの互換性 SunOS 4 . 1 のファイルシステムとそれ以前のリリース のファイルシステムでは、実装上の違いがあります。 NFS でリモートマウントするときには、異なるリリー スのファイルシステムカ鯤在しても問題はありません。た だ、ローカルなディスクに SunOS 4.0. X のファイルシス テムと SunOS 4 . 1 のファイルシステムを混在させるよう な特殊な場合、 SunOS 4.0. X で立ち上げているシステム から SunOS 4 . 1 のファイルシステムをマウントして使う ことはできません。これに対処するには、 4.1 で初期化した ファイルシステムのダンプをとり、 4 . 0. X でそのファイル システムを初期化してからリストアする方法か館実です。 fsck の新しいオプション -c を使って初期化し直さすに変 換することも可能ですが、ファイルシステムの初期化時に パラメータを変更している場合はコンバートできないこと があります。 SystemV との互換性 SunOS システムに SVID との互換性をもたせること は SunOS 3.2 からおこなわれていますが、 SystemV R 4.0 との完全な統合はまだ実現されていません。しかし、 SunOS4.1 は SVR4 とソースレベルでの互換性を保持し ており、 SVR4 の開発環境として使うことができます。 SVR4 システムへの移植は、再コンパイルだけですみま す。バイナリレベルの互換性をとるためのガイドとして " S ″〃 OS 4 . 7 / 0 UNIX S 4 Co 〃ゆあ浦の 盟 / 辺朝〃 G ⅵ " [ 6 ] が用意されています。なお、 SystemV の機能は、 SunOS 4.1 でも、、 SystemV オプシ ョン〃として扱われます。 62 SunOS では、 SVID との互換性を実現するために次の ような変更がなされています。 ・ SunOS 3.2 で terminfo(5V) 機能を追加 ・ SunOS 4.0 で STREAMS 機能を追加 ・ SunOS 4.1 で System V スタイルのアカウンティング の実現 ・ SunOS 4.1 で強制的 ( mandatory ) ファイル / レコー ド・ロッキングを追加 ・ SunOS 4 . 1 で RFS の組込み ・コマンドの統合は、可能なかぎり Sun のものヘフラグを 追加するかたちでおこなわれている。しかし、 SVID2 に 求められるシンタックスやセマンティクスが SunOS と 異なる場合は、 / usr / 5b ⅲディレクトリに追加 ・ライプラリ・ルーチンは SVID 2 と互換性のあるインタ ーフェイスが使用できるように変更 これも、可能であれは Sun のライプラリへフラグを追加 することで統合している。しかし、 SVID 2 に求められる シンタックスやセマンティクスが SunOS と異なる場合 は、 / usr / 51ib ディレクトリに追加される。数学ライプラ リについては新しく追加された libsvidm. a は SVID 2 互換のライプラリを提供し、 libm. a のほうは IEEE 標 準の浮動小数点演算をサポートする。 malloc ライプラリ については、 /usr/xpg21ib/libxpg. a は SVID 2 互換 のもの、 /usr/5bin/libc. a には POSIX . 1 および XPG3 、 SVID89 互換のもの、 /usr/lib/libc. a には SunOS 4 . 0 互換のものが含まれる。 ANSI C との互換性 SunOS 4.1 の C 言語コンパイラは、 ANSI (American National Standards lnstitute : 米国規格協会 ) の X3 . 159 が規定している C 言語を完全にはサポートしていませ ん。ただし、 SunOS の環境を SystemV 環境にすれは・、 ANSI C により近づきます。 AN SI C の lint 用のライプラリが用意されており、ユ ーサー・プログラムで ANSI C の仕様にそぐわない部分 を調べることができます。なお、 ANSI C と Sun C との 相違点についても、前述の " S ″〃 0S4. ノ / 0 UNIXSVR4 CO 川加励〃め , の辺〃 Guide" に記載されていま す。 UNIX MAGAZINE 1990.9
SunOS 41 の概要 城谷洋司 今年 5 月、日本でも SunOS の新しいバージョン「 SunOS 4. 1 」 がリリースされました。ここでは SunOS 4. 1 で新しく追加されたお もな機能を紹介します。なお、この記事は SunOS 4. 1 でおこなわれた すべての追加、変更を網羅するものではないことをあらかじめお断りして おきます。 1 製品概要 RFS(Remote File Sharing) SunOS 4.1 は、すべての Sun3 と Sun4 (SPARC) で動 RFS は AT&T か開発したネットワーク・ファイル・サ 作します。また、 Sun が Sun3/Sun4 でサポートしている ービスで、 SunOS4.1 では SystemVR3.2 のものを移植 コントローラや周辺装置も基本的にすべて動作します。 しています。 RFS は、 NFS と同様にネットワーク上のマ SunOS4.1 は技術的にはマイナーリリースですが、インス シン相互がファイルを共有できるようにするためのソフト トールにはフル・インストールが必要で、 4.0. X からのア ウェア・パッケージです。 RFS で共有する実体 ( ファイル ップグレード・インストールはできません。なお、 SunOS やディレクトリ ) はリソースと呼ばれ、各リソースにはリソ 4 . 0 のリリース時にも発表されましたが、 SunOS 4.1 では ース名カ咐けられます。 NFS でのファイルのェクスポー Sun2 をサホートしていません。 ト (export) は、 RFS ではリソースのアドバタイズ (adver- マイナーリリースですから、 SunOS 4 . 0. X からのコン tise) と呼はれます。一般に advertise は、、 ~ を広告する、 セプト上の違いはありません。おもな変史点は次のとおり 宣伝するクと訳されますが、 RFS の場合は自分がもってい です。 る資源をネットワーク上のほかのマシンに、、広告する〃と いうイメージになります。 ・新しいファイル共有機能、、 RFS (Remote File Shar- クライアントは広告に出ている、、リソース〃をマウント ing)" の導入 し、目的のファイルをアクセスできるようにします。なお、 ・コピーオンライトのファイルシステム、、 TFS (Trans- 標準設定で使える NFS とオプション・カテゴリーの RFS lucent File Service) 〃の導入 サービスは、それぞれ単独での利用も併用も可能です。 ・メモリべースのファイルシステム、、 tmp ファイルシステ ム〃の導入 RFS の特徴 SystemV 版の UUCP の採用 RFS も、ファイルの共有にリモートマウント方式を使う システム管理機能の強化 点は NFS と同しです。しかし実装面では、 NFS が UDP/ 仮想記憶システムの拡張 IP をもとにしてステートレスなサービスを提供している SunView の機能拡張 のに対し、 RFS は TCP / IP をもとにしたステートフルな 国際化のための変更 サービスを提供しています。それぞれの性質には一長一短 多くの業界標準の採用 がありますが、ます、 RFS が NFS より優れていると思わ このはか、 SunOS 4.0.3 までのバグの修正やコマンド れる点を挙げてみましよう。 および関数レベルの追加・拡張がおこなわれています。 ・ファイルサーバーのリソースをリソース名で指定する。 1 この記の執筆にあたっては、 Sun4 / 260 および Sun3 / 470 で SunOS4.1 ( FCS ) このため、リモートのマシン管理者は、サーバーのホス バージョンを使Ⅲしました。 54 UNIX MAGAZINE 1990.9
SunOS4.1 の概要 また、 adb によるデバッグのための adb マクロ ( / usr / lib/adb/* ) が 30 以上追加されました。 ユーザー管理の変更 passwd コマンドの新しいオプション ()a 、 -n 、一 x ) によ / choctaw logi : shiro Password: You.r password has expired. Choose new 0 Changing password for shiro 0 Ⅱ choctaw. New pas sword : Retype new password: Last 10g 土Ⅱ : Mon Ju1 16 15 : 03 : 12 from shylock ゝって、ユーサーのパスワードのエージングができるように なりました。これは、ユーサーごとにパスワードの有効日 数を指定しておくと、その期間が過ぎたらユーサーにパス ワードの変更が要求されるというものです。 SunOS Re1ease 4.1 (COCIEAU) # 1 : Fri Apr 13 11 : 30 : JST 1990 choctaw% これにより、ユーザーのパスワード・セキュリティの向 上が期侍できます。 また、ユーザーのアカウントには、 SystemV のアカウン ティング・フォーマットが使われるようになります。この ため、 SunOS 4 . 0.3 を SunOS 4 . 1 にアップグレードした 場合は、それまでのアカウント情報が使えなくなるので注 意が必要です。 新しくサポートされる機器 SunOS 4 . 1 からは、新しくタイプ 4 キーポードと CD- ROM がサポートされます。タイプ 4 キーポードは以前の バージョンでも接続できましたが、 SunOS 4 . 1 からは numeric lock などすべての機能が使えるようになります。 SunCD は、オーディオ CD / 読取り専用メモリ (CD- ROM) ドライプで、 SCSI バスに接続します。ソニ Philips の、、 red ー b00 にまたは、、 yellow ー book 〃に準拠し ていれはどれでも使用可能で、 644MB のデータまたは 74 分のオーディオデータ ( あるいはその組合せ ) が記録でき ます。 CD-ROM ドライバは、ソニーの CDU ー 8012 CD- ROM ドライプまたはそれと同し SCSI コマンドセットを 使用する CD-ROM ドライプをサポートしています。サポ ートしている機種は、 Sun3 / 80 、 Sun4 / 40 、 60 、 65 、 330 、 390 、 470 、 490 です。 CD ー ROM は、 ISO 9660 標準フォーマット (High Sierra ファイルシステム ) であれば、マウントして通常の ファイルシステムと同しように使うこともできます。 choctaw# mount —rt hsfs /dev/sr0 /cdrom 66 性能について 性能の改善は、 SunOS 4.1 の主要な目的の 1 つでした。 メインメモリが 4MB のシステムでの性能が改善されたほ か、 NFS 、ネットワーク・インターフェイスのドライバも 改善されています。 応答性のパフォーマンスの測定は難しいのですが、使っ てみた感しでは多少速くなっているようです ( SunOS 3.5 よりは遅いが、 SunOS 4.0 よりは速い ) 。 また、カーネルのコンフィギュレーション・オプション が大幅に増え ( コンフィキ、ユレーション・ファイルの options の行 ) 、不要な機能をカーネルから除いて効率のよ いカーネルを構成する際のきめ細かな調整ができるように なりました。新しいオプションには、次のようなものがあ ります。 NFS CLIENT TMPFS VFSSTATS VDDRV WINSVJ NFSSERVER HSFS LWP 〇 LDSC SI SWAPWARN TFS RFS ASYNCHI 〇 KMEMZER 〇 インストレーション UNIX MAGAZINE 1990.9 トリッジ・テープ ( 2 巻 ) が用意されています。さらに、モ すべてのモデルについて、 QIC ー 24 フォーマットのカー 用意されているメディアの種類
、ゝ対するほかのプロセスからの read/write はロックが解除 されるまでプロックされます。 SunCGI と SunCore SunOS 4.0 のリリース時にも案内がありましたが、 SunCGI と SunCore は SunOS 4.1 からはサポートされ ません。ただし、 OS テープに含まれる Graphics オプショ ンには CORE および CGI のインクルード・ファイルとラ イプラリが含まれているので、プログラムのコンパイルと 実行はできます。コンパイルに必要なライプラリは /usr/ 要です。注意点の詳細については“ Su 〃 OS 4 コ e ル e バージョンアップする場合は、インストール時に注意が必 なお、次のアンバンドル・ソフトウェアを SunOS 4.1 に リリースは今秋の予定です。 応したものが必要となります。 SunOS4.1 対応の JLE の SunOS の日本語環境である JLE は、 SunOS 4.1 に対 関連するプロダクト ューサーに求めています。 ウェアの SunGKS と SunPHIGS にリプレースするよう Sun は、今後は CORE と CGI をアンバンドル・ソフト window —lpixrect —lm sample% cc ー 0 core—demo core—demo. c —l/usr/old —L/usr/01d ー 1C0 て e ー ls Ⅲ 1t001 ー ls 皿 一方、強制的ファイルロックの場合は、そのファイルに です。 うとするプロセスに対するロックカ寉認できる場合に有効 協調的ファイルロックは、そのファイルをアクセスしよ まります。 てグループの実行ピットがクリアされているとき ) かが決 協調的 (advisory) か強制的 (set-GID ビットが立ってい ックするファイル ( あるいはその一部 ) のモードによって、 File and Record Locking) 機能が追加されています。ロ lockf ( 3 ) には、 SystemV R3 の MFRL (Mandatory ファイル / レコードの強制ロック old に移されているので次のように実行します。 [ 参考文献 ] NSE 1 . 2 Channel 7.0 SPE 1 . 1 FDDI 1 . 0 ( しろたに・ひろし伊藤忠テクノサイエンス ) M 〃 / ”を参照してください。 SunL ink FORTRAN 1 . 2 SunTrac Sun C 十十 2 . 0 SunIPC 1 . 2 TranScript 2.1 SunDraw 1 . 0 TAAC-I Release 2.3 UNIX MAGAZINE 1990.9 SunWrite 1 . 1 には、バージョンアップが必要になります。 はサポートされません。これらを SunOS 4.1 で使う場合 また、次のアンバンドル・ソフトウェアは SunOS 4.1 で 、 S ″〃 OS 4 . ノ e M 〃 ( 800 ー 3802 ーノの” Sun Microsystems , lnc. , 1990. ル s 〃 g The Su 〃 OS ( 800 ー 3803 ーノの " , Sun Microsystems, lnc. , 1990. ・町 s 襯 4 〃イ N 0 d 襯切な厩あれ ( 800 ー 3805 ーノの " , Sun Microsystems, lnc. , 1990. ・立〃 OS e. 元尾れ化 M / ( 800 ー 3827 ーノの " , Sun Microsystems , lnc. , 1990. Tim O'ReilIy and Grace Todino , “ M 〃〃 ag 切 g UUCP 4 れ d Usenet" , O'ReiIIy & Assosiates, lnc. Feb. 1989 ' 立 OS 4 . ノね U. / XS レ 4 . 0 Co 川カ励〃なれイ M な朝〃 Guide" , Sun Microsystems, lnc. , 1990. 'UNIX s 川 4 4 〃 S ″ OS " , Sun Microsystems , lnc. Sun Users Group Conference 1989. ' Su れ OS P な " , Sun Microsystems , lnc. Sun Users Group Conference 1989. [ 9 ] CUNIX SystemV ロードマッフ。ブック』、 UNIX イン ターナショナルアジア太平洋本部、 1990. [ 5 ] V01.2 ム伊藤忠テクノサイエンス , 1990.3 [ 11 ] 「 SunOS4.1 の概要」「 CTCSun インフォメーション アム日経 BP 、 1990.7 [ 10 ] 「 UN Ⅸ新時他「日経コンビュータ別冊ソフトウェ 69
SunOS4.1 の概要 UUCP の変更点 新しい UUCP 60 とシステムどうしの接続手順を完全に分けて定義できます。 するチャット・スクリプトを追加登録することが可能で、モデムとの接続手順 リプトに記述していました。 Dialers ファイルを使うと、ユーザーがモデムに対 イプのモデムを接続する場合は直接接続の設定にして L. sys のチャット・スク システムに組み込まれているものを使うか、システムがサポートしていないタ 4 SunOS 4.0. X までは、モデムどうしの接続のためのチャット・スクリプトには また、アラーム機能のコマンド・インターフェイスおよ います。 インヘルプのプログラム・インターフェイスが追加されて さらに、タイプ 4 キーポードの HeIp キーを使ったオンラ が、タイプ 3 と同しようにしか使えませんでした。 1 . 8 では た。 SunView 1.75 でも接続できなくはなかったのです タイプ 4 キーポードを完全にサポートするようになりまし SunView は、 1 . 75 から 1 . 8 にバージョンアップされ、 SunView の拡張 すが、エントリによっては変更が必要なこともあります。 そのはかの設定ファイルのフォーマットはほとんど同しで ォーマットは、従来のファイルとはまったく異なります。 また、セキュリティを設定するための Permissions のフ missions にといった具合です。 devices が Devices に、 USERFILE と L. cmds が Per- tems と Dialers4 に L ー dialcodes が Dialcodes に、 L ー す。たとえは・、 / etc / uucp ディレクトリの L. sys が Sys- 設定のためのファイル名は、まったく新しくなっていま 応用的な使い方ができるように改良されています。 Ber UUCP は Version2 UUCP より管理が簡単で、より Version 2 UUCP をもとにしたものです。 Honey Dan- Lesk 、 David Nowitz 、 Greg Chesson などが開発した UUCP は、 1977 年の UNIX Version 7 当時に Mike に BNU と呼んでいます。従来の Sun で使われていた AT&T では、 Networking Utilities" またはたん Nowitz 、 Brian E. Redman によって開発されたもので、 しものです。これは、 1983 年に Honeyman, David A. ているもので、 SystemV R3 で使われている UUCP と同 新しい UUCP は、、 Honey DanBer UUCP" と呼はれ びプログラム・インターフェイス (WIN- ALARM アトリ ビュート ) も追加されています。 choctaw% eval ' set—alarm -b 3 —f 3 -d 1000 ( choctaw% get-alam WINDOW_ALARM= :beeps=3 : f1ashes=3 : dur = 1000 : choctaw% ring—alam そのほか、パネルアイテムに色がつけられるようになっ たこと (PANEL-ITEM-C 〇 L 〇 R アトリビュートが追加 された ) 、 CG8 および CG9 のために 24bit トルーカラー がサポートされたこと (CANVAS-C 〇 L 〇 R24 アトリビ ュートが追加された ) などの点が拡張されています。 国際化について SunOS を国際的に使えるようにするための拡張は、カ ーネルやライプラリ、ユーティリティ・レベルの国際化 (lnternationalize) とおもにアジア諸国で必要となる複 数バイト文字への対応などの地域化 (RegionaIize) 、各国 言語に対応した入出力、ユーティリティをサポートするた めの Localize からなります。 SunOS4.1 では、カーネルやライプラリ、ユーティリテ ィを、、 8-bit clean" にしたほか、国際文字セット / フォン ト ( IS08859 ー 1 ) およびタイプ 4 キーポードをサポートし、 開発者のために POSIX/ANSI X3J11 (setlocale( ) ) の フルサポートができるように拡張されています。これらの 拡張によって、ほとんどの西ヨーロッパの言語には対応で きるようになりました。ただし、アジア地域の言言の対 応に必要な複数バイト文字のサポートは実現されていませ ん。 SunOS 4.1 の日本語への対応は、 JLE 1 . 1 (Japanese Language Environment) によって今秋サポートされる 予定です。 標準化と SunOS 4.1 の位置付け SunOS 4.1 は、 SVID 2 (SystemV lnterface Defini- tion Issue2) 、 POSIX (IEEE 規格 1003 . 1 ー 1988 ) 、 XPG2 (X/Open Portability Guide lssue 2 ) に準拠しています。 UNIX MAGAZINE 1990.9 に準拠しています。 SVID は OS のインターフェイスだけ ーフェイス定義書の第 2 版で、 SystemV R3.2 は SVID 2 SVID 2 は、 AT&T が発行している SystemV インタ このほかに SVID89 や XPG3 の機能も多く含まれます。
X ウインドウ・システムのインストール ・サーバーの起動 特集 インストール すべてが正常にコンパイルできたら、次にインストール をおこなう (make World では、おこなわれない ) 。イン ストールは sbit の設定、システムのディレクトリへの書込 みをともなうため、スーパーユーサーの権限で実行する必 要がある。 インストールの手順は、以下の 3 段階に大別される。 バイナリなど、標準的なもののインストール mit ディレクトリで make insta Ⅱと入力する。独自の 設定をしていなければ、バイナリは /usr/bin/X11 に、ライ プラリ、各種データベース、フォントなどは / usr / lib / X11 に、ヘッダファイルは /usr/include/XI 1 に、それぞれイ ンストールされる。 ・マニュアルページのインストール mit ディレクトリで make install.man と入力する。 独自の設定をしていなけれは、クライアントのマニュアル は /usr/man/mann に、ライプラリのマニュアルは /usr/ man/man3 にインストールされる。 ・ lint ライプラリのインストール mit ディレクトリで make install. ln と入力する。 lint ライプラリは /usr/lib にインストールされる。 はしめて X ウインドウをインストールする際は、デバイ スやカーネルの設定をおこなわなけれはならないこともあ る。詳しくは、作成したサーバーのディレクトリの READ- ME を参照してはしい。 以 E で、 X ウインドウのリリースの構築は終了である。 この時点で、サー である。 、クライアントとも使用できるはす インストール彳調整 より・関商に X ウインドウを使用するために、インストー ル後にいくつか調整すべき点がある。この記事の範疇を超 える部分もあるので細部は割愛するが、調整すべき部分を UNIX MAGAZINE 1990.9 あげておく。 X11R4 では、 X ウインドウを起動する方法として、 xdm を / etc / rc などから起動する方法が推奨されている。 X11R3 まで使用されていた xinit もいちおう含まれては いるが、できれは xdm を使用するようにシステム全体を 調整するはうがよいであろう。それには、ます mit/clients/ xdm に用意されている xdm の設定ファイルのサンプル を /usr/lib/Xll/xdm にコピーした後、これらの設定ファ イルを自分のサイトの環境に合うように編集する。詳しく は、 xdm のマニュアルを読んでほしい。 ・アプリケーション・デフォルト XI 1R4 から、はとんどすべてのクライアントが X ツー ルキット形式のリソースを扱うようになった。デフォルト のリソース設定は、 /usr/Iib/Xl l/app-defaults に含まれ ている。自分のサイトの状況に合わせてこれらのファイル の内容を修正すれは、 X ウインドウを使用するすべての人 に対するデフォルト設定を変更できる。 ・ウインドウ・マネージャーの設定 X11R4 の標準ウインドウ・マネージャーである twm は、 /usr/lib/Xl l/twm system. twmrc というファイル をデフォルト設定ファイルとして読み込むようになってい る。このファイルを自分のサイトの状況に合わせて修正す れば、 X ウインドウを使用するすべての人のデフォルト設 SunOS の例 sun . Cf の各パラメータの設定などをあけておく。 最後に、実例として SunOS 用にリリースを構築する際 定を変更できる。 51 活かす必要がある。そうすれば、 site. def で GCC 用の設 トアウトされているが、 GCC を使用する場合はこの行を デフォルトの状態では、 HasGcc YES という行がコメン イナーバージョンに設定する。 jorVersion を 3 に、 OSMinorVersion を自分の OS のマ きる。 SunOS 3. X 用にリリースを構築する際は、 OSMa- になっているが、いちおう SunOS 3. X でもコンパイルで XI 1R4 は、表向きは SunOS 4 . 0 . 3 に対応していること Version と〇 SMinorVersion というパラメータがある。 各プラットフォーム用の川〃わ花 . cf には、〇 SMajor-
でなく、数学関数や文字列操作などのライプラリ、ネット ワーク・インターフェイス、シェルコマンド、システム管理 ユーティリティ、ソフトウェア開発ューティリティ、端末イ ンターフェイスなどを規定しています。なお、 SystemV R4.0 は SVID 89 (SVID 3 ) に準拠しています。 POSIX は、 IEEE ( 米国電気電子技術者協会 ) が規定し た OS のプログラミング・インターフェイスの標準規格で す。これは、米国の UNIX のユーザーグループである /usr/group( 現 UniForum) が、業界は共同で UNIX を 商用に耐えうる OS にすべきだと考えて 1984 年から業界 標準の OS のプログラミング・インターフェイスに関する 共同研究を始めたことに由来します。その後、 IEEE に移管 されて公式な標準化作業として進められ、 1988 年に IEEE 規格 1003.1 ー 1988 、、 Portable Operating System lnter- face for Computer Environments 〃 (POSIX) として正 式に承認されました。現在は 1003 委員会の 12 の作業部会 が POSIX 規格の拡張をおこなっています。このうち、現 時点で正式な規格になっているのは P1003.1 ー 1988 ( POSIX. 1 ) だけで、これはプロセス管理、ファイル / ディ レクトリ管理、入出力、 C 言語特有の機能、システム・デ ータベースの分野について規定しています。 XPG 2 は、 X/Open がリ行している tX/Open ホータ ビリティガイド』の第 2 版です。 X/Open は、 1984 年に設 立された UNIX にもとづくアプリケーション環境の国際 標準化団体で、メーカー、ユーサー、システム・インテグ ソフトウェア開発会社によって構成されていま す。ューサーが機種ごとに操作を学習しなおす無駄を省く ため、あるいは機種の入替えでアプリケーションへの投資 が無為にならないように、またべンダーがアプリケーショ ンを効率よく供給できるように、、共通アプリケーション環 境 (CAE)" のための調査や標準化 ( おもに規格の選択と採 用 ) 、検証、プランドの付莎をおこなっています。 XPG は、ソースコード・レベルのアプリケーションの移植性、 システム間のアプリケーション相互接続蹶一貫性のある ューサー・インターフェイスの提供を目標としており、現 在までに第 3 版 ( XPG 3 ) までが出版されています。 X/ Open は CAE の基盤として POSIX を採用しているため、 X / Open 準拠のシステムは IEEE 規格にも準拠するよう になっています。 SVVS (SystemV Verification Suite: SVID に準拠し ているかどうかをチェックするための検証ツール ) テスト UNIX MAGAZINE 1990.9 および POSIX 、 XPG 2 の環境設定には、 SystemV Com- patibilityOption Package()S テープ中のオプション部 分にある SystemV のオプション ) を使います 5 。なお、 XPG 2 をサポートするために次の 3 つのディレクトリが 追加されます。 /usr/xpg2bin /usr/xpg2inc1ude /usr/xpg21ib SystemV と XPG は密接な関係にあり、 SystemV の 要求仕様をまとめている UI(UNIX lnternational) は 『 UNIX SystemV ロードマップブック』 [ 9 ] のなかで、 SystemV の要求仕様は既存および将来の XPG にも準拠 すると謳っています。 SystemVR4 は XPG3 をベースに SVID 2 、 SVID 89 、 POSIX 、 ANSI C に準拠し、さら に ABI (Application Binary lnterfaces) にも準拠しま す。 Sun は、将来の SunOS で SystemV R4 を統合する 予定です。 SunOS 4.1 は SystemV R4 とのプリッジとし て位置付けられます。 従来システムとの互換性 SunOS 4.0. X とのバイナリの互換性 SunOS 4.0. X で作成したソースファイル、実行形式の ファイル、オプジェクト・ファイル、共有ライプラリは変 更することなく SunOS 4.1 で使用できます。 Sun ゃべン ダーのほとんどのアプリケーションについても同様です。 これがあてはまらないものには、カーネルやカーネルの データ構造の内部の実装に依存するもの (/dev/kmem の 詳細に依存するプログラム ) 、システムのファイルのロケー ションやその有無に依存するもの、ドキュメント化されて いないファイル ( ライプラリやユーティリティが作る一時 ファイルなど ) のフォーマットに依存するもの、 a. out の フォーマットに依存するものなどがあります。 また、 kvm ライプラリを使用しているプログラムは、カ ーネルやそのデータ構造の実装に依存しているため、その 動作が異なる場合があります。とくにシステムのプロセス 構造体やユーザー構造体をアクセスするモジュールは、再 コンパイルしなけれはならないこともあります。 5 これらの標準の SunOS での環境設定については、 Sun のリファレンス・マニュ アルの 7 番のカテプリーに記述されています。たとえば、 $%man posix" を 実行すると POS Ⅸに合った環境設定の方法が表示されます。 61
SunOS の標準設定では、ターミナルなどのようにキャ リア信号を出さないデバイスの接続を考慮して、 OS がソ フトウェアでキャリアがあるようにみせかける設定がなさ れています。ハードウェアによるキャリアの検出ができる ように変更するには、従来の OS ではカーネルを作り直す 必要がありましたが、 SunOS 4.1 では ttysoftcar コマン ドを実行するだけです。 venus# ttysoft car —n ttydO こで、 -y を指定するとソフトウェア・キャリア検出、 -n を指定するとノードウェア・キャリア検出になります。 NIS(YP) と名前サーバー YP(YeIIow Page) は、 SunOS 4.1 から NIS (Net- work lnformation Service) と呼ぶようになりました。し かし、たんにドキュメントの表記が変わるだけで、コマン ド名などには変更はありません。 説明によれば性能面でいくっかの改良か施されており、 NIS のサーバー ( ypserv ) の性能が向上するようです。 れは、 NIS のデータベースに利用している UNIX ライプ ラリが従来の dbm から ndbm に変更されたためです。 管理用のデーモンには ypxfrd が追加されました。これ は、 NIS マスターサーバーでの NIS マップの変更を NIS スレープサーバーに素早く転送するためのもので、 NIS マ スターサーバーで起動するデーモンです。 NIS のライプラリと bind は、使用するシステムコー ルの数を約半分に減らしました。これによって、 NIS クラ choctaw% ifconfig —a ゝイアント側のパフォーマンスが向上します。 passwd コマンドに追加された一 y オプションを指定す ると、ローカルなパスワードファイルにエントリがなけれ は、 NIS データベースのエントリを変更するようになりま したにれまでの yppasswd コマンドも引続きサポートさ れます ) 。 choctA/. passwd —y shlro Changing NIS password for shxro on venus. 01d password: New password: Retype new password: NIS entry changed on venus ログインシェルを変更する chsh と、 gcos フィールドを 変更するための chfn コマンドにも同様に一 y オプション が追加されています。 NIS の名前サービスは、 makedbm の -b オプションを 使ってドメイン名サーバーのリゾルバを使えるように拡張 されました。 また、インターネット DNS (Domain Name System) は BIND バージョン 4.8 にアップグレードされ、バグも 修正されています。名前サー ーは /usr/etc/in. named- xfer を起動してゾーン転送をおこなうように変更されて おり、効率がよくなります。 ネットワーク管理 ネットワーク管理用のプログラムも改良されています。 ifconfig コマンドで複数のインターフェイスの情報を一 度に確認できるように一 a ( all) オプションが追加されました。 ieO : flags = 63 《旧 ,BROADCAST , NOT Ⅱ . 駅 S ,RUNNING> inet 131.248.17.10 netmask ffffffOO broadcast 131.248.17.0 100 : flags = 49 《 ,LOOPBACK ,RUNNING> inet 127.0.0.1 netmask ff000000 クラッシュダンプ 以前の OS では、システムがクラッシュした際にクラッ シュダンプをセープできるようにするため、すくなくとも メインメモリ・サイズ以上のスワップ領域が必要でした。 新しいバージョンではクラッシュダンプを圧縮してダンプ choctaw# crash ーⅡ . /vmcore. 0 . /vmunix. 0 . /vmcore. 0 , namelist . /vmunix. 0, dumpfile UNIX MAGAZINE 1990.9 するため、その必要がなくなりました。また、クラッシュ ダンプを解析するための crash コマンドが SystemV か ら SunOS に移植されています。これによって、 adb コマ ンドと比べて容易にクラッシュダンプの解析がおこなえ ます。 outfile stdout 65
連載 /UNIX Commurucatlon N0tes—の ムに登録する〃コマンドです。スプーリング・システムに リモートディスク・サービス は、ジョブの登録のはかに進捗状況の間合せコマンドとキ はかの言 t 算機のディスクを利用する手段としては、リモ ャンセル・コマンドがユーサーのために用意されています。 ートディスク (Network Disk 、 Remote VirtuaI Disk な バークレイ版のプリンタ用スプーリング・システムは、 どとも呼ばれる ) もあります。 ネットワーク機能を拡張するにあたってリモートプリンタ もローカルプリンタと同しに扱えるように実装されました。 たとえは、 NEWS OS の rd 、 SunOS 3 . X の nd はリ 指定したプリンタがリモートプリンタなら、スプーリン モートディスクです。リモートディスクは、リモート計算 グ・システムがプリンタをもっホストのスプーリング・シ 機のディスクデバイス ( ファイルシステムではないことに ステムと通信してプリントデータを渡します。キャンセル 注意してください ) を使用するものです。そのため、ファイ や問合せも、ローカルのスプーリング・システムに対して ルシステムの構造が異なると利用できません。一例を挙げ おこなえば自動的に他ホストのスプーリング・システムに ると、 4.2 BSD 、 4 . 3 BSD 、 SunOS 3. X 、 SunOS 4. X とりついでくれます。ューザーはプリンタがリモートプリ はそれぞれすこしすっ違うのでリモートディスクによるフ ンタかローカルプリンタかを気にする必要はまったくあり ァイル共有はおこなえません。その代わり、 UNIX カーネ ません 6 。 ルのファイルシステムを扱う部分にはまったく手を入れす にディスクデバイスのドライバだけを追加すればいいので、 ファイルの共有 実現が簡単で負荷が軽いという利点もあります。また、サ ーバー側では UNIX ファイルシステムに関知しませんか ファイル共有のおもな役割は、 ら、非 UNIX のシステムをサーバーとして利用すること も可能です 7 。ただし、複数のホスト間で書込みができるよ ・ディスク容量の有効利用 うな共有はできません 8 。また、ディスクのパーティション ・コピーを作らないことによる一元的ファイル管理 単位という粗い単位でしか共有できないという不都合もあ などがあります。前者ばかりに目を向けがちですが、後者 ります。 リモートディスクの典型的な使用例は、ディスクレス・ も重要です。同しファイルのコピーが 10 のホストにある ワークステーションです。 ことを考えてみてください。更新するには 10 のホストで ディスクレス・ワークステーションでは、すべてのファ ファイルを書き換えなけれはなりません。共有しておけは イルをリモートアクセスしなければなりません。 UNIX が 原本だけの更新だけですみます。 プートするときにいきなりリモート・ファイルシステムを リモート・ファイルシステム上のファイルは、ローカル・ 使用するのは困難ですから、ルート・ファイルシステムと ファイルシステムとまったく同様に読出し・書込みなどが スワップデバイスはリモートディスクを利用し、ユーサー おこなえるだけでなく、実行も可能です。そのため、デー 領域にはリモート・ファイルシステムを用いるといったよ タだけにとどまらすアプリケーション・コマンドも共有で うに、リモートディスクとリモート・ファイルシステムと きます。 を混在させるのがふつうです。ルートとスワップはどうせ リモート・ファイルシステムとして有名なものは、 共用できないので、リモートディスクでもかまわないわけ です。 三 00 0 、 00 、 000 0 ~ 0 ~ 0 、、 0 00 、 000 SunOS は 4. X になってルート・ファイルシステムも AT&T の RFS (Remote File Sharing) CMU の AFS (Andrew FiIe System) などがあります。 6 もちろん、プリントされた紙を取リに行くためにプリンタの設置場所は知って いる必要があります。 7 IBM RT/PC に実装されている AOS4.3 では、リモートディスクとして RVD というシステムを実装しています。はしめて使ったときには多少の驚きがあり 。なんといっても、リモートのファイルシステムを fsck できるん ましたが・・・ ですから。 8 リモートディスク・サービスでは、デバイスアクセスをエミュレートしている ために、複数の計算機から同時に書き込まれるとファイルシステムの整合性が とれなくなります。このために込みを許した共有ができないのです。 41 UNIX MAGAZINE 1990.9
デルによっては 3.5 インチのフロッピー・ディスクや 1 / 2 インチのテープが用意されています。また、 CD-ROM に よる OS の提供も予定されています。 マニュアルの構成やスタイルは 4.0 とほほ同しですが、 内容は改良されています。なお、今回は最初からタイトル っきのバインダに入っています。 ディスク容量 Sun4 の場合、ルート・ファイルシステムで約 3.2MB 、 ューサー・ファイルシステムはオプション・ソフトウェア を除いて約 30MB でした。ちなみに、評価用のマシンに次 のユーサー・ファイルシステムのソフトウェアをインスト ールして合計 80MB 弱でした。 、ゝ lns tall System-V RFS Shlib- Custom SunView- D emo Text Graphics Manual インストール Networking Sys TLI Debugging ・ iew_ I_J S SunView_ Programmers User- Diag UUCP Security SunOS4.1 のインストールにはフル・インストールが必 要で、 SunOS 4.0.3 からのアップグレード・インストール はできません。インストールの方法は簡単になっており、 次のコマンド 1 つでミニルートを起動できます 7 。 usr Kvm > b st() 土Ⅱ st 訌 1 xy ( 0 , 0 , 1 ) Booting st ( 0 , 0 , の ( 0 , 0 , 1 ) SunOS ReIease 4.1 (MINIROOT) # 3 : Tue Mar 6 10 : 20 : 00 PST 1990 インストール・ユーティリティには、 4.0.3 と同様にタ ミナルべースの suninstall が用意されています。細部の インターフェイスは改善されていますが、 suninstall でイ ンストールしたことのあるユーサーなら混乱なく作業でき るはすです。 なお、新しい suninstall には手順を簡略化した Quick lnstall メニューが追加されており、初心者でも簡単にイン You choice ()r Q t0 quit)>> 2 または 1 従来どおりのインストール 2. Custom installation: Quick インストール 1. Quick i nstallation: # suninstall ストールできるようになっています。 UNIX MAGAZINE 1990.9 add ー ser ⅵ ces ( 8 ) にそれぞれ置き換えられています。 setup-client(8) と setup-exec ( 8 ) が、 add-client(8) と また、インストールに関連するユーティリティのうち、 その他 コマンドレベルでの拡張 C シェノレ 67 の場合は 4 . 0.3 までと同し丁・順でミニルートを起動してください。 7 ただし、プート ROM のリビジョンによっては動作しないものがあります。 加されました。これには、動的正規式、組込みオペレータ、 SystemV 版の awk (nawk と呼ばれる ) コマンドも追 nawk ないます。 などの属性変更、内容の表示、ファイルの削除などをおこ バスあるいは木構造による表小、ファイル名や保護モード fileview が追加されました。これは、ディレクトリ構造の SunView のツールには、 /usr/bin/sunviewl/ SunView ツー丿レ きます。 大 256 個までのファイルを同時にオープンすることがで scriptors が追加されました。この制限値の変更により、最 C シェルには、 limit で制御できるパラメータ de-