Glossary

ADS

See ARM Developer Suite.

ANSI

American National Standards Institute. An organization that specifies standards for, among other things, computer software.

API

Application Program Interface.

Architecture

The term used to identify a group of processors that have similar characteristics.

ARM Developer Suite

A suite of applications, together with supporting documentation and examples, that enable you to write and debug applications for the ARM family of RISC processors.

ARMulator

ARMulator is an instruction set simulator. It is a collection of modules that simulate the instruction sets and architecture of various ARM processors.

ATPCS

ARM and Thumb Procedure Call Standard defines how registers and the stack will be used for subroutine calls.

Big-endian

Memory organization where the least significant byte of a word is at a higher address than the most significant byte.

Byte

A unit of memory storage consisting of eight bits.

Char

A unit of storage for a single character. ARM designs use a byte to store a single character and an integer to store two to four characters.

Class

A C++ class involved in the image.

Coprocessor

An additional processor which is used for certain operations. Usually used for floating-point math calculations, signal processing, or memory management.

Current place

In compiler terminology, the directory which contains files to be included in the compilation process.

Debugger

An application that monitors and controls the execution of a second application. Usually used to find errors in the application program flow.

Deprecated

A deprecated option or feature is one that you are strongly discouraged from using. Deprecated options and features will not be supported in future versions of the product.

Double word

A 64-bit unit of information. Contents are taken as being an unsigned integer unless otherwise stated.

DWARF

Debug With Arbitrary Record Format.

EC++

A variant of C++ designed to be used for embedded applications.

ELF

Executable and linking format.

Environment

The actual hardware and operating system that an application will run on.

Executable and linking format

The industry standard binary file format used by the ARM Developer Suite. ELF object format is produced by the ARM object producing tools such as armcc and armasm. The ARM linker accepts ELF object files and can output either an ELF executable file, or partially linked ELF object.

Execution view

The address of regions and sections after the image has been loaded into memory and started execution.

Flash memory

Non-volatile memory that is often used to hold application code.

Globals

Variables or functions with the image with global scope.

Halfword

A 16-bit unit of information. Contents are taken as being an unsigned integer unless otherwise stated.

Heap

The portion of computer memory that can be used for creating new variables.

Host

A computer which provides data and other services to another computer.

IDE

Integrated Development Environment (for example, the CodeWarrior IDE).

Image

An executable file which has been loaded onto a processor for execution.

A binary execution file loaded onto a processor and given a thread of execution. An image can have multiple threads. An image is related to the processor on which its default thread runs.

Inline

Functions that are repeated in code each time they are used rather than having a common subroutine. Assembler code placed within a C or C++ program.

See Also Output sections.

Interrupt

A change in the normal processing sequence of an application caused by, for example, an external signal.

Interworking

Producing an application that uses both ARM and Thumb code.

Library

A collection of assembler or compiler output objects grouped together into a single repository.

Linker

Software which produces a single image from one or more source assembler or compiler output objects.

Little-endian

Memory organization where the least significant byte of a word is at a lower address than the most significant byte.

Load view

The address of regions and sections when the image has been loaded into memory but has not yet started execution.

PIC

Position Independent Code.

See Also ROPI.

PID

Position Independent Data.

See Also RWPI.

Redirection

The process of sending default output to a different destination or receiving default input from a different source. This is commonly used to output text, that would otherwise be displayed on the computer screen, to a file.

Reentrancy

The ability of a subroutine to have more that one instance of the code active. Each instance of the subroutine call has its own copy of any required static data.

Remapping

Changing the address of physical memory or devices after the application has started executing. This is typically done to enable RAM to replace ROM after the initialization has been done.

Retargeting

The process of moving code designed for one execution environment to a new execution environment.

ROPI

Read Only Position Independent. Code and read-only data addresses can be changed at runtime.

RTOS

Real Time Operating System.

RWPI

Read Write Position Independent. Read/write data addresses can be changed at runtime.

Scatter-loading

Assigning the address and grouping of code and data sections individually rather than using single large blocks.

Scope

The accessibility of a function or variable at a particular point in the application code. Symbols which have global scope are always accessible. Symbols with local or private scope are only accessible to code in the same subroutine or object.

Semihosting

A mechanism whereby the target communicates I/O requests made in the application code to the host system, rather attempting to support the I/O itself.

Signal

An indication of abnormal processor operation.

Stack

The portion of memory that is used to record the return address of code that calls a subroutine. The stack can also be used for parameters and temporary variables.

SWI

Software Interrupt. An instruction that causes the processor to call a programer-specified subroutine. Used by ARM to handle semihosting.

Target

The actual target processor, (real or simulated), on which the target application is running.

The fundamental object in any debugging session. The basis of the debugging system. The environment in which the target software will run. It is essentially a collection of real or simulated processors.

Veneer

A small block of code used with subroutine calls when there is a requirement to change processor state or branch to an address that cannot be reached in the current processor state.

Volatile

Memory addresses where the contents can change independently of the executing application are described as volatile. These are typically memory-mapped peripherals.

See Also Memory mapped.

VFP

Vector Floating Point. A standard for floating-point coprocessors where several data values can be processed by a single instruction.

Word

A 32-bit unit of information. Contents are taken as being an unsigned integer unless otherwise stated.

ZI

Zero Initialized. R/W memory used to hold variables that do not have an initial value. The memory is normally set to zero on reset.

Copyright © 1999-2001 ARM Limited. All rights reserved.ARM DUI 0067D
Non-Confidential