近期,谷歌Pixel手機(jī)用戶頻繁反饋,在瀏覽應(yīng)用時遭遇了屏幕卡頓的困擾。這一問題在谷歌的官方問題追蹤平臺上已存在多時,盡管公司承認(rèn)了問題的存在,但尚未發(fā)布有效的修復(fù)措施。谷歌方面的應(yīng)對策略主要是將用戶投訴標(biāo)記為重復(fù)并關(guān)閉,同時建議升級至最新的Android系統(tǒng)版本。然而,用戶的反饋顯示,特別是在Android 16開發(fā)者預(yù)覽版和Beta 1版本中,這一問題依舊顯著存在。
終于,一位Android內(nèi)核領(lǐng)域的知名開發(fā)者Sultan Alsawaf似乎找到了Pixel手機(jī)卡頓問題的真正原因。他指出,問題在于Pixel手機(jī)的帶寬管理機(jī)制上。為了更直觀地解釋這一問題,我們可以將Pixel手機(jī)比作一個資源有限的繁忙辦公室,其中“員工”(即應(yīng)用和進(jìn)程)需要共享有限的“辦公空間”(如帶寬等手機(jī)資源)。若這些“員工”無法有效協(xié)作或溝通,就會導(dǎo)致工作效率低下,甚至混亂。
具體來說,開發(fā)者發(fā)現(xiàn)“辦公室管理員”(即系統(tǒng))在安排“員工”使用“辦公空間”時出現(xiàn)了問題。系統(tǒng)中有一個關(guān)鍵部分使用了錯誤的“鎖”或“輪流規(guī)則”,未能確保一次只有一個“員工”使用“辦公空間”。原本應(yīng)使用的“鎖”(mutex_lock)能確保資源的有序訪問,但系統(tǒng)卻錯誤地采用了一種更為寬松的鎖(btsdev->lock),這種鎖無法阻止所有“員工”同時工作,從而引發(fā)了混亂。
由于這一問題,Pixel手機(jī)無法準(zhǔn)確計(jì)算每個應(yīng)用所需的帶寬,導(dǎo)致用戶在瀏覽或使用應(yīng)用時遭遇卡頓和延遲。為了修復(fù)這一問題,開發(fā)者提出了一個解決方案:為每個“員工”制定明確的帶寬使用時間表,并確保在任何時候都只有一個“員工”使用“辦公空間”。他還修復(fù)了系統(tǒng)中另一個導(dǎo)致帶寬計(jì)算錯誤的漏洞。
值得注意的是,Sultan Alsawaf已經(jīng)將自己的代碼修改建議提交給了谷歌,并在自己的自定義內(nèi)核中實(shí)現(xiàn)了這一修復(fù),為Pixel 8用戶發(fā)布了補(bǔ)丁。然而,刷入自定義內(nèi)核存在一定風(fēng)險(xiǎn),可能導(dǎo)致數(shù)據(jù)丟失或設(shè)備損壞。因此,用戶們?nèi)栽谄诖雀柰ㄟ^官方軟件更新來解決這一問題。
我們衷心希望谷歌能夠重視這位開發(fā)者提出的修復(fù)方案,并進(jìn)行測試驗(yàn)證。只有這樣,才能真正解決Pixel手機(jī)用戶長期以來的卡頓問題,提升用戶體驗(yàn)。