Legacy Documentclose button

Important: The information in this document is obsolete and should not be used for new development.

Previous Book Contents Book Index Next

Inside Macintosh: Mac OS Runtime Architectures /


Chapter 8 - PEF Structure

This chapter describes the structure of the PEF storage standard, which is the format used to store programs in the Code Fragment Manager-based runtime architecture. You need this information if you read from or write to PEF containers--if you are writing a compiler or other development tool, for example.

After a high-level view of a PEF container in the "Overview" section, there follow sections that describe the elements of a PEF container in more detail.

Note that the PEF storage standard is not exclusive to the CFM-based architecture. Other architectures can follow the specification described here and use PEF containers to store their code and data. In such cases, the appropriate PEF handler for that architecture takes the role of the Code Fragment Manager.


Chapter Contents
Overview
The Container Header
PEF Sections
The Section Name Table
Section Contents
Pattern-Initialized Data
Pattern-Initialization Opcodes
Zero (Opcode 000)
blockCopy (Opcode 001)
repeatedBlock (Opcode 010)
interleaveRepeatBlockWithBlockCopy (Opcode 011)
interleaveRepeatBlockWithZero (Opcode 100)
The Loader Section
The Loader Header
Imported Libraries and Symbols
Imported Library Descriptions
The Imported Symbol Table
Relocations
The Relocation Headers Table
The Relocation Area
A Relocation Example
Relocation Instruction Set
RelocBySectDWithSkip
The Relocate Value Group
The Relocate By Index Group
RelocIncrPosition
RelocSmRepeat
RelocSetPosition
RelocLgByImport
RelocLgRepeat
RelocLgSetOrBySection
The Loader String Table
Exported Symbols
The Export Hash Table
The Export Key Table
The Exported Symbol Table
Hashing Functions
The Name to Hash Word Function
The Hash Word to Hash Index Function
The Exported Symbol Count to Hash Table Size Function
PEF Size Limits

Previous Book Contents Book Index Next

© Apple Computer, Inc.
11 MARCH 1997