Arm Image Format
   HOME

TheInfoList



OR:

In
computer programming Computer programming is the process of performing a particular computation (or more generally, accomplishing a specific computing result), usually by designing and building an executable computer program. Programming involves tasks such as anal ...
, the Arm Image Format (AIF) is an
object file An object file is a computer file containing object code, that is, machine code output of an assembler or compiler. The object code is usually relocatable, and not usually directly executable. There are various formats for object files, and the ...
format Format may refer to: Printing and visual media * Text formatting, the typesetting of text elements * Paper formats, or paper size standards * Newspaper format, the size of the paper page Computing * File format, particular way that informatio ...
used primarily for software intended to run on ARM
microprocessor A microprocessor is a computer processor where the data processing logic and control is included on a single integrated circuit, or a small number of integrated circuits. The microprocessor contains the arithmetic, logic, and control circ ...
s. It was introduced by
Acorn Computers Acorn Computers Ltd. was a British computer company established in Cambridge, England, in 1978. The company produced a number of computers which were especially popular in the UK, including the Acorn Electron and the Acorn Archimedes. Acorn's ...
for use with their
Archimedes Archimedes of Syracuse (;; ) was a Greek mathematician, physicist, engineer, astronomer, and inventor from the ancient city of Syracuse in Sicily. Although few details of his life are known, he is regarded as one of the leading scientis ...
computer. It can optionally facilitate debugging, including under operating systems running on other processor architectures.


Format

The file can be either
executable In computing, executable code, an executable file, or an executable program, sometimes simply referred to as an executable or binary, causes a computer "to perform indicated tasks according to encoded instructions", as opposed to a data fil ...
or non-executable and is loaded at 0x8000 unless otherwise specified. 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. The file includes a header and separate areas of read-only and read-write code/data. It can optionally include data for
debugging In computer programming and software development, debugging is the process of finding and resolving '' bugs'' (defects or problems that prevent correct operation) within computer programs, software, or systems. Debugging tactics can involve i ...
and the code (with list) for self-relocation.


AIF header

The header includes information about self-relocation,
entry point In computer programming Computer programming is the process of performing a particular computation (or more generally, accomplishing a specific computing result), usually by designing and building an executable computer program. Programmin ...
, exit instruction, area sizes and locations, debug type,
addressing mode Addressing modes are an aspect of the instruction set architecture in most central processing unit (CPU) designs. The various addressing modes that are defined in a given instruction set architecture define how the machine language instructions i ...
and memory placement (in the case of the extended file). An allocation was later made in the header to mark executables as being "
StrongARM The StrongARM is a family of computer microprocessors developed by Digital Equipment Corporation and manufactured in the late 1990s which implemented the ARM architecture, ARM v4 instruction set architecture. It was later acquired by Intel in ...
-ready", to address some
backward compatibility Backward compatibility (sometimes known as backwards compatibility) is a property of an operating system, product, or technology that allows for interoperability with an older legacy system, or with input designed for such a system, especiall ...
issues.


Debugging

The files can be run for debugging under
DOS DOS is shorthand for the MS-DOS and IBM PC DOS family of operating systems. DOS may also refer to: Computing * Data over signalling (DoS), multiplexing data onto a signalling channel * Denial-of-service attack (DoS), an attack on a communicat ...
and SunOS using the ''ARM Windowing Debugger''.


Other uses

Microsoft's MMLite modular system architecture supports the loading of various image formats, including AIF files. Porting of Wind River Systems'
VxWorks VxWorks is a real-time operating system (or RTOS) developed as proprietary software by Wind River Systems, a wholly-owned subsidiary of Aptiv. First released in 1987, VxWorks is designed for use in embedded systems requiring real-time, determi ...
operating system to the StrongARM EBSA-285 board involved using AIF files.


References

{{RISC OS Executable file formats RISC OS