Создатели Wine, набора библиотек и утилит для запуска Windows-программ и игр на Linux, работают над тем, чтобы в 2024 году с её помощью можно было запустить игру Nuclear Strike. Игра, разработанная Electronic Arts для PlayStation и ПК на Windows, вышла в 1997 году.
Внимание на игру обратила Элизабет Фигура (Elizabeth Figura) из CodeWeavers; она некоторое время пыталась запустить Nuclear Strike в Wine, но столкнулась с проблемами из-за особенностей доступа игры к видеопамяти.
Фигура связалась с разработчиками ядра Linux в попытке выяснить, как лучше реализовать эмуляцию SGDT (Store Global Descriptor Table) в Wine, что позволило бы запустить Nuclear Strike. Как отметил Питер Анвин, на процессорах с поддержкой механизма обеспечения безопасности UMIP (User Mode Instruction Prevention) это реально, но для других процессоров он рекомендовал разработчикам Wine изучить возможность взаимодействия с KVM (Kernel-based Virtual Machine) напрямую.
В ответ на это создатели Wine заявили, что использование KVM напрямую в таких сценариях будет непрактичным, к тому же скажется на производительности. Предыдущие исследования поддержки виртуализации в Wine были признаны «неработоспособно медленными».
«Я не думаю, что запуск Wine внутри KVM когда-либо реализуется, — отметил разработчик Wine Стефан Дёсингер.
По итогам обсуждения разработчики планируют реализовать эмуляцию SGDT в Wine по крайней мере для владельцев машин с процессорами AMD (Zen 2+) и Intel с поддержкой UMIP. Следить за реализацией проекта можно здесь.
Источник: habr.com