本文に進む 日本−日本語
日本HPホーム 製品とサービス お客様サポート/ ダウンロード ソリューション ご購入の方法
≫ お問い合わせ
詳細検索オプション
日本HPホーム
HP-UX リファレンス > m

model(4)

廃止予定
HP-UX 11i Version 3: February 2007
≫ 

テクニカル ドキュメント

フィードバック
ここから本文が始まります

 ≫ 目次

 ≫ 索引

名称

model ― HP-UX マシンの識別

構文

#include <model.h>

説明

ハードウェアの違いによる、複数の HP-UX インプリメンテーション間の、ある程度の違いは避けられません。 このような違いがある場合、これを取り除くために条件付きのコンパイルや他の定義を使うことができます。 その違いを解決するフラグと typedef が、 <model.h> ヘッダファイルに集められています。 このファイルには、さまざまな HP-UX インプリメンテーションを識別するための、多数の定数があります。

例えば、ヘッダファイル model.h には次は定数があります。これらの値は、 <sys/magic.h> で定義されます。

#define HP_S_500 HP9000_ID
#define HP_S_200 HP98x6_ID
#define HP_S_300 CPU_HP_MC68020
#define HP_S_800 CPU_PA_RISC1_0
#define HP_S_700 CPU_PA_RISC1_1

他のこのような定数は、 HP-UX が次のリリースで他のマシンに対応する際に、適宜加えられます。

さらに、 model.h にはプリプロセッサ定数 MYSYS を定義する 1 文があります。コンパイル機能を必要とする特定のインプリメンテーションが、 この定数で表されます。 MYSYS は、常に上記の定数のうちの 1 つと等しくなります。

ファイルに、インプリメンテーションやアーキテクチャに依存した機能がある場合、 複数の HP-UX インプリメンテーション上で実行されるファイルに対応するために、 条件付きコンパイルを使うことができます。 例として次のようなコードセグメントでは、if 文の次は文は、 システムプロセッサが HP 9000 シリーズ 400 機種である場合に のみ コンパイルされることになります。

#if MYSYS==HP_S_400
<statements>
#endif

model.h は、いくつかの定義済みの型に対する typedef も含みます。 この型は、ある種のコードやファイルの移植性を高めるためのものです。

これらの typedef 宣言は、ヘッダファイル inttypes.h によって置き換えられました。

int8, u_int8 

符号付きおよび符号なし 8 ビット整数型。

int16, u_int16 

符号付きおよび符号なし 16 ビット整数型。

int32, u_int32 

符号付きおよび符号なし 32 ビット整数型。

machptr, u_machptr
  

ポインタを保持できる大きさの符号付きおよび符号なし整数型。

model.h ではなく、 inttypes.h を使用するためにコードを移植する場合、これらの定義は intypes.h に含まれている定義と一致します。

int8_t, uint8_t 

符号付きおよび符号なし 8 ビット整数型。

int16_t, uint16_t
  

符号付きおよび符号なし 16 ビット整数型。

int32_t, uint32_t
  

符号付きおよび符号なし 32 ビット整数型。

intptr_t, uintptr_T
  

ポインタを保持できる大きさの符号付きおよび符号なし整数型。

C プリプロセッサにおける条件付きコンパイル変数が、 インプリメンテーションに依存したコードに対処するために、いくつか定義されています。 cpp(1) を参照してください。

参照

cc(1), cpp(1), inttypes(5), magic(4)

印刷用画面へ
プライバシー 本サイト利用時の合意事項
© 2007 Hewlett-Packard Development Company, L.P.