Нашри устувори Wine 5.0

Пас аз як соли таҳия ва 28 версияи таҷрибавӣ пешниҳод карда мешавад барориши устувори татбиқи кушодаи Win32 API - Wine 5.0, ки зиёда аз 7400 тагьиротро дарбар мегирад. Дастовардҳои калидии версияи нав интиқоли модулҳои дарунсохташудаи Wine дар формати PE, дастгирии конфигуратсияҳои бисёрқабата, татбиқи нави API аудиои XAudio2 ва дастгирии API графикии Vulkan 1.1 мебошанд.

Дар Вин тасдиқ карда шуд фаъолияти пурраи 4869 (як сол пеш 4737) барномаҳо барои Windows, 4136 (як сол пеш 4045) барномаҳои дигар бо танзимоти иловагӣ ва DLL-ҳои беруна комилан кор мекунанд. 3635 барномаҳо мушкилоти ночизи иҷроиш доранд, ки ба истифодаи функсияҳои асосии барнома халал намерасонанд.

Калиди навовариҳо Шароб 5.0:

  • Модулҳо дар формати PE
    • Бо компилятори MinGW, аксари модулҳои Wine ҳоло дар формати файли иҷрошавандаи PE (Portable Executable, истифодашаванда дар Windows) ба ҷои ELF сохта шудаанд. Истифодаи PE мушкилотро бо дастгирии схемаҳои гуногуни ҳифзи нусхабардорӣ, ки шахсияти модулҳои системаро дар диск ва хотира тафтиш мекунанд, ҳал мекунад;
    • Акнун файлҳои иҷрошавандаи PE ба феҳристи ~/.wine ($WINEPREFIX) нусхабардорӣ карда мешаванд, ба ҷои истифодаи файлҳои DLL, ки ашёро ба насбҳои воқеии Windows монанд мекунанд, бо ҳисоби масрафи фазои иловагии диск;
    • Модулҳое, ки ба формати PE табдил дода шудаанд, метавонанд стандартиро истифода баранд wchar Функсияҳо ва константаҳои C бо Юникод (масалан, L"abc");
    • Wine C runtime барои пайвастшавӣ бо бинарҳои дар MinGW сохташуда дастгирии илова кардааст, ки он ба ҷои пешфарз ба ҷои вақти MinGW ҳангоми сохтани DLL истифода мешавад;
  • Зерсистемаи графикӣ
    • Дастгирии иловагӣ барои кор бо мониторҳои сершумор ва адаптерҳои графикӣ, аз ҷумла қобилияти динамикӣ тағир додани танзимот;
    • Драйвер барои API графикии Vulkan барои мувофиқат ба мушаххасоти Vulkan 1.1.126 навсозӣ шудааст;
    • Китобхонаи WindowsCodecs имкони табдил додани форматҳои растрии иловагӣ, аз ҷумла форматҳоро бо палитраи индексатсияшуда таъмин мекунад;
  • Direct3D
    • Ҳангоми иҷро кардани барномаҳои пурраи экрани Direct3D, занги муҳофизи экран баста мешавад;
    • DXGI (DirectX Graphics Infrastructure) барои огоҳ кардани барнома ҳангоми кам кардани равзанаи он дастгирии илова кардааст, ки ба барнома имкон медиҳад, ки ҳангоми кам кардани равзана иҷрои амалиётҳои серталабро кам кунад;
    • Барои барномаҳое, ки DXGI-ро истифода мебаранд, акнун имкон дорад, ки бо истифода аз комбинатсияи Alt+Enter дар байни ҳолати пурраи экран ва равзана гузаред;
    • Имкониятҳои татбиқи Direct3D 12 васеъ карда шуданд, масалан, ҳоло барои гузаштан байни режимҳои пурраи экран ва тиреза, тағир додани режимҳои экран, миқёси баромад ва идоракунии фосилаи ивазкунии буфери визуалӣ (фосилаи своп) дастгирӣ карда мешавад;
    • Муносибати мукаммали ҳолатҳои гуногуни сарҳадӣ, ба монанди истифодаи арзишҳои вуруди берун аз диапазон барои санҷишҳои шаффофият ва амиқ, намоиш бо матнҳо ва буферҳои инъикосшуда ва истифодаи объектҳои нодурусти DirectDraw қайчи, сохтани дастгоҳҳои Direct3 барои тирезаҳои нодуруст бо истифода аз минтақаҳои намоён, ки арзишҳои ҳадди ақали параметрҳои онҳо ба ҳадди аксар баробаранд ва ғайра.
    • Direct3D 8 ва 9 пайгирии дақиқтарро таъмин мекунанд "ифлос» минтақаҳои матнҳои пурборшуда;
    • Андозаи фазои суроғаи зарурӣ ҳангоми боркунии матнҳои 3D фишурдашуда бо усули S3TC кам карда шуд (ба ҷои пурра бор кардан, матнҳо ба қисмҳо бор карда мешаванд).
    • Интерфейс амалӣ карда шуд ID3D11Multithread барои ҳифзи бахшҳои муҳим дар барномаҳои бисёр ришта;
    • Барои замимаҳои кӯҳнаи DirectDraw такмилҳо ва ислоҳҳои мухталифи марбут ба ҳисобҳои рӯшноӣ анҷом дода шуданд;
    • Зангҳои иловагӣ барои ба даст овардани маълумот дар бораи shaders дар API амалӣ карда шуданд ShaderReflection;
    • wined3d ҳоло дастгирӣ мекунад блота Дар асоси CPU барои коркарди захираҳои фишурда;
    • Пойгоҳи кортҳои графикии дар Direct3D эътирофшуда васеъ карда шуд;
    • Илова кардани калидҳои нави сабти HKEY_CURRENT_USER\Software\Wine\Direct3D: "shader_backend" (барои кор бо шейдерҳо: "glsl" барои GLSL, "arb" барои ARB vertex/фрагмент ва "нест" барои хомӯш кардани дастгирии shader), "strict_shader_math" 0x1 - фаъол, 0x0 - ғайрифаъол кардани табдили shader Direct3D). Калиди "UseGLSL" бекор карда шудааст (бояд "shader_backend" -ро истифода барад);
  • D3DX
    • Дастгирии механизми фишурдани матни 3D S3TC (S3 Texture Compression) амалӣ карда шуд;
    • Татбиқи дурусти амалиётҳо, аз қабили пур кардани матн ва рӯи хаританашаванда илова карда шуд;
    • Ба чаҳорчӯбаи эҷод такмилҳо ва ислоҳҳои гуногун ворид карда шуданд эффектҳои визуалӣ;
  • Ядро (интерфейсҳои ядрои Windows)
    • Аксарияти функсияҳои дар Kernel32 истифодашуда ба он кӯчонида шуданд
      KernelBase, пас аз тағирот дар меъмории Windows;

    • Имконияти омехта кардани DLL-ҳои 32 ва 64-бит дар директорияҳое, ки барои боркунӣ истифода мешаванд. Боварӣ ҳосил мекунад, ки китобхонаҳое, ки ба умқи битҳои ҷорӣ мувофиқ нестанд, нодида гирифта мешаванд (32/64), дар сурати минбаъд дар қад-қади роҳ метавон китобхонаеро пайдо кард, ки ба умқи битҳои ҷорӣ мувофиқ бошад;
    • Барои драйверҳои дастгоҳ, эмуляцияи объектҳои ядро ​​​​беҳтар карда шудааст;
    • Объектҳои ҳамоҳангсозии амалӣ, ки дар сатҳи ядро ​​кор мекунанд, ба монанди қулфҳои spin, мутексҳои зуд ва тағирёбандаҳои ба захира замимашуда;
    • Кафолат медиҳад, ки барномаҳо дар бораи ҳолати батарея дуруст маълумот доранд;
  • Интерфейси корбар ва ҳамгироии мизи корӣ
    • Тирезаҳои камкардашуда ҳоло бо истифода аз сатри унвон, на тасвири услуби Windows 3.1 намоиш дода мешаванд;
    • Сабкҳои нави тугмаҳо илова карда шуданд Тугмаи тақсим (тугма бо рӯйхати афтанда амалҳо) ва Пайвандҳои фармон (пайвандҳо дар қуттиҳои муколама барои гузаштан ба марҳилаи оянда истифода мешаванд);
    • Истинодҳои рамзӣ барои ҷузвдонҳои "Зеркашиҳо" ва "Шаблонҳо" сохта шудаанд, ки ба директорияҳои мувофиқ дар системаҳои Unix ишора мекунанд;
  • Дастгоҳҳои дохилӣ
    • Ҳангоми оғозёбӣ, драйверҳои лозимии Plug & Play насб ва бор карда мешаванд;
    • Дастгирии мукаммал барои контроллерҳои бозӣ, аз ҷумла мини-ҷойстик (гузариши кулоҳ), руль, педали газ ва тормоз.
    • Дастгирии API-и кӯҳнаи ҷойстики Linux, ки дар ядроҳои Linux пеш аз версияи 2.2 истифода мешуд, қатъ карда шуд;
  • .NET
    • Муҳаррики Mono барои нашри 4.9.4 навсозӣ шудааст ва ҳоло қисмҳои чаҳорчӯбаи Windows Presentation Foundation (WPF) -ро дар бар мегирад;
    • Имконияти насб кардани замимаҳо бо Mono ва Gecko дар як феҳристи умумӣ, ҷойгир кардани файлҳо дар иерархияи /usr/share/wine ба ҷои нусхабардории онҳо ба префиксҳои нав илова карда шуд;
  • Имкониятҳои шабакавӣ
    • Муҳаррики браузери Wine Gecko, ки дар китобхонаи MSHTML истифода мешавад, барои нашри 2.47.1 навсозӣ шудааст. Дастгирии API-ҳои нави HTML амалӣ карда шуд;
    • MSHTML ҳоло унсурҳои SVG -ро дастгирӣ мекунад;
    • Бисёр функсияҳои нави VBScript илова карда шуданд (масалан, коркардкунандагони хатоҳо ва истисноҳо, Соат, Рӯзи, Моҳ, Сатр, LBound, RegExp.Replace, РScriptTypeInfo_* ва ScriptTypeComp_Bind* ва ғайра);
    • Таъмини нигоҳдории ҳолати код дар VBScript ва JScript (истеъмоли скрипт);
    • Татбиқи ибтидоии хидмати HTTP (WinHTTP) ва API-и алоқаманд (HTTPAPI) барои барномаҳои муштарӣ ва сервер, ки бо истифода аз протоколи HTTP дархост ирсол ва қабул мекунанд, илова карда шуд;
    • Имконияти ба даст овардани танзимоти прокси HTTP тавассути DHCP амалӣ карда шуд;
    • Дастгирии иловашуда барои бозгардонидани дархостҳои аутентификатсия тавассути хидмати Microsoft Passport;
  • Криптография
    • Дастгирии амалӣ барои калидҳои криптографии каҷи эллиптикӣ (ECC) ҳангоми истифодаи GnuTLS;
    • Имконияти воридоти калидҳо ва сертификатҳо аз файлҳо дар формати PFX илова карда шуд;
    • Дастгирии иловагии нақшаи тавлиди калид дар асоси пароли PBKDF2;
  • Матн ва шрифтҳо
    • Татбиқи DirectWrite API барои хусусиятҳои OpenType, ки ба он марбутанд, дастгирӣ илова кардааст ҷойгиркунии глиф, ки ба таври нобаёнӣ барои сабки лотинӣ фаъол шудаанд, аз ҷумла kerning;
    • Амнияти беҳтари коркарди маълумотҳои шрифт тавассути тафтиши дурустии ҷадвалҳои гуногуни маълумот пеш аз истифодаи онҳо;
    • Интерфейсҳои DirectWrite бо SDK навтарин мутобиқ карда шуданд;
  • Садо ва видео
    • Татбиқи нави API-и садо пешниҳод карда шуд XAudio2, дар асоси лоиха сохта шудааст Фаудио. Истифодаи FAudio дар Wine ба шумо имкон медиҳад, ки сифати баландтари садоро дар бозиҳо ба даст оред ва аз хусусиятҳое, аз қабили омехтакунии овоз ва эффектҳои пешрафтаи садо истифода баред;
    • Ба татбиқи чаҳорчӯбаи Фонди Медиа шумораи зиёди зангҳои нав илова карда шуданд, аз ҷумла дастгирии навбатҳои дарунсохт ва фармоишии асинхронӣ, API Source Reader, Media Session ва ғайра.
    • Филтри сабти видео ба ҷои API v4l2 ба истифодаи v4l1 API гузаштааст, ки доираи камераҳои дастгирӣшавандаро васеъ кардааст;
    • Декодерҳои дарунсохташудаи AVI, MPEG-I ва WAVE хориҷ карда шудаанд, ки ба ҷои онҳо системаи GStreamer ё QuickTime ҳоло истифода мешаванд;
    • Як зермаҷмӯи API-ҳои конфигуратсияи VMR7 илова карда шуд;
    • Дастгирии иловашуда барои танзими садои каналҳои инфиродӣ ба драйверҳои садо;
  • Интернационализатсия
    • Ҷадвалҳои Юникод ба версияи 12.1.0 нав карда шудаанд;
    • Дастгирии ба эътидол овардани Юникод амалӣ карда шуд;
    • Таъмини насби худкори минтақаи ҷуғрофӣ (HKEY_CURRENT_USER\Панели идоракунӣ\International\Geo) дар асоси маҳалли ҷорӣ;
  • RPC/COM
    • Дастгирии иловагӣ барои сохторҳо ва массивҳои мураккаб ба typelib;
    • Иҷрои ибтидоии китобхонаи вақти кории Windows Script илова карда шуд;
    • Иҷрои ибтидоии китобхонаи ADO (Microsoft ActiveX Data Objects) илова карда шуд;
  • Монтажчиён
    • Дастгирии таҳвили часпакҳо (Patch Files) барои насбкунандаи MSI амалӣ карда шудааст;
    • Утилитаи WUSA (Windows Update Standalone Installer) ҳоло қобилияти насб кардани навсозиро дар формати .MSU дорад;
  • платформаи ARM
    • Барои меъмории ARM64, дастгирии кушодани стек ба ntdll илова карда шудааст. Дастгирии иловашуда барои пайваст кардани китобхонаҳои берунии libunwind;
    • Барои меъмории ARM64, дастгирии проксиҳои бефосила барои интерфейсҳои объект амалӣ карда шудааст;
  • Воситаҳои рушд / Winelib
    • Имконияти истифодаи debugger аз Visual Studio барои ислоҳи фосилаи дур барномаҳое, ки дар Wine кор мекунанд, илова карда шуд;
    • Китобхонаи DBGENG (Debug Engine) қисман амалӣ карда шуд;
    • Бинарҳои барои Windows тартибдодашуда дигар аз libwine вобаста нестанд ва ба онҳо имкон медиҳад, ки дар Windows бидуни вобастагии иловагӣ кор кунанд;
    • Имконияти '--sysroot' ба Compiler Resources ва IDL Compiler барои муайян кардани роҳ барои файлҳои сарлавҳа илова карда шуд;
    • Имконоти иловашуда '—target', '—wine-objdir', '—wine-objdir' ба winegcc
      '—winebuild' ва '-fuse-ld', ки фароҳам овардани муҳити зистро барои байниҳамдигарӣ содда мекунанд;

  • Барномаҳои воридшуда
    • Як утилитаи CHCP барои танзими рамзгузории консол татбиқ карда шуд;
    • Утилитаи MSIDB барои коркарди пойгоҳи додаҳо дар формати MSI амалӣ карда шуд;
  • Оптимизатсия иҷрои
    • Функсияҳои гуногуни вақтсозӣ барои истифодаи функсияҳои таймери баландсифати система интиқол дода шуданд, ки хароҷоти изофаро дар гардиши намоиши бисёр бозиҳо коҳиш медиҳад;
    • Имконияти истифодаи Ext4 дар FS илова карда шуд режим бе ҳассосияти ҳарфҳо кор кардан;
    • Фаъолияти коркарди миқдори зиёди элементҳо дар муколамаҳои намоиши рӯйхат, ки дар реҷаи LBS_NODATA кор мекунанд, оптимизатсия карда шудааст;
    • Татбиқи зудтари қуфлҳои SRW (Slim Reader/Writer) барои Linux илова карда шуд, ки ба Futex тарҷума шудааст;
  • Вобастагии беруна
    • Барои ҷамъ кардани модулҳо дар формати PE, компилятори кросс MinGW-w64 истифода мешавад;
    • Татбиқи XAudio2 китобхонаи FAudio-ро талаб мекунад;
    • Барои пайгирии тағйироти файл дар системаҳои BSD
      китобхонаи Inotify истифода мешавад;

    • Барои коркарди истисноҳо дар платформаи ARM64, китобхонаи Unwind лозим аст;
    • Ба ҷои Video4Linux1, ҳоло китобхонаи Video4Linux2 лозим аст.

Манбаъ: opennet.ru

Илова Эзоҳ