2.1. 支持的硬件

Debian 不会超出 Linux 内核与 GNU 工具集所支持的硬件范围之外。因此,任何被移植了 Linux 内核、libc、gcc 等,并拥有对应的 Debian 移植版的硬件体系或平台都可以运行 Debian。请参考移植页面 http://www.debian.org/ports/arm/ 以了解更多已被 Debian GNU/Linux 测试过的 32-bit soft-float ARM 体系。

本章仅包含一些通用的信息,以及在何处可以获得更多信息的指导,而不是试图列出支持 32-bit soft-float ARM 的所有不同硬件配置。

2.1.1. 支持的体系

Debian GNU/Linux 9 支持十种主要的体系和一些称为 flavors 的衍生品种。

体系 Debian 命名 子体系 Flavor
基于 Intel x86 i386 默认的 x86 机器 default
仅 Xen PV 域 xen
AMD64 & Intel 64 amd64    
ARM armel Marvell Kirkwood marvell
带 FPU 的 ARM armhf 多平台 armmp
64 位 ARM arm64    
MIPS(大尾端) mips MIPS Malta 4kc-malta
Cavium Octeon octeon
MIPS(小尾端) mips64el MIPS Malta 5kc-malta
Cavium Octeon octeon
龙芯 3 loongson-3
MIPS(小尾端) mipsel MIPS Malta 4kc-malta
Cavium Octeon octeon
龙芯 3 loongson-3
Power 系统 ppc64el IBM POWER8 或更新的机器  
64 位 IBM S/390 s390x 来自 VM-reader 和 DASD 的 IPL generic

本文档主要讲述的是 32-bit soft-float ARM 体系下的安装。如果您在寻找其他 Debian 所支持的体系的信息,请访问 Debian-Ports 网页。

2.1.2. 三种不同的 ARM 移植

ARM 架构随着时间的推移而发展,现代 ARM 处理器提供了旧型号上不可用的功能。因此,Debian 提供了三种 ARM 移植,可以为各种不同的机器提供最佳支持:

  • Debian/armel 针对旧的 32 位 ARM 处理器,而不支持硬件浮点单元(FPU),

  • Debian/armhf 仅适用于较新的 32 位 ARM 处理器,其至少实现了 ARMv7 架构,且支持 ARM 矢量浮点规范(VFPv3)第 3 版。此移植可利用这些型号上可用的扩展和性能增强功能。

  • Debian/arm64 适用于 64 位 ARM 处理器,其至少实现了 ARMv8 架构。

大多数的 ARM CPU 可以运行在(大尾或小尾)任一尾端模式下。但是当前绝大多少系统的实现都是使用小尾端模式。Debian 现在也仅支持小尾端 ARM 系统。

2.1.3. ARM CPU 设计的变化性和支持的复杂性

ARM 系统比基于 i386/amd64 的 PC 机更加多样,因此支持情况可能会非常复杂。

ARM 架构主要用于所谓的片上系统(SoC)设计。这些 SoC 由许多不同的公司设计,即使是对于系统工作所需的非常基本的功能,硬件组件变化也非常大。随着时间的推移,系统固件界面越来越标准化,但很多方面也发生了变化,尤其是对较旧的硬件固件/启动接口而言,所以在这些系统上,Linux 内核必须关注许多系统特定的低级问题,而在 PC 上这些问题则是由主板的 BIOS 负责解决。

在 Linux 内核开始支持 ARM 时,硬件种类的不同导致了要为每个 ARM 系统分别移植内核,而不是像在 PC 系统上到处适用的内核。由于此方法不能扩展到大量不同的系统,因此工作方向为使单个 ARM 内核可在不同的ARM系统上进行引导。现在,对较新 ARM 系统的支持都是以这种多平台内核的方式实现的,但对于一些旧系统,仍然需要单独的定制内核。正因如此,标准 Debian 发行版对这种较旧 ARM 系统,仅支持在特定种类上安装,而新系统则由 Debian/armhf 中的 ARM 多平台内核(称为 armmp)提供支持。

2.1.4. Debian/armel 支持的平台

以下平台由 Debian/armel 支持;它们需要特定于平台的内核。

Kirkwood

Kirkwood 是 Marvell 的片上系统芯片(SoC),它将 ARM CPU、以太网、SATA、USB 和其他功能集成到一个芯片中。Debian 目前支持以下基于 Kirkwood 的设备:

Orion5x

Orion 是 Marvell 的 SoC 产品,集成了 ARM CPU、Ethernet、SATA、USB,以及其他一些功能。市场上有很多 NAS 设备基于 Orion 芯片。Debian 目前支持以下几种基于 Orion 的设备:Buffalo KuroboxHP mv2120QNAP TS-109、TS-209、TS-409、TS-409U 及其变种

Versatile

Versatile 平台由 QEMU 模拟,如果您没有硬件设备,用它来测试运行在 ARM 上的 Debian 是一个不错的方法。

2.1.5. Debian/armel 不再支持平台和设备

IXP4xx

对英特尔 IXP4xx 平台的支持已于 Debian 9 中抛弃。Linksys NSLU2 设备基于 IXP4xx,因此不再受支持。

Orion5x

D-Link DNS-323 和 Conceptronic CH3SNAS 设备的支持已经从 Orion5x 平台中抛弃, Linux 内核不再适用于以上设备上的闪存。其他 Orion 设备仍然受支持,如 Buffalo Kurobox 和 HP mv2120。

2.1.6. 图形卡支持

Debian 能支持的显卡取决于底层的 X.Org's X11 的支持。流行的 PC 上,图形显示器通常工作地很好。至于高级的显卡功能,比如 3D 硬件加速或硬件视频加速是否可用,由系统所使用的具体显示硬件和所要安装的额外固件(firmware)决定(参阅第 2.2 节 “需要固件的设备”)。极个别的情况下使用基本的显示功能也需要安装额外的固件,但这是罕有的例子。

几乎所有 ARM 机器都内置了图形硬件,而不用额外插卡。有些机器有扩展插槽用于显卡,但这比较罕见。无头、无图像的硬件设计也很常见。虽然内核提供的基本帧缓冲显示在有图像的设备上应该都能工作,但快速 3D 绘图总是需要二进制驱动程序才能正常工作。情况正在迅速变化,但在发布 stretch 时,nouveau(Nvidia Tegra K1 SoC)和 freedreno(Qualcomm Snapdragon SoC)有自由的驱动程序可用。其他硬件需要第三方的非自由驱动程序。

对显卡和其他定点设备的具体支持情况,见 http://xorg.freedesktop.org/。Debian 9 包含 X.Org 7.7 版。

2.1.7. 网络连接硬件

几乎所有被 Linux 内核支持的网卡 (NIC) 都被安装系统支持;驱动程序通常会自动加载。

32-bit soft-float ARM 上,支持大多数内置的以太网设备,并提供额外的 PCI 和 USB 设备模块。

2.1.8. 外围设备与其他硬件

Linux 支持众多的硬件设备,比如:鼠标、打印机、扫描仪、PCMCIA 和 USB 设备。然而,在安装系统的时候,并不需要其中的大部分设备。