本書は,C プログラミング言語を中心に,HP Tru64 UNIX オペレーティング・システムのプログラミング環境について説明します。
C 以外のプログラミング言語については,システムの設定時あるいは変更時に選択することにより利用することができます。
本書の対象読者
本書は,Tru64 UNIX オペレーティング・システムを使用し,サポートされた言語でプログラムの作成および管理を行う,すべてのプログラマを対象読者にしています。
追加および変更された機能
本書は,前回のリリースの後に次のような追加と変更が行われています。
第 4 章
--
4.2.4 項
(未解決の外部シンボルの処理のオプション) に,-error_unresolved
オプションが有効な場合の
.so
ファイルの処理方法に関する説明を記載しました。
第 9 章 -- この章は大幅に改訂し,Atom の新しいオプションおよびルーチンの説明を加え,9.2.3.6 項 (エントリ・ポイントへの介入呼び出し) と 9.2.6 項 (置換された呼び出し側アプリケーションのエントリ・ポイント) の 2 つの項を追加しました。
第 14 章 -- 14.5.1.5 項 (クラスタ・イベント・データ項目) と 14.7.10 項 (失われたイベント) の 2 つの項を追加しました。 他にも,章全体を通じて細かい改訂と追加を行っています。
第 1 章 | プログラム開発のフェーズ,およびそれらのフェーズで使用されるプログラミング・ツールについて説明します。 |
第 2 章 | コンパイラ・システムを構成するツールおよびその使用方法について説明します。 コンパイラ・コマンド,プリプロセッサ,コンパイラ・オプション,多言語プログラム,およびアーカイバについて説明します。 |
第 3 章 | C コンパイラでサポートされている処理系固有のプラグマについて説明します。 |
第 4 章 | シェアード・ライブラリの用途,作成方法,および保守,ならびにシンボルの解決方法について説明します。 |
第 5 章 | dbx
デバッガの使用方法について説明します。
また,dbx
コマンド,モニタでの動作,ブレークポイントの設定,機械語コードのデバッグについても説明します。 |
第 6 章 | コーディング・エラーのないプログラムを作成するための
lint
コマンドの使用方法について説明します。 |
第 7 章 | Third Degree ツールを使用して,アプリケーション・プログラムのメモリ・アクセス・チェックおよびリーク検出を行う方法について説明します。 |
第 8 章 | 作成したコードのプロファイルを行うためのさまざまなツールや技術の使用方法について説明し,プログラムのどの部分の処理に最も時間を費やしているかを調べることができるようにします。 また,プロファイル・データを C コンパイラにフィードバックして,コードの自動最適化を提供する方法についても説明します。 |
第 9 章 | パッケージされている Atom ツールを使用して,プロファイル・データの取得やキャッシュ使用分析の実行など,アプリケーションに対してさまざまな目的で計測を行う方法について説明します。 また,この章では,カスタム Atom ツールの設計および作成方法についても説明します。 |
第 10 章 | 最適化ツールおよびポストリンク最適化ツール
spike
によるプログラムの最適化について説明します。 |
第 11 章 | C コンパイラの機能を利用した構造化例外ハンドラおよび終了ハンドラの作成方法について説明します。 |
第 12 章 | マルチスレッド・プログラムの開発について説明します。 |
第 13 章 | OpenMP 並行処理インタフェースを使用する際の考慮事項について説明します。 |
第 14 章 | Event Manager ユーティリティを使用して,イベント情報を通知したり受信したりする方法について説明します。 |
付録 A | Tru64 UNIX システムにおける 32 ビット・ポインタの使用方法について説明します。 |
付録 B | System V 実行環境における C 言語プログラムのソース・コードの互換性について説明します。 |
付録 C | 動的に構成可能なカーネル・サブシステムの作成方法について説明します。 |
付録 D | OpenMP の前に実装されていた古い形式の並行処理プラグマについて説明します。 |
付録 E | デバイス特殊ファイルの古い形式の名前と新しい形式の名前の変換処理を行うルーチンについて説明します。 |
付録 F | cc
コマンドの
-om
および
-cord
オプションを用いてプログラムを最適化する方法について説明します。 |
プログラム開発に関する情報については,本書の他に次のマニュアルを参照してください。
プログラミング (全般):
『Calling Standard for Alpha Systems』
『Assembly Language Programmer's Guide』
『プログラミング・サポートツール・ガイド』
『ネットワーク・プログラミング・ガイド』
『Compaq Portable Mathematics Library』
『国際化ソフトウェア・プログラミング・ガイド』
『Kernel Debugging』
『Ladebug Debugger Manual』
『Writing Kernel Modules』
『Alpha Architecture Reference Manual』 第 2 版 (Butterworth-Hinemann Press, ISBN:1-55558-145-5)
プログラミング (リアルタイム):
『Guide to Realtime Programming』
プログラミング (STREAMS):
『Programmer's Guide: STREAMS』
プログラミング (マルチスレッド・アプリケーション):
『Guide to the POSIX Threads Library』
OpenMP C and C++ Application Programming Interface 仕様は,インターネットの
http://www.openmp.org/specs/
にあります。
一般ユーザ情報:
本書では,次の表記規約を使用します。
%
$
パーセント記号は,C シェルのシステム・プロンプトを表します。ドル記号は, Bourne シェル,Korn シェル,および POSIX シェルの場合の システム・プロンプトを表します。
#
番号記号は root としてログインした場合のシステム・プロンプトを表します。
%
cat
対話式の例における太字(ボールド体)は,ユーザが入力する文字を示します。
イタリック体 (斜体) は,変数値,プレースホルダ,および関数の引数名を示します。
構文定義では,大カッコはオプションの項目を示し,中カッコは必須項目を示します。 大カッコまたは中カッコの中の項目を縦線で区切っている場合は, そこに併記されている項目の中から1つの項目を選択することを示します。
colored
text
構文定義では,リテラル要素(コマンド名など文字通り入力する要素)は緑色で表示され,変数値,数式/論理式記号,関数の引数名は赤色で表示されます。 構文説明以外の場所では,色付きのテキストは使用しません。
構文定義では,水平の反復記号は,前の項目を1回以上繰り返して使用できることを示します。
cat
(1)リファレンス・ページの参照には,該当するセクション番号をカッコ内に示します。
たとえば,
cat
(1)cat
コマンドについての情報が,
リファレンス・ページのセクション1に記載されていることを示します。
四角で囲まれたキー名はユーザがそのキーを押すことを示します。
この記号は,スラッシュの前に指定されているキーを押しながら, スラッシュの後のキーまたはマウス・ボタンを押すことを示します。 例中では,このようなキーの組み合わせは, 四角あるいは大カッコで囲まれて示されます(たとえば,[Ctrl/C] )。