以“自由、協作、創新”為理念,以推動和普及開源技術為使命,第18屆“中國Linux內核開發者大會”(以下簡稱CLK)在10月28日于深圳正式開幕。受CLK組委會委托,本屆大會由OPPO承辦。大會設置主論壇,以及內存管理、云和服務器、Arch&虛擬化&I/O、調試/eBPF/調度四個分論壇,會上,OPPO圍繞內存優化和內核調度等課題進行了主題演講。

在內存管理分論壇上,OPPO高級底層軟件工程師李培鋒帶來《shrink_slabd: 異步slab shrinker以減小內存回收延遲》與《意識到page映射頻度和lock contention的LRU回收優化》課題;OPPO高級底層軟件工程師韓傳華帶來《動態大頁:基于ARM64 contiguous PTE的64KB HugePage/Large Folios》課題;OPPO高級后端工程師胡俊鵬帶來《異步內存回收新思路探索–基于冷熱文件的冷熱區域精準的回收冷文件頁page》課題。

Arch&虛擬化&I/O分論壇上,OPPO高級底層軟件工程師胡璞與謝柳杰則分別帶來了《基于任務調度延遲的balance方案》、《Euser aware lock:關注用戶感知任務的內核鎖調度與排隊優化策略》課題。從中眾多課題中可以看出,OPPO正持續在內存優化和內核調度等方面發力,為ColorOS流暢性和穩定性保駕護航。
比如OPPO的動態大頁方案就為提升內存分配效率、安卓應用性能提供了新的思路。數據顯示,采用OPPO的動態大頁方案,Rambench內存訪問性能平均提升10%+,Androbench數據庫更新性能提升16%+,Antutu跑分總分提升22214+,內存壓縮率、丟幀、連續啟動應用等方面也有不同程度的提升。

更值得關注的是,此次OPPO平臺軟件開發中心GM、軟件系統優化技術專家許珉嘉還在主論壇上分享了ColorOS下基于用戶體驗改善的Linux內核優化方案,許珉嘉強調:”手機與桌面和服務器系統,無論在硬件架構、軟件架構和用戶關切上都存在非常大的差異,這要求我們在Linux OS層面從各個維度進行針對移動設備場景的優化”。

(標準Linux內核對比基于用戶體驗的ColorOS內核)
此外,在會上,OPPO 還公布了可編程內核技術方向,作為 OPPO 面向未來的技術,可編程內核是對底層技術的重大改造,這或將極大程度提升虛擬機運行效率,從底層解決安卓卡頓問題,引領安卓流暢體驗細節比拼。未來ColorOS會持續在可編程內核上演進,聚焦可編程調度器、可編程內存管理、可編程IO調度、可編程同步機制等領域,針對每個手機場景做到極致的優化,流暢性非常值得期待。

由于是對底層技術的重大改造,可編程內核技術的實現不僅需要長期的技術積累,更需要龐大研發投入。OPPO自身的研發團隊暫且不提,僅2022年OPPO的產學研合作費用就突破了1.5億,簽約了12所高校聯合實驗室,課題合作高校超30+,技術課題150+,從而支撐了ColorOS的技術底座。
總的來說,ColorOS十年發展以來,在每一代的更新上都有著亮眼的性能表現提升,如今全新的可編程內核技術,更是ColorOS十周年積淀下來的成果,相信未來在該新技術的加持下,ColorOS在流暢性上會給我們帶來更大的驚喜,值得關注。