Wine 8.0 туруктуу релиз

Бир жылдык иштеп чыгуудан жана 28 эксперименталдык версиядан кийин, 32дөн ашык өзгөртүүнү камтыган Win8.0 API - Wine 8600 ачык ишке ашыруунун туруктуу релизи көрсөтүлдү. Жаңы версиядагы негизги жетишкендик Wine модулдарын форматка которуу боюнча иштердин аяктагандыгын билдирет.

Wine Windows үчүн 5266 (бир жыл мурун 5156, эки жыл мурун 5049) программаларынын толук иштешин тастыктады, дагы 4370 (бир жыл мурун 4312, эки жыл мурун 4227) программалар кошумча орнотуулар жана тышкы DLLлер менен кемчиликсиз иштейт. 3888 программада (3813 бир жыл мурун, 3703 эки жыл мурун) тиркемелердин негизги функцияларын колдонууга тоскоолдук кылбаган операциялык көйгөйлөр бар.

Wine 8.0догу негизги инновациялар:

  • PE форматындагы модулдар
    • Төрт жылдык иштен кийин, бардык DLL китепканаларын PE (Portable Executable, Windowsта колдонулган) аткарылуучу файл форматын колдонууга конвертациялоо аяктады. PEди колдонуу Windows үчүн жеткиликтүү мүчүлүштүктөрдү оңдоочу каражаттарды колдонууга мүмкүндүк берет жана дисктеги жана эс тутумдук модулдардын идентификациясын текшерүүчү ар кандай көчүрмөлөрдү коргоо схемаларын колдоо менен көйгөйлөрдү чечет. 32 биттик хосттордо 64 биттик тиркемелерди жана ARM системаларында x86 тиркемелерди иштетүү менен байланышкан маселелер да чечилди. Wine 8.x кийинки эксперименталдык чыгарылыштарында чечилиши пландалган калган милдеттердин арасында PE жана Unix катмарларынын ортосунда түз чалууларды жасоонун ордуна модулдардын NT тутумунун чалуу интерфейсине өтүүсү бар.
    • Толук NT тутумдук чалууларды аткарууга кеткен чыгымдарды азайтуу үчүн чалууларды PEден Unix китепканаларына которуу үчүн колдонулган атайын тутумдук чалуу менеджери ишке ашырылган. Мисалы, оптималдаштыруу OpenGL жана Vulkan китепканаларын колдонууда өндүрүмдүүлүктүн начарлашын азайтууга мүмкүндүк берди.
    • Winelib тиркемелери ELF (.dll.so) китепканаларынын аралаш Windows/Unix ассамблеяларын колдонуу мүмкүнчүлүгүн сактап калат, бирок 32 биттик китепканалары жок мындай тиркемелер WoW64 сыяктуу NT тутумунун чалуу интерфейси аркылуу жеткиликтүү функцияларды колдобойт.
  • WoW64
    • WoW64 (64-бит Windows-on-Windows) катмарлары бардык Unix китепканалары үчүн камсыздалган, бул PE форматындагы 32-бит модулдарына 64-бит Unix китепканаларына кирүү мүмкүнчүлүгүн берет, алар түздөн-түз PE/Unix чалууларынан арылышкандан кийин, аны жасайт. 32 биттик Unix китепканаларын орнотпостон 32 биттик Windows тиркемелерин аткарууга мүмкүн.
    • 32 биттик Шарап жүктөгүч жок болсо, 32 биттик тиркемелер жаңы эксперименталдык Windows сыяктуу WoW64 режиминде иштей алат, мында 32 биттик код 64 бит процессинде иштейт. Шарапты '—enable-archs' опциясы менен курууда режим иштетилет.
  • Графикалык подсистема
    • Демейки конфигурация жарык темасын колдонот (“Жарык”). Сиз WineCfg утилитасын колдонуп теманы өзгөртө аласыз.
      Wine 8.0 туруктуу релиз
    • Графикалык драйверлер (winex11.drv, winemac.drv, wineandroid.drv) Unix деңгээлинде системалык чалууларды аткарууга жана Win32u китепканасы аркылуу драйверлерге кирүү үчүн конвертирленет.
      Wine 8.0 туруктуу релиз
    • Принтер процессорунун архитектурасы ишке ашырылган жана принтер драйвериндеги PE жана Unix деңгээлдеринин ортосундагы түз чалууларды жок кылуу үчүн колдонулат.
    • Direct2D API азыр эффекттерди колдойт.
    • Direct2D API буйрук тизмелерин жаздыруу жана ойнотуу мүмкүнчүлүгүн кошту.
    • Vulkan графикалык API үчүн драйвер Vulkan 1.3.237 спецификациясына колдоо кошту (Vulkan 7 Wine 1.2де колдоого алынган).
  • Direct3D
    • vkd3d-shader китепканасынын негизинде ишке ашырылган HLSL (Жогорку деңгээлдеги Шейдер тили) үчүн жаңы шейдер компилятору кошулду. Ошондой эле vkd3d-shaderдин негизинде HLSL демонтаждоочу жана HLSL препроцессору даярдалган.
    • D3DX 10до киргизилген Thread Pump интерфейси ишке ашырылган.
    • Direct3D 10 эффекттери көптөгөн жаңы туюнтмаларга колдоо көрсөтөт.
    • D3DX 9 колдоо китепканасы эми Cubemap текстура проекциясын колдойт.
  • Үн жана видео
    • GStreamer негизинин негизинде MPEG-1 форматындагы аудиону чечмелөө үчүн чыпкаларды колдоо ишке ашырылган.
    • ASF (Advanced Systems Format) форматында агымдык аудио жана видеону окуу үчүн чыпка кошулду.
    • OpenAL32.dll аралык китепкана катмары алынып салынды, анын ордуна тиркемелер менен жабдылган жергиликтүү OpenAL32.dll Windows китепканасы колдонулууда.
    • Media Foundation Player мазмун түрүн аныктоону жакшыртты.
    • Маалыматтарды өткөрүү ылдамдыгын көзөмөлдөө мүмкүнчүлүгү (Rate Control) ишке ашырылган.
    • Enhanced Video Renderer (EVR) ичинде демейки аралаштыргыч жана алып баруучу үчүн жакшыртылган колдоо.
    • Writer Encoding API баштапкы ишке ашыруу кошулду.
    • Жакшыртылган топология жүктөөчү колдоо.
  • киргизүү түзмөктөрүн
    • Контроллерлерди ысык туташтыруу үчүн олуттуу жакшыртылган колдоо.
    • SDL китепканасынын базасында курулган оюндун рулдук дөңгөлөктөрүн аныктоо үчүн коддун өркүндөтүлгөн ишке ашырылышы сунушталууда.
    • Оюн дөңгөлөктөрүн колдонууда Force пикир эффектисинин жакшыртылган колдоосу.
    • HID Haptic спецификациясын колдонуу менен сол жана оң титирөө кыймылдаткычтарын башкаруу мүмкүнчүлүгү ишке ашырылган.
    • Джойстиктин башкаруу панелинин конструкциясы өзгөртүлдү.
    • Sony DualShock жана DualSense контроллерлорун колдоо hidraw серверин колдонуу аркылуу камсыз кылынат.
    • WinRT модулу Windows.Gaming.Input геймпаддарга, джойстиктерге жана оюн дөңгөлөктөрүнө кирүү үчүн программалык интерфейсти ишке ашыруу менен сунушталган. Жаңы API үчүн, башка нерселер менен катар, түзмөктөрдү ысык туташтыруу, тактилдик жана титирөө эффекттери жөнүндө билдирүүнү колдоо ишке ашырылат.
  • Интернационалдаштыруу
    • Юникод CLDR (Unicode Common Locale Data Repository) репозиторийинен locale.nls форматында туура жергиликтүү маалымат базасын түзүү камсыз кылынат.
    • Юникод саптарын салыштыруу функциялары Юникодду Collation алгоритминин ордуна маалымат базасын жана Windows Sortkey алгоритмин колдонууга жылдырылып, жүрүм-турумду Windows'ко жакындатты.
    • Көпчүлүк функциялар Юникод кодунун жогорку диапазондорун (учактарды) колдоону кошту.
    • ANSI коддоосу катары UTF-8ди колдонсо болот.
    • Символдор таблицалары Юникод 15.0.0 спецификациясына жаңыртылган.
  • Текст жана шрифттер
    • Арипти байланыштыруу көпчүлүк тутум шрифттери үчүн иштетилди, бул кытай, корей жана жапон тилдери бар системалардагы жетишпеген глифтердин көйгөйүн чечет.
    • DirectWrite'де кайра иштетилген арткы шрифт.
  • Ядро (Windows ядро ​​интерфейстери)
    • Api-ms-* модулдарын алмаштырган жана дисктин жана дарек мейкиндигинин сарпталышын азайткан ApiSetSchema маалымат базасы ишке ашырылды.
    • DOS файл атрибуттары кеңейтилген FS атрибуттарын колдонуу менен Samba шайкеш форматта дискте сакталат.
  • тармактык мүмкүнчүлүктөр
    • Жокко чыгарылган сертификаттарды текшерүү үчүн колдонулган OCSP (Онлайн Сертификаттын Статус Протоколу) үчүн кошумча колдоо.
    • JavaScript стандарттарына шайкештик режиминде жеткиликтүү EcmaScript функцияларынын диапазону кеңейтилди.
    • JavaScript үчүн таштанды жыйноочу ишке киргизилди.
    • Gecko кыймылдаткыч топтому мүмкүнчүлүгү чектелген адамдар үчүн функцияларды камтыйт.
    • MSHTML Web Storage API, Performance объектисин жана окуяны иштетүү үчүн кошумча объекттерди колдоону кошот.
  • Камтылган колдонмолор
    • Бардык орнотулган тиркемелер Common Controls 6 китепканасын колдонууга айландырылды, дизайн темаларын колдоо жана жогорку пикселдик тыгыздыктагы экрандарды эске алуу менен көрсөтүү.
    • Wine Debugger (winedbg) ичиндеги жиптерди оңдоо үчүн өркүндөтүлгөн мүмкүнчүлүктөр.
    • Реестрдин утилиталары (REGEDIT жана REG) эми QWORD түрүн колдойт.
    • Блокнот курсордун абалы жөнүндө маалымат менен абал тилкесин жана көрсөтүлгөн сап номерине өтүү үчүн Goto Line функциясын кошту
    • Камтылган консол OEM код барагында маалыматтарды чыгарууну камсыз кылат.
    • "Суроо" буйругу sc.exe (Кызматты көзөмөлдөө) утилитасына кошулду.
  • Чогултуу системасы
    • Бир нече архитектуралар үчүн PE форматында аткарылуучу файлдарды куруу мүмкүнчүлүгү берилген (мисалы, '—enable-archs=i386,x86_64').
    • 32 бит узундуктагы бардык платформаларда Windows'та узун катары аныкталган маалымат түрлөрү эми Wine'де "int" ордуна "long" катары аныкталат. Winelibте бул жүрүм-турумду WINE_NO_LONG_TYPES аныктамасы аркылуу өчүрүүгө болот.
    • dlltool колдонбостон китепканаларды түзүү мүмкүнчүлүгү кошулду (winebuild'де '—without-dlltool' опциясын коюу менен иштетилген).
    • Жүктөөнүн натыйжалуулугун жогорулатуу жана кодсуз, ресурстук китепканалардын көлөмүн азайтуу үчүн, winegcc "--дата гана" опциясын ишке ашырат.
  • Разное
    • Faudio 22.11, LCMS2 2.14, LibJPEG 9e, LibMPG123 1.31.1, LibPng 1.6.39, LibTiff 4.4.0, LibXml2 2.10.3, LibX1.1.37, LibX1.2.13, Faudio XNUMX, LCMSXNUMX XNUMX, LibJPEG XNUMXe, камтылган китепканалардын жаңыртылган версиялары
    • .NET платформасын ишке ашыруу менен Wine Mono кыймылдаткычы 7.4 чыгаруу үчүн жаңыртылган.
    • RSA алгоритминин жана RSA-PSS санариптик кол тамгасынын негизинде шифрлөөнү колдоо ишке ашырылган.
    • UI Automation API баштапкы версиясы кошулду.
    • Булак дарагы PE форматында түзүлгөн LDAP жана vkd3d китепканаларын камтыйт, бул китепканалардын Unix ассамблеяларын камсыздоо зарылдыгын жокко чыгарат.
    • OpenAL китепканасы токтотулду.

Source: opennet.ru

Комментарий кошуу