This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.
ARM websites use two types of cookie: (1) those that enable the site to function and perform as required; and (2) analytical cookies which anonymously track visitors only while using the site. If you are not happy with this use of these cookies please review our Privacy Policy to learn how they can be disabled. By disabling cookies some features of the site will not work.
Linux is an open source operating system running on all major processor architectures, including ARM processors. It enjoys support by a large group of engineers contributing back into the open source (similar process to the FSF's GNU tools).This makes Linux a very dynamic and fast moving operating system.
Complete scalable operating system providing a reliable multi-tasking environment
Based on an open source model (GPL)
Leverage a wide range of UNIX and open source applications
Early availability on ARM processor-based platforms
Used in many ARM technology-based designs including networking and wireless products
Broad support through open discussion forums
Linux Operating System Development
ARM contributes support for ARM Versatile™ Express development platforms and ARM Development Studio 5 (DS-5)™ to the main Linux kernel. The other tabs contain Linux kernel images, patches and utilities to run Linux on ARM processors and ARM Versatile™ platforms. Linux is the version of Linux running on processors with a Memory Management Unit (MMU). Processors without MMU can run a modified version of Linux called uClinux. The uClinux tab provides pre-built uClinux images for specific ARM processors.
Please refer to kernel.org for new versions of the Linux kernel and new developments. Public forums are available to review patches and information related to Linux development on ARM, links are also available from the following Wiki site .Source and binary versions of the GNU GCC compiler are available from Linaro as well as discussion groups.
Linaro™ is created as a company to bring together the open source community and the electronics industry to jointly work on key projects, deliver open source tools, reduce fragmentation and provide common foundations for Linux based distributions and stacks to work with. More information is available from the Linaro website.
Additionally, ARM works with the open source community and Linux distributions as well as commercial Linux partners including:
Linux kernel support for AArch64 has now been pulled into the Linux 3.7 kernel version. Instructions on how to run Linux on ARMv8 model are available from Linaro ARMv8 engineering wiki page.
GCC AArch64 pre-built cross-compiler is available from Linaro from the location above.
ARMv7 support for Linux
Linaro's website contains considerable resources to enable developers to build and run Linux on ARM development platforms. In addition, the following FAQ provides detailed information on how to use Linaro images on ARM Development Boards.
Versatile Express kernel images now use Device Tree structures to describe the underlying hardware platform. For example, the boot process for zImage described in the README file with respective Device Trees are available from the following location. Some information about how to upgrade Versatile Express systems is available from ARM Technical Support Knowledge Articles.
The upstream Linux kernel includes support for the following Primecells:
Information about ARM public GIT repositories is available at the following location.
Licensing
The source code used to build these binary packages is available under the terms of the GNU Public License. This software is provided with NO WARRANTY, to the extent permitted by applicable law. The software is provided "as is" without warranty of any kind, either expressed or implied, including the implied warranties of merchantability or fitness for a particular purpose.
Overview
Processors without an MMU can run a modified version of Linux called uClinux and can be used with ARM processors such as ARM946E-S, ARM1156T2-S, Cortex-R4(F). Later versions of the Linux kernel can be configured with MMU off to run for such configurations.
Please refer to www.uclinux.org for more information, documentation, mailing lists and additional resources in addition to other Linux kernel mailing lists. Filesystem images can be produced using BuildRoot environment.
Licensing
The source code used to build these binary packages is available under the terms of the GNU Public License. This software is provided with NO WARRANTY, to the extent permitted by applicable law. The software is provided "as is" without warranty of any kind, either expressed or implied, including the implied warranties of merchantability or fitness for a particular purpose.
Overview
Android is a software stack for mobile devices using the Linux kernel and applications. The Android SDK provides the tools and APIs to develop applications on Android platforms using the Java programming language. Android applications run in their own process with their own instance of the Dalvik Virtual Machine (VM). Dalvik is a register-based virtual machine (as opposed to JVM which is a stack-based virtual machine) and executes classes compiled by a Java-like language compiler. Performance-critical applications can be written in native code using the Android NDK, which is a companion tool to the SDK. ARM software enablement blog section includes entries on how to setup and run Android on ARM platforms (see the following article).
This page includes information and sample instructions on how to build and run Android on ARM Development Boards using Linux kernel versions available from http://www.arm.com/linux. Both GIT version-control system and the Repo tool built on top of GIT, used to manipulate the source code.
* There is no generic zImage build available on this page at this point.
Licensing
The source code used to build these binary packages is available under the terms of the GNU Public License. This software is provided with NO WARRANTY, to the extent permitted by applicable law. The software is provided "as is" without warranty of any kind, either expressed or implied, including the implied warranties of merchantability or fitness for a particular purpose.
Other ARM products suitable for use with Linux include:
ARM contributes to the GNU compiler project to track the evolution of the ARM architecture and CPU roadmap, to ensure availability of a high-quality GNU toolchain for ARM.
This toolchain supports all current ARM architectures and processors (including the Thumb-2 instruction set and ARM Architecture v7) with a roadmap to support future processors and architectures.
The toolchain complies with the latest ARM Application Binary Interface, and interworks with ARM DS-5 Tools or any other ABI-compliant toolchain. Users can take advantage of the optimized codesize and performance of a commercial, professional toolchain from ARM together with code built using Open Source tools.
Versions of the GNU GCC compiler can be accessed from Linaro at the following locations: