2.1. 지원하는 하드웨어

데비안은 Linux 및 kFreeBSD 커널과 GNU 툴셋을 쓰는데 필요한 것 외에는 특별한 하드웨어를 요구하지 않습니다. 그러므로 Linux 및 kFreeBSD 커널, libc, gcc등이 포팅되어 있고, 데비안 포팅이 존재하면 아키텍처나 플랫폼에서 데비안을 작동시킬 수 있습니다. 이미 데비안 GNU/리눅스에서 테스트되는 32-bit soft-float ARM 아키텍처 시스템의 자세한 내용은 http://www.debian.org/ports/arm/에있는 포팅 페이지를 참조하십시오.

여기서는 32-bit soft-float ARM 아키텍처에서 지원하는 여러가지 하드웨어를 모두 설명하지는 않고, 일반적인 정보만 설명한 다음 추가 정보가 들어 있는 웹사이트를 안내해 놓았습니다.

2.1.1. 지원하는 아키텍처

데비안 GNU/리눅스 8 릴리스는 8개의 주요 아키텍처와 기종이라는 각 아키텍처 변형을 지원합니다.

아키텍처 데비안의 명칭 서브 아키텍처 기종
인텔 x86 기반 i386    
AMD64 및 인텔 64 amd64    
ARM armel 인텔 IXP4xx ixp4xx
Marvell Kirkwood kirkwood
Marvell Orion orion5x
Versatile versatile
ARM, 하드웨어 FPU 포함 armhf 멀티플랫폼 armmp
LPAE 가능 시스템에 대한 멀티플랫폼 armmp-lpae
64비트 ARM arm64    
MIPS (빅 엔디안) mips SGI IP22 (Indy/Indigo 2) r4k-ip22
SGI IP32 (O2) r5k-ip32
MIPS Malta (32비트) 4kc-malta
MIPS Malta (64비트) 5kc-malta
MIPS (리틀 엔디안) mipsel MIPS Malta (32비트) 4kc-malta
MIPS Malta (64비트) 5kc-malta
IBM/모토로라 PowerPC powerpc 파워맥 pmac
PReP prep
Power Systems ppc64el IBM POWER8 또는 그 이후 시스템  
64비트 IBM S/390 s390x VM-reader 및 DASD에서 IPL generic

이 문서는 Linux커널을 이용한 32-bit soft-float ARM 아키텍처에서의 설치를 다루고 있습니다. 데비안이 지원하는 다른 아키텍처에 관한 정보를 찾고있다면, 데비안 포팅 페이지를 참조하십시오.

2.1.2. 3가지 ARM 포트

ARM 아키텍쳐는 발전해 왔고 현대적인 ARM 프로세서는 과거 모델에 없는 기능이 들어 있습니다. 그러므로 데비안에서는 다음 3가지 ARM 포트를 통해 여러가지 종류의 시스템을 최대한 지원합니다:

  • 데비안/armel은 오래된 32비트 ARM 프로세서로 하드웨어 부동 소수점 기능(FPU)이 없는 프로세서이고,

  • 데비안/armhf는 최소한 ARMv7 아키텍쳐를 구현하고 ARM vector floating point specification의 버전3를(VFPv3) 구현한 최근의 ARM 프로세서에서만 동작합니다. 이 모델의 프로세서에 들어 있는 확장된 기능을 사용하므로 성능이 높습니다.

  • 데비안/arm64는 최소한 ARMv8 아키텍쳐를 구현한 64비트 ARM 프로세서입니다.

현재 사용 가능한 ARM CPU는 빅이든 리틀이든 둘 중 하나의 엔디안에서 동작하지만, 실제로 대부분은 리틀 엔디안에서 동작합니다. 데비안/arm64, 데비안/armhf, 데비안/armel도 리틀 엔디안 시스템만 지원합니다.

2.1.3. ARM CPU 설계의 다양함과 복잡한 지원

ARM 시스템은 i386/amd64 기반 PC 아키텍쳐보다 하드웨어가 훨씬 더 다른 점이 많습니다. 그러므로 지원에 복잡한 부분이 많이 있습니다.

ARM 아키텍쳐는 시스템온칩(SoC, system on chip)에서 주로 사용합니다. 이 SoC는 여러 회사에서 여러가지 종류의 하드웨어를 집어넣도록 설계하고, 이 중에는 시스템이 부팅할 때 필요한 아주 기본적인 하드웨어도 있습니다. 시스템 펌웨어 인터페이스는 날이 갈수록 표준화가 되었지만, 특히 오래 된 하드웨어의 경우 펌웨어/부팅 인터페이스가 아주 많이 다릅니다. 그래서 이러한 시스템에서는 여러가지 시스템 수준의 저수준 문제를 (PC에서처럼 메인보드의 BIOS가 처리하는 게 아니라) 리눅스 커널에서 해결해야 합니다.

리눅스 커널에서 ARM을 지원하기 시작할 때는, 이 하드웨어 다양성 문제 때문에 PC에서처럼 만능 커널을 쓸 수 없고 각 ARM 시스템마다 별도의 커널이 필요했습니다. 이런 방식으로는 여러 종류의 시스템에 대응할 수 없기 때문에 여러 ARM 시스템에서 동작할 수 있는 단일 ARM 커널을 사용하는 작업이 되었습니다. 최근의 ARM 시스템에서는 그러한 멀티플랫폼 커널을 사용할 수 있게 지원하지만, 오래된 시스템에서는 아직도 별도의 전용 커널이 필요합니다. 이런 이유로 표준 데비안 배포판은 지정된 몇 개의 오래된 ARM 시스템과 최근 멀티플랫폼('armmp'라고 부르는) 커널이 지원하는 최근 시스템만 데비안/armhf에서 지원합니다.

2.1.4. Debian/armel이 지원하는 플랫폼

다음 플랫폼을 데비안/armel이 지원합니다. 플랫폼마다 전용 커널이 필요합니다.

IXP4xx

인텔 IXP4xx 프로세서 시리즈는 링크시스 NSLU2와 같은 NAS (Network Attached Storage) 장치에 널리 사용됩니다.

데비안 8에서 이 플랫폼에 대한 커널 지원이 있었지만, debian-installer에서 지원하지 않습니다. 이미 설치된 상태의 데비안 7에서 데비안 8로 dist-upgrade를 하면 가능할 수도 있습니다. IXP4xx 기반 시스템이 보통 그렇듯이 RAM이 작기 때문에 업그레이드하기 전에 스왑 공간이 필요합니다. IXP4xx 플랫폼 지원은 데비안 9에서 완전히 중지될 예정입니다.

Kirkwood

Kirkwood는 Marvell 만든 SoC(System on a Chip)에서 ARM CPU, 이더넷, SATA, USB 등의 기능을 하나의 칩에 통합되어 있습니다. 데비안은 현재 다음 Kirkwood 기반 장치를 지원합니다: OpenRD (OpenRD-Base, OpenRD-Client, OpenRD-Ultimate), plug computer(SheevaPlug, GuruPlug, DreamPlug), QNAP Turbo Station(모든 TS-11x, TS-21x, TS-41x 모델), LaCie NAS(Network Space v2, Network Space Max v2, Internet Space v2, d2 Network v2, 2Big Network v2, 5Big Network v2)입니다.

Orion5x

Orion은 Marvell에서 만든 SoC(System on a Chip)로 ARM CPU, 이더넷, SATA, USB 등의 기능을 한 개의 칩에 포함하고 있습니다. 시장에 Orion 칩을 이용한 NAS(Network Attached Storage) 장비가 많이 있습니다. 데비안은 다음 Orion 기반 장치를 지원합니다: Buffalo Kurobox, D-Link DNS-323, HP mv2120.

Versatile

Versatile 플랫폼은 QEMU가 에뮬레이션하고 있으며, 따라서 실제 하드웨어가 없어도 ARM에서 데비안을 테스트할 수 있는 좋은 방법입니다.

2.1.5. 이제 Debian/armel이 지원하지 않는 플랫폼

IOP32x

인텔의 I/O 프로세서(IOP) 제품군은 데이터 스토리지 및 데이터 처리에 사용하는 제품입니다. IO-Data의 GLAN TankThecus N2100이 여기 해당합니다. 데비안은 IOP32x 플랫폼을 데비안 버전 7에서 지원했지만, 버전 8부터는 지원하지 않습니다. 이 플랫폼의 하드웨어 제약 때문에 최근 데비안 릴리스 설치가 부적합하기 때문입니다.

MV78xx0

MV78xx0 플랫폼은 Marvell DB-78xx0-BP 개발 보드에 사용됩니다. 데비안 버전 7에서는 플랫폼 전용 (리눅스 커널 3.2 버전 기반) 커널을 사용해서 지원했지만, 데비안 8 이후는 이제 지원하지 않습니다.

2.1.6. 그래픽 하드웨어 지원

데비안의 그래픽 장치 지원은 내부에 있는 X.Org의 X11 시스템과 커널이 얼마나 지원하느냐에 달려 있습니다. 데스크톱 환경은 X11을 사용하지만 기본적인 프레임버퍼 그래픽은 커널에 들어 있습니다. 3D 하드웨어 가속이나 동영상 가속 같은 기능이 있는 고급 그래픽 기능을 사용할 수 있느냐 여부는, 시스템의 실제 그래픽 하드웨어 및 필요에 따라 추가 펌웨어 이미지의 설치에 따라(2.2절. “펌웨어가 필요한 장치” 참고) 달라집니다.

거의 모든 ARM 시스템에서는 그래픽 하드웨어를 별도 카드로 연결할 필요 없이 내장되어 있습니다. 일부 시스템에서는 그래픽 카드를 연결할 수 있는 확장 슬롯이 있지만 드문 경우입니다. 헤드리스 시스템의 경우 그래픽이 아예 없는 경우도 흔합니다. 기본적인 프레임버퍼 비디오는 그래픽이 있는 모든 장치에서 동작하지만, 3D 그래픽 가속은 변함없이 바이너리 드라이버가 필요합니다. 이러한 상황은 빠르게 개선되고 있지만, jessie 릴리스 시점에서 nouveau (엔비디아 테그라 K1 SoC) 및 freedreno (퀄컴 스냅드래곤 SoC) 드라이버만 릴리스에 들어 있습니다. 기타 하드웨어는 자유소프트웨어가 아닌 드라이버가 별도로 필요합니다.

지원하는 그래픽 하드웨어와 포인팅 장치에 대한 자세한 내용은 http://xorg.freedesktop.org/를 참조하십시오. 또 데비안 8는 X.Org 7.7 버전이 들어 있습니다.

2.1.7. 네트워크 연결 하드웨어

Linux 커널이 지원하는 네트워크 인터페이스 카드(NIC)는 모두 설치 시스템에서도 지원합니다. 드라이버 모듈은 일반적으로 자동으로 로드됩니다.

대부분의 내장 이더넷 장치를 지원하고 일부 PCI 및 USB 장치에 대해서는 모듈이 들어 있습니다.

2.1.8. 주변 장치 및 기타 하드웨어

Linux는 마우스, 프린터, 스캐너, PCMCIA/CardBus/ExpressCard 및 USB 장치와 같은 다양한 하드웨어에 폭넓게 대응하고 있습니다. 하지만 시스템을 설치할 때 이 장치가 필요하지는 않습니다.