Π‘Ρ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅Π»ΠΈΠ· Wine 10.0

ПослС Π³ΠΎΠ΄Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ 29 ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Ρ… вСрсий прСдставлСн ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅Π»ΠΈΠ· ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Win32 API β€” Wine 10.0, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²ΠΎΠ±Ρ€Π°Π» Π² сСбя Π±ΠΎΠ»Π΅Π΅ 6000 ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. Из ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… достиТСний Π² Π½ΠΎΠ²ΠΎΠΉ вСрсии выдСляСтся полная ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ ARM64EC, ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° экранах с высокой ΠΏΠ»ΠΎΡ‚Π½ΠΎΡΡ‚ΡŒΡŽ пиксСлСй, Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° Wayland, рСализация ΠΏΠ°Π½Π΅Π»Π΅ΠΉ для настройки экрана ΠΈ дТойстика, Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Π΄ΠΈΠΉΠ½Ρ‹ΠΉ бэкСнд Π½Π° Π±Π°Π·Π΅ FFmpeg, Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ Bluetooth, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Vulkan 1.4, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ эмуляции ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π²ΠΈΠ΄Π΅ΠΎΡ€Π΅ΠΆΠΈΠΌΠΎΠ².

Π’ Wine ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½Π° полноцСнная Ρ€Π°Π±ΠΎΡ‚Π° 5372 ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ для Windows (Π³ΠΎΠ΄ Π½Π°Π·Π°Π΄ 5336, Π΄Π²Π° Π³ΠΎΠ΄Π° Π½Π°Π·Π°Π΄ 5266, Ρ‚Ρ€ΠΈ Π³ΠΎΠ΄Π° Π½Π°Π·Π°Π΄ 5156), Π΅Ρ‰Ρ‘ 4435 ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ (Π³ΠΎΠ΄ Π½Π°Π·Π°Π΄ 4397, Π΄Π²Π° Π³ΠΎΠ΄Π° Π½Π°Π·Π°Π΄ 4370, Ρ‚Ρ€ΠΈ Π³ΠΎΠ΄Π° Π½Π°Π·Π°Π΄ 4312) прСкрасно Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ ΠΏΡ€ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… настройках ΠΈ Π²Π½Π΅ΡˆΠ½ΠΈΡ… DLL. Π£ 4020 ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ (Π³ΠΎΠ΄ Π½Π°Π·Π°Π΄ 3943, Π΄Π²Π° Π³ΠΎΠ΄Π° Π½Π°Π·Π°Π΄ 3888, Ρ‚Ρ€ΠΈ Π³ΠΎΠ΄Π° Π½Π°Π·Π°Π΄ 3813) Π½Π°Π±Π»ΡŽΠ΄Π°ΡŽΡ‚ΡΡ нСбольшиС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π² Ρ€Π°Π±ΠΎΡ‚Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΠΌΠ΅ΡˆΠ°ΡŽΡ‚ использованию основных Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.

ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ Π½ΠΎΠ²ΡˆΠ΅ΡΡ‚Π²Π° Wine 10.0:

  • ARM64
    • ΠžΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½Π° полная ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ ARM64EC (ARM64 Emulation Compatible), ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ Π² Wine ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ достиг ΠΏΠ°Ρ€ΠΈΡ‚Π΅Ρ‚Π° с Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ΠΎΠΉ ARM64. АрхитСктура ARM64EC Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° для упрощСния портирования Π½Π° систСмы ARM64 ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ написанных для систСм x86_64, ΠΈ позволяСт Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π² ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΈ ARM64 ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ с ΠΊΠΎΠ΄ΠΎΠΌ x86_64 ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ эмулятора.
    • Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° полная ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° PE-Ρ„Π°ΠΉΠ»ΠΎΠ² ARM64X, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт ΡΠΎΠ²ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ Π² ΠΎΠ΄Π½ΠΎΠΌ исполняСмом Ρ„Π°ΠΉΠ»Π΅ ΠΊΠΎΠ΄ для Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ ARM64EC ΠΈ ARM64. Для сборки Wine Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ ARM64X Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ LLVM ΠΈΠ· Git (нСобходимая Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π²ΠΎΠΉΠ΄Ρ‘Ρ‚ Π² состав Ρ€Π΅Π»ΠΈΠ·Π° LLVM 20) ΠΈ ΠΏΡ€ΠΈ запускС скрипта Β«configureΒ» ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΎΠΏΡ†ΠΈΡŽ Β«β€”enable-archs=arm64ec,aarch64Β».
    • Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ интСрфСйс для эмуляции 64-разрядных систСм x86. ΠŸΡ€ΠΈ использовании ARM64EC сам Wine выполняСтся ΠΊΠ°ΠΊ Π΅ΡΡ‚ΡŒ, Π° эмуляция примСняСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для ΠΊΠΎΠ΄Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ x86-64. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° с эмулятором ΠΏΠΎΠΊΠ° Π½Π΅ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π° Π² основной состав Wine, Π½ΠΎ для запуска ΠΊΠΎΠ΄Π° x86-64 Π² ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΈ ARM64 ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ внСшний эмулятор FEX, собранный с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ ARM64EC.
    • Для ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ ARM64 Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ использованиС Π² систСмС страниц памяти Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ 4ΠšΠ‘, ΠΊΠ°ΠΊ Ρ‚ΠΎΠ³ΠΎ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ABI Windows (запуск Π² окруТСниях с ядрами Linux, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠΌΠΈ страницы памяти 16K ΠΈΠ»ΠΈ 64K ΠΏΠΎΠΊΠ° Π½Π΅ поддСрТиваСтся).
  • ГрафичСская подсистСма
    • Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ Π±ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΡ‡Π½ΠΎΠ΅ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° экранах с высокой ΠΏΠ»ΠΎΡ‚Π½ΠΎΡΡ‚ΡŒΡŽ пиксСлСй (High-DPI). ΠžΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ€Π΅ΠΆΠΈΠΌΠ° DPI Awareness для ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ отобраТСния ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π° экранах с высокой ΠΏΠ»ΠΎΡ‚Π½ΠΎΡΡ‚ΡŒΡŽ пиксСлСй, с ΡƒΡ‡Ρ‘Ρ‚ΠΎΠΌ Ρ‚ΠΎΠ³ΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π΄Π°ΠΏΡ‚Π°Ρ†ΠΈΡŽ ΠΊ измСнСнию DPI ΠΈΠ»ΠΈ Π½Π΅Ρ‚ (прилоТСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‚ DPI, ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΡƒΡŽΡ‚ΡΡ автоматичСски). Π”ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ ΠΎΠΏΡ†ΠΈΠΈ для пСрСопрСдСлСния ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ High-DPI Π² привязкС ΠΊ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ прилоТСниям ΠΈΠ»ΠΈ прСфиксам Wine.
    • Π’ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ для графичСского API Vulkan Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° спСцификации Vulkan 1.4 (Π² Wine 9.0 поддСрТивался Vulkan 1.3.272). Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ Vulkan для кодирования ΠΈ дСкодирования Π²ΠΈΠ΄Π΅ΠΎ.
    • ΠŸΡ€ΠΈ использовании бэкСнда X11 Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ отрисовки Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΡ… ΠΎΠΊΠΎΠ½ Vulkan для ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΡ… ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ ΠΎΠΊΠ½Π° для Π²Ρ‹Π²ΠΎΠ΄Π° 3D-ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° (Ρ€Π°Π½Π΅Π΅ подобная Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π±Ρ‹Π»Π° доступна Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для OpenGL).
    • Π’ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ GdiPlus Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° связывания ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠ² (Β«Font LinkingΒ»), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π³ΠΎ ΠΏΡ€ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ тСкста Π·Π°Π΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ нСсколько ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠ², Ссли ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ ΡˆΡ€ΠΈΡ„Ρ‚Ρ‹ ΠΏΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ всС Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‰ΠΈΠ΅ΡΡ Π² тСкстС символы.
  • Wayland
    • Π’ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΠΎΠ²Π°Π½ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ winewayland.drv, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Wine Π² окруТСниях Π½Π° Π±Π°Π·Π΅ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° Wayland Π±Π΅Π· примСнСния XWayland ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² X11. Wine запускаСт прилоТСния ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π½Π° Wayland Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ссли XWayland нСдоступСн, Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС запуск с использованиСм XWayland остаётся ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π½Ρ‹ΠΌ. Для ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Wayland ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ окруТСния DISPLAY, Π»ΠΈΠ±ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠ»ΡŽΡ‡ Π² рССстр, создав Ρ„Π°ΠΉΠ» file.reg: Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER\Software\Wine\Drivers] Β«GraphicsΒ»=Β»waylandΒ» ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠ² Π΅Π³ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ: $ WINEPREFIX=/ΠΏΡƒΡ‚ΡŒ/Π΄ΠΎ/прСфикса wine regedit /ΠΏΡƒΡ‚ΡŒ/Π΄ΠΎ/file.reg
    • Π’ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ winewayland.drv Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° OpenGL ΠΈ ΠΏΠΈΠΊΡΠ΅Π»ΡŒΠ½Ρ‹Ρ… Π±ΡƒΡ„Π΅Ρ€ΠΎΠ² (pBuffer).
    • Π Π΅ΡˆΠ΅Π½Ρ‹ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ… ΠΎΠΊΠΎΠ½ Π² окруТСниях Π½Π° Π±Π°Π·Π΅ Wayland.
    • ΠŸΡ€ΠΈ использовании Wayland Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π°Π²Ρ‚ΠΎΠΏΠΎΠ²Ρ‚ΠΎΡ€Π° наТатия ΠΏΡ€ΠΈ ΡƒΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠΈ клавиш.
  • Π˜Π½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡ с Ρ€Π°Π±ΠΎΡ‡ΠΈΠΌ столом
    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½ ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ эмуляции Β«modesettingΒ», ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ ΡΠΌΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π²ΠΈΠ΄Π΅ΠΎΡ€Π΅ΠΆΠΈΠΌΠΎΠ² Π±Π΅Π· фактичСского измСнСния настроСк экрана. Π’ΠΈΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ измСнСния Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ экрана Π±Π΅Π· ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π²ΠΈΠ΄Π΅ΠΎΡ€Π΅ΠΆΠΈΠΌΠ° создаётся Ρ‡Π΅Ρ€Π΅Π· Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ ΠΈ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠΊΠΎΠ½.
    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½ Π½ΠΎΠ²Ρ‹ΠΉ Π°ΠΏΠΏΠ»Π΅Ρ‚ Desktop Control Panel (desk.cpl) с Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ интСрфСйса управлСния настройками дисплСя (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ дСсктопа ΠΈΠ»ΠΈ Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ эмулируСмыС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ дисплСя).
    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ сброса настроСк экрана Π² значСния ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π² случаС нСвозмоТности Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ состояниС послС Π°Π²Π°Ρ€ΠΈΠΉΠ½ΠΎΠ³ΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ процСсса.
    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΏΠΎΠΊΠ°Π·Π° ΠΏΠΈΠΊΡ‚ΠΎΠ³Ρ€Π°ΠΌΠΌ Π² систСмном Π»ΠΎΡ‚ΠΊΠ΅ (Π² Β«HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\ExplorerΒ» слСдуСт ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Β«NoTrayItemsDisplay=1Β»).
    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΎΠ±ΠΎΠ»ΠΎΡ‡Π΅ΠΊ (Shell launcher) Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ дСсктопа (Π² Β«HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\ExplorerΒ» слСдуСт ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Β«NoDesktop=1Β»).
  • Direct3D
    • Для отрисовки с использованиСм OpenGL Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ трСбуСтся ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° GLSL 1.20, Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ EXT_framebuffer_object ΠΈ ARB_texture_non_power_of_two. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° старого бэкСнда ARB shader ΠΈ настройки OffscreenRenderingMode ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‰Π΅Π½Π°.
    • Для Direct3D 9 ΠΈ Π±ΠΎΠ»Π΅Π΅ старых вСрсий Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ графичСский ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€ фиксированных Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ (Π² старых Direct3D ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΠ»ΠΈΡΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€Π΅Π΄ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Π΅ графичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ нСльзя Π±Ρ‹Π»ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ), Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ языка ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΎΠ² HLSL ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ ΡΠΌΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ фиксированныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΡ€ΠΈ отрисовкС Ρ‡Π΅Ρ€Π΅Π· API Vulkan ΠΈΠ»ΠΈ OpenGL.
    • ΠŸΡ€ΠΈ отрисовкС с использованиСм Vulkan задСйствованы Vulkan-Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ для динамичСского измСнСния состояния графичСского ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€Π°, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ ΡΠΎΠΊΡ€Π°Ρ‚ΠΈΡ‚ΡŒ подвисания Π² ΠΈΠ³Ρ€Π°Ρ….
    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½ Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ бэкСнд glsl-vkd3d для ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΎΠ² GLSL, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠΉ vkd3d-shader.
    • ΠŸΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»Π΅Π½Π° Π½Π°Ρ‡Π°Π»ΡŒΠ½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° компиляции эффСктов Direct3D, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ vkd3d-shader.
    • Π’ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ D3DX9 Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ MIP-тСкстур (MipMap) ΠΏΡ€ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅ ΠΎΠ±ΡŠΡ‘ΠΌΠ½Ρ‹Ρ… тСкстур. Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ² прСдставлСния Ρ†Π²Π΅Ρ‚Π° 64bpp RGBA ΠΈ 48bpp RGB Π² изобраТСниях PNG, Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ² X8L8V8U8, A2W10V10U10, A8P8, V16U16 ΠΈ Q16W16V16U16.
  • Π—Π²ΡƒΠΊ ΠΈ Π²ΠΈΠ΄Π΅ΠΎ
    • Π’ качСствС Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρ‹ бэкСнду Π½Π° Π±Π°Π·Π΅ GStreamer Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Π½ΠΎΠ²Ρ‹ΠΉ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Π΄ΠΈΠΉΠ½Ρ‹ΠΉ бэкСнд, основанный Π½Π° использовании FFmpeg ΠΈ ΠΏΡ€ΠΈΠ³ΠΎΠ΄Π½Ρ‹ΠΉ для обСспСчСния Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° Media Foundation. Для Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ бэкСнда Π² сСкции рССстра Β«HKCU\Software\Wine\MediaFoundationΒ» слСдуСт ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Β«DisableGstByteStreamHandler=1Β».
    • Π£Π»ΡƒΡ‡ΡˆΠ΅Π½Π° рСализация API Media Foundation, которая Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π»ΡƒΡ‡ΡˆΠ΅ сочСтаСтся с прилоТСниями, зависящими ΠΎΡ‚ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Π΄Π΅ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ ΠΈ дСкодирования.
    • Π’ API DirectMusic Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ² MIDI.
  • Устройства Π²Π²ΠΎΠ΄Π°
    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π½Π°Ρ‡Π°Π»ΡŒΠ½Π°Ρ вСрсия Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° Bluetooth.
    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½ Π°ΠΏΠΏΠ»Π΅Ρ‚ Joystick Control Panel (joy.cpl) c Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ настроСк для дТойстика.
    • ВнСсСны ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ, связанныС с устройствами управлСния ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΌ (Ρ‚Π°Ρ‡ΠΏΠ°Π΄Ρ‹, ΠΌΡ‹ΡˆΠΈ), ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠΌΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» HID (Human Interface Device). Π”ΠΎΠ±Π°Π²Π»Π΅Π½ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ mouhid.sys для HID-устройств. Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹ΠΉ Ρ€Π°Π·Π±ΠΎΡ€ составных устройств Π²Π²ΠΎΠ΄Π° ΠΈ обСспСчСна ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Π½ΠΈΡ… Π² Windows-прилоТСния, ΠΊΠ°ΠΊ ΠΎ Ρ€Π°Π·Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… устройствах.
    • Для бэкСнда X11 Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° сСнсорных экранов ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ использования Ρ€Π΅ΠΆΠΈΠΌΠ° ΠΌΡƒΠ»ΡŒΡ‚ΠΈΡ‚Π°Ρ‡ Ρ‡Π΅Ρ€Π΅Π· ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ сообщСний WM_POINTER* (WM_POINTERENTER, WM_POINTERLEAVE ΠΈ Ρ‚.ΠΏ.).
    • Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΡ… структур Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ user32 Π² раздСляСмой памяти, Ρ‡Ρ‚ΠΎ повысило ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ снизило Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ Π½Π° Wine Server.
    • Π’ winex11 Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ событий XInput2 Π² привязкС ΠΊ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΎΠΊΠ½Π°ΠΌ.
    • Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° коррСктная ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€ с раскладкой Dvorak.
  • Π―Π΄Ρ€ΠΎ (интСрфСйсы ядра Windows)
    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΉ процСссов (процСссу, ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ Π·Π°ΠΏΡƒΡ‰Π΅Π½Π½ΠΎΠΌΡƒ ΠΏΠΎΠ΄ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ, ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ прСдоставлСны ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ администратора). ΠŸΡ€ΠΈ создании сСрвСрных процСссов (msi action server), Π° Ρ‚Π°ΠΊΠΆΠ΅ процСссов, Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ RtlCreateUserProcess() ΠΈ CreateProcessInternal(), ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ задСйствован ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹ΠΉ Ρ‚ΠΎΠΊΠ΅Π½ администратора.
    • ΠŸΡ€ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΌΠ΅Ρ‚ΠΊΠ°Ρ… дисков ΠΏΠΎ возмоТности Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊ систСмным сСрвисам Ρ‡Π΅Ρ€Π΅Π· DBus, вмСсто ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠΈ прямого доступа ΠΊ устройству.
    • ΠžΠ΄Π½ΠΎΠ½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ мСТпроцСссного взаимодСйствия (IPC) Mailslots Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ нСпосрСдствСнно Π² Wine server, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΎ Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ сСмантики Windows.
    • Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠ΅ событий ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡ€Ρ‚Π° Π² асинхронном Ρ€Π΅ΠΆΠΈΠΌΠ΅.
    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° полная ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° процСссорных Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ XSTATE Π² контСкстах ΠΏΠΎΡ‚ΠΎΠΊΠ°, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ Π²Π΅ΠΊΡ‚ΠΎΡ€Π½Ρ‹Π΅ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ AVX-512.
  • ВстроСнныС прилоТСния
    • ΠŸΠ΅Ρ€Π΅ΠΏΠΈΡΠ°Π½ Π΄Π²ΠΈΠΆΠΎΠΊ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΌ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€Π΅ cmd.exe. Π’ cmd.exe Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Β«||Β» ΠΈ Β«&&Β».
    • Π’ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρƒ findstr Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° рСгулярных Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ ΠΈ поиска Π±Π΅Π· ΡƒΡ‡Ρ‘Ρ‚Π° рСгистра символов.
    • Π’ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ regsvr32 ΠΈ rundll32 Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ рСгистрации ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ ARM64EC.
    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹: sort для сортировки Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, fc для сравнСния Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ where для поиска Ρ„Π°ΠΉΠ»ΠΎΠ².
    • Π’ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ wmic Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹.
    • Π’ Explorer Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° стартового мСню ΠΈ ΠΏΠ°Π½Π΅Π»ΠΈ инструмСнтов. ΠžΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½ запуск explorer.exe с ΡƒΡ€Π΅Π·Π°Π½Π½Ρ‹ΠΌΠΈ ΠΏΡ€Π°Π²Π°ΠΌΠΈ доступа.
  • Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ
    • Π’ winebuild Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° опция Β«-marm64xΒ» для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ Π³ΠΈΠ±Ρ€ΠΈΠ΄Π½Ρ‹Ρ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ARM64X.
    • Π’ winegcc Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° опция Β«-marm64xΒ», ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰Π°Ρ сборку для ARM64X.
    • Π’ Ρ„Π°ΠΉΠ»Π°Ρ…, Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… с использованиСм языка описания интСрфСйса IDL (Interface Definition Language), задСйствованы ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹, ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΠ΅ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ†ΠΈΠΈ.
    • Π’ компилятор языка описания интСрфСйса IDL (Interface Definition Language) Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ Ρ‚ΠΈΠΏΠΎΠ² (TypeLib) Π² старом Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ (SLTG).
    • Π’ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρƒ winedump Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° сохранСния Π΄Π°ΠΌΠΏΠΎΠ² Ρ‚Π°Π±Π»ΠΈΡ† minidump, ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΠ± ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡΡ… C++ ΠΈ рСсурсов typelib.
  • Π Π°Π·Π½ΠΎΠ΅
    • Π£Π»ΡƒΡ‡ΡˆΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° ΠΎΠ±ΠΌΠ΅Π½Π° ΠΊΠ»ΡŽΡ‡Π°ΠΌΠΈ Π”ΠΈΡ„Ρ„ΠΈ-Π₯Π΅Π»Π»ΠΌΠ°Π½Π° (DH). Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ настройки ΠΈ получСния ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² DH. Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ для создания ΠΏΠ°Ρ€ ΠΈΠ· ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ ΠΈ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π΅ΠΉ.
    • ΠžΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½ΠΎ использованиС Π΄ΠΎΠ±Π°Π²ΠΎΡ‡Π½ΠΎΠ³ΠΎ заполнСния OAEP (Optimal Asymmetric Encryption Padding) вмСстС с Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠΌ RSA.
    • Π’ API DirectPlay Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° сСтСвых сСансов.
    • НалаТСна ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° состояний асинхронного Π²Π²ΠΎΠ΄Π°/Π²Ρ‹Π²ΠΎΠ΄Π° ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ WoW64 (64-bit Windows-on-Windows), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅ΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ 32-разрядныС Windows-прилоТСния Π² 64-разрядных Unix-систСмах.
    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ODBC-Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ² ΠΊ Π‘Π£Π‘Π”, собранных для Windows.
    • Для ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ARM Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° полная ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° RPC/COM, C++ RTTI (Run-Time Type Information) ΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ C++.
    • Π’ C runtime Π² ANSI-функциях Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠΈ UTF-8.
    • Π Π°ΡΡˆΠΈΡ€Π΅Π½Ρ‹ возмоТности Π΄Π²ΠΈΠΆΠΊΠ° MSHTML. Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏΠΎΠ² ΠΈ конструкторов ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². Π’ JavaScript-Π΄Π²ΠΈΠΆΠΎΠΊ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Π½ΠΎΠ²Ρ‹ΠΉ интСрфСйс связывания ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² для MSHTML. ВстроСнныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ MSHTML ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½Ρ‹ Π² ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ JavaScript. Π£Π»ΡƒΡ‡ΡˆΠ΅Π½ сборщик мусора для JavaScript, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ всС контСксты выполнСния скрипта Π² ΠΏΠΎΡ‚ΠΎΠΊΠ΅. Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° JavaScript-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ArrayBuffer ΠΈ DataView.
    • Π’ систСму Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ Π½Π° Π±Π°Π·Π΅ Gitlab Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° статичСского Π°Π½Π°Π»ΠΈΠ·Π° с использованиСм Clang ΠΈ ΠΎΡ‚Ρ‡Ρ‘Ρ‚ΠΎΠ² ΠΎ ΠΏΡ€ΠΎΡ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠΈ тСстов JUnit.
    • Π’ состав встроСна Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Capstone 5.0.3, Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ дизассСмблированиС Π² ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊΠ΅ WineDb.
    • ΠžΠ±Π½ΠΎΠ²Π»Π΅Π½Ρ‹ Π΄ΠΎ Π½ΠΎΠ²Ρ‹Ρ… вСрсий ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹: Vkd3d 1.14, Faudio 24.10, FluidSynth 2.4.0, LDAP 2.5.18, LCMS2 2.16, LibJpeg 9f, LibMPG123 1.32.9, LibPng 1.6.44, LibTiff 4.7.0, LibXml2 2.12.8, LibXslt 1.1.42 ΠΈ Zlib 1.3.1.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ