正在閱讀:Windows 10:谷歌尋求微軟修復(fù)Chrome的最大問(wèn)題Windows 10:谷歌尋求微軟修復(fù)Chrome的最大問(wèn)題

2020-09-15 09:28 出處:cnBeta.COM 作者:佚名 責(zé)任編輯:censi

在微軟開(kāi)始推出 Windows 10 May 2020更新后,這家科技巨頭聲稱(chēng)它已經(jīng)找到了一種方法來(lái)修復(fù)基于Chromium的瀏覽器的RAM使用。 該修復(fù)是 "Segment Heap",它現(xiàn)在包含在Windows 10中,它應(yīng)該有助于減少一些Win32桌面應(yīng)用程序的內(nèi)存使用,如Google Chrome和Edge。

Segment Heap是一項(xiàng)技術(shù)性的底層改進(jìn),通過(guò) “現(xiàn)代堆的實(shí)現(xiàn)方式 ”降低了應(yīng)用程序的整體內(nèi)存使用量。換句話(huà)說(shuō),Segment Heap是開(kāi)發(fā)者需要在他們的應(yīng)用中使用的東西,微軟已經(jīng)在其Chromium Edge中使用了這個(gè)功能。

微軟的內(nèi)部測(cè)試記錄顯示,Edge瀏覽器的內(nèi)存使用量減少了27%,如果谷歌能夠?qū)崿F(xiàn)這一功能,你也可以期待Chrome瀏覽器有一些改善。

根據(jù)外媒在今年早些時(shí)候發(fā)現(xiàn)的Chromium commit,谷歌也打算在Chrome中采用這一功能。不過(guò),谷歌后來(lái)澄清說(shuō),它對(duì)微軟提出的節(jié)省RAM的修復(fù)措施不會(huì)在未來(lái)的Chrome版本中啟用,包括85版本。谷歌表示,Segment Heap確實(shí)減少了他們?yōu)g覽器的RAM使用量,但最終也導(dǎo)致了性能的退步,包括CPU使用率高。

到目前為止,谷歌一直使用.exe清單的方法來(lái)啟用Segment Heap,這確實(shí)節(jié)省了一些內(nèi)存,但卻浪費(fèi)了CPU時(shí)間。“節(jié)省最多來(lái)自于瀏覽器和網(wǎng)絡(luò)進(jìn)程,而成本主要來(lái)自于渲染器進(jìn)程。”谷歌表示。

谷歌新的測(cè)試數(shù)據(jù)表明,如果微軟同意在 Windows 中添加一個(gè)函數(shù),設(shè)置或清除ntdll.dll中RtlpHpHeapFeatures中的 "segment-heap-enabled "位,那么使用segment heap而不出現(xiàn)性能退步是相當(dāng)容易的。

通過(guò)代碼檢查可以清楚地看到,在HeapCreate和RtlCreateHeap中添加標(biāo)志來(lái)強(qiáng)制啟用或強(qiáng)制禁用segment hea也很容易。這些方法可以很好地與manifest配合使用,而manifest本身太不靈活,不是一個(gè)完整的解決方案。

Google的高級(jí)開(kāi)發(fā)者也在Github上提交了一個(gè)正式的帖子,尋求微軟協(xié)助實(shí)現(xiàn)這兩個(gè)標(biāo)志。

  • HEAP_ENABLE_SEGMENT_HEAP--創(chuàng)建一個(gè)segment heap而不是NT堆。

  • HEAP_DISABLE_SEGMENT_HEAP--創(chuàng)建一個(gè)NT堆而不是segment heap,即使在應(yīng)用程序清單中請(qǐng)求了segment heap。

“這些標(biāo)志將對(duì)所有基于Chromium的瀏覽器有用,”谷歌開(kāi)發(fā)者指出。

谷歌仍在試驗(yàn)Segment Heap,微軟也可以在谷歌進(jìn)行更多測(cè)試的同時(shí)幫助谷歌。未來(lái)當(dāng)有辦法成功實(shí)現(xiàn)這個(gè)功能,或者微軟跳出自己的修復(fù)方法時(shí),谷歌會(huì)重新考慮對(duì)這個(gè)功能的支持。

關(guān)注我們

最新資訊離線(xiàn)隨時(shí)看 聊天吐槽贏獎(jiǎng)品