Solaris 7 - 5/99 オンラインリリース情報

Solaris 7 - 5/99 機能に関する情報

Solaris のマニュアル

Solaris 7 追補マニュアル

Solaris 7 - 5/99 リリースでは、新機能について説明しているマニュアルが提供されています。これらのマニュアルは、タイトルに (追補) と示されています。

Solaris 全般

Solaris の名称変更

今回の Solaris の製品名称は、「Solaris 2.7」ではなく「Solaris 7」になりました。新しい Solaris 製品が増えていく中で、ユーザーにとって Solaris リリースの名称をよりわかりやすくすることを目的として、この名称変更が行われました。Solaris 7 では、この名称変更の過渡期にあるため、ソフトウェアおよびマニュアルの中に「Solaris 2.7」または「Solaris 2.x」という名称が使用されている箇所があります。中心となっているオペレーティングシステムの名称は、従来どおり変更されていません。今回のリリースにおいて中心部分を構成しているオペレーティングシステムの名称は「SunOS 5.7」です。

通貨「ユーロ」のサポート

単位を扱うプログラムに、新しいヨーロッパ通貨「ユーロ」のサポートが追加され、ユーロ通貨の記号を入力、表示、印刷できるようになりました。また、ユーロ通貨の価格表記の書式もサポートされています。

ただし、ユーロ通貨とその他の国の通貨との間のレート換算はサポートされていません。これは、アプリケーション側で処理されます。

JavaTM Development Kit のアップデートバージョン

このリリースに含まれている Java Development Kit (JDK) は、バージョン 1.1.6 に更新されました。このバージョンでは、安定性が高まったほか、JIT コンパイラが大幅に最適化されたため、特定のアプリケーション (演算の多いアプリケーションなど) の性能が大きく向上するようになりました。

JDK 1.1.6 は、大規模ファイルもサポートしており、Java の各種クラスおよびメソッドでは API に変更を加えなくても 2G バイト以上のファイルにアクセスできるようになりました。このため、このバージョンの JDK で動作する Java アプリケーションは、大規模ファイルにアクセスできます。

Sendmail におけるセキュリティの向上

Solaris 7 ソフトウェアには、Sendmail バージョン 8.9.1 が含まれます。このバージョンでは、デフォルトで一部のセキュリティチェックが強化されています。メール転送に使用される .forward ファイルや「:include:」で指定される別名ファイルなどは、この Solaris リリースで正しく動作するように一部変更が必要な場合があります。

詳細は、『メールシステムの管理』を参照してください。

マルチスレッドに対応できる malloc

libmtmalloc は、マルチスレッドアプリケーションに対し、動的な代替メモリアロケータを提供します。このライブラリは、ヒープ管理の malloc、calloc、realloc、および free には従来の API を提供します。libc malloc と異なり、libmtmalloc ではヒープ管理された領域に対する同時アクセスが行えます。そのため、重要なシステムユーティリティの性能を向上できます。

このライブラリを使用するには、アプリケーションを -lmtmalloc を使用してリンクする必要があります。-lmtmalloc は、リンク行で libc -lc によるリンクよりも先に指定してください。

詳細は、malloc(3t) のマニュアルページを参照してください。

プロセッサの割り込み制御

システム管理者やリアルタイムアプリケーションの開発者は、プロセッサの割り込み制御を使用して、マルチプロセッサシステムにおける割り込みの分散を制御できます。これにより、割り込みが無効になっている場合に、プロセッサ上で動作するアプリケーションの性能を高めることができます。

プロセッサ割り込み制御を行うと、一定のプロセッサ上のほとんどの割り込みを無効にすることもできます。これは、個々のプロセッサに対して psradm(1m) コマンドまたは p_online(2) システムコールを使用するか、あるいはプロセッサセット内のすべてのプロセッサに対し psrset(1m) コマンドを使用することにより行います。

詳細は、psradm(1M)、p_online(2)、psrset(1M) のマニュアルページを参照してください。

3.3V はサポートしていない

PCMCIA インタフェース用の pcic nexus ドライバは、3.3V をサポートしません。3.3V 専用のカードは正常に動作せず、システムをハングさせることがあります。この問題にはいくつかの原因が関係しています。

最近の PC カードには、3.3V でしか使用できないものがあります。今までサポートされていた PC ATA や SRAM などのデバイスにも、3.3V でしか使用できない種類のものがあります。TI PCI1130/1131 などの新しいバスブリッジは、3.3V と 5V の両方をサポートしています。

64 ビット Solaris

SPARC only: 64 ビットアセンブラ命令

SPARC システムにバンドルされているアセンブラは、32 ビットおよび 64 ビット SPARC アセンブラプログラムのアセンブルをサポートするように更新されました。サポートされる命令セットには、SPARC V8、SPARC V9、さらに、UltraSPARC 固有の Visual Instruction Set (VIS) 命令が含まれます。

SPARC only: 64 ビット Solaris のアセンブラに対するサポート

SPARC V9 ABI には、大域レジスタを有効に利用できるようにするための、大域レジスタの使用状況を検査する機構が含まれています。

この機構については、SPARC V9 ABI に記述されています。要約すると、ELF のレジスタ使用状況レコードが導入されています。プログラムを SPARC V9 ABI 準拠にするには、このレコードを使用して大域レジスタの使用状況を通知する必要があります。静的リンクまたは動的リンクの処理中にこのレコードが比較されて、リンク可能なオブジェクト間で大域レジスタが一貫して使用されているかどうかが検査されます。大域レジスタの使用に整合性がない場合は、リンク処理からエラーメッセージが出力されます。

上記の機構を実装するには、コンパイラが ELF のレジスタレコードを出力する必要があります。これは、SPARC V9 ABI に準拠したプログラムをコンパイルする時に、C コンパイラの場合は -Wc,-Qiselect-regsym=1 オプション、C++ コンパイラの場合は -Qoption cg -Qiselect-regsym=1 オプションを付けることによって、可能になります。 Solaris 2.5.1、Solaris 2.6、Solaris 7 に含まれているリンカーは、ELF のレジスタレコードを扱うことができます。これより前のリリースの Solaris では、ELF のレジスタレコードを扱うことができないので、エラーメッセージが出力されます。

SPARC アセンブラもリンク可能なオブジェクトを生成するので、SPARC アセンブラも ELF のレジスタレコードを出力できる必要があります。 .s 入力ファイル内で参照されている大域レジスタをどのように利用しようとしているかを、アセンブラが認識している必要があります。このためには、アセンブラの新しい疑似命令を導入する必要があります。コンパイラはたとえば -S オプションによってアセンブリ言語を出力し、このアセンブリ言語は後でアセンブラによってアセンブルされます。このため、コンパイラは、大域レジスタの使用状況を正しく示すことができるような新しい疑似命令を出力する必要があります。

新しい SPARC V9 の疑似命令:


.register %g {2 | 3 | 6 | 7}, {#scratch | symbol name }

この新しい疑似命令は、どのようなアーキテクチャ設定用の SPARC アセンブラでも使用できますが、V9 にのみ影響を与えます。このため、この新しい疑似命令を使用して V8 用と V9 用のアセンブリコードを書くことができます。SPARC V8 およびそれ以前の SPARC アーキテクチャのバージョン (Solaris 2.5.1 および Solaris 2.6) では、この疑似命令は受け付けられますが無視されます。

-xarch=v9 が指定されているときに、新しい疑似命令が扱っていない大域レジスタが使用されているということが SPARC アセンブラによって検出された場合は、SPARC アセンブラからエラーメッセージが出力されます。

-xarch=v9 が指定されているときに、同じ大域レジスタに対して異なる複数の疑似命令が指定されているということが SPARC アセンブラによって検出された場合は、SPARC アセンブラからエラーメッセージが出力されます。それ以の場合は、ユーザーが指定したとおりに SPARC アセンブラによって適切な ELF レジスタレコードが出力されます。つまり SPARC アセンブラは、指定された使用状況は正しいことを検証することがありますが、必ず検証するとは限りません。

C 以外のロケール

アラビア語およびヘブライ語のサポート

Solaris 7 オペレーティングシステムでは、複雑なテキストレイアウト (CTL: Complex Text Layout) 言語の一部としてアラビア語およびヘブライ語がサポートされています。 CTL サポートには、この他にたとえばタイ語も含まれています。アラビア文字およびヘブライ文字の言語機能、入力方法、印刷方法など、サポートされている主な機能について説明します。

アラビア語およびヘブライ語の次の機能がサポートされています。

言語機能

カーソルの分割

カーソルの分割 (2 つのカーソル) が、新機能として追加されました。これによって、テキストの挿入位置がヘブライ語と英語のテキストの境界にあるときに発生するあいまいさが解消されます。

入力

各デスクトップアプリケーションのウィンドウの下部に、入力ウィンドウが表示されます。入力ウィンドウは最初は英語で表示されます。アラビア語またはヘブライ語の入力モードに切り替えるには、 Ctrl - T キーを押してください。入力ウィンドウがアラビア語またはヘブライ語で表示され、アラビア語またはヘブライ語のテキストを入力できるようになります。

印刷

CTL 言語で記述された文書の印刷について説明しているマニュアルページ ctlmp が新しく追加されました。このマニュアルページを表示するにはコマンド行で man ctlmp と入力してください。