| Arm Image Format | |
|---|---|
| Developed by | Acorn Computers |
| Type of format | Binary,executable |
Incomputer programming, theArm Image Format (AIF) is anobject fileformat used primarily for software intended to run onARMmicroprocessors. It was introduced byAcorn Computers for use with theirArchimedes computer.[citation needed] It can optionally facilitate debugging, including under operating systems running on other processor architectures.
The file can be eitherexecutable or non-executable and is loaded at 0x8000 unless otherwise specified.[1] Executable files can relocate themselves if necessary and non-executable files are prepared for execution by an image loader. An extended AIF is a type of non-executable which includes information to enable the placement of code and data within specific areas of memory.[1]
The file includes a header and separate areas of read-only and read-write code/data. It can optionally include data fordebugging and the code (with list) forself-relocation.[1]
Theheader includes information about self-relocation,entry point, exit instruction, area sizes and locations, debug type,addressing mode and memory placement (in the case of the extended file).[1]
An allocation was later made in the header to mark executables as being "StrongARM-ready", to address somebackward compatibility issues.[2]
The files can be run for debugging underMS-DOS andSunOS using theARM Windowing Debugger.[3]
Microsoft'sMMLite modular system architecture supports the loading of various image formats,[4] including AIF files.[5][6] Porting of Wind River Systems'VxWorks operating system to the StrongARM EBSA-285 board involved using AIF files.[7]