名称
magic ― HP-UX インプリメンテーションのマジックナンバー
説明
magic.h ファイルは、 HP-UX 「マジックナンバー」に関するすべての情報をあるファイルに配置しています。
したがって複数のマジックナンバーに同じ処理が簡単に行えます。 このファイルは、ファイルでのマジックナンバーの位置を (常にファイルの先頭に) 指定し、次に示すマジックナンバーの構造体を指定します。
struct magic_number {
unsigned short system_id;
unsigned short file_type;
};
typedef struct magic_number MAGIC;
magic.h は、 HP-UX が動作するすべての HP
マシンのシステム ID 、そしてすべてのインプリメンテーションに共通なファイルタイプの定義を含みます。
実現方法に依存したファイルタイプを追加しても差し支えありません。
定義済みのファイルタイプは次の通りです。
/* for object code files */
#define RELOC_MAGIC 0x106 /* relocatable only */
#define EXEC_MAGIC 0x107 /* normal executable */
#define SHARE_MAGIC 0x108 /* shared executable */
#define DEMAND_MAGIC 0x10B /* demand-load executable */
#define LISP_MAGIC 0x10C /* compiled Lisp */
#define DL_MAGIC 0x10D /* dynamic load library */
#define SHL_MAGIC 0x10E /* shared library */
#define HPE_MAGIC 0x150 /* HPE boot image */
system_id の値は、 model(4) に定義されます。
警告
cpio で管理されるファイルは、 <magic.h> と互換性のないマジックナンバーを使います。
参照
ar(1), ld(1), a.out(4), ar(4), model(4)