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 биттік Wine жүктеушісі болмаған жағдайда, 32 биттік қолданбалар 64 биттік код 32 биттік процесс ішінде жұмыс істейтін Windows тәрізді жаңа эксперименттік WoW64 режимінде жұмыс істей алады. Режим '—enable-archs' опциясымен Wine құрастыру кезінде қосылады.
  • Графикалық ішкі жүйе
    • Әдепкі конфигурацияда жарық тақырыбы («Жарық») пайдаланылады. Тақырыпты WineCfg утилитасын пайдаланып өзгертуге болады.
      Wine 8.0 тұрақты шығарылымы
    • Графикалық драйверлер (winex11.drv, winemac.drv, wineandroid.drv) Unix деңгейінде жүйелік қоңырауларды орындауға және Win32u кітапханасы арқылы драйверлерге қол жеткізуге түрлендіріледі.
      Wine 8.0 тұрақты шығарылымы
    • Принтер драйверіндегі PE және Unix деңгейлері арасындағы тікелей қоңырауларды жою үшін пайдаланылатын Print Processor архитектурасы енгізілді.
    • Direct2D API енді әсерлерді қолдайды.
    • Direct2D API пәрмендер тізімдерін жазу және ойнату мүмкіндігін қосты.
    • Vulkan графикалық API драйвері Vulkan 1.3.237 спецификациясына қолдауды қосты (Вулкан 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 ойнатқышы мазмұн түрін анықтауды жақсартты.
    • Деректерді беру жылдамдығын басқару мүмкіндігі (Rate Control) іске асырылды.
    • Enhanced Video Renderer (EVR) ішінде әдепкі араластырғыш пен баяндамашы үшін жақсартылған қолдау.
    • Writer Encoding API бастапқы іске асырылуы қосылды.
    • Жақсартылған топология жүктеуші қолдау.
  • Кіріс құрылғылары
    • Контроллерлерді ыстық қосу үшін айтарлықтай жақсартылған қолдау.
    • SDL кітапханасы негізінде құрастырылған ойын рульдерін анықтау кодының жетілдірілген енгізуі ұсынылады.
    • Ойын дөңгелектерін пайдаланған кезде күшпен кері байланыс әсеріне қолдау жақсартылған.
    • HID Haptic спецификациясы арқылы сол және оң діріл қозғалтқыштарын басқару мүмкіндігі іске асырылды.
    • Джойстиктің басқару тақтасының дизайны өзгертілді.
    • Sony DualShock және DualSense контроллерлеріне қолдау hidraw серверін пайдалану арқылы қамтамасыз етіледі.
    • WinRT модулі Windows.Gaming.Input геймпадтарға, джойстиктерге және ойын дөңгелектеріне қол жеткізу үшін бағдарламалық интерфейсті жүзеге асырумен ұсынылған. Жаңа API үшін, басқалармен қатар, құрылғылардың ыстық қосылуы, тактильді және діріл әсерлері туралы хабарламаны қолдау жүзеге асырылады.
  • Интернационалдандыру
    • Юникод CLDR (Unicode Common Locale Data Repository) репозиторийінен locale.nls пішімінде дұрыс тіл дерекқорын жасау қамтамасыз етіледі.
    • Юникод жолын салыстыру функциялары Юникодты сұрыптау алгоритмінің орнына дерекқор мен Windows сұрыптау кілті алгоритмін пайдалану үшін жылжытылды, бұл мінез-құлықты 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 түрін қолдайды.
    • Блокнот курсордың орны туралы ақпараты бар күй жолағын және көрсетілген жол нөміріне өту үшін Жолға өту функциясын қосты.
    • Кірістірілген консоль OEM код бетінде деректерді шығаруды қамтамасыз етеді.
    • «Сұрау» пәрмені sc.exe (Қызметті басқару) утилитасына қосылды.
  • Құрастыру жүйесі
    • Бірнеше архитектура үшін PE пішімінде орындалатын файлдарды құру мүмкіндігі берілген (мысалы, '—enable-archs=i386,x86_64').
    • Ұзындығы 32 биттік түрі бар барлық платформаларда Windows жүйесінде long ретінде анықталған деректер түрлері енді 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.s. кірістірілген кітапханалардың жаңартылған нұсқалары.
    • .NET платформасын іске асыру бар Wine Mono қозғалтқышы 7.4 шығарылымы үшін жаңартылды.
    • RSA алгоритмі және RSA-PSS цифрлық қолтаңбасы негізінде шифрлауды қолдау жүзеге асырылды.
    • UI Automation API бастапқы нұсқасы қосылды.
    • Бастапқы тармақ PE пішімінде құрастырылған LDAP және vkd3d кітапханаларын қамтиды, бұл кітапханалардың Unix жинақтарын жеткізу қажеттілігін болдырмайды.
    • OpenAL кітапханасы тоқтатылды.

Ақпарат көзі: opennet.ru

пікір қалдыру