В игровых ноутбуках ASUS ROG обнаружена ошибка BIOS, вызывающая лаги и подвисания
Согласно последнему исследованию, опубликованному на GitHub энтузиастом в области кибербезопасности Zephkek, игровые ноутбуки ASUS ROG содержат ошибку в микропрограмме BIOS, которая вызывает системные сбои. Эти сбои проявляются в виде лагов при просмотре YouTube, щелчков в Discord-звонках, кратковременного зависания курсора мыши и других раздражающих явлений. Согласно исследованию, проблема заключается не в предустановленном «мусоре», старых драйверах или самой операционной системе. Проблема на самом деле глубоко встроена в дизайн BIOS ASUS, где происходят системные операции и управление компонентами.
Чтобы выяснить, что произошло, исследователь использовал инструмент LatencyMon, который измеряет задержку прерываний процессора. Задержка прерываний CPU — это важный показатель, поскольку он указывает процессору на необходимость остановить текущий конвейер выполнения программы и перейти к другой, более приоритетной задаче. На ноутбуках ASUS ROG, таких как Zephyrus M16, нулевое ядро процессора (первое ядро, доступное приложению) тратит более 90 секунд на обработку прерываний. Это блокирует процесс на одном ядре CPU, делая невозможным выполнение других задач. За всем этим стоит реализация ACPI.sys стандарта Advanced Configuration and Power Interface (ACPI), выступающая в качестве моста между микропрограммой и ОС для управления функциями питания (сон, гибернация, аккумулятор и отчетность о температуре) и для помощи в обнаружении устройств Plug-and-Play и конфигурации ресурсов. Этот ACPI.sys интерпретирует ACPI Machine Language (AML) — код, предоставляемый каждым производителем BIOS, включая ASUS в данном случае.
Ноутбуки ASUS ROG часто оснащены дискретной видеокартой, такой как серия RTX 30/40, и встроенным графическим процессором (iGPU) в паре с процессором Intel. Для обработки различных требований к питанию, например, работы ноутбука только от аккумулятора или от сети, эти ноутбуки имеют мультиплексор (MUX) для переключения между iGPU и dGPU. Однако микропрограмма ASUS выполняет странное циклическое включение/выключение питания, которое не имеет логического смысла. В предельном стресс-тесте для системы, когда ноутбук подключен к внешнему дисплею, система включает только dGPU, в данном случае NVIDIA. Intel iGPU полностью отключен и обойден, поэтому внешние и внутренние дисплеи могут использовать dGPU. Однако система постоянно включает и выключает dGPU, даже когда он должен быть активен. Не должно быть никакого циклического включения/выключения питания на dGPU, но система делает это каждые 15-30 секунд. Это поведение не имеет смысла, учитывая, что dGPU является единственным активным обработчиком графики и в настоящее время включен.
В отчете резюмируются выводы, сводящиеся к нескольким основным причинам. Во-первых, происходит неверное понимание контекста прерывания; во-вторых, имеется некорректная обработка прерываний; и в-третьих, отсутствуют проверки платформы, полностью обходящие необходимость проверки, находится ли система в режиме MUX. Эти проблемы сохраняются в моделях ASUS с 2021 по 2024 год, о чем сообщалось в публичных обсуждениях. Затронуты такие модели, как Strix, Scar и Zephyrus. Автор исследования заявляет: «ASUS не ответила на это расследование или задокументированные проблемы с микропрограммой на момент публикации, будет обновление, если что-то изменится».
Источник: Zephkek on GitHub
ИИ: Проблема выглядит серьезной и системной, затрагивающей несколько поколений устройств. Интересно, как ASUS отреагирует на это публичное исследование и будут ли выпущены исправления BIOS. В 2025 году подобные фундаментальные ошибки в firmware у крупного производителя вызывают удивление.
0 комментариев