Megjelent a Wine 11.0 stabil kiadása

Egy évnyi fejlesztés és 25 kísérleti verzió után bemutatásra került a Win32 API nyílt megvalósításának stabil kiadása — a Wine 11.0, amely több mint 6300 változást és 600 hibajavítást tartalmaz. A legfontosabb újítások között említhető a teljes NTSYNC támogatás, a Reparse Point mechanizmus megvalósítása és az új WoW64 architektúra bevezetése.

A Wine teljes körűen támogatja 5419 Windows alkalmazás működését (egy évvel ezelőtt 5372, két évvel ezelőtt 5336, három évvel ezelőtt 5266), további 4500 alkalmazás (egyetlen évvel ezelőtt 4435, két évvel ezelőtt 4397, három évvel ezelőtt 4370) pedig megfelelő beállításokkal és külső DLL fájlokkal zökkenőmentesen futtatható. 4086 alkalmazásnál (egy évvel ezelőtt 4020, két évvel ezelőtt 3943, három évvel ezelőtt 3888) kis problémák merülnek fel, amelyek nem akadályozzák az alapvető funkciók használatát.

A Wine 11.0 főbb újításai:

  • Teljes NTSYNC illesztőprogram támogatás, amely jelentősen növeli a Wine segítségével futtatott Windows játékok teljesítményét. Az illesztőprogram a Linux 6.14-es verziójától kezdve része a kernelnek, és implementálja a /dev/ntsync szimbolikus eszközt, valamint a Windows NT kernelében használt szinkronizálási primitív készletet. A teljesítmény jelentős növekedését a felhasználói térben levő RPC használatával járó költségek megszüntetése teszi lehetővé.
  • A szálak prioritásainak beállításának lehetősége került beillesztésre Linux és macOS rendszerekre.
  • Az ntdll-be bekerült a 'Synchronization barriers' szinkronizáló API, amely lehetővé teszi több szál végrehajtásának felfüggesztését, amíg el nem érnek egy adott végrehajtási pontot az összes szálban (például várakozik, amíg az összes szál el nem éri egy adott fázist egy és ugyanazon kód párhuzamos futtatása során).
  • A WoW64 (64-bites Windows on Windows) új megvalósítása teljes mértékben támogatottá vált, lehetővé téve 32-bites Windows alkalmazások futtatását 64-bites Unix rendszerekben. Ellentétben a régi WoW64 megvalósítással, amelyben a 32-bites alkalmazások 32-bites Unix folyamatokban futottak, az új WoW64 lehetővé teszi a 32-bites kód futtatását 64-bites folyamaton belül. Megvalósult a 16-bites alkalmazások futtatásának támogatása WoW64 módban.

    A Unix könyvtárakhoz forduló összes modulban WoW64 (thunk) rendszerhívások átkonvertálóit alkalmazzák, lehetővé téve a 32-bites PE formátumú modulok számára, hogy 64-bites Unix könyvtárakat hívjanak meg. Új lehetőségként bekerült a régi WoW64 telepítések új módban való futtatása a környezeti változó „WINEARCH=wow64” beállításával. A WINEARCH=win32 beállításával létrehozott 32-bites prefixek elavultnak lettek nyilvánítva, és nem támogatottak az új WoW64 módban. A wine64 külön betöltő eltávolításra került, helyette egy univerzális betöltőt alkalmaznak, amely a futtatott fájl bitességétől függően határozza meg a módot.

  • Kernel (Windows kernel interfészek)
    • Megvalósításra került a Reparse Point mechanizmusa, amely lehetővé teszi további adatok csatolását fájlokhoz és könyvtárakhoz címkék (tag) azonosításával. Támogatva vannak olyan Reparse Point típusok, mint a szimbolikus hivatkozások és a csatolt pontok.
    • A memóriaírási műveletek nyomon követésének teljesítményének növelése érdekében az UFFD (userfaultfd) mechanizmus került alkalmazásra, amely lehetővé teszi, hogy a felhasználói térben kezelőket hozzunk létre a kijelölt oldalakra (page faults). A végzett tesztek során az UFFD alkalmazása a „Streets of Rage 4” játék szintjeinek betöltési idejét 6-8 másodpercről 1,5-2 másodpercre csökkentette, ami a Windows platformon történő indítási teljesítménynek felel meg.
    • Az NT rendszerhívások számai aktiválva lettek, amelyek az utolsó Windows verzióknak felelnek meg, ami szükséges a tömören rögzített rendszerhívás számokkal rendelkező alkalmazások támogatásához.
    • ARM64 rendszereken megvalósításra került a 4K méretű memóriaoldalak szimulálásának lehetősége olyan Linux kernel környezetekben, amelyek nagyobb memóriaoldalakat (16K vagy 64K) használnak. A szimuláció lehetővé teszi egyszerű alkalmazások futtatását, míg bonyolultabb programok esetén ajánlott 4-kilobájtos memóriaoldalakat használó Linux kernelt alkalmazni.
  • Grafikai alrendszer
    • X11 rendszereken (winex11) az OpenGL esetében alapértelmezés szerint egl alapú renderelési háttér kerül alkalmazásra. A GLX háttér elavultnak lett nyilvánítva, de egyelőre tartalék megoldásként elérhető és használatban van, amennyiben EGL nem érhető el.
    • Kezdeti támogatás került bevezetésre a D3DKMT objektumok számára, amelyek alacsony szintű hozzáférést biztosítanak grafikus eszközökhöz a felhasználói térből. Megvalósításra kerültek a Vulkan bővítmények VK_KHR_external_memory_win32, VK_KHR_external_semaphore_win32, VK_KHR_external_fence_win32 és VK_KHR_win32_keyed_mutex.
    • A WoW64 (64-bit Windows-on-Windows) üzemmódban a Vulkan API segítségével megvalósították a memória leképezés támogatását OpenGL-hez, lehetővé téve a 32-bites OpenGL-alkalmazások gyorsabb működését a Wine-ban.
    • Megvalósították a front buffer emulációját OpenGL számára olyan platformokon, ahol nincs beépített támogatása.
    • A Vulkan grafikus API-meghajtóhoz hozzáadták a Vulkan 1.4.335 specifikáció támogatását.
    • A WindowsCodecs könyvtárban bővült a metadaták támogatása képfájlokban, valamint megvalósították a színformátumok közötti konvertálást egész szám alapú és lebegőpontos formátumok között.
    • Megszüntették az OSMesa (Off-screen Mesa) könyvtártól való függőséget. Lehetővé tették a bitmapok rajzolását OpenGL-en keresztül, hardveres gyorsítással.
  • Asztali integráció
    • A winewayland.drv meghajtóban, amely lehetővé teszi a Wine használatát Wayland alapú környezetekben XWayland és X11 összetevők nélkül, megvalósították a vágólap, input módszerek, nem téglalap alakú ablakok és átlátszóság támogatását.
    • Javították az X11-el való integrációt: lehetővé tették az ablakkezelőnek az ablakok aktiválási kéréseinek küldését, és az EWMH protokollt is bevonták az aktív X11 és Win32 ablakok állapotának összehangolásába.
    • Megvalósították az exkluzív teljes képernyős mód támogatását. Javult a teljes képernyős mód támogatása D3D-ben, és a régi DDraw alapú játékok működése is javult.
    • Néhány ablakkezelő funkció teljesítménye növekedett. A folyamatok közötti interakcióhoz megosztott memóriát használnak.
  • Direct3D
    • A Direct3D 11-ben megvalósították a H.264 videóformátum hardveres gyorsítású dekódolásának támogatását a Vulkan grafikus API segítségével.
    • A Direct3D 11-ben megvalósították a textúrák minmax szűrésének támogatását az OpenGL GL_ARB_texture_filter_minmax vagy a Vulkan VK_EXT_sampler_filter_minmax kiterjesztések használatával.
    • A Direct3D 11-ben megvalósították a textúra betöltési funkciókat.
    • A Vulkanon keresztüli rajzolás során a Direct3D számos lehetősége megvalósult, például a vertex keverés, sima árnyékolás, egyedi kivágási síkok és különböző erőforrás formátumok.
    • A beépített vkd3d-shader verzióban javították az 1., 2. és 3. shader-modellek támogatását.
    • A D3DXSaveSurfaceToFileInMemory módszerben megvalósították a PNG, JPEG és BMP képek támogatását.
    • A Direct3D 10 és 11 támogatja a BC4 és BC5 formátumok tömörítését és kibővítését, valamint a MIP-szintek (MipMap) generálását textúrák betöltésekor.
    • Megvalósultak az ID3DXEffect::SetRawValue() és ID3DXSkinInfo::UpdateSkinnedMesh() módszerek.
  • Bemeneti eszközök
    • Javult az összeférhetőség a joystickokkal a hidraw háttér használatának köszönhetően.
    • Javult a vibrációs visszajelzési hatás (Force feedback) támogatása játék kormányok és joystickok használata esetén.
    • Javult a játékkonzolok támogatása a Windows.Gaming.Input API-ban és az evdev háttér használatával.
    • A játékvezérlők kezelőfelületén hozzáadódott egy fül a Windows.Gaming.Input API beállításához.
    • Növelték a DirectInput kompatibilitását régi játékokkal.
  • Bluetooth
    • A Bluetooth-illesztőprogramban hozzáadódott az eszközök keresésére, észlelésére és párosítására vonatkozó lehetőség.
    • Hozzáadva a Bluetooth Low Energy szolgáltatások támogatása.
    • Az alkalmazások lehetőséget kaptak alacsony szintű RFCOMM kapcsolatok létrehozására külső eszközökkel a Winsock API használatával.
  • Szkenner támogatás.
    • Megvalósult a TWAIN 2.0 API támogatása, amely lehetővé teszi a szkennerek elérését 64 bites alkalmazásokból.
    • Megvalósult a DAT_IMAGENATIVEXFER összetevő támogatása a szkennerből az alkalmazásba történő képátvitelhez.
    • Biztosították a kiválasztott szkenner és a szkenner beállításainak nyilvántartását a rendszerleíró adatbázisban.
    • Hozzáadva a több oldalas szkennelés és a dokumentumadagoló támogatása.
    • Megszűnt az alkalmazás leállása a szkennelési felület hívása alatt.
    • Hozzáadva a natív Windows-illesztőprogramok betöltésének támogatása a szkennerekhez.
  • Nemzetköziesítés.
    • Biztosították a locale.nls formátumú lokalizációs adatbázis generálását az 48. verziójú Unicode CLDR (Unicode Common Locale Data Repository) adatbázisból. További lokalizációk támogatása: bua-RU, bqi-IR, cop-EG, ht-HT, kek-GT, lzz-TR, mww-Hmnp-US, oka-CA, pi-Latn-GB, pms-IT, sgs-LT, suz-Deva-NP és suz-Sunu-NP.
    • Az Unicode karaktertáblák frissítve lettek a 17.0.0 szabvány verziójára. A időzónák adatbázisa is frissítve lett.
  • Hálózati lehetőségek.
    • Az MSHTML motorban a szabványos összhangban biztosították, hogy az elemek attribútumaiként teljes DOM csomópontokként működjenek. Megvalósították a DOMParser, XDomainRequest és msCrypto objektumokat.
    • A JavaScriptbe hozzáadódott a típusos tömbök támogatása.
    • Az ICMPv6 számára megvalósították a ping parancsot.
  • Adatbázis.
    • A MSADO (ActiveX Data Objects) könyvtárhoz hozzáadódott a változások adatbázisba írásának támogatása. A Recordset objektum többségi funkciói megvalósításra kerültek.
    • Az odbc32 könyvtárban javították az ANSI win32-illesztőprogramok támogatását, amelyek nem Unicode-képesek. Megvalósították az SQLDriverConnectA(), SQLSpecialColumnsW(), SQLGetInfoW(), SQLGetInfoW(), SQLStatisticsW() és SQLColumnsW() funkciókat.
  • Beépített alkalmazások
    • A WineCfg-hez hozzáadódott egy fül a MIDI-eszköz alapértelmezett beállításának konfigurálására.
    • A cmd segédprogramban megvalósították a fájlnevek interaktív módú beírásának autocompletion-jét, hozzáadták a összetett parancsok támogatását, és megvalósították a „mklink /j” parancsot a Reparse Point létrehozásához.
    • A conhost (Console Hosting) segédprogramban hozzáadták a billentyűzet F1 és F3 megnyomásával történő történeti nyerés támogatását.
    • Megvalósították a timeout, runas és subst parancsokat.
    • A find segédprogramhoz hozzáadták a „/c” opciót a találatok számának megjelenítéséhez és a /i opciót a kis- és nagybetűk közötti eltérés nélküli párosításhoz.
    • A whoami segédprogramban lehetőség nyílt a kimeneti formátum beállítására.
  • Vegyes
    • A WIDL (Wine Interface Definition Language) felületleíró nyelv megvalósításában megjelent a Windows Runtime (WinRT) metaadatok generálásának támogatása. A WinRT API-hoz (Windows Runtime) kapcsolódó WinMD (Windows Metadata) fájlok generálása és telepítése biztosított.
    • A winedump segédprogramhoz hozzáadták az MUI erőforrások, a rendszerhívások számozása, a beépített NE-modulok és a nagyobb PDB fájlok (> 4 GB) dumpolásának támogatását.
    • A Common Control megvalósítását átdolgozták, a COMCTL32 könyvtárat külön modulokra osztották az 5-ös és 6-os verziókhoz.
    • A BCrypt-hez hozzáadták a PBKDF2 kulcsgenerálási szabvány támogatását.
    • Hozzáadták a UserProgramFiles, AccountPictures és Screenshots könyvtárak támogatását.
    • Az integrálásra került az LLVM Compiler-RT 8.0.1-es és a TomCrypt 1.18.2-es könyvtár. A FreeBSD platform CPU-jának meghatározásához a HwLoc könyvtárat alkalmazták.
    • Frissítették az összetevőket az új verziókra: Vkd3d 1.18, Faudio 25.12, FluidSynth 2.4.2, LCMS2 2.17, LibMPG123 1.33.0, Libpng 1.6.51, LibTiff 4.7.1, LibXml2 2.12.10, LibXslt 1.1.43.

    Forrás: opennet.ru

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster