Ile architektur procesorów obsługuje najnowsze jądro Linux?

Jądro Linuxa jest rozwijane przez społeczność Open Source, co oznacza, że może być dostosowane do wielu architektur sprzętowych. Dzięki temu może działać na różnych urządzeniach, od prostych mikrokontrolerów po duże serwery. Od malych wbudowanych urządzeń przenośnych, medycznych, kosmicznych skomplikowanych maszyn po autoskalujące się klastry obliczeniowe. To jest potężna zaleta jądra Linuxa, dzięki której nigdy nie przestaniesz lubić tego wspaniałego wynalazku 🙂

Oto lista architektur, które obsługuje najnowsze jądro Linuxa:

  • x86 (32-bit)
  • x86_64 (64-bit)
  • ARM
  • ARM64
  • PowerPC
  • MIPS
  • SuperH
  • IBM System z (s390x)
  • ARC
  • Atmel AVR32
  • Blackfin
  • MicroBlaze
  • Nios II
  • OpenRISC
  • RISC-V
  • SPARC
  • Unicore32
  • Xtensa
  • PA-RISC
  • m68k

Oto skrócony opis techniczny najpopularnieszych dwudziestu wymienionych architektur procesorów obsługiwanych przez najnowsze jądro Linuxa:

  1. x86 (32-bit) – popularna architektura procesorów dla komputerów osobistych RISC (ang. Reduced Instruction Set Computer) i serwerów CISC (ang. Complex Instruction Set Computer). Zapoczątkowana przez i wstecznie zgodna z 16-bitowym procesorem 8086, który z kolei wywodził się z 8-bitowego układu 8085. Nazwa architektury pochodzi od nazw pierwszych modeli z tego typu, których numery kończyły się liczbą 86. Obecnie architektury x86 dominują na rynku komputerów PC i serwerów.
  2. x86_64 (64-bit) – rozszerzenie architektury x86, które wprowadziło 64-bitowe adresowanie pamięci. Jest ona rozszerzeniem architektury x86 głównie o 64-bitowe rozkazy oraz rejestry. Umożliwia także bezpośrednie wykonywanie 16- i 32-bitowego kodu x86.
  3. ARM – popularna architektura procesorów dla urządzeń mobilnych, takich jak smartfony i tablety. Różne wersje rdzeni ARM są szeroko stosowane w systemach wbudowanych i systemach o niskim poborze mocy, ze względu na ich energooszczędną architekturę. Procesory z architekturą ARM są jednymi z najczęściej stosowanych procesorów na świecie. Używa się ich między innymi w dyskach twardychtelefonach komórkowychrouterachkalkulatorach, a nawet w zabawkach dziecięcych.
  4. ARM64 – rozszerzenie architektury ARM, które wprowadziło 64-bitowe adresowanie pamięci.
  5. PowerPC – architektura RISC procesorów wykorzystywana głównie w systemach wbudowanych, superkomputerach i serwerach. Pierwsze komputery Amiga bazowały na tej architekturze.
  6. MIPS – architektura procesorów MIPS (ang. Microprocessor without Interlocked Piped Stages) używana w systemach wbudowanych, routerach i urządzenia sieciowych.
  7. SuperH – architektura procesorów stosowana w systemach wbudowanych, urządzeniach mobilnych i elektronice samochodowej. Architekrtura ta zwana w skórcie SH, była używana w napędach CD, sprzęcie AGD. Przykładowo SH w wersji 2 był zastosowany w konsoli Sega Saturn, SH4 w Sega Dreamcast.
  8. IBM System z (s390x) – architektura procesorów stosowana w systemach IBM mainframe.
  9. ARC – architektura procesorów graficznych. Jest nazwą handlową dla kart graficznych ARC z rodziny Alchemist.
  10. Atmel AVR32 – architektura procesorów 32-bitowych stosowana w systemach wbudowanych i urządzeniach przenośnych, mikrokoputerach. Układy scalone z serii AVR32 mają prefiks AT32… i oferują zestaw instrukcji RISC z rozszerzeniami instrukcji typowimi dla procesorów DSP. Rzadko spotykane, ale stosowane w przemyśle.
  11. Blackfin – to rodzina 16-/32-bitowych mikroprocesorów opracowanych, produkowanych i sprzedawanych przez Analog Devices. Procesory mają wbudowaną funkcję stałoprzecinkowego cyfrowego procesora sygnałowego (DSP) dostarczaną przez 16-bitowe układy mnożenia (MAC), któremu towarzyszy mikrokontroler na chipie. Został zaprojektowany z myślą o ujednoliconej architekturze procesorów o niskim poborze mocy, która może obsługiwać systemy operacyjne, jednocześnie obsługując złożone zadania numeryczne, takie jak kodowanie wideo H.264 w czasie rzeczywistym.
  12. Microblaze – jest mikroprocesorem programowym (ang. soft core) dedykowanym na struktury typu FPGA (układy reprogramowalne sprzętowo, czyli takie dzięki którym można wykonać dowolne urządzenie w technice cyfrowej: sekwencyjno-kombinatoryczne, w tym procesory).
  13. Nios II – to 32-bitowa architektura wbudowanego procesora zaprojektowana specjalnie dla rodziny Altera układów scalonych z programowalną przez użytkownika macierzą bramek (FPGA). Nios II zawiera wiele ulepszeń w stosunku do oryginalnej architektury Nios, dzięki czemu jest bardziej odpowiedni dla szerszego zakresu wbudowanych aplikacji komputerowych, od cyfrowego przetwarzania sygnału (DSP) po sterowanie systemem.
  14. OpenRISC – to projekt mający na celu opracowanie serii jednostek centralnych (CPU) opartych na sprzęcie typu open source na ustalonych zasadach komputera o zredukowanym zestawie instrukcji (RISC). Obejmuje architekturę zestawu instrukcji (ISA) wykorzystującą licencję typu open source. Jest to autorski flagowy projekt społeczności OpenCores.
  15. RISC-V – otwarty model programowy procesora (ISA) oparty o zasady RISC. W kontraście do większości ISA, RISC-V może być swobodnie używany w dowolnym celu, umożliwiając każdemu projektowanie, produkcję i sprzedaż czipów i oprogramowania RISC-V. Chociaż nie jest pierwszą otwartą architekturą ISA[1] ma duże znaczenie, ponieważ został zaprojektowany z myślą o nowoczesnych skomputeryzowanych urządzeniach, takich jak ogromne chmury obliczeniowe, wysokiej klasy telefony komórkowe i najmniejsze systemy wbudowane. Takie zastosowania wymagają zarówno wydajności, jak i efektywności energetycznej. Zestaw instrukcji zawiera również znaczną ilość oprogramowania wspomagającego, które pozwala uniknąć słabości nowych zestawów instrukcji.
  16. SPARC – określa 32-bitowy (SPARC version 8) oraz 64-bitowy (SPARC version 9) model programowy mikroprocesora (ang. ISA – Instruction Set Architecture) oraz zawiera wskazówki pomagające w implementacji tej architektury. SPARC jest otwartą architekturą (zgodnie z dawną definicją otwartości – przyp. autora), oznacza to, że dostępna jest publicznie cała dokumentacja opisująca ISA oraz wskazówki dla osób lub firm implementujących. Dodatkowo firmy będące członkami organizacji SPARC mają wpływ na rozwój tej architektury oraz prawo do używania znaków handlowych. Dostępna jest także otwarta implementacja – na licencji GNU LGPL, kod w języku VHDL – procesora o nazwie LEON.
  17. Unicore32 – Unicore to nazwa architektury zestawu instrukcji komputerowych zaprojektowanej przez Centrum Badań i Rozwoju Mikroprocesorów (MPRC) Uniwersytetu Pekińskiego w ChRL. Komputer zbudowany na tej architekturze nosi nazwę Unity-863. Procesor jest zintegrowany z w pełni funkcjonalnym SoC, aby stworzyć system podobny do komputera PC.
  18. Xtensa – Tensilica była firmą z siedzibą w Dolinie Krzemowej, zajmującą się podstawową działalnością związaną z własnością intelektualną półprzewodników. Jest teraz częścią Cadence Design Systems. Tensilica jest znana z konfigurowalnego rdzenia mikroprocesora Xtensa. Inne produkty to: HiFi audio/voice DSP (cyfrowe procesory sygnału) z biblioteką oprogramowania zawierającą ponad 225 kodeków firmy Cadence i ponad 100 partnerów programowych; Wizyjne procesory DSP obsługujące złożone algorytmy obrazowania, wideo, wizji komputerowej i sieci neuronowych; oraz rodzina procesorów DSP pasma podstawowego ConnX, od ConnX D2 z dwoma MAC do 64-MAC ConnX BBE64EP.
  19. PA-RISC – to architektura zestawu instrukcji (ISA) opracowana przez firmę Hewlett-Packard. Jak sama nazwa wskazuje, jest to architektura komputera o zredukowanym zestawie instrukcji (RISC), gdzie PA oznacza architekturę precyzyjną. Projekt jest również określany jako HP/PA dla Hewlett Packard Precision Architecture.
  20. m68k – seria Motorola 68000 (znana również jako 680×0, m68000, m68k lub 68k) to rodzina 32-bitowych mikroprocesorów komputerowych o złożonym zestawie instrukcji (CISC). W latach 80. i wczesnych 90. były popularne w komputerach osobistych i stacjach roboczych i były głównymi konkurentami mikroprocesorów x86 firmy Intel. Najbardziej znane były jako procesory używane we wczesnych Apple Macintosh, Sharp X68000, Commodore Amiga, Sinclair QL, Atari ST, Sega Genesis (Mega Drive), Capcom System I (Arcade), AT&T UNIX PC , Tandy Model 16/16B/6000, Sun Microsystems Sun-1, Sun-2 i Sun-3, NeXT Computer, NeXTcube, NeXTstation i NeXTcube Turbo, kalkulatory Texas Instruments TI-89/TI-92, Palm Pilot (wszystkie modele z systemem Palm OS 4.x lub starszym) oraz prom kosmiczny. Chociaż żadne nowoczesne komputery stacjonarne nie są oparte na procesorach z serii 680×0, procesory pochodne są nadal szeroko stosowane w systemach wbudowanych.

About the author