JavaScript is required to for searching.
ナビゲーションリンクをスキップ
印刷ビューの終了
リンカーとライブラリ     Oracle Solaris 11 Information Library (日本語)
search filter icon
search icon

ドキュメントの情報

はじめに

パート I リンカーおよび実行時リンカーの使用

1.  Oracle Solaris リンカーの紹介

2.  リンカー

3.  実行時リンカー

4.  共有オブジェクト

5.  インタフェースおよびバージョン管理

6.  動的ストリングトークンによる依存関係の確立

パート II クイックリファレンス

7.  リンカーのクイックリファレンス

8.  バージョン管理の手引き

命名規約

共有オブジェクトのインタフェースの定義

共有オブジェクトのバージョンアップ

既存の (バージョンアップされていない) 共有オブジェクトのバージョンアップ

バージョンアップ共有オブジェクトの更新

新しいシンボルの追加

内部実装の変更

新しいシンボルと内部実装の変更

標準インタフェースへのシンボルの併合

パート III 詳細情報

9.  直接結合

10.  mapfile

11.  拡張性メカニズム

パート IV ELF アプリケーションバイナリインタフェース

12.  オブジェクトファイル形式

13.  プログラムの読み込みと動的リンク

14.  スレッド固有領域 (TLS)

パート V 付録

A.  リンカーとライブラリのアップデートおよび新機能

B.  System V Release 4 (バージョン 1) Mapfile

索引

命名規約

共有オブジェクトは、メジャー (major) ナンバーファイル接尾辞を含むという命名規約に従います。「命名規約」を参照してください。この共有オブジェクト内では、1 つまたは複数のバージョン定義を作成できます。各バージョン定義は、次のいずれかに分類できます。

次のバージョン定義命名規約は、定義がどの分類に属するのかを示すために役立ちます。

最初の 3 つの分類は、インタフェース定義を示します。これらの定義は、インタフェースを構成する大域シンボル名とバージョン定義名の関連付けからなります。「バージョン定義の作成」を参照してください。共有オブジェクト内のインタフェースの変更は、しばしば「マイナーリビジョン (minor revision)」と呼ばれます。このため、このタイプのバージョン定義には、マイナー (minor) バージョンナンバーの接尾辞を付けます。これは、ファイル名のメジャー (major) バージョンナンバーの接尾辞をベースとしたものです。

最後の分類は、オブジェクト内の変更を示します。この定義は、ラベルとして機能するバージョン定義からなり、関連するシンボル名はありません。この定義は、ウィーク (weak) バージョン定義と呼ばれます。「ウィークバージョン定義の作成」を参照してください。共有オブジェクト内の実装の変更は、しばしば「マイクロリビジョン (micro revision)」と呼ばれます。このため、このタイプのバージョン定義には、マイクロ (micro) バージョンナンバーの接尾辞を付けます。これは、元になったもののマイナーナンバーをベースとしたものです。

業界標準インタフェースは、この標準を反映するバージョン定義名を使用しなければなりません。ベンダーインタフェースは、そのベンダー固有のバージョン定義名を使用する必要があります。この点で、しばしば利用されるのが、企業の株式銘柄のシンボルです。

非公開バージョン定義は、使用方法が制限されているかまたは確定されていないシンボルを示します。特に、「private」という語を明確に示す必要があります。

バージョン定義を行うと、関連するバージョンシンボル名が必ず作成されます。したがって、一意の名前およびマイナー (minor) / マイクロ (micro) の接尾辞の使用という規則を使用すると、構築されるオブジェクト内でシンボルが衝突する可能性を減らすことができます。

次の定義例は、これらの命名規約の使用方法を示しています。

SVABI.1

「System V アプリケーションバイナリインタフェース」標準インタフェースを定義します。

SUNW_1.1

Oracle Solaris OS 公開インタフェースを定義します。

SUNWprivate_1.1

Oracle Solaris OS 非公開インタフェースを定義します。

SUNW_1.1.1

Oracle Solaris OS 内部実装の変更を示します。