Important: The information in this document is obsolete and should not be used for new development.
The Container Header
The container header contains information about the specific PEF container. The container header data structure is of fixed size (40 bytes) and has the form shown in Listing 8-1.Listing 8-1 PEF container header data structure
struct PEFContainerHeader { OSTypetag1; OSTypetag2; OSTypearchitecture; UInt32formatVersion; UInt32dateTimeStamp; UInt32oldDefVersion; UInt32oldImpVersion; UInt32currentVersion; UInt16sectionCount; UInt16instSectionCount; UInt32reservedA; };The fields in the container header are as follows:
- The
tag1field (4 bytes) designates that the container uses an Apple-defined format. This field must be set toJoy!in ASCII.- The
tag2field (4 bytes) identifies the type of container (currently set topeffin ASCII).- The
architecturefield (4 bytes) indicates the architecture type that the container was generated for. This field holds the ASCII valuepwpcfor the PowerPC CFM implementation orm68kfor CFM-68K.- The
formatVersionfield (4 bytes) indicates the version of PEF used in the container. The current version is1.- The
dateTimeStampfield (4 bytes) indicates when the PEF container was created. The stamp follows the Macintosh time-measurement scheme (that is, the number of seconds measured from January 1, 1904).- The next three fields,
oldDefVersion,oldImpVersion, andcurrentVersion(4 bytes each), contain version information that the Code Fragment Manager uses to check shared library compatibility. For more information about version checking, see "Checking for Compatible Import Libraries" (page 1-15).- The
sectionCountfield (2 bytes) indicates the total number of sections contained in the container.- The
instSectionCountfield (2 bytes) indicates the number of instantiated sections. Instantiated sections contain code or data that are required for execution.- The
reservedAfield (4 bytes) is currently reserved and must be set to0.
![]()
![]()
![]()
![]()
© Apple Computer, Inc.
11 MARCH 1997