Solaris 9 オペレーティング環境の概要

開発ツール

説明  

リリース 

Solaris と Linux のアプリケーションプログラミングインタフェースの互換性

フリーウェアのライブラリとサポートユーティリティのいくつかは、以前は Solaris 8 ソフトウェア付属の CD 上で利用できましたが、現在は Solaris 9 オペレーティング環境に統合されています。この結果、ソフトウェアアプリケーションの開発者が Solaris オペレーティング環境で、より簡単にフリーウェアアプリケーションを開発およびコンパイルできるようになりました。ライブラリには、glibGTK+Jpeglibpng Tcl/Tklibtif、および libxm12 が含まれています。Solaris のメディアで利用できるフリーウェアの詳細は、「その他のソフトウェア」を参照してください。

Solaris 9 

Live Upgrade メッセージの XML 出力の選択

Solaris Live Upgrade をコマンド行で使用するときに、-X オプションを使用して XML 出力を選択できるようになりました。このオプションは、Solaris Live Upgrade をツールとして使用するプログラムまたはシェルスクリプトのプログミングの際に使用するものです。デフォルトの出力はテキスト出力ですが、-X オプションを使用すれば、マシンの構文解析と解釈に適した XML が作成されます。-X オプションを指定すると、エラー、警告、通知、一般などのすべてのメッセージで、出力は XML となります。

lucreate(1M) のマニュアルページを参照してください。

Solaris 9 

Multiple Page Size Support

Multiple Page Size Support (MPSS) により、プログラムはハードウェアがサポートする任意のページサイズを使用して仮想メモリーの各部にアクセスできます。 以前のリリースでは、プログラムのスタック、ヒープ、または mmap() で割り当てられた Anonymous Memory に 8K バイトのページしか利用できませんでした。

開発者は、メモリーを多く消費するアプリケーションがスタック、ヒープ、または mmap() で割り当てられた /dev/zeroプライベートメモリーのためにハードウェアでサポートされている任意のページサイズを使用するように調整できます。メモリーを多く消費するプログラムでは、大きなページサイズを使用することでパフォーマンスが著しく向上する場合があります。

詳細は、pagesize(1)mpss.so.1(1)ppgsz(1)memcntl(2)mmap(2)、および getpagesizes(3C) のマニュアルページを参照してください。

Solaris 9 

マルチスレッドライブラリの向上

Solaris 9 リリースでは、改良された高速マルチスレッドライブラリが追加されました。これは、以前のリリースの Solaris ソフトウェアでは libthread の代替として利用できました。

詳細は、『マルチスレッドのプログラミング』と threads(3THR) のマニュアルページを参照してください。

Solaris 9 

Perl バージョン 5.6.1

Solaris 9 リリースでは、新しいデフォルトバージョンの Perl (Practical Extraction and Report Language) を使用できます。新しいデフォルトバージョンの Perl は、バージョン 5.6.1 です。また、Solaris 9 リリースには、Solaris 8 リリースに含まれていた古いバージョンの Perl (バージョン 5.005_03) も含まれています。 

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

Solaris 9 

統一された diff 形式

diff コマンドと sccs-sccsdiff コマンドが更新され、GNU スタイルの統一された diff 形式をサポートできるようになりました。この形式では、コンテキスト行が差分リストに 1 回だけ出力されます。

これらのコマンドの詳細は、diff(1) および sccs-sccsdiff (1) のマニュアルページを参照してください。

Solaris 9 

sysevent フレームワーク

sysevent フレームワークにより、カーネルレベルとユーザーレベルのシステムイベント (ハードウェアとソフトウェアの状態の変化、エラー、障害など) を、このようなイベントの通知を受け取るべきアプリケーションに通知できるようになりました。

sysevent フレームワークのコンポーネントには以下のものがあります。

  • syseventd(1M) デーモン

  • syseventadm(1M) コマンド

  • イベントデータ抽出と sysevent 予約 (subscription) のためのライブラリ API

  • ドライバレベルのシステムイベント通知インタフェース (ddi_log_sysevent(9F))

syseventd デーモンは、カーネルからのシステムイベントバッファの配信を受け入れる、ユーザーレベルのデーモンです。イベントバッファが syseventd が配信されると、このデーモンは対象となるすべての終了イベントのサブスクライバにイベントを伝達します。

syseventadm コマンドを使用して、システムイベントに応答してコマンド、アプリケーション、またはスクリプトを起動するためにあとで使用するイベント指定を構成することができます。

sysevent カーネルおよびライブラリ API の詳細は、syseventadm(1M)syseventconfd(1M)、および syseventd(1M) のマニュアルページを参照してください。

ドライバレベルのイベント通知ロギングの詳細は、ddi_log_sysevent(9F) を参照してください。

Solaris 8 1/01 

Solaris 8 4/01 で更新 

Kernel Pseudo-Random Number Generator

Solaris Pseudo-Random Number Generator (PRNG) は /dev/random/dev/urandom デバイスから使用でき、暗号化操作、科学計算アプリケーション、およびシミュレーションツール用の擬似乱数にアクセスする標準インタフェースを備えた ISV を提供します。PRNG は Solaris カーネルで動作し、エントロピープールの内容を保護します。PRNG は、カーネルメモリーページからエントロピーデータを収集し、高水準な無作為性を常に維持します。

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

Solaris 9 

クラスタ上の遠隔共用メモリーへのアプリケーションインタフェース

Sun Cluster 環境の使用を拡大するアプリケーションを開発する際は、このインタフェースを利用できます。 新しい Remote Shared Memory (RSM) API を使用すると、高速クラスタインターコネクトで渡されるメッセージの応答時間が短いアプリケーションをプログラミングすることができます。このように cluster-aware アプリケーションを設計すると、クラスタ化された構成でイベントへの応答に要する時間を大幅に減らすことができます。 

Sun Cluster 3.0 がインストールされている必要があります。新しいインタフェースを活用するためには、既存の Sun Cluster アプリケーションを変更する必要があります。 

詳細は、『プログラミングインタフェース』を参照してください。また、librsm(3LIB) のマニュアルページと『man pages section 3: Extended Library Functions』(3RSM) のマニュアルページにも RSM に関する記述が含まれています。

Solaris 8 10/01 

GNU 互換バージョンの gettext API 関数

Solaris 9 リリースでは GNU 互換バージョンの gettext API 関数が追加されましたが、Solaris gettext API 関数の下位互換性も維持しています。

  • libc 内の既存の gettext()dgettext()dcgettext()textdomain()、および bindtextdomain() 関数は、Solaris と GNU 互換のメッセージファイルを両方とも処理することができる

  • libc 内の新しい GNU 互換の ngettext()dngettext()dcngettext()、および bind_textdomain_codeset() 関数は、GNU 互換のメッセージファイルを処理できる

  • msgfmt ユーティリティと gettext ユーティリティは、Solaris と GNU 互換の両方のメッセージファイルを処理できる

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

Solaris 9  

拡張ファイル属性

UFS、NFS、および TMPFS ファイルシステムは、拡張ファイル属性を包含するように機能拡張されました。拡張ファイル属性によりアプリケーション開発者は、ファイルを特定の属性に関連付けることができます。たとえば、ウィンドウシステム用のファイル管理アプリケーションの開発者が行う、表示アイコンとファイルとの関連付けです。 

詳細は、「ファイルシステムの機能拡張」を参照してください。

Solaris 9 

新しい固定優先順位 (Fixed-Priority、FX) スケジューリングクラス

FX スケジューラは、ユーザーまたはアプリケーションによるスケジューリング優先順位制御を必要とするプロセスに対して、スケジューリングポリシーを提供します。「システムリソースの機能拡張」を参照してください。

Solaris 9  

ダイナミックホスト構成プロトコル (DHCP)

ダイナミックホスト構成プロトコル (Dynamic Host Configuration Protocol、DHCP) サービスを使用すると、ホストシステムは、ブート時にネットワークサーバーから IP アドレスとネットワーク構成情報を受け取ることができます。Solaris 8 7/01 より前のリリースでは DHCP 構成データはテキストファイルか NIS+ にしか保存できませんでしたが、現在の Solaris DHCP サービスでのデータアクセスは、モジュール方式のフレームワークを使用するように再設計されています。Solaris DHCP は、DHCP データの保存に任意のデータ格納装置をサポートする共有オブジェクトを作成できる API を提供します。  

Solaris DHCP サービス開発ガイド』には、Solaris DHCP が使用するデータアクセスフレームワークの概要、開発者向けの一般的なガイドライン、および、新しいデータストアをサポートするモジュールの作成に使用する API 機能の一覧が記載されています。

詳細については、『Solaris DHCP サービス開発ガイド』を参照してください。

Solaris 8 7/01 

Solaris Web Start Wizards SDK 3.0.1

Solaris Web Start Wizards は、ネイティブ Solaris アプリケーション、Java アプリケーション、および Java 以外のアプリケーションのインストール、設定、管理を簡単にします。Solaris Web Start Wizards ソフトウェアを使用すると、開発者は Solaris 版のアプリケーションと Microsoft Windows 版のアプリケーションの両方をパッケージ化できます。このインストールウィザードは、プラットフォーム固有の処理を管理します。 

Web Start Wizard SDK 3.0.1 は現在 Solaris 9 リリースに付属しており、Solaris Web Start インストールプログラムを使用してインストールできます。 

Solaris 9 

モジューラデバッガ (mdb)

mdb(1) は、稼動中のオペレーティングシステム、OS クラッシュダンプ、ユーザープロセス、ユーザープロセスのコアダンプ、オブジェクトファイルなどの低レベルのデバッグと編集に利用できる拡張可能なユーティリティです。 Solaris 9 リリースでは、mdb は Solaris カーネル用の新しいシンボリックデバッグサポート、新しいカーネルデバッガコマンド、実行中のユーザープロセスの検査と制御を目的とした新機能、raw ディスクファイルおよび raw デバイスの検査機能などを提供します。

詳細は、『Solaris モジューラデバッガ』と mdb(1) のマニュアルページを参照してください。

Solaris 9 

オーディオの機能向上

Solaris 9 オペレーティング環境に、新しいオーディオディレクトリが追加されました。アプリケーションオーディオヘッダーファイルの新しいディレクトリは、/usr/include/audio です。このオーディオファイル形式には、新しいヘッダーファイル (/usr/include/audio/au.h) と au(4) のマニュアルページが含まれます。

その他のオーディオファイルの新しいデポジトリは、/usr/share/audio です。 /usr/demo/SOUND/sounds に置かれていたオーディオファイルは、ここへ移動しました。また、現在のアプリケーションとスクリプトがエラーを起こさずに動作するように、/usr/demo/SOUNDS/sounds から /usr/share/audio/samples/au へのシンボリックリンクが作成されています。

信頼性を向上させるため、オーディオカーネルモジュールに多数のバグ修正が施されました。 

詳細は、『Solaris のシステム管理 (基本編)』を参照してください。

Solaris 9 

sendfile システムコールのベクトル版: sendfilev()

sendfile システムコールのベクトル版である sendfilev() を使用すると、アプリケーションのバッファやファイルからデータを送るときのパフォーマンスが向上します。たとえば Web のパフォーマンスの場合、Web サーバーは、サーバーサイドインクルードだけでなくヘッダー、データ、トレイラも含めた HTTP 応答を、1 つのシステムコールで構築できます。この機能により、さまざまなファイルから複数のチャンクを応答として返すための仕組みが提供されるため、Solaris Network Cache and Accelerator (NCA) のパフォーマンスが最適化されます。

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

Solaris 8 7/01 

appcert ユーティリティによるファイル準拠の検証

appcert ユーティリティは、オブジェクトファイルが Solaris ABI に準拠しているかを検証します。Solaris ABI に準拠していると、今後の Solaris ソフトウェアのリリースに対するアプリケーションの互換性が大幅に向上します。

詳細は、『プログラミングインタフェース』の「appcert の使用方法」を参照してください。

Solaris 8 4/01 

Generic Security Services Application Programming Interface (GSS-API)

GSS-API (Generic Security Service Application Programming Interface) は、セキュリティのフレームワークです。GSS-API を使用すると、アプリケーションは転送するデータを保護できます。「セキュリティの機能拡張」を参照してください。

Solaris 8 6/00