Linux 是一种开源操作系统,可在所有主流处理器架构(包括 ARM 处理器)上运行。它受到了大批致力于回馈开源项目的工程人员的支持(此过程类似于 FSF 提供的 GNU 工具)。这使 Linux 成为了一个极具活力且发展迅速的操作系统。
Linux 是一种开源操作系统,可在所有主流处理器架构(包括 ARM 处理器)上运行。它受到了大批致力于回馈开源项目的工程人员的支持(此过程类似于 FSF 提供的 GNU 工具)。这使 Linux 成为了一个极具活力且发展迅速的操作系统。ARM 为主要 Linux 内核提供 RealView® 开发平台和工具支持。其他选项卡包含在 ARM 处理器和 RealView 平台上运行 Linux 的内核映像、补丁和实用程序。Linux 是在带有内存管理单元 (MMU) 的处理器上运行的 Linux 版本。不带 MMU 的处理器可运行经过修改的 Linux 版本(称为 uClinux)。“uClinux”选项卡提供了特定 ARM 处理器的预置 uClinux 映像。
有关新 Linux 内核版本和新开发,请参阅 kernel.org。可使用公共 论坛查看有关 ARM 上的 Linux 开发的补丁和信息,此外,还可以访问以下 Wiki 站点上的链接。GNU GCC 编译器的源代码和二进制版本可从 Linaro 和讨论组获取。
创办
Linaro™ 公司的目的在于,联合开源社区和电子行业共同致力于关键项目,提供开源工具,减少系统碎片化,并为要使用的基于 Linux 的分发和堆栈提供共同平台。可从 Linaro 网站获取更多信息。
此外,ARM 还与开源社区、Linux 分销商以及 Linux 商业合作伙伴合作,其中包括:
ARM 不提供一般 Linux 支持,有关详细信息,请参阅以下 FAQ。
这些页面上提供的 3.3 Linux 内核补丁和映像可在支持以下 ARM 处理器的 ARM 开发板上使用:
以下组件支持这些平台:
平台\映像 | U-Boot | Linux 映像 |
|---|---|---|
| RealView* | RealView | RealView、config |
| Versatile Express | 使用随平台提供的引导 加载程序 | VExpress-v7、config |
可使用 mkImage 实用工具的副本来生成 U-Boot 映像。
应针对 Linux 3.3 内核源树使用 Patch-3.3.0-arm.gz (50Kb),以便生成本页提供的二进制内核映像。此补丁包含对在ARMv7 处理器上运行 Linux 内核的支持。
Versatile Express 内核映像可使用设备树结构来描述基础硬件平台。README 文件中所描述的 zImage 引导过程以及相应的设备树可从以下位置获得。另请注意,有关如何升级 Versatile Express 系统的信息,可从 ARM 技术支持知识文章获得。
此版本中提供的内核编译有 EABI 支持,并支持运行启用了 VFP 和 NEON 的基于 Thumb-2 的应用程序
此 Linux 内核包括对以下 Primecell 的支持:
本页上提供的可供下载的 U-Boot 二进制文件是根据以下源编译的。U-Boot 项目列表还包含补丁。
Linaro 开发人员和社区版本部分提供了文件系统映像。Linaro 提供了论坛,以供开发人员提出问题,并与 Linaro 以及更广泛的开发人员社区进行交流。
以下位置提供了有关 ARM 公共 GIT 知识库的信息。
这些映像是使用 Linaro 的 GCC 4.6.3 编译器生成的。
(*) 请注意,在 RealView PBX-A9 中,此板上并非所有内核都带有 NEON。当运行带有 NEON 的应用程序时,应检查这些应用程序在哪个 CPU 上运行。
构建上述二进制程序包所使用的源代码可依据 GNU 公共许可协议条款获取。在适用法律许可的范围内,本软件在提供时不做任何担保。本软件“按原样”提供,不提供任何明示或暗示的担保,包括有关商品适销性或针对特定目的的适用性的默示保证。
不带 MMU 的处理器可以运行名为 uClinux 的修改版 Linux,并可与 ARM 处理器(例如 ARM946E-S、ARM1156T2-S、Cortex-R4(F))结合使用。对于较新版本的 Linux 内核,若要运行此类配置,可以禁用 MMU。
请参见 www.uclinux.org 以获取更多信息、文档、邮件列表和其他资源以及其他 Linux 内核邮件列表。可以使用 BuildRoot 环境来生成文件系统映像。
构建上述二进制程序包所使用的源代码可依据 GNU 公共许可协议条款获取。在适用法律许可的范围内,本软件在提供时不做任何担保。本软件“按原样”提供,不提供任何明示或暗示的担保,包括有关商品适销性或针对特定目的的适用性的默示保证。
Android 是面向采用 Linux 内核和应用程序的移动设备的软件堆栈。Android SDK 提供使用 Java 编程语言在 Android 平台上开发应用程序所使用的工具和 API。Android 应用程序在其自己的进程中运行,并具有其自己的 Dalvik 虚拟机 (VM) 实例。Dalvik 是基于寄存器的虚拟机(而 JVM 是基于堆栈的虚拟机),它执行由类似 Java 的语言编译器编译的类。可使用 Android NDK(SDK 附带的工具),用原生代码来编写性能关键应用程序。ARM 软件支持博客部分包含有关如何在 ARM 平台上设置和运行 Android 的条目(请参见以下文章)。
本页包含如何使用 Linux 内核版本在 ARM RealView® 平台上构建和运行 Android 的信息和示例说明,可从 http://www.arm.com/linux 获取这些内核版本。GIT 版本控制系统和在 GIT 基础上构建的 Repo 工具均可用于操控源代码。
此外,ARM Android 解决方案中心 (SCA) 还向刚刚涉猎 Android 或 ARM 的开发人员新手提供了相关资源。
| 平台\映像 | U-Boot | Linux 内核映像 |
|---|---|---|
| Versatile Express | 使用随平台提供的引导加载程序 | VExpress-zImage*、config |
armdroid1 patch.gz 要应用于 3.3-rc7 vanilla 内核。
下面的映像是预先生成的(普通)3.3.0 Linux 内核,用于 Versatile Express 上带有相应 设备树 blob 的 Cortex-A9 处理器子板。
以下 Wiki 页面上提供了有关如何生成适用于 ARM RealView 平台的 Android 的详细说明,作为对新近博客文章的补充。
* 此页面上暂时没有提供通用 zImage 版本。
构建上述二进制程序包所使用的源代码可依据 GNU 公共许可协议条款获取。在适用法律许可的范围内,本软件在提供时不做任何担保。本软件“按原样”提供,不提供任何明示或暗示的担保,包括有关商品适销性或针对特定目的的适用性的默示保证。
ARM 致力于 GNU 编译器项目以跟踪 ARM 架构和 CPU 路线图的演变,并确保为 ARM 提供高质 GNU 工具链。
该工具链支持目前的所有 ARM 架构和处理器(包括 Thumb-2 指令集和 ARM 架构第 7 版),并计划支持将来的处理器和架构。
此工具链符合最新的 ARM 应用程序二进制接口,可与 ARM RealView Development Suite 或符合 ABI 的任何其他工具链一起使用。用户可以利用 ARM 提供的商用专业工具链的优化代码大小和性能以及使用开源工具生成的代码。
可以从以下位置访问 Linaro 的各种版本的 GNU GCC:
https://wiki.linaro.org/Cycles 每月会提供 GCC 预置二进制文件。