近日,Linux 內核社區迎來了一項頗具創新性的設計提案——Parker。該方案由字節跳動工程師 Thom Hughes 提出,全稱為“PARtitioned KERnel”,旨在通過一種全新的架構實現多個 Linux 內核在同一臺物理服務器上并行運行,且無需依賴 KVM 等傳統虛擬化技術。
Parker 的核心思路在于通過硬件資源劃分實現多內核共存。具體而言,系統啟動時由“啟動內核”(Boot Kernel)首先接管硬件,對 CPU 核心、內存區域及 I/O 設備進行劃分。隨后,這些資源被分配給獨立的“應用內核”(Application Kernels),每個內核可獨立管理分配給自己的資源,彼此之間無直接通信。這種設計理論上在高核心數服務器上具備更好的可擴展性。
從技術實現層面看,Parker 通過 kernfs 接口暴露資源,并利用 kexec 技術將次級內核鏡像熱加載至預留內存。在此過程中,Boot Kernel 需提前下線部分 CPU、預留內存并分離設備,以確保各分區安全運行。這種機制為運行配置或性能優化不同的內核提供了可能,例如滿足多樣化的工作負載需求。
然而,該提案也引發了部分爭議。英特爾工程師 Dave Hansen 指出,在缺乏統一監督層的情況下,不同內核間可能產生沖突。例如,若某個內核修改了拆分鎖檢測(split lock detection)設置,或執行了 WBINVD 等系統級指令,可能對其他內核造成影響。這類問題在多內核并行運行的場景中尤為關鍵。
目前,Parker 提案已通過 RFC 形式提交至 Linux 內核郵件列表,但能否最終被采納仍需社區進一步討論和評估。該方案是否會像以往類似嘗試一樣逐漸淡出,抑或成為 Linux 內核發展的重要突破,仍有待觀察。










