Linux 是在所有重要处理器架构(包括 ARM 处理器)上运行的开源操作系统。它受到了大批致力于回馈开源项目的工程人员的支持(此过程类似于 FSF 提供的 GNU 工具)。这使 Linux 成为了一个极具活力且发展迅速的操作系统。
Linux 是在所有重要处理器架构(包括 ARM 处理器)上运行的开源操作系统。它受到了大批致力于回馈开源项目的工程人员的支持(此过程类似于 FSF 提供的 GNU 工具)。这使 Linux 成为了一个极具活力且发展迅速的操作系统。有关新 Linux 内核版本和新开发,请参阅 kernel.org。可使用公共论坛查看有关 ARM 上的 Linux 开发的补丁和信息,此外,还可以访问以下 Wiki 站点上的链接。GNU GCC 编译器的源代码和二进制版本可从 CodeSourcery 和讨论组获取。
创办
Linaro™ 公司的目的是:联合开源社区和电子行业共同致力于关键项目,提供开源工具,消除隔阂并为要使用的基于 Linux 的分发版本和堆栈提供共同平台。可从 Linaro 网站获取更多信息。
此外,ARM 还与开源社区、Linux 分销商以及 Linux 商业合作伙伴合作,其中包括:
ARM 不提供一般 Linux 支持,有关详细信息,请参阅以下 FAQ。
本页提供的文件系统映像包括一系列已经过 ARM RealView® 平台测试的应用程序。可以使用在 www.linaro.org 上提供的信息和程序包生成更完整的文件系统。
这些页面上提供的 2.6 Linux 内核包括对以下处理器的支持:
下面提供的组件可支持上述平台:
平台\映像 | U-Boot | Linux 映像 |
|---|---|---|
| RealView Versatile PB926/AB926 | ||
RealView EB 和 PB | ||
RealView PB-A8 | ||
RealView PBX-A9** | ||
Versatile Express | Versatile Express | VExpress-v7-smp-thumb、config |
可从以下链接获取用于生成 U-Boot 映像的 mkImage 实用程序的副本。
应根据 kernel.org 2.6.35 内核源树使用 Patch-2.6.35-arm1.gz (187KB),以便生成本页提供的二进制内核映像。此补丁包含对在 ARMv7 处理器上运行 Thumb-2 状态的 Linux 内核的支持。
此版本中提供的内核编译有 EABI 支持,并支持运行基于 Thumb-2 的应用程序和处理 VFP 和 NEON 寄存器。
对于 Cortex-A15,请使用此单独的 Patch-2.6.35-lpae1.gz 来应用于存储 2.6.35 内核树以生成可使用 ARM 模拟模型运行的内核影像。还提供以下 uImage-2.6.35-lpae1-vexpress-a15-smp-thumb 内核预生成映像以及用于 ARM Versatile Express 模型的 config 文件。
Linux 内核包括对以下 Primecell 的支持:
本页上提供的可供下载的 U-Boot 二进制文件是根据以下源编译的。U-Boot 项目列表还包含补丁。
下面的映像可用于各 ARM 平台:
有关访问这些程序包的源代码的信息,请参阅 ARM Embedded Linux 存储库中的 README 文件。
上述映像使用 GCC 4.5.1 和 GNU libc 2.11 生成。有关用于 ARM 的 GNU GCC 工具的源代码和二进制分发版本的详细信息,请访问 www.codesourcery.com。
(**) 请注意,在 RealView PBX-A9 中,此板上并非所有内核都具有 NEON。当运行具有 NEON 的应用程序时,应检查执行这些应用程序所在的 CPU。预置 ARMv6 cramfs 应在此平台上正常运行。
构建上述二进制程序包所使用的源代码可依据 GNU 公共许可协议条款获取。在适用法律许可的范围内,本软件在提供时不做任何担保。本软件“按原样”提供,不提供任何明示或暗示的担保,包括有关商品适销性或针对特定目的的适用性的默示保证。
本页仅提供了 ARMv5T 以上的 ARM 处理器的预置映像。上面的处理器列表中带有星号 (*) 标记的 ARMv4 处理器的映像可根据源代码生成。
不带 MMU 的处理器可运行经过修改的 Linux 版本(称为 uClinux)。本页提供的文件系统映像和补丁包括对 uClinux 的支持,并包括一系列已经过 ARM RealView 平台测试的应用程序。这些文件系统映像和补丁适用于以下 ARM 处理器:
有关详细信息、文档、邮件列表及其他资源,请访问 www.uclinux.org。下表包含 ARM1156 和 Cortex-R4 的 ARM RealView 平台的预置 uClinux 映像。
平台\映像 | U-Boot | uClinux 内核映像 |
|---|---|---|
RealView |
Patch-2.6.35-arm1.gz (187 KB) 包含为生成二进制 uClinux 内核映像而对 2.6.35 内核源树所做的必要更改。这些内核映像使用 GNU GCC 4.3.2 生成。
下面的文件系统映像可与提供的 uClinux 内核映像一起使用:
uClinux 文件系统映像通过 BuildRoot 生成。
构建上述二进制程序包所使用的源代码可依据 GNU 公共许可协议条款获取。在适用法律许可的范围内,本软件在提供时不做任何担保。本软件“按原样”提供,不提供任何明示或暗示的担保,包括有关商品适销性或针对特定目的的适用性的默示保证。
Android 是面向采用 Linux 内核和应用程序的移动设备的软件堆栈。Android SDK 提供使用 Java 编程语言在 Android 平台上开发应用程序所使用的工具和 API。Android 应用程序在其自己的进程中运行,并具有其自己的 Dalvik 虚拟机 (VM) 实例。Dalvik 是基于寄存器的虚拟机(而 JVM 是基于堆栈的虚拟机),它执行由 Java 类似语言编译器编译的类。性能关键应用程序可使用 Android NDK(SDK 附带的工具)以本地代码编写(另请参阅下面的博客)。
本页包含如何使用 Linux 内核版本在 ARM RealView® 平台上构建和运行 Android 的信息和示例说明,可从 http://www.arm.com/linux 获取这些内核版本。GIT 版本控制系统和在 GIT 的基础上构建的 Repo 工具均用于操控源代码。
此外,ARM Android 解决方案中心 (SCA) 向不熟悉 Android 或 ARM 的开发人员提供了相关资源。
| 平台\映像 | U-Boot | Linux 内核映像 |
|---|---|---|
| RealView PB11-MP | RealView | PB11MP-uImage、config |
| RealView PB-A8 | RealView | PBA8-uImage、config |
| RealView PBX-A9 | RealView | PBX-uImage、config |
| Versatile Express | Versatile Express |
armdroid1 补丁要应用于 2.6.35 vanilla 内核。在以下 git repo 上也提供源树。
Linux-arm.org Wiki 页上提供了一系列有关如何构建用于 ARM RealView 平台的 Android 的详细说明。
构建上述二进制程序包所使用的源代码可依据 GNU 公共许可协议条款获取。在适用法律许可的范围内,本软件在提供时不做任何担保。本软件“按原样”提供,不提供任何明示或暗示的担保,包括有关商品适销性或针对特定目的的适用性的默示保证。
ARM 有助于 GNU 编译器项目,该项目跟踪 ARM 架构的发展,并确保为 ARM 提供高质 GNU 工具链。
该工具链支持目前的所有 ARM 架构和处理器(包括 Thumb-2 指令集和 ARM 架构第 7 版),并计划支持将来的处理器和架构。
该工具链符合最新的 ARM 应用程序二进制接口,因此可与 ARM RealView Development Suite 或符合 ABI 的任何其他工具链交互工作。用户可以配合使用 ARM 提供的商用、专业工具链的已优化代码大小与性能以及使用开源工具生成的代码。
可从 CodeSourcery 访问 GNU 编译器的源代码和预置版本,网址为:http://www.codesourcery.com/gnu_toolchains/arm