基於 ROM 的 x86 系統:嵌入式計算的被遺忘時代

BigGo Editorial Team
基於 ROM 的 x86 系統:嵌入式計算的被遺忘時代

最近圍繞 ELKS(嵌入式 Linux 核心子集)的討論引發了人們對基於 ROM 的 x86 系統的關注,揭示了計算歷史中一個引人入勝卻常被忽視的篇章。雖然許多人將 x86 處理器主要與個人計算機聯絡在一起,但這些晶片在嵌入式系統和基於 ROM 的應用中也有著豐富的歷史。

ELKS 系統要求:

  • 最低記憶體: 256K
  • 推薦記憶體: 512K
  • 基於 ROM 的配置:128K 記憶體
  • 支援的架構: 8086 、 8088 、 80188 、 80186 、 80286 、 NEC V20 、 V30

基於 ROM 的 x86 系統世界

基於 ROM 的 x86 系統比人們想象的更為普遍。從帶有 ROM 中 DOS 系統的 Tandy 計算機到專用工業控制器,這些系統展現出了非凡的多功能性。直接從 ROM 執行程式碼而無需先將其載入到 RAM 中的能力,使這些系統在特定應用中特別高效。著名的例子包括 IBM 的 PS/1 系列、各種帶有 DeskMate 圖形介面的 Tandy PC 相容機,以及眾多在 ROM 中預裝了 DOS 和 Windows 的 HP 和 Zenith 筆記型電腦。

值得注意的基於 ROM 的 x86 系統:

  • Tandy 1000 系列,搭載 ROM 中的 DOS 2.11
  • IBM PS/1,搭載 PC-DOS 和圖形介面
  • HP/GRiD/Zenith 筆記型電腦,搭載 ROM 中的 DOS/Windows
  • 帶有 ISA 卡的工業控制系統
  • 使用 80186 控制器的早期 Apple 印表機

技術實現和優勢

基於 ROM 的系統為嵌入式應用提供了獨特的優勢。雖然現代系統通常從儲存器將作業系統載入到 RAM 中,但基於 ROM 的系統可以直接從非易失性儲存器執行程式碼。這種方法在直到2000年代中期的嵌入式裝置和工業控制系統中特別常見,其中 NOR 快閃記憶體提供了原地執行的功能。

「根檔案系統僅在刷寫新的作業系統映象時才會被寫入,而永續性設定則儲存在小型 NVRAM 區域中。」

現代應用和遺產

今天的嵌入式系統已經很大程度上摒棄了純粹的基於 ROM 的架構,但這一概念以修改後的形式繼續存在。許多現代路由器和嵌入式裝置仍然使用只讀根檔案系統執行,並配備小型 RAM 磁碟用於臨時儲存。ELKS 專案延續了這一遺產,支援可在僅 128K RAM 中執行的基於 ROM 的系統,使其既適用於歷史硬體也適用於現代嵌入式應用。

這張圖片展示了一個過去的遊戲介面,展示了像 ELKS 這樣的基於 ROM 系統的功能,展示了它們如何能在最小資源下執行,類似於早期的嵌入式裝置。
這張圖片展示了一個過去的遊戲介面,展示了像 ELKS 這樣的基於 ROM 系統的功能,展示了它們如何能在最小資源下執行,類似於早期的嵌入式裝置。

演進的經濟學

從基於 ROM 的系統轉型並非僅僅是因為技術進步。支援生態系統、現有軟體基礎和認證要求在硬體選擇決策中發揮了關鍵作用。雖然現代32位 RISC-V 晶片的製造成本可能低於傳統8位處理器,但完整的經濟圖景包括了超出單純元件成本的因素,如現有基礎設施和開發工具。

這種對基於 ROM 的 x86 系統的歷史視角,為我們理解嵌入式計算的演進提供了寶貴的見解,並繼續影響著現代系統設計原則。

參考資料:Embedded Linux Kernel Subset - Linux for 8086