text: Linux作業系統家族的基本元件如Linux核心、GNU C 函式庫、BusyBox，或其復刻如μClinux和uClibc，在程式設計時已經考慮了一定程度的抽象。此外，在組合語言或C語言原始碼中包含了不同的程式碼途徑，以支援特定的硬體。因此，原始碼可以在大量的計算機系統結構上成功編譯。此外，還開發了必需的自由及開放原始碼軟體，作為Linux和將要執行Linux的硬體之間的介面。例如，編譯器如GCC和LLVM/Clang。對交叉編譯來說，則有數個完整工具鏈，像GNU工具鏈、OpenWrt Buildroot或OpenEmbedded。Yocto計劃針對嵌入式應用案例。條目Linux核心的可移植性一節中包含了有關技術細節的資訊及參考。請注意，額外的元件，如顯示伺服器或程式，不一定適用以下所有平臺。根本上說，所有軟體都需要移植到執行該軟體的硬體上，即適用特定體系。在程式設計時抽象的程度決定了該軟體日後移植時所需要付出的努力。相關術語：移植目標中有計算機系統結構，包括指令集架構和微處理器的微架構。目標還包括整個系統的“系統設計”，無論是超級計算機、桌上型電腦還是某些系統晶片，如在某些情況下，使用的是獨一無二的匯流排。過去，記憶體控制器是在主機板晶片組的一部分，而不是在CPU晶粒上。儘管支援特定指令集是編譯器的任務，軟體在編寫時也需考慮一定程度的抽象，才能使移植成為可能。以組合語言寫成的任何程式碼都將限定於某一指令集。對特定微架構的支援包括最佳化CPU快取層次結構中的TLB等。發行.其它處理器受無MMU的變種μClinux支援。
metadata.dataset: erhwenkuo/wikipedia-zhtw
metadata.title: Linux支援的計算機系統結構列表
metadata.url: https://zh.wikipedia.org/wiki?curid=4522275