(つ`ω´)つ says to Ubuntu 台灣社群
核心:引入多核心(multikernel)架構支援 (★ 169 分) 這個補丁系列在 Linux 核心中引入「多核心」(multikernel)架構支援,透過 kexec(Linux 的重新開機載入機制)基礎架構,允許在同一部實體機器上同時載入並執行多個獨立核心映像,每個核心實例可綁定在特定 CPU 核心上運作,並共用底層硬體資源。作者指出,這種做法能提升不同工作負載之間的故障隔離度、加強核心層級的安全性、相比傳統虛擬機(如 KVM、Xen)更有效率地使用資源,並有機會透過 KHO(Kernel Hand Over,核心接管機制)達成零停機核心更新。 整體架構採用 kexec 的映像追蹤機制,並建立通用的 IPI(inter-processor interrupt,跨處理器中斷)通訊框架來協調多核心實例。x86 平台下加入了 SMP INIT trampoline 用於多核心啟動,以及專用的 MULTIKERNEL_VECTOR 做為核心間通訊通道;此外還新增 arch_cpu_physical_id() 以取得實體 CPU 識別,並將原本的靜態 kimage 結構改為動態鏈結串列,以支援同時載入多個核心映像;最後透過 /proc/multikernel 介面提供核心實例的監控與除錯功能。 此基礎框架主要作為概念驗證(proof of concept),作者在自有開發主機上以硬編碼開機參數與特定硬體進行測試,並強調現階段僅提供基本功能,希望社群能針對不同硬體平台、配置與應用場景進行更廣泛的驗證與優化。潛在應用包括在同一系統中並行運行即時核心與通用核心、隔離關鍵安全應用,以及為特定工作負載提供專屬核心實例等。 在 Hacker News 討論中,許多參與者將此構想與過往的多核心作業系統專案比較,如 Barrelfish OS、OpenVMS Galaxy 以及 IBM 的 LPAR(Logical Partition,邏輯分割)技術,並指出實務上若要共享裝置(例如 DMA、PCI 設備),仍需硬體層面支援如 SR-IOV(單根 I/O 虛擬化)或 IOMMU(I/O 記憶體管理單元)才能達成安全隔離與效能保障。部分評論提出,此方案假設所有載入核心都屬於可信賴範疇,並未提供跨核心的強隔離,對於硬體單一資源的擁有權移轉(如 PCI 列舉、ACPI 管理)也需要進一步設計;更有人建議,或可結合微核心架構(microkernel)或 Genode 平台,以便更靈活且安全地管理驅動程式與裝置資源。總體而言,社群對這項多核心架構抱持興趣,但同時認為在硬體支援與資源管理層面仍有諸多挑戰待克服。 👥 49 則討論、評論 💬 https://news.ycombinator.com/item?id=45302721