123413Smckusick /* 229024Smckusick * Copyright (c) 1982, 1986 Regents of the University of California. 323413Smckusick * All rights reserved. The Berkeley software License Agreement 423413Smckusick * specifies the terms and conditions for redistribution. 523413Smckusick * 6*46280Sbostic * @(#)exec.h 7.4 (Berkeley) 02/05/91 723413Smckusick */ 816744Ssam 9*46280Sbostic #ifndef _EXEC_H_ 10*46280Sbostic #define _EXEC_H_ 11*46280Sbostic 1216744Ssam /* 1316744Ssam * Header prepended to each a.out file. 1416744Ssam */ 1516744Ssam struct exec { 1645904Swilliam #if !defined(vax) && !defined(tahoe) && !defined(i386) 1741498Smckusick unsigned short a_mid; /* machine ID */ 1841498Smckusick unsigned short a_magic; /* magic number */ 1941498Smckusick #else 2041498Smckusick long a_magic; /* magic number */ 2141498Smckusick #endif 2216744Ssam unsigned long a_text; /* size of text segment */ 2316744Ssam unsigned long a_data; /* size of initialized data */ 2416744Ssam unsigned long a_bss; /* size of uninitialized data */ 2516744Ssam unsigned long a_syms; /* size of symbol table */ 2616744Ssam unsigned long a_entry; /* entry point */ 2716744Ssam unsigned long a_trsize; /* size of text relocation */ 2816744Ssam unsigned long a_drsize; /* size of data relocation */ 2916744Ssam }; 3041498Smckusick #define a_machtype a_mid /* SUN compatibility */ 3116744Ssam 3241498Smckusick /* a_magic */ 3316744Ssam #define OMAGIC 0407 /* old impure format */ 3416744Ssam #define NMAGIC 0410 /* read-only text */ 3516744Ssam #define ZMAGIC 0413 /* demand load format */ 3641498Smckusick 3741498Smckusick /* a_mid */ 3841498Smckusick #define MID_ZERO 0 /* unknown - implementation dependent */ 3941498Smckusick #define MID_SUN010 1 /* sun 68010/68020 binary */ 4041498Smckusick #define MID_SUN020 2 /* sun 68020-only binary */ 4141498Smckusick #define MID_HP200 200 /* hp200 (68010) BSD binary */ 4241498Smckusick #define MID_HP300 300 /* hp300 (68020+68881) BSD binary */ 4341498Smckusick #define MID_HPUX 0x20C /* hp200/300 HP-UX binary */ 4441498Smckusick #define MID_HPUX800 0x20B /* hp800 HP-UX binary */ 45*46280Sbostic 46*46280Sbostic #endif /* !_EXEC_H_ */ 47