Wydano wino 5.0

Wydano wino 5.021 stycznia 2020 roku odbyło się oficjalne wydanie wersji stabilnej Wine 5.0 - bezpłatne narzędzie do uruchamiania natywnych programów Windows w środowisku UNIX. Jest to alternatywna, bezpłatna implementacja API systemu Windows. Rekurencyjny akronim WINE oznacza „Wino nie jest emulatorem”.

Ta wersja ma około roku rozwoju i ponad 7400 indywidualnych zmian. Główny programista Alexandre Julliard identyfikuje cztery:

  • Obsługa modułów w formacie PE. Rozwiązuje to problemy związane z różnymi schematami ochrony przed kopiowaniem, które pasują do modułów systemowych na dysku i w pamięci.
  • Obsługuje wiele monitorów i wiele procesorów graficznych, w tym dynamiczne zmiany ustawień.
  • Ponowna implementacja XAudio2 w oparciu o projekt FAudio, otwartą implementację bibliotek dźwiękowych DirectX. Przejście na FAudio pozwala uzyskać wyższą jakość dźwięku w grach, umożliwia miksowanie głośności, zaawansowane efekty dźwiękowe i nie tylko.
  • Obsługa Vulkana 1.1.


Dowiedz się więcej o kluczowych innowacjach.

Moduły PE

Dzięki kompilatorowi MinGW większość modułów Wine jest teraz zbudowana w formacie pliku wykonywalnego PE (Portable Executable, format binarny Windows) zamiast ELF.

Pliki wykonywalne PE są teraz kopiowane do katalogu ~/.wine zamiast używać fałszywych plików DLL, upodabniając aplikacje do rzeczywistych instalacji systemu Windows.

Nie wszystkie moduły zostały jeszcze przekonwertowane do formatu PE. Praca trwa.

Podsystem graficzny

Jak wspomniano powyżej, dodano obsługę pracy z wieloma monitorami i kartami graficznymi.

Sterownik Vulkan został zaktualizowany do specyfikacji Vulkan 1.1.126.

Ponadto biblioteka WindowsCodecs obsługuje teraz dodatkowe formaty rastrowe, w tym formaty indeksowane paletą.

Direct3D

Pełnoekranowe aplikacje Direct3D blokują teraz wywołanie wygaszacza ekranu.

W przypadku aplikacji DXGI możliwe jest teraz przełączanie między trybem pełnoekranowym a trybem okienkowym przy użyciu standardowej kombinacji Alt+Enter.

Funkcje Direct3D 12 zostały ulepszone, obejmując obsługę przełączania między trybem pełnoekranowym i okienkowym, zmianę trybów ekranu, skalowanie widoków i interwały wymiany. Wszystkie te funkcje zostały już zaimplementowane w poprzednich wersjach API Direct3D.

Zespół projektowy pracował pilnie i naprawił dosłownie setki błędów, dzięki czemu Wine poprawiono obsługę różnych sytuacji brzegowych. Należą do nich próbkowanie zasobów 2D w próbnikach 3D i odwrotnie, wykorzystywanie wartości wejściowych spoza zakresu do testów przezroczystości i głębokości, renderowanie z odbitymi teksturami i buforami, używanie nieprawidłowych Clipperów (obiekt DirectDraw) i wiele więcej.

Zmniejszono rozmiar wymaganej przestrzeni adresowej podczas ładowania tekstur 3D skompresowanych metodą S3TC (zamiast wczytywania całości, tekstury są ładowane w kawałkach).

W starszych aplikacjach DirectDraw wprowadzono różne ulepszenia i poprawki związane z obliczeniami oświetlenia.

Rozszerzono bazę kart graficznych rozpoznawanych w Direct3D.

Sieć i kryptografia

Silnik Gecko został zaktualizowany do wersji 2.47.1 w celu obsługi nowoczesnych narzędzi. Zaimplementowano wiele nowych interfejsów API HTML.

MSHTML obsługuje teraz elementy SVG.

Dodano wiele nowych funkcji VBScript (takich jak obsługa błędów i wyjątków).

Zaimplementowano możliwość uzyskania ustawień proxy HTTP poprzez DHCP.

W części kryptograficznej zaimplementowano obsługę kluczy kryptograficznych o krzywej eliptycznej (ECC) poprzez GnuTLS, dodano możliwość importu kluczy i certyfikatów z plików w formacie PFX oraz dodano obsługę schematu generowania kluczy w oparciu o hasło PBKDF2 dodany.

Wydano wino 5.0
Adobe Photoshop CS6 dla Wine

Inne istotne innowacje

  • Obsługa blokad jądra NT.
  • Dzięki wygaśnięciu patentu na kompresję tekstur DXTn i S3 możliwe stało się włączenie ich do domyślnej implementacji.
  • Obsługuje instalację sterowników typu plug-and-play.
  • Różne ulepszenia DirectWrite.
  • Ulepszona obsługa interfejsu API Windows Media Foundation.
  • Lepsza synchronizacja prymitywów dzięki implementacji na futeksach.
  • Udostępnianie Wine-Mono w celu zaoszczędzenia miejsca zamiast implementacji open source .NET dla każdego ~/.wine.
  • Obsługa Unicode 12.0 i 12.1.
  • Implementacja początkowej usługi HTTP (HTTP.sys) jako zamiennika API Winsock i IIS, co skutkuje lepszą wydajnością niż Windows Sockets API.
  • Lepsza kompatybilność z debugerami Windows.
  • Lepsza obsługa LLVM MinGW i ulepszenia kompilacji krzyżowej WineGCC.

Możemy wspomnieć także o usprawnieniach w interfejsie użytkownika. Na przykład zminimalizowane okna są teraz wyświetlane przy użyciu paska tytułu, a nie ikon w stylu systemu Windows 3.1. Ulepszona obsługa kontrolerów gier, w tym przełącznika kapelusza, kierownicy i pedałów.

Wbudowane dekodery AVI, MPEG-I i WAVE zostały usunięte z Wine, zastępując je systemowym GStreamerem lub QuickTime.

Dodano możliwość wykorzystania debuggera z Visual Studio do zdalnego debugowania aplikacji działających w Wine, częściowo zaimplementowano bibliotekę DBGENG (Debug Engine), a także usunięto zależność od libwine z plików kompilowanych dla Windows.

Aby zoptymalizować wydajność, różne funkcje synchronizacji zostały przeniesione w celu wykorzystania wysokowydajnych funkcji systemowego timera, redukując obciążenie w pętli renderowania wielu gier. Wprowadzono inne optymalizacje wydajności.

Zobacz pełną listę zmian. tutaj.

Kod źródłowy wina 5.0, lustro
Pliki binarne dla różnych dystrybucji
Dokumentacja

Strona Baza danych aplikacji Prowadzona jest baza danych aplikacji Windows kompatybilnych z Wine. Oto przywódcy liczba głosów:

  1. Final Fantasy XI
  2. Adobe Photoshop CS6 (13.0)
  3. Świat Warcrafta 8.3.0
  4. EVE Online Aktualne
  5. Magic: The Gathering Online 4.x

Można założyć, że aplikacje te uruchamiane są najczęściej w Wine.

Notatka. Wydanie Wine 5.0 poświęcone jest pamięci Józefa Kuci, który tragicznie zginął w sierpniu 2019 roku w wieku 30 lat podczas eksploracji jaskini na południu Polski. Józef wniósł istotny wkład w rozwój Direct3D Wine, a także główny autor projektu vkd3d. Podczas pracy nad Wine stworzył ponad 2500 poprawek.

Wydano wino 5.0

Źródło: www.habr.com

Dodaj komentarz