システムインタフェース

プログラミングインタフェース

Solaris は、プログラミングインタフェース、ユーザインタフェースの各要素、プロトコル、ファイルシステム内のオブジェクトの命名規則や位置など、さまざまな「インタフェース」を提供しています。システムにとって最も重要なインタフェースの 1 つが、開発者に提供するプログラミングインタフェースです。プログラミングインタフェースは、次の 2 つの部分に分かれています。1 つは、アプリケーション開発者に関係する部分で、API (アプリケーションプログラミングインタフェース) です。もう 1 つは、デバイスドライバやプラットフォームサポートモジュールのようにシステムコンポーネントの開発者に関係するもので、SPI (システムプログラミングインタフェース) です。

開発者は Solaris の各プログラミングインタフェースを、ソースレベルとバイナリレベルという 2 つのレベルで「見る」ことができます。API や SPI という頭字語を使用する場合は、システムのソースレベルのプログラミングインタフェースを示します。アプリケーションバイナリインタフェース (ABI)、システムバイナリインタフェース (SBI) という用語は、それぞれのソースレベルのプログラミングインタフェースに対応するバイナリインタフェースを示します (「ABI」という用語は他のバイナリインタフェースと混同しがちなので、「Solaris ABI」という用語のみを使用します)。

インタフェース関数

このマニュアルで説明する SunOS 5.0 から 5.8 の関数は、カーネルとアプリケーションプログラムから提供されるサービス間のインタフェースです。Solaris 8 Reference Manual Collection の 『man pages section 2: System Calls』、『man pages section 3: Basic Library Functions』、『man pages section 3: Curses Library Functions』、『man pages section 3: Extended Library Functions』、『man pages section 3: Library Interfaces and Headers』、『man pages section 3: Networking Library Functions』、および『man pages section 3: Threads and Realtime Library Functions』に掲載されている関数は、SunOS 5.0 から 5.8 のオペレーティングシステムとのアプリケーションのインタフェースです。これらの関数により、アプリケーションでファイルシステム、プロセス間通信のプリミティブ、マルチタスク機構などの機能を使用できます。このマニュアルは、API の重要部分を説明するマニュアルセットの中の 1 つです。その他に、このセットには『STREAMS Programming Guide』、『マルチスレッドのプログラミング』、『ネットワークインタフェース』などのマニュアルが含まれています。

Solaris 8 Reference Manual Collection の 『man pages section 2: System Calls』と 『man pages section 3』 に掲載されているライブラリルーチンを使用すると、プログラム作成時はその実装の詳細を意識する必要がなくなります。たとえば、標準 C ライブラリ内の fread 関数は read をベースに実装されています。

C プログラムは、プログラムのコンパイル時に呼び出す関数に自動的にリンクされます。この手順は、他の言語で作成されたプログラムで異なることがあります。詳細は、『リンカーとライブラリ』を参照してください。