IT之家 7 月 8 日消息,和其他許多操作系統(tǒng)一樣,安卓也使用開源的 Linux 內(nèi)核。Linux 內(nèi)核有多種發(fā)布版本,但對(duì)安卓最重要的是長(zhǎng)期支持 (LTS) 版本,因?yàn)?LTS 版本會(huì)定期更新重要錯(cuò)誤修復(fù)和安全補(bǔ)丁。2017 年,Linux LTS 版本的支持期限從兩年延長(zhǎng)到六年,但這一延長(zhǎng)政策在去年初被取消了。不過(guò),現(xiàn)在谷歌宣布了一個(gè)好消息:他們將自己為 LTS 內(nèi)核提供長(zhǎng)達(dá)四年的支持。這對(duì)于保障安卓設(shè)備安全至關(guān)重要。
據(jù) AndroidAuthority 報(bào)道,安卓設(shè)備使用的 Linux 內(nèi)核大多源自谷歌的 Android 通用內(nèi)核 (ACK) 分支,這些 ACK 分支是在上游發(fā)布新的 LTS 版本時(shí)從安卓主線內(nèi)核分支創(chuàng)建的。例如,當(dāng)內(nèi)核版本 6.6 被宣布為最新的 LTS 版本后,不久就會(huì)出現(xiàn) android15-6.6 的 ACK 分支,名稱中的“android15”指代了該內(nèi)核對(duì)應(yīng)的安卓版本(在本例中是安卓 15)。
谷歌維護(hù)自己的一套 LTS 內(nèi)核分支主要有三方面的原因。首先,谷歌可以將上游尚未發(fā)布的功能通過(guò)反向移植或挑選的方式集成到 ACK 分支中,從而滿足安卓特定的需求。其次,谷歌可以在 ACK 分支中提前加入一些正在上游開發(fā)中的功能,使其盡早用于安卓設(shè)備。最后,谷歌還可以加入一些供應(yīng)商或原始設(shè)備制造商 (OEM) 的功能,供其他安卓合作伙伴使用。
創(chuàng)建完成后,谷歌會(huì)繼續(xù)更新 ACK 分支,不僅包含針對(duì)安卓特定代碼的漏洞修復(fù),還會(huì)集成上游內(nèi)核分支的 LTS 合并內(nèi)容。例如,2024 年 7 月的安卓安全公告中披露的 Linux 內(nèi)核漏洞,就會(huì)通過(guò)這些更新得到修復(fù)。
然而,區(qū)分漏洞修復(fù)和其他 bug 修復(fù)并非易事,因?yàn)樾迯?fù) bug 的補(bǔ)丁程序也可能意外堵塞了提交者不知道或選擇不披露的安全漏洞。谷歌會(huì)盡力識(shí)別這種情況,但難免有遺漏,導(dǎo)致上游 Linux 內(nèi)核的漏洞修復(fù)早于安卓設(shè)備幾個(gè)月發(fā)布。因此,谷歌一直敦促安卓廠商定期更新 LTS 內(nèi)核,以免因意外披露的安全漏洞而措手不及。
顯然,Linux 內(nèi)核 LTS 版本對(duì)于安卓設(shè)備的安全至關(guān)重要,它能幫助谷歌和廠商應(yīng)對(duì)已知和未知的安全漏洞。支持期限越長(zhǎng),谷歌和廠商就越能及時(shí)為設(shè)備提供安全更新。
遺憾的是,雖然延長(zhǎng)支持期限對(duì)谷歌和廠商有利,但卻給許多為 Linux 內(nèi)核貢獻(xiàn)的開發(fā)者和維護(hù)人員帶來(lái)了巨大壓力,其中許多人都是無(wú)償?shù)闹驹刚?。此外,除去安卓和嵌入式設(shè)備,運(yùn)行老舊 Linux 版本的設(shè)備數(shù)量也并不多。
出于以上原因,Linux 維護(hù)者決定不再為 LTS 內(nèi)核提供長(zhǎng)達(dá)六年的支持,而是將期限縮短回兩年。這一消息于 2023 年初公布,讓許多觀察人士擔(dān)心安卓生態(tài)會(huì)受到怎樣的影響。一些人認(rèn)為這會(huì)迫使廠商開始進(jìn)行重大內(nèi)核版本升級(jí)以保持最新,另一些人則認(rèn)為谷歌或芯片廠商會(huì)自行延長(zhǎng) LTS 支持。
谷歌做出了后一種選擇。在 ACK 的開發(fā)者頁(yè)面上,谷歌寫道:“從內(nèi)核 6.6 開始,穩(wěn)定內(nèi)核的支持期限為 4 年?!敝暗囊痪湓捯蔡岬?,“ACK 的支持期限可能會(huì)長(zhǎng)于 kernel.org 上對(duì)應(yīng)的上游穩(wěn)定內(nèi)核。在這種情況下,谷歌會(huì)提供延長(zhǎng)的支持,直到本節(jié)所述的終止支持 (EOL) 日期為止?!眱?nèi)核到達(dá) EOL 日期后,不僅會(huì)停止谷歌的官方支持,更重要的是,“運(yùn)行該內(nèi)核的設(shè)備將被視為存在安全漏洞”。
以前長(zhǎng)達(dá)六年的 Linux LTS 生命周期允許安卓廠商在內(nèi)核生命周期的第一年、第二年甚至第三年發(fā)布設(shè)備,仍然可以享受幾年的上游支持。
然而,由于谷歌現(xiàn)在只為新的 ACK 分支提供四年支持,廠商就無(wú)法再這么做了。因此,從安卓 15 開始,設(shè)備只能搭載 android14-6.1 或 android15-6.6 這兩個(gè)最新的內(nèi)核版本。其中前者會(huì)支持到 2029 年 7 月,后者會(huì)支持到 2028 年 7 月,這意味著今年發(fā)布的設(shè)備即使使用這些內(nèi)核版本,也能在未來(lái)三到五年內(nèi)獲得支持。
展望未來(lái),谷歌表示將只為每個(gè)內(nèi)核版本提供一個(gè)新的 ACK 分支,這也是為什么沒(méi)有推出 android15-6.1 分支的原因。這在一定程度上簡(jiǎn)化了流程,但最終,如果廠商想要承諾更長(zhǎng)久的手機(jī)更新策略,就需要開始進(jìn)行重大內(nèi)核版本升級(jí)了。
廣告聲明:文內(nèi)含有的對(duì)外跳轉(zhuǎn)鏈接(包括不限于超鏈接、二維碼、口令等形式),用于傳遞更多信息,節(jié)省甄選時(shí)間,結(jié)果僅供參考,IT之家所有文章均包含本聲明。