Platforms supported by the BPABI

The Base Platform Application Binary Interface (BPABI) defines three platform models based on the type of shared library:

Bare metal

The bare metal model is designed for an offline dynamic loader or a simple module loader. References between modules are resolved by the loader directly without any additional support structures.

DLL-like

The dynamically linked library (DLL) like model sacrifices transparency between the dynamic and static library in return for better load and run-time efficiency.

SysV

The System V (SysV) model masks the differences between dynamic and static libraries. ARM Linux uses this format.

Show/hideLinker support for the BPABI

The ARM linker supports all three BPABI models enabling you to link a collection of objects and libraries into a:

  • bare metal executable image

  • BPABI DLL or SysV shared object

  • BPABI or SysV executable file.

Show/hideLinker support for ARM Linux

The linker can generate SysV executables and shared libraries with all required data for ARM Linux. However, you must specify other command-line options and libraries in addition to the --shared or --sysv options.

If all the correct input options and libraries are specified, you can use the ELF file without any post-processing.

Show/hideSee also

Copyright © 2010-2011 ARM. All rights reserved.ARM DUI 0474C
Non-ConfidentialID080411