Google Chrome в Windows 10 станет стабильнее и будет меньше потреблять ОЗУ

2020-12-23 8029 комментарии
Команда Google решила отказаться от реализации Segment Heap для Google Chrome в пользу новой функции «ParitionAlloc-Everywhere», которая позволит снизить потребление оперативной памяти

С выходом 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 работает над другой функцией «Спящий режим вкладок», которая представит дополнительные улучшения управления памятью.

© .
Комментарии и отзывы

Нашли ошибку?

Новое на сайте