Wine 9.0-ийн тогтвортой хувилбар

Жилийн хөгжүүлэлт, 26 туршилтын хувилбарын дараа Win32 API-ийн нээлттэй хувилбар болох 9.0 гаруй өөрчлөлтийг агуулсан Wine 7000-ийн тогтвортой хувилбарыг танилцуулав. Шинэ хувилбарын гол амжилтууд нь 64 битийн орчинд 32 битийн програмуудыг ажиллуулах WoW64 архитектурыг хэрэгжүүлэх, Wayland-ийг дэмжих драйверуудыг нэгтгэх, ARM64 архитектурыг дэмжих, DirectMusic API-г хэрэгжүүлэх, ухаалаг картуудыг дэмжих зэрэг багтана.

5336 (жилийн өмнө 5266, хоёр жилийн өмнө 5156, гурван жилийн өмнө 5049) програмууд Wine дээр зөв ажилладаг болох нь батлагдсан. WindowsӨөр 4397 програм (жилийн өмнө 4370, хоёр жилийн өмнө 4312, гурван жилийн өмнө 4227) нэмэлт тохиргоо болон гадаад DLL-тэй сайн ажилладаг. 3943 програм (жилийн өмнө 3888, хоёр жилийн өмнө 3813, гурван жилийн өмнө 3703) нь програмуудын үндсэн функцэд саад учруулдаггүй жижиг асуудлуудтай байна.

Wine 9.0-ийн гол шинэчлэлүүд:

  • Winewayland.drv драйвер нэмэгдсэн бөгөөд энэ нь Wine-г XWayland эсвэл X11 бүрэлдэхүүн хэсгүүдийг ашиглахгүйгээр Wayland дээр суурилсан орчинд ашиглах боломжийг олгосон. Энэхүү хөгжүүлэлт нь хөөргөх дэмжлэгтэй цэвэр Wayland орчинг бүрдүүлэх зорилготой юм. Windows- X11-тэй холбоотой багцуудыг суулгах шаардлагагүй програмууд нь шаардлагагүй давхаргуудыг арилгах замаар тоглоомуудад илүү өндөр гүйцэтгэл, хариу үйлдэл үзүүлэх боломжийг олгодог. Wine-д зориулсан цэвэр Wayland орчинг ашиглах нь X11-д байдаг аюулгүй байдлын асуудлуудыг арилгадаг (жишээлбэл, X11 протокол нь бүх оролтын үйл явдлуудад хандах боломжийг олгодог бөгөөд товчлуурын орлуулалтыг гүйцэтгэдэг тул итгэмжлэгдээгүй X11 тоглоомууд бусад програмуудыг тагнаж чаддаг).

    Драйвер нь туршилтын болон боловсруулагдаж байгаа гэж тэмдэглэгдсэн боловч цонхны менежмент, олон монитортой ажиллах, өндөр пикселийн нягтралтай (өндөр DPI) дэлгэц дээр гаралтыг масштаблахыг дэмжих, түүнтэй ажиллах зэрэг олон функцийг аль хэдийн дэмждэг. хулганы хөдөлгөөнийг хянах, Vulkan график API-г дэмжих үед харьцангуй координатууд. Анхдагчаар драйвер идэвхгүй байгаа бөгөөд үүнийг идэвхжүүлэхийн тулд "HKCU\Software\Wine\Drivers" бүртгэлийн параметрт "wayland"-г нэмж, DISPLAY орчны хувьсагчийг тохируулаагүй эсэхийг шалгаарай: wine reg.exe add HKCU\ \Software\\Wine\\Drivers /v Graphics /d x11,wayland

  • Бүх модулиудыг PE болон Unix давхаргын хооронд шууд дуудлага хийхээс илүүтэйгээр NT системийн дуудлагын интерфейс рүү хөрвүүлсэн нь бүх DLL файлуудыг PE (Portable Executable) гүйцэтгэх файлын форматыг ашиглахын тулд хөрвүүлэх олон жилийн ажил дууссаныг харуулж байна.
  • WoW64 давхаргын (64-бит) хөгжүүлэлт үргэлжилсээр байв. Windows- үгүйWindows), энэ нь танд 32 битийн хувилбарыг ажиллуулах боломжийг олгоно Windows- 64 битийн Unix систем дээрх програмууд. Unix номын санд ханддаг бүх модулиуд нь WoW64 системийн дуудлагын орчуулагч (thunks) ашигладаг бөгөөд энэ нь PE форматтай 32 битийн модулиудыг 64 битийн Unix номын санд хандах боломжийг олгодог.

    Шинэ WoW64 эхлүүлэх горимыг сайжруулж, 32 битийн кодыг 64 битийн процесс дотор ажиллуулах боломжийг олгосон (хуучин WoW64 горимд 32 битийн програмууд 32 битийн Unix процесст ажилладаг байсан). Платформ дээр шинэ WoW64 горимыг ашиглах дэмжлэг нэмэгдсэн. macOSШинэ WoW64 горим нь 16 битийн дэмжлэг дутмаг, ARB_buffer_storage өргөтгөлийг дэмжихгүй байгаагаас болж OpenGL-ийн гүйцэтгэл буурсан зэрэг зарим жижиг алдаатай тул анхдагчаар хараахан идэвхжээгүй байгаа бөгөөд тохиргооны скрипт дэх "--enable-archs=i386,x86_64" сонголттой бүтээхийг шаарддаг.

  • Одоо байгаа гүйцэтгэгдэж буй файлуудыг ажиллуулах чадварыг нэмсэн Windows ARM64 архитектуртай системүүд дээр. Wine-г одоо ARM64EC (ARM64 Эмуляцитай Compatible) ABI-д зориулж бүтээж болох бөгөөд ARM64EC модулиудыг ачаалж болно. Эдгээр модулиудыг x86_64 архитектурт зориулж анх бичигдсэн програмуудыг ARM64 систем рүү хөрвүүлэх ажлыг хялбарчлахад ашигладаг бөгөөд ингэснээр ARM64 орчинд эмулятор ашиглан бие даасан x86_64 кодын модулиудыг ажиллуулах боломжтой болно. ARM64X PE файлын форматад дэмжлэг нэмэгдсэн бөгөөд энэ нь x64/Arm64EC болон ARM64 процессуудад нэг гүйцэтгэгдэх файлыг ачаалах боломжийг олгодог. 32 битийн x86 системийг эмуляцлах интерфэйсийг хэрэгжүүлсэн боловч эмуляторын сан нь Wine-ийн үндсэн тархалтад хараахан ороогүй байна (гадаад FEX эмуляторыг ARM64 орчинд x86 кодыг ажиллуулахад ашиглаж болно).
  • График дэд систем
    • PostScript драйвер нь энэ форматаар дамар файлуудыг дэмжихээр дахин загварчлагдсан. Windows, хэвлэх ажлуудын талаарх өгөгдлийг хадгалдаг. Unix орчноос драйвер руу шууд дуудлага хийхийг оруулаагүй болно.
    • WinRT загварт харанхуй горимын дэмжлэг нэмэгдсэн. Харанхуй интерфейсийн дизайныг идэвхжүүлэх тохиргоог WineCfg-д нэмсэн.
    • Vulkan график API-д зориулсан драйвер нь Vulkan 1.3.272-ийн тодорхойлолтод дэмжлэг нэмсэн (Wine 8.0-д 1.3.237-г дэмжсэн).
    • GdiPlus номын сангийн функцуудыг оновчтой болгосноор графикийн гүйцэтгэлийг нэмэгдүүлэх боломжтой болсон.
  • Direct3D програм
    • Боловсруулж буй команд байхгүй үед олон урсгалтай командын урсгалын задлан шинжилгээг түр зогсоодог бөгөөд энэ нь командын урсгалын өргөнийг бүхэлд нь эзэлдэггүй програмуудыг ажиллуулах үед эрчим хүчний зарцуулалтыг нэг урсгалтай боловсруулалтын түвшинд хүртэл бууруулах боломжийг олгодог.
    • Direct3D 10 нь нэмэлт эффектүүдийг дэмждэг.
    • Vulkan график API ашиглан WineD3D код болон арын хэсэгт гүйцэтгэлийн оновчлол хийсэн.
    • Vulkan API-д суурилсан рэндэрлэх код нь төхөөрөмж ямар боломжуудыг дэмжиж байгааг шалгаж, Direct3D функц ямар түвшинд байгааг програмд ​​хэлж өгдөг.
    • D3DXFillTextureTX болон D3DXFillCubeTextureTX функцууд хэрэгжсэн.
    • Сонгодог OpenGL ARB шэйдерийн арын хэсэгт ARB_fragment_program_shadow өргөтгөлийг ашиглан сүүдрийг тодорхойлох дэмжлэг нэмэгдсэн.
    • D3DXLoadMeshHierarchyFromX болон ижил төстэй функцууд нь ID3DXLoadUserData интерфэйсийг ашиглан хэрэглэгчийн өгөгдлийг ачаалах дэмжлэгийг нэмсэн.
  • Дуу, видео
    • DirectMusic API-ийн анхны хэрэгжилтийг санал болгов. SoundFont форматын цуглуулга, хөгжмийн зэмсэг, дууны дээжийн дэмжлэгийг нэмсэн. Доплер эффектийн дэмжлэгийг нэмсэн. Dmime секвенсер болон dmsynth MIDI синтезаторыг ажиллуулахдаа зөв хэрэгжилтийг шалгах туршилтуудыг хэрэгжүүлсэн.
    • FluidSynth номын санг DirectMusic API-д суулгасан болно.
    • DLS1 болон DLS2 форматуудад, мөн ашигласан SF2 форматад дууны фонтуудыг (SoundFont - MIDI файлуудыг тоглуулахад ашигладаг дээж дээр суурилсан синтезийн форматууд) ачаалах дэмжлэгийг хэрэгжүүлсэн. Linux.
    • FluidSynth програм хангамжийн синтезатор болон аудио гаралтын DirectSound API ашиглан dmsynth номын санг ашиглан MIDI контентыг тоглуулах чадварыг нэмсэн.
    • Indeo IV50 видео кодлогч форматтай видеоны декодлогчийг нэмсэн.
  • Шууд шоу
    • WMV форматын декодлогчтой DMO (DirectX Media Object) бүрэлдэхүүн хэсгийг хэрэгжүүлсэн (Windows Хэвлэл мэдээллийн видео).
    • Аудио бичлэгийн шүүлтүүр (DirectShow аудио бичлэгийн шүүлтүүр) нэмсэн.
    • Аудио урсгалаас гадна MPEG‑1 Stream Splitter (DirectShow MPEG‑1 Stream Splitter) нь одоо видео урсгал болон үйлчилгээний урсгалыг дэмждэг.
    • MPEG‑1 форматтай (DirectShow MPEG‑1 видео тайлагч) видеог тайлах шүүлтүүрийг хэрэгжүүлсэн.
  • Оролтын төхөөрөмж
    • DirectInput нь үйлдлийн зураглалыг дэмждэг бөгөөд энэ нь тоглоомын удирдлага дээрх товчлууруудыг тоглоомын тодорхой үйлдэлтэй холбох боломжийг олгодог.
  • Ширээний компьютерийг нэгтгэх
    • Холболтуудыг үндсэн хэрэглэгчийн орчинд экспортолсон бөгөөд энэ нь Wine дээр ажиллаж байгаа програмуудыг URL нээх үед протокол зохицуулагч гэж нэрлэх боломжийг олгосон (жишээ нь "spotify:user:spotify:playlist:848218482355482821" гэх мэт холбоосуудыг нээх үед spotify.exe програмыг ажиллуулдаг).
    • Төхөөрөмжийн нэр, загвар зэрэг холбогдсон мониторын параметрүүдийн талаарх мэдээлэл бүхий EDID (Extended Display Identification Data) өгөгдлийг задлах ажлыг хэрэгжүүлсэн.
    • "Эхлүүлэх" цэсний "Ширээний компьютерээс гарах" товчийг ашиглан бүтэн дэлгэцийн горимд байрлуулсан ширээний цонхыг хаах боломжтой.
  • Олон улсын
    • IME (Оролтын Аргын Редактор)-ын дэмжлэгийг өргөжүүлсэн. Уугуул хувилбартай нийцтэй байдлыг хангахын тулд ажил хийгдсэн. Windows IME хэрэгжилтүүд болон сайжруулсан интеграцчлал Linux EMI
    • Юникод CLDR (Unicode Common Locale Data Repository) 44-р өгөгдлийн сангаас locale.nls форматаар локал мэдээллийн санг үүсгэх нь bew-ID, blo-BJ, csw-CA, ie-EE, mic-CA зэрэг нэмэлт локалуудад дэмжлэг үзүүлсэн. , prg-PL нэмэгдсэн байна , skr-PK, tyv-RU, vmw-MZ, xnr-IN болон za-CN.
    • Интерфэйсийг Гүрж хэл рүү орчуулсан. Бүрэн орчуулгыг 16 хэлээр, хэсэгчилсэн орчуулгыг 31 хэлээр хангадаг.
    • Юникод тэмдэгтийн хүснэгтүүдийг стандарт хувилбар 15.1.0 болгон шинэчилсэн. Цагийн бүсийн мэдээллийн сан шинэчлэгдсэн.
  • Цөм (цөмийн интерфэйсүүд) Windows)
    • Гаргасан хувилбарын дагуу Windows анхдагчаар тодорхойлогдсон Windows 10.
    • PE форматтай ажиллах боломжтой файлуудын хувьд хаягийн орон зайн санамсаргүй хуваарилалтыг (ASLR) дэмждэг боловч санах ойд код ачаалах хаягууд бүрэн санамсаргүй байдлаар сонгогдоогүй байна.
    • Сул хуваагдсан овоо (LFH, Бага хуваагдмал нуруулдан)-д зориулсан дэмжлэгийг хэрэгжүүлсэн нь санах ойн хуваарилалтын үйл ажиллагааны гүйцэтгэлийг нэмэгдүүлсэн.
    • Виртуал санах ойн хуваарилалтын механизмд санах ойн нөөц (орлуулагч) нэмэгдсэн бөгөөд энэ нь програмыг ирээдүйд ашиглахад зориулж виртуал санах ойн тодорхой хэсгийг нөөцлөх боломжийг олгодог.
    • Гүйцэтгэх боломжтой файлууд болон номын сангуудын 64 битийн дуудагч (ачаалагч ба урьдчилан ачаалагч) нь 32 битийн хаягийн зайг чөлөөлөхийн тулд PIE (Position-Independent Executables) форматаар эмхэтгэсэн.
    • NT системийн дуудлага болон хэрэглэгчийн буцаан дуудлагын хувьд стекийг зөв задлах боломжтой.
  • Сүлжээний онцлог
    • MSHTML хөдөлгүүр нь "Цикл цуглуулах" хог цуглуулах механизмыг дэмждэг.
    • MSHTML нь XMLHttpRequest хүсэлтийг синхроноор боловсруулах дэмжлэгийг нэмсэн.
    • jscript.dll нь түлхүүр/утга хосын цуглуулгатай ажиллахын тулд WeakMap объектын дэмжлэгийг нэмдэг бөгөөд үүнд түлхүүр нь дурын утгыг хавсаргах боломжтой объект юм. WeakMap.get(), WeakMap.delete(), WeakMap.clear() болон WeakMap.has() аргуудыг хэрэгжүүлсэн.
    • Gecko хөтчийн хөдөлгүүрийг 2.47.4 хувилбар болгон шинэчилсэн.
    • Сүлжээний интерфейсийн төлөвийн өөрчлөлтийн талаарх мэдэгдлийн дэмжлэгийг хэрэгжүүлсэн.
  • Криптограф ба аюулгүй байдал
    • PCSClite системийн номын сангаар хэрэгжсэн Winscard.dll номын санд ухаалаг картны дэмжлэг нэмэгдэв.
    • BCrypt нь Diffie-Hellman түлхүүр солилцох протоколын дэмжлэгийг нэмсэн.
    • SSP (Аюулгүй байдлын дэмжлэг үзүүлэгч) үйлчилгээ үзүүлэгчдэд хандахын тулд SSPI (Аюулгүй байдлын дэмжлэг үзүүлэх үйлчилгээ үзүүлэгчийн интерфейс) интерфейсийг ашиглах давхаргыг хангасан Negotiate багцыг хэрэгжүүлсэн.
  • Суулгасан програмууд
    • Wine Debugger (winedbg) нь X86 машины зааврыг задлахад Zydis номын санг ашигладаг.
    • WineCfg интерфэйсийг 64 битийн платформ дээрх хуучин хувилбаруудыг дэмжихээр шинэчилсэн. Windows (XP-ээс өмнө), энэ нь танд WoW64 горимыг ашиглан хуучин програмуудыг ажиллуулах боломжийг олгодог.
    • Бүх суулгасан график програмууд одоо алдааны мэдээллийг консол дээр харуулахын оронд тусдаа харилцах цонхонд харуулдаг.
    • Systeminfo програм нь WMI мэдээллийн сангаас мэдээллийг харуулах боломжийг олгодог (Windows Удирдлагын багаж хэрэгсэл).
    • Kerberos тасалбарыг харуулах klist програмыг нэмсэн.
    • taskkill програм нь хүүхдийн процессыг хүчээр зогсоох чадварыг хэрэгжүүлдэг.
    • X86 болон ARM-г дэмждэг эрлийз гүйцэтгэгдэх программуудыг ажиллуулахад ашигладаг архитектурыг сонгохын тулд эхлүүлэх хэрэгсэлд "/machine" сонголтыг нэмсэн.
    • Даалгаврын жагсаалт програмын ихэнх функцийг хэрэгжүүлсэн.
    • Findstr програмын үндсэн хэрэгжилтийг нэмсэн.
  • Хөгжлийн хэрэгслүүд
    • WineDump хэрэгсэл нь бүртгэлийн файлуудын агуулгыг харуулах чадвартай. Windows (REGF формат), мөн эрлийз PE файлуудад дэмжигдсэн бүх архитектурын (x86/ARM64) өгөгдлийг харуулах.
    • IDL хөрвүүлэгч нь "composable", "default_overload", "хуучирсан" болон "хамгаалагдсан" шинж чанаруудын дэмжлэгийг нэмсэн.
    • Wine 6.0-д хэрэглэгдэхээ больсон libwine.so-г устгасан бөгөөд Wine-д удаан хугацаагаар ашиглагдахаа больсон. libwine.so-тэй Wine-ийн хуучин хувилбарууд (5.0 ба түүнээс дээш) дээр бүтээгдсэн ELF форматтай програмууд нь Wine 9.0 дээр ажиллахын тулд дахин бүтээх шаардлагатай.
  • Суурилуулсан номын сан ба гадаад хамаарал
    • FluidSynth 2.3.3, Musl 1.2.3 (зөвхөн математикийн функцууд) болон Zydis 4.0.0 сангууд багцад нэгдсэн.
    • Vkd3d 1.10, Faudio 23.12, OpenLDAP 2.5.16, LCMS2 2.15, LibMPG123 1.32.2, LibPng 1.6.40, LibTiff 4.6.0, LibXml2 Zlib 2.11.5, шинэчлэгдсэн хувилбарууд. .NET платформыг хэрэгжүүлсэн Wine Mono хөдөлгүүрийг 1.1.38 хувилбар болгон шинэчилсэн.
    • Драйвер winewayland.drv нь Wayland клиент номын санг гаднаас хамаарал болгон, мөн xkbcommon болон xkbregistry номын сангуудыг ашигладаг.
    • Ухаалаг картуудыг дэмжихийн тулд гадаад PCSClite санг ашигладаг (дотор нь macOS — PCSC).
    • i386 бус платформ дээр PE файлуудыг бүтээхэд одоо үл хамаарах зүйлсийг зохицуулахын тулд ".seh" удирдамжийг дэмждэг хөндлөн хөрвүүлэгч шаардлагатай.

Эх сурвалж: opennet.ru

DDoS хамгаалалт, VPS VDS сервер бүхий сайтуудад найдвартай хостинг худалдаж аваарай 🔥 DDoS хамгаалалттай, VPS VDS сервертэй найдвартай вэбсайт хостинг худалдаж аваарай | ProHoster