Collabora продолжает работу над FUTEX2 в рамках сотрудничества с Valve по улучшению поддержки игр для Linux. Работа над FUTEX2 направлена на улучшение поддержки игр для Windows, запускаемых на Linux с помощью Steam Play. Работа над FUTEX2 ведется уже более одного года с целью улучшения существующего системного вызова FUTEX. Основной целью разработки FUTEX2 является возможность ожидания нескольких фьютексов для лучшего соответствия поведению Windows. Этот интерфейс может быть использован Proton, на котором работает Steam Play, для эффективной реализации интерфейса Windows WaitForMultipleObjects. Несмотря на то, что данный интерфейс разработан для игр на Proton/Windows, родные игровые движки Linux также могут получить потенциальную выгоду. Помимо того, что FUTEX2 позволяет ждать на нескольких футексах, новый интерфейс также позволяет использовать футексы переменного размера (8, 16, 32 и 64-битные футексы) в производительной манере, а также обеспечивает NUMA-awareness. Новые патчи "v5" к
FUTEX2 обновили в пятый раз, чтобы этот интерфейс Linux помог играм для Windows
9 июля 20219 июл 2021
68
1 мин