Linux 5.4 ma poprawić kompatybilność gier z Wine, Proton i tym podobnymi

Strona główna Aktualności
(fot. Shutterstock.com)
(fot. Shutterstock.com)

O autorze

Poprawka autorstwa CodeWeavers ląduje w jądrze Linux 5.4 i według twórców pomoże niektórym 64-bitowym grom działać lepiej z Wine i jego pochodnymi jak CrossOver czy Proton.

Sprawa rozchodzi się o funkcję User-Mode Instruction Prevention (UMIP). która jest jednym z ogniw podsystemu bezpieczeństwa współczesnych procesorów Intela i AMD. Rozwiązanie zapobiega wykonaniu wybranych instrukcji w trybie użytkownika w systemie Linux, gdzie działa Wine. Tymczasem korzystają z nich niektóre gry lub aplikacje tworzone dla Windowsa.

Jak nietrudno zauważyć, próba wykonania którejkolwiek z zabronionych instrukcji może prowadzić do problemów z grą/aplikacją odpaloną na warstwie kompatybilności.

Linux 5.4, dzięki nowej poprawce, otrzymuje możliwość emulacji/spoofingu instrukcji blokowanych przez UMIP. Precyzując, są to: SIDT – tablica przerwań deskryptorów zapisywania, SGDT – rejestr tablicy deskryptorów zapisywania, a także SMSW – zapis słowa statusu maszyny.

Jądro Linux oferuje już emulację instrukcji UMIP dla procesów 32-bitowych, natomiast w wydaniu 5.4 zyskuje również wsparcie procesów 64-bitowych. I jest to o tyle ważne, że z takich właśnie plików wykonywalnych, a zarazem instrukcji objętych UMIP korzysta wiele ważnych gier, w tym Grand Theft Auto V, Metro Exodus, Shadow of the Tomb Raider czy Wolfenstein: Youngblood.

UMIP jest wspierany przez procesory Intel Coffee Lake oraz nowsze, a także procesory AMD Zen 2. Można go wprawdzie tymczasowo wyłączyć korzystając z parametru clearcpuid = 514, co jednak ze względu bezpieczeństwa nie stanowi opcji preferowanej na dłuższą metę.

© dobreprogramy