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