List of Linux-supported computer architectures. The basic components of the Linux family of operating systems, which are based on the Linux kernel, the GNU C Library,  BusyBox or forks thereof like μClinux and uClibc, have been programmed with a certain level of abstraction in mind. Also, there are distinct code paths in the assembly language or C source code which support certain hardware. Therefore, the source code can be successfully compiled onor cross-compiled fora great number of computer architectures.

Furthermore, the required free and open-source software has also been developed to interface between Linux and the hardware Linux is to be executed on.  For example, compilers are available, e.g. GNU Compiler Collection (GCC) and LLVM/Clang. For cross-compilation a number of complete toolchains are available, like GNU toolchain, OpenWrt Buildroot or OpenEmbedded. The Yocto Project is targeted at embedded use cases.

The portability section of the Linux kernel article contains information and references to technical details.

Note that further components like a windowing system, or programs like Blender, can be present or absent. Fundamentally any software has to be ported, i.e. specifically adapted, to any kind of hardware it is supposed to be executed on. The level of abstraction that has been kept in mind while programming that software in the first place dictates the necessary effort.

The relevant term is of the porting target is computer architecture; it comprises the instruction set(s) and the microarchitecture(s) of the processor(s), at least of the CPU. The target also comprises the "system design" of the entire system, be it a supercomputer, a desktop computer or some SoC, e.g. in case some unique bus is being used. In former times, the memory controller was part of the chipset on the motherboard and not on the CPU-die.

Although the support of a specific instruction set is the task of the compiler, the software must be written with a certain level of abstraction in mind to make this portability possible. Any code written in Assembly language will be specific to the instruction set.

The support of a specific microarchitecture includes optimizations for the CPU cache hierarchy, the TLB, etc.

Releases

 DEC Alpha (alpha)
 Intel (Altera) NIOS II ARM - nios2
 ARM family of instruction sets (32- and 64-bit) (arm and arm64):
 Acorn Archimedes and RiscPC series (original machines were supported in 2.6.22)
 Allwinner
 Apple A series processors
 Apple M series processors
 Broadcom VideoCore
 DEC StrongARM
 Samsung Exynos
 Marvell (formerly Intel) XScale
 Sharp Zaurus
 HiSilicon
 iPAQ
 Palm, Inc.'s Tungsten Handheld
 GamePark Holdings' GP2X
 Open Pandora
 MediaTek
 Nokia 770 Internet Tablet
 Nokia N800
 Nokia N810
 Nokia N900
 Nomadik
 NovaThor (discontinued)
 gumstix
 Sony Mylo
 Qualcomm Snapdragon
 Nvidia Tegra
 TI OMAP
 Psion 5, 5MX, Series 7, netBook
 Rockchip
 Some models of Apple iPods (via iPodLinux)
 OpenMoko Neo 1973, Neo FreeRunner
 Freescale's (formerly Motorola's) i.MX multimedia processors
 C-SKY
 Elbrus-8S
 Freescale's (formerly Motorola's) 68k architecture (68020, 68030, 68040, 68060) (m68k):
 Some Amigas: A1200, A2500, A3000, A4000
 Apple Macintosh II, LC, Quadra, Centris and early Performa series
Some Atari computers (TT and Falcon030)
 Qualcomm Hexagon (hexagon)
 Hewlett-Packard's PA-RISC (parisc)
 International Business Machines (IBM)
 System/390 (31-bit) (s390)
 z/Architecture (IBM Z and IBM LinuxONE) (64-bit) (s390x)
 x86 architecture (x86):
 IBM PC compatibles using IA-32 and x86-64 processors:
 Intel 80386 (dropped since 3.8), 80486, and their AMD, Cyrix, Texas Instruments and IBM variants
 The entire Pentium series and its Celeron and Xeon variants
 Intel Core processors
 AMD 5x86, K5, K6, Athlon (all 32-bit versions), Duron, Sempron
 x86-64: 64-bit processor architecture, now officially known as AMD64 (AMD) or Intel64 (Intel); supported by the Athlon 64, Opteron and Intel Core 2 processors, among others
 Cyrix 5x86, 6x86 (M1), 6x86MX and MediaGX (National/AMD Geode) series
 VIA Technologies Eden (Samuel II), VIA C3, and VIA C7 processors (all 32-bit) and VIA Nano (x86-64)
 Zhaoxin ZX-7000.
 Microsoft's Xbox (Pentium III processor), through the Xbox Linux project
 SGI Visual Workstation (Pentium II/III processor(s) with SGI chipset)
 PC-98NX (models from 1997 to 2000)
 FM Towns
 Sun Microsystems Sun386i workstation (80386 and 80486)
 Support for 8086, 8088, 80186, 80188 and 80286 CPUs is under development (the ELKS fork)
 MicroBlaze from Xilinx (microblaze)
 MIPS architecture (mips):
 Dingoo
 Infineon's Amazon & Danube Network Processors
 Ingenic Jz4740
 Loongson (MIPS-compatible), and models 2 and 2E, from BLX IC Design Ltd (China)
 Some PlayStation 2 models, through the PS2 Linux project
 PlayStation Portable uClinux 2.4.19 port
 Broadcom wireless chipsets
 Dreambox (HD models)
 Cavium Octeon packet processors
 OpenRISC (openrisc)
 OpenRISC 1000 family in the mainline Linux Kernel as of 3.1
 Beyond Semiconductor OR1200
 Beyond Semiconductor OR1210
 Power ISA:
 IBM Servers
 PowerPC architecture (powerpc):
 IBM's Cell
 Most pre-Intel Apple computers (all PCI-based Power Macintoshes, limited support for the older NuBus Power Macs)
 Clones of the PCI Power Mac marketed by Power Computing, UMAX and Motorola
 Amigas upgraded with a "Power-UP" card (such as the Blizzard or CyberStorm)
 AmigaOne motherboard from Eyetech Group Ltd (UK)
 Samantha from Soft3 (Italy)
 IBM RS/6000, AS/400 and pSeries systems
 Pegasos I and II boards from Genesi
 GameCube and Wii, through GameCube Linux
 Project BlackDog from Realm Systems, Inc.
 Sony PlayStation 3
 Microsoft's Xbox 360, through the free60 project
 V-Dragon CPU from Culturecom
 Virtex II Pro field-programmable gate array (FPGA) from Xilinx with PowerPC cores
 Dreambox (non-HD models)
 RISC-V (riscv)
 SPARC (sparc)
 SPARC (32-bit):
 LEON
 UltraSPARC (64-bit):
 Sun Ultra series
 Sun Blade
 Sun Fire
 SPARC Enterprise systems, also the based on the UltraSPARC T1, UltraSPARC T2, UltraSPARC T3, and UltraSPARC T4 processors
 Sunway
 SuperH (sh)
 Sega Dreamcast (SuperH SH4)
 HP Jornada 680 through Jlime distribution (SuperH SH3)
 Synopsys DesignWare ARC cores, originally developed by ARC International (arc)
 Xtensa from Tensilica
 Transmeta Crusoe

Additional processors (particularly Freescale's 68000 and ColdFire) are supported by the MMU-less μClinux variant.

Formerly supported

Dropped in 6.7 

 Intel IA-64 Itanium, Itanium II (ia64)

Dropped in 5.19 

 Renesas Technology H8 Family (h8300)

Dropped in 5.18 

 Andes Technology NDS32 (nd32)

Dropped in 5.12 

 Texas Instruments TMS320 (c6x)

Dropped in 5.9 

 UniCore32 (unicore32)

Dropped in 4.17 

 Analog Devices Blackfin (supported since 2.6.22) (blackfin)
 Axis Communications' ETRAX CRIS
 Fujitsu FR-V (frv)
 Imagination META
 S+core (score)
 Mitsubishi M32R (m32r)
 Panasonic Corporation MN103 (mn10300)
 Tilera

Dropped in 4.12 

  Atmel AVR32 (avr32)

Dropped in 3.5 
 SPARCstation/SPARCserver series (sun4m, sun4d) sun4c

Dropped in 2.6.27 
 Sun SPARC Sun-4

See also

 Comparison of operating system kernels
 Comparison of operating systems
 Embeddable Linux Kernel Subset
 User-mode Linux

References

External links

 BlueCat Linux Kernel Porting Guide

Portability and supported architectures