システムインタフェース

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

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

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

インタフェース関数

このマニュアルで説明する Solaris 2.x の関数は、カーネルとアプリケーションプログラムから提供されるサービス間のインタフェースです。『Solaris 2.6 Reference Manual AnswerBook』の Section 2 と Section 3 に掲載されている関数は、Solaris 2.x オペレーティングシステムとのアプリケーションのインタフェースです。これらの関数により、アプリケーションでファイルシステム、プロセス間通信のプリミティブ、マルチタスク機構などの機能を使用できます。この『システムインタフェース』は、API の重要部分を説明するマニュアルセットの中の 1 つです。その他に、このセットにはSTREAMS Programming GuideマルチスレッドのプログラミングTransport Interfaces Programming Guideなどのマニュアルが含まれています。

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

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