С выходом Windows 10 May 2020 Update (версия 2004) Microsoft улучшила функцию «Куча сегмента» (Segment Heap) и расширила ее поддержку на классические приложения Win32, в том числе и на браузеры.
В начале осени поддержка Segment Heap была реализована в открытом проекте Chromium. Google решил использовать данную технологию, чтобы исправить давнюю проблему с излишней «прожорливостью» Chrome в отношении потребления оперативной памяти. Однако, в Google Chrome 85 разработчики отключили оптимизацию памяти в Windows 10 из-за увеличения нагрузки на процессор, и теперь команда Google решила отказаться от реализации Segment Heap в пользу новой функции «ParitionAlloc-Everywhere».
Функция «ParitionAlloc-Everywhere» находится в разработке с августа и постоянно развивается. PartitionAlloc-Everywhere имеет ряд преимуществ, а именно снижение потребления оперативной памяти, оптимизация распределения памяти в Chrome и повышение безопасности.
В результате Google Chrome будет более эффективно использовать память, что приведет к снижения потребления ОЗУ и к профилактике потенциальных проблем безопасности.
Уровень безопасности в Chrome будет повышен с помощью проекта MiraclePtr, для которого требуется PartitionAlloc.
Google описал предстоящие изменения в отдельном документе, которые пока не является общедоступным. Сложно предсказать, когда мы увидим эти изменения в Chrome, но больше подробностей может появиться в первой половине 2021 года.
Google исправляет сбои в Chrome
Кроме улучшения потребления памяти, тесты Google показали, что функция TerminateProcess, в случае применения для большего типов процессов, сможет уменьшить количество сбоев браузера.
Google отмечает, что «чистое» завершение процесса является сложной и дорогой задачей, особенно в случаях со сложным программным обеспечением.
Chrome постепенно расширит применение TerminateProcess на большее количество типов процессов. Компания предложила новое изменение, которое позволит применить TerminateProcess для headless-браузеров. Это может привести к снижению количества браузерных сбоев.
Брюс Доусон (Bruce Dawson), разработчик из Google пояснил:
Это позволит избежать сбоев некоторых служебных процессов в Windows. Применение этой политики ко всем типам headless-процессов — стоящий эксперимент. TerminateProcess подтвердил свою эффективность со многими типами процессов.
Как Microsoft, так и Google сошлись в том, что сокращение потребления ОЗУ браузерами является важной задачей, но реализации Segment Heap и ParitionAlloc будут различаться на разных компьютерах.
Отметим, что Microsoft уже включила «современную реализацию кучи», чтобы сократить использование памяти. Команда Edge работает над другой функцией «Спящий режим вкладок», которая представит дополнительные улучшения управления памятью.
Обновления программ, что нового
• Firefox 139 Beta: повышена производительность загрузки по HTTP/3, улучшены перевод страниц и поддержка PNG
• Обновление NVIDIA GeForce Game Ready 576.28 WHQL. Исправления для RTX 50 и улучшения стабильности работы игр
• Новые функции «Алисы» и «Яндекс Станций» за апрель 2025 года
• Релиз Chrome 136: Обновления безопасности и исправление уязвимости, которая существовала более 20 лет
• Обновление до Windows 11, версия 24H2 блокируется на старых версиях Windows 11 из-за бага в службе WSUS
• Обновление Intel Bluetooth Drivers 23.130.0 для Windows 11 и Windows 10: функциональные улучшения