Π‘Π»Π΅Π΄ Π³ΠΎΠ΄ΠΈΠ½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΈ 25 Π΅ΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»Π½ΠΈ Π²Π΅ΡΡΠΈΠΈ, Π±Π΅ΡΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π΅Π½Π° ΡΡΠ°Π±ΠΈΠ»Π½Π°ΡΠ° Π²Π΅ΡΡΠΈΡ Π½Π° ΠΎΡΠ²ΠΎΡΠ΅Π½Π°ΡΠ° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° Win32 API β Wine 11.0, ΠΊΠΎΡΡΠΎ Π²ΠΊΠ»ΡΡΠ²Π° Π½Π°Π΄ 6300 ΠΏΡΠΎΠΌΠ΅Π½ΠΈ ΠΈ 600 ΠΏΠΎΠΏΡΠ°Π²ΠΊΠΈ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ. Π‘ΡΠ΅Π΄ ΠΊΠ»ΡΡΠΎΠ²ΠΈΡΠ΅ ΠΏΠΎΡΡΠΈΠΆΠ΅Π½ΠΈΡ Π² Π½ΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ ΡΠ΅ ΠΎΡΠΊΡΠΎΡΠ²Π° ΠΏΡΠ»Π½Π°ΡΠ° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° NTSYNC, ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° Reparse Point ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° Π½ΠΎΠ²Π° Π²Π΅ΡΡΠΈΡ Π½Π° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°ΡΠ° WoW64.
Π Wine Π΅ ΠΏΠΎΡΠ²ΡΡΠ΄Π΅Π½Π° ΠΏΡΠ»Π½Π°ΡΠ° ΡΠ°Π±ΠΎΡΠ° Π½Π° 5419 ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ Π·Π° Windows (ΠΏΡΠ΅Π΄ΠΈ Π³ΠΎΠ΄ΠΈΠ½Π° 5372, ΠΏΡΠ΅Π΄ΠΈ Π΄Π²Π΅ Π³ΠΎΠ΄ΠΈΠ½ΠΈ 5336, ΠΏΡΠ΅Π΄ΠΈ ΡΡΠΈ Π³ΠΎΠ΄ΠΈΠ½ΠΈ 5266), ΠΎΡΠ΅ 4500 ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ (ΠΏΡΠ΅Π΄ΠΈ Π³ΠΎΠ΄ΠΈΠ½Π° 4435, ΠΏΡΠ΅Π΄ΠΈ Π΄Π²Π΅ Π³ΠΎΠ΄ΠΈΠ½ΠΈ 4397, ΠΏΡΠ΅Π΄ΠΈ ΡΡΠΈ Π³ΠΎΠ΄ΠΈΠ½ΠΈ 4370) ΡΠ°Π±ΠΎΡΡΡ ΠΏΡΠ΅ΠΊΡΠ°ΡΠ½ΠΎ Ρ Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΈ Π²ΡΠ½ΡΠ½ΠΈ DLL. ΠΡΠΈ 4086 ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ (ΠΏΡΠ΅Π΄ΠΈ Π³ΠΎΠ΄ΠΈΠ½Π° 4020, ΠΏΡΠ΅Π΄ΠΈ Π΄Π²Π΅ Π³ΠΎΠ΄ΠΈΠ½ΠΈ 3943, ΠΏΡΠ΅Π΄ΠΈ ΡΡΠΈ Π³ΠΎΠ΄ΠΈΠ½ΠΈ 3888) ΡΠ΅ Π½Π°Π±Π»ΡΠ΄Π°Π²Π°Ρ ΠΌΠ°Π»ΠΊΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ Π² ΡΠ°Π±ΠΎΡΠ°ΡΠ°, ΠΊΠΎΠΈΡΠΎ Π½Π΅ ΠΏΡΠ΅ΡΠ°Ρ Π½Π° ΠΎΡΠ½ΠΎΠ²Π½ΠΈΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡΠ°.
ΠΠ»ΡΡΠΎΠ²ΠΈ Π½ΠΎΠ²ΠΎΠ²ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ Π² Wine 11.0:
- ΠΡΠ»Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ° ntsync, ΠΊΠΎΠΉΡΠΎ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΏΠΎΠ²ΠΈΡΠ°Π²Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° Π½Π° Windows ΠΈΠ³ΡΠΈ, ΡΡΠ°ΡΡΠΈΡΠ°Π½ΠΈ Ρ Wine. ΠΡΠ°ΠΉΠ²Π΅ΡΡΡ Π΅ ΡΠ°ΡΡ ΠΎΡ ΡΠ΄ΡΠΎΡΠΎ Π½Π° Linux ΠΎΡ Π²Π΅ΡΡΠΈΡ 6.14 ΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ° ΡΠΈΠΌΠ²ΠΎΠ»ΠΈΡΠ½ΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ /dev/ntsync ΠΈ Π½Π°Π±ΠΎΡ ΠΎΡ ΠΏΡΠΈΠΌΠΈΡΠΈΠ²ΠΈ Π·Π° ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΡ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ Π² ΡΠ΄ΡΠΎΡΠΎ Π½Π° Windows NT. ΠΠ½Π°ΡΠΈΡΠ΅Π»Π½ΠΎΡΠΎ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° ΡΠ΅ ΠΏΠΎΡΡΠΈΠ³Π° Π±Π»Π°Π³ΠΎΠ΄Π°ΡΠ΅Π½ΠΈΠ΅ Π½Π° ΠΏΡΠ΅ΠΌΠ°Ρ Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ°Π·Ρ ΠΎΠ΄ΠΈ, ΡΠ²ΡΡΠ·Π°Π½ΠΈ Ρ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° RPC Π² ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΎΡΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Π½Π° ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠΈ Π½Π° ΠΏΠΎΡΠΎΡΠΈΡΠ΅ Π² Linux ΠΈ macOS.
- Π ntdll Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½ API Π·Π° ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΡ "Synchronization barriers", ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°Ρ ΡΠΏΠΈΡΠ°Π½Π΅ Π½Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΠΏΠΎΡΠΎΠΊΠ° Π΄ΠΎ Π΄ΠΎΡΡΠΈΠ³Π°Π½Π΅ Π½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π° ΡΠΎΡΠΊΠ° Π½Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π²ΡΠ² Π²ΡΠΈΡΠΊΠΈ ΠΏΠΎΡΠΎΡΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π° ΡΠ΅ ΠΈΠ·ΡΠ°ΠΊΠ° Π²ΡΠΈΡΠΊΠΈ ΠΏΠΎΡΠΎΡΠΈ Π΄Π° Π΄ΠΎΡΡΠΈΠ³Π½Π°Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ Π΅ΡΠ°ΠΏ ΠΏΡΠΈ ΠΏΠ°ΡΠ°Π»Π΅Π»Π½ΠΎ ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° Π΅Π΄ΠΈΠ½ ΠΈ ΡΡΡΠΈ ΠΊΠΎΠ΄).
- ΠΡΠ΅ΠΈΠΌΠ΅Π½ΡΠ²Π°Π½Π° Π² Π½Π°ΠΏΡΠ»Π½ΠΎ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Π½Π° Π½ΠΎΠ²Π° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° ΡΠ»ΠΎΡ WoW64 (64-Π±ΠΈΡΠΎΠ²Π° Windows-on-Windows), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°ΡΠ° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° 32-Π±ΠΈΡΠΎΠ²ΠΈ Windows ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π² 64-Π±ΠΈΡΠΎΠ²ΠΈ Unix ΡΠΈΡΡΠ΅ΠΌΠΈ. Π ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° Π½Π° ΡΡΠ°ΡΠ°ΡΠ° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° WoW64, ΠΏΡΠΈΠ»Π°Π³Π°Π½Π°ΡΠ° 32-Π±ΠΈΡΠΎΠ²Π° ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΠ° Π±Π΅ΡΠ΅ ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π°Π½Π° Π² 32-Π±ΠΈΡΠΎΠ²ΠΈ Unix ΠΏΡΠΎΡΠ΅ΡΠΈ, Π½ΠΎΠ²ΠΈΡΡ WoW64 ΠΎΡΠΈΠ³ΡΡΡΠ²Π° ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° 32-Π±ΠΈΡΠΎΠ² ΠΊΠΎΠ΄ Π² ΡΠ°ΠΌΠΊΠΈΡΠ΅ Π½Π° 64-Π±ΠΈΡΠΎΠ² ΠΏΡΠΎΡΠ΅Ρ. Π Π΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° 16-Π±ΠΈΡΠΎΠ²ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π² ΡΠ΅ΠΆΠΈΠΌ WoW64.
ΠΡΠ² Π²ΡΠΈΡΠΊΠΈ ΠΌΠΎΠ΄ΡΠ»ΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠ°Π±ΠΎΡΡΡ Ρ Unix Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, ΡΠ° Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ²Π°ΡΠ΅Π»ΠΈ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ½ΠΈ ΠΏΠΎΠ²ΠΈΡΠΈ WoW64 (thunk), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°ΡΠΈ 32-Π±ΠΈΡΠΎΠ²ΠΈ ΠΌΠΎΠ΄ΡΠ»ΠΈ Π² PE ΡΠΎΡΠΌΠ°Ρ Π΄Π° Π·Π°ΡΡΠ³Π°Ρ 64-Π±ΠΈΡΠΎΠ²ΠΈ Unix Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ. ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΠ°ΡΠΈ ΠΈΠ½ΡΡΠ°Π»Π°ΡΠΈΠΈ WoW64 Π² Π½ΠΎΠ² ΡΠ΅ΠΆΠΈΠΌ ΡΡΠ΅Π· Π·Π°Π΄Π°Π²Π°Π½Π΅ Π½Π° ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π°ΡΠ° Π½Π° ΡΡΠ΅Π΄Π°ΡΠ° βWINEARCH=wow64β. 32-Π±ΠΈΡΠΎΠ²ΠΈΡΠ΅ ΠΏΡΠ΅ΡΠΈΠΊΡΠΈ, ΡΡΠ·Π΄Π°Π²Π°Π½ΠΈ ΠΏΡΠΈ Π·Π°Π΄Π°Π²Π°Π½Π΅ Π½Π° WINEARCH=win32, ΡΠ° ΠΎΠ±ΡΠ²Π΅Π½ΠΈ Π·Π° ΠΎΡΡΠ°ΡΠ΅Π»ΠΈ ΠΈ Π½Π΅ ΡΠ΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Ρ Π² Π½ΠΎΠ²ΠΈΡ ΡΠ΅ΠΆΠΈΠΌ WoW64. ΠΡΠ΅ΠΌΠ°Ρ Π½Π°Ρ Π΅ ΠΎΡΠ΄Π΅Π»Π΅Π½ Π·Π°Π³ΡΡΠ·ΡΠΈΠΊ wine64, Π²ΠΌΠ΅ΡΡΠΎ ΠΊΠΎΠΉΡΠΎ Π΅ Π²Π½Π΅Π΄ΡΠ΅Π½ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»Π΅Π½ Π·Π°Π³ΡΡΠ·ΡΠΈΠΊ, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡ ΡΠ΅ΠΆΠΈΠΌΠ° ΠΏΠΎ ΡΠ°Π·ΡΡΠ΄Π½ΠΎΡΡΡΠ° Π½Π° ΡΡΠ°ΡΡΠΈΡΠ°Π½ΠΈΡ ΡΠ°ΠΉΠ».
- Π―Π΄ΡΠΎ (ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΈ Π½Π° ΡΠ΄ΡΠΎ Π½Π° Windows)
- Π Π΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ Π΅ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΡΠΌ Reparse Point, ΡΡΠ΅Π· ΠΊΠΎΠΉΡΠΎ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΠΏΡΠΈΠΊΡΠ΅ΠΏΡΡ Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ Π΄Π°Π½Π½ΠΈ ΠΊΡΠΌ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ, ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΠ°Π½ΠΈ ΡΡΠ΅Π· Π΅ΡΠΈΠΊΠ΅ΡΠΈ. ΠΠΎΠ΄Π΄ΡΡΠΆΠ°Ρ ΡΠ΅ ΡΠΈΠΏΠΎΠ²Π΅ Reparse Point, ΠΊΠ°ΡΠΎ ΡΠΈΠΌΠ²ΠΎΠ»ΠΈΡΠ½ΠΈ Π²ΡΡΠ·ΠΊΠΈ ΠΈ ΡΠΎΡΠΊΠΈ Π½Π° ΠΌΠΎΠ½ΡΠ°ΠΆΠ°.
- ΠΠ° ΠΏΠΎΠ²ΠΈΡΠ°Π²Π°Π½Π΅ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° Π½Π° ΠΏΡΠΎΡΠ»Π΅Π΄ΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π·Π° Π·Π°ΠΏΠΈΡ Π² ΠΏΠ°ΠΌΠ΅ΡΡΠ° Π΅ Π²Π½Π΅Π΄ΡΠ΅Π½ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΡΡ UFFD (userfaultfd), ΠΊΠΎΠΉΡΠΎ Π΄Π°Π²Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΡΠΈ Π½Π° ΠΏΠΎΠ²ΠΈΠΊΠ²Π°Π½ΠΈΡ ΠΊΡΠΌ Π½Π΅ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ ΡΡΡΠ°Π½ΠΈΡΠΈ ΠΏΠ°ΠΌΠ΅Ρ (page faults) Π² ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎΡΠΎ Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»Ρ. Π ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡΠ΅ ΡΠ΅ΡΡΠΎΠ²Π΅ ΠΏΡΠΈΠ»Π°Π³Π°Π½Π΅ΡΠΎ Π½Π° UFFD ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈ Π΄Π° ΡΠ΅ Π½Π°ΠΌΠ°Π»ΠΈ Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π·Π° Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅ Π½Π° Π½ΠΈΠ²Π° Π² ΠΈΠ³ΡΠ°ΡΠ° βStreets of Rage 4β ΠΎΡ 6-8 ΡΠ΅ΠΊΡΠ½Π΄ΠΈ Π½Π° 1.5-2 ΡΠ΅ΠΊΡΠ½Π΄ΠΈ, ΠΊΠΎΠ΅ΡΠΎ Π΅ Π² ΡΡΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈΡΠ΅ Π½Π° ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° Windows.
- ΠΠ½Π΅Π΄ΡΠ΅Π½ΠΈ ΡΠ° Π½ΠΎΠΌΠ΅ΡΠ° Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ½ΠΈΡΠ΅ ΠΏΠΎΠ²ΠΈΡΠΈ NT, ΠΈΠ΄Π΅Π½ΡΠΈΡΠ½ΠΈ Π½Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ Π²Π΅ΡΡΠΈΠΈ Π½Π° Windows, ΠΊΠΎΠ΅ΡΠΎ Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π·Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠΈ ΡΠ²ΡΡΠ΄ΠΎ Π·Π°Π΄Π°Π΄Π΅Π½ΠΈ Π½ΠΎΠΌΠ΅ΡΠ° Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ½ΠΈ ΠΏΠΎΠ²ΠΈΡΠΈ.
- ΠΠ° ΡΠΈΡΡΠ΅ΠΌΠΈ ARM64 Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° ΡΠΈΠΌΡΠ»ΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠΈ ΠΏΠ°ΠΌΠ΅Ρ Ρ ΡΠ°Π·ΠΌΠ΅Ρ 4K Π² ΡΡΠ΅Π΄ΠΈ Ρ ΡΠ΄ΡΠ° Linux, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠΈ ΠΏΠΎ-Π³ΠΎΠ»Π΅ΠΌΠΈ ΡΡΡΠ°Π½ΠΈΡΠΈ ΠΏΠ°ΠΌΠ΅Ρ (16K ΠΈΠ»ΠΈ 64K). Π‘ΠΈΠΌΡΠ»Π°ΡΠΈΡΡΠ° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΡΠΎΡΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π° Π·Π° ΠΏΠΎ-ΡΠ»ΠΎΠΆΠ½ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ ΡΠ΅ ΠΏΡΠ΅ΠΏΠΎΡΡΡΠ²Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ΄ΡΠ° Linux Ρ 4-ΠΊΠΈΠ»ΠΎΠ±Π°ΠΉΡΠΎΠ²ΠΈ ΡΡΡΠ°Π½ΠΈΡΠΈ ΠΏΠ°ΠΌΠ΅Ρ.
- ΠΡΠ°ΡΠΈΡΠ½Π° ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ°
- ΠΠ° ΡΠΈΡΡΠ΅ΠΌΠΈ X11 (winex11) Π·Π° OpenGL ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ Π΅ Π²Π½Π΅Π΄ΡΠ΅Π½ Π±Π΅ΠΊΠ΅Π½Π΄ Π·Π° Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ EGL. ΠΠ΅ΠΊΠ΅Π½Π΄ΡΡ GLX Π΅ ΠΎΠ±ΡΠ²Π΅Π½ Π·Π° ΠΎΡΡΠ°ΡΡΠ», Π½ΠΎ Π²ΡΠ΅ ΠΎΡΠ΅ ΠΎΡΡΠ°Π²Π° Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΠΊΠ°ΡΠΎ ΡΠ΅Π·Π΅ΡΠ²Π΅Π½ ΠΈ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΏΡΠΈ ΠΎΡΡΡΡΡΠ²ΠΈΠ΅ Π½Π° EGL.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π±Π°Π·ΠΎΠ²Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΠΎΠ±Π΅ΠΊΡΠΈ D3DKMT, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΡΠΈ Π½ΠΈΡΠΊΠΎΡΡΠΎΠ²Π½Π΅Π² Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ Π³ΡΠ°ΡΠΈΡΠ½ΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΎΡ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎΡΠΎ Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»Ρ. Π Π΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΡΠ° Vulkan ΡΠ°Π·ΡΠΈΡΠ΅Π½ΠΈΡ VK_KHR_external_memory_win32, VK_KHR_external_semaphore_win32, VK_KHR_external_fence_win32 ΠΈ VK_KHR_win32_keyed_mutex.
- Π ΡΠ΅ΠΆΠΈΠΌΠ° WoW64 (64-Π±ΠΈΡ Windows-on-Windows) Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΠΊΠ°ΡΡΠΎΠ³ΡΠ°ΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΠ°ΠΌΠ΅ΡΡΠ° Π·Π° OpenGL ΡΡΠ΅Π· API Vulkan, ΠΊΠΎΠ΅ΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΡΡΠΊΠΎΡΡΠ²Π°Π½Π΅ Π½Π° ΡΠ°Π±ΠΎΡΠ°ΡΠ° Π½Π° 32-Π±ΠΈΡΠ½ΠΈ OpenGL ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π² Wine.
- Π Π΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° Π΅ Π΅ΠΌΡΠ»Π°ΡΠΈΡ Π½Π° Π±ΡΡΠ΅ΡΠ° Π½Π° Π΄ΠΈΡΠΏΠ»Π΅Ρ (front buffer) Π·Π° OpenGL Π½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠΈ Π±Π΅Π· Π²Π³ΡΠ°Π΄Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°.
- Π Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ° Π·Π° Π³ΡΠ°ΡΠΈΡΠ½ΠΈΡ API Vulkan Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ Vulkan 1.4.335.
- Π Π½Π°Π±ΠΎΡΠ° ΠΎΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ WindowsCodecs Π΅ ΡΠ°Π·ΡΠΈΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΠΈ Π² ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΠΊΠ°ΠΊΡΠΎ ΠΈ Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ²Π°Π½Π΅ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ΅Π»ΠΈ ΡΠΈΡΠ»ΠΎΠ²ΠΈ ΡΠΎΡΠΌΠ°ΡΠΈ Π½Π° ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΡΠ½Π΅ Π½Π° ΡΠ²Π΅ΡΠΎΠ²Π΅ ΠΈ ΡΠΎΡΠΌΠ°ΡΠΈ Ρ ΠΏΠ»Π°Π²Π°ΡΠ° Π·Π°ΠΏΠ΅ΡΠ°Ρ.
- ΠΡΠ΅ΠΌΠ°Ρ Π½Π°ΡΠ° Π΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡΠ° ΠΎΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° OSMesa (Off-screen Mesa). Π Π΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΡΠΈΡΡΠ²Π°Π½Π΅ Π½Π° Π±ΠΈΡΠΎΠ²ΠΈ ΠΊΠ°ΡΡΠΈ ΡΡΠ΅Π· OpenGL Ρ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Ρ Π°ΡΠ΄ΡΠ΅ΡΠ½ΠΎ ΡΡΠΊΠΎΡΠ΅Π½ OpenGL runtime.
- ΠΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ ΡΠ°Π±ΠΎΡΠ½ΠΈΡ ΠΏΠ»ΠΎΡ
- Π Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ° winewayland.drv, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°Ρ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° Wine Π² ΡΡΠ΅Π΄ΠΈ, Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° Wayland Π±Π΅Π· ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° XWayland ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ X11, Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° Π±ΡΡΠ΅ΡΠ° Π·Π° ΠΎΠ±ΠΌΠ΅Π½, ΠΌΠ΅ΡΠΎΠ΄ΠΈΡΠ΅ Π½Π° Π²ΡΠ²Π΅ΠΆΠ΄Π°Π½Π΅, Π½Π΅ΠΏΡΠ°Π²ΠΎΡΠ³ΡΠ»Π½ΠΈ ΠΏΡΠΎΠ·ΠΎΡΡΠΈ ΠΈ ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΠΎΡΡ.
- ΠΠΎΠ΄ΠΎΠ±ΡΠ΅Π½Π° Π΅ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡΡΠ° Ρ X11: ΠΎΡΠΈΠ³ΡΡΠ΅Π½ΠΎ Π΅ ΠΈΠ·ΠΏΡΠ°ΡΠ°Π½Π΅ Π½Π° Π·Π°ΡΠ²ΠΊΠΈ Π·Π° Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΡΠΎΠ·ΠΎΡΡΠΈ ΠΊΡΠΌ ΠΌΠ΅Π½ΠΈΠ΄ΠΆΡΡΠ° Π½Π° ΠΏΡΠΎΠ·ΠΎΡΡΠΈΡΠ΅ ΠΈ Π΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΡΡ EWMH Π·Π° ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΡΡΠΎΡΠ½ΠΈΠ΅ΡΠΎ Π½Π° Π°ΠΊΡΠΈΠ²Π½ΠΈΡΠ΅ ΠΏΡΠΎΠ·ΠΎΡΡΠΈ X11 ΠΈ Win32.
- Π Π΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° Π΅ΠΊΡΠΊΠ»ΡΠ·ΠΈΠ²Π΅Π½ ΡΡΠ»ΠΎΡΡΠ΅Π½ Π΅ΠΊΡΠ°Π½. ΠΠΎΠ΄ΠΎΠ±ΡΠ΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° ΡΡΠ»ΠΎΡΡΠ΅Π½ Π΅ΠΊΡΠ°Π½ Π² D3D ΠΈ Π΅ ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½Π° ΡΠ°Π±ΠΎΡΠ°ΡΠ° Π½Π° ΡΡΠ°ΡΠΈ ΠΈΠ³ΡΠΈ, Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° DDraw.
- ΠΠΎΠ²ΠΈΡΠ΅Π½Π° Π΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° Π½Π° Π½ΡΠΊΠΎΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ, ΡΠ°Π±ΠΎΡΠ΅ΡΠΈ Ρ ΠΏΡΠΎΠ·ΠΎΡΡΠΈ. ΠΠ° Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΡΠΎΡΠ΅ΡΠΈΡΠ΅ Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° ΡΠΏΠΎΠ΄Π΅Π»Π΅Π½Π° ΠΏΠ°ΠΌΠ΅Ρ.
- Direct3D
- Π Direct3D 11 Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° Ρ Π°ΡΠ΄ΡΠ΅ΡΠ½ΠΎ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΈ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠ°Π½Π΅ Π½Π° Π²ΠΈΠ΄Π΅ΠΎΡΠΎΡΠΌΠ°Ρ H.264, ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° ΡΡΠ΅Π· Π³ΡΠ°ΡΠΈΡΠ½ΠΈΡ API Vulkan.
- Π Direct3D 11 Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° minmax ΡΠΈΠ»ΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΡΠ΅ΠΊΡΡΡΡΠΈ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ OpenGL ΡΠ°Π·ΡΠΈΡΠ΅Π½ΠΈΠ΅ GL_ARB_texture_filter_minmax ΠΈΠ»ΠΈ Vulkan ΡΠ°Π·ΡΠΈΡΠ΅Π½ΠΈΠ΅ VK_EXT_sampler_filter_minmax.
- Π Direct3D 11 ΡΠ° ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ Π·Π° Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅ Π½Π° ΡΠ΅ΠΊΡΡΡΡΠΈ.
- Π Π΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° Π΅ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½Π° ΡΠ°ΡΡ ΠΎΡ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈΡΠ΅ Π½Π° Direct3D ΠΏΡΠΈ ΡΠΈΡΡΠ²Π°Π½Π΅ ΡΡΠ΅Π· Vulkan, ΠΊΠ°ΡΠΎ ΡΠΌΠ΅ΡΠ²Π°Π½Π΅ Π½Π° Π²ΡΡΡ ΠΎΠ²Π΅, ΠΏΠ»ΠΎΡΠΊΠΎ Π·Π°ΡΡΠΌΠ½Π΅Π½ΠΈΠ΅, ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΈ ΠΏΠ»ΠΎΡΠΊΠΎΡΡΠΈ Π·Π° ΠΎΡΡΡΠ·Π²Π°Π½Π΅ ΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΡΠΎΡΠΌΠ°ΡΠΈ Π½Π° ΡΠ΅ΡΡΡΡΠΈ.
- Π Π²Π³ΡΠ°Π΄Π΅Π½Π°ΡΠ° Π²Π΅ΡΡΠΈΡ Π½Π° vkd3d-shader Π΅ ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° 1, 2 ΠΈ 3 ΠΌΠΎΠ΄Π΅Π»ΠΈ Π½Π° ΡΠ΅ΠΉΠ΄Π΅ΡΠΈ.
- Π ΠΌΠ΅ΡΠΎΠ΄Π° D3DXSaveSurfaceToFileInMemory Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ PNG, JPEG ΠΈ BMP.
- Π Direct3D 10 ΠΈ 11 Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡΠ°Π½Π΅ ΠΈ ΡΠ°Π·ΠΏΠ°ΠΊΠΎΠ²Π°Π½ΠΎ Π½Π° ΡΠΎΡΠΌΠ°ΡΠΈ BC4 ΠΈ BC5, Π° ΡΡΡΠΎ ΠΈ Π³Π΅Π½Π΅ΡΠΈΡΠ°Π½Π΅ Π½Π° MIP Π½ΠΈΠ²Π° (MipMap) ΠΏΡΠΈ Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅ Π½Π° ΡΠ΅ΠΊΡΡΡΡΠΈ.
- Π Π΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΡΠ° ΠΌΠ΅ΡΠΎΠ΄ΠΈΡΠ΅ ID3DXEffect::SetRawValue() ΠΈ ID3DXSkinInfo::UpdateSkinnedMesh().
- Π£ΡΡΡΠΎΠΉΡΡΠ²Π° Π·Π° Π²ΡΠ²Π΅ΠΆΠ΄Π°Π½Π΅
- ΠΠΎΠ΄ΠΎΠ±ΡΠ΅Π½Π° Π΅ ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡΠ° Ρ Π΄ΠΆΠΎΠΉΡΡΠΈΡΠΈ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΠ΅Π½ΠΈΠ΅ Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° backend hidraw.
- ΠΠΎΠ΄ΠΎΠ±ΡΠ΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° Π΅ΡΠ΅ΠΊΡΠ° Π½Π° Π²ΠΈΠ±ΡΠ°ΡΠΈΠΈ (Force feedback) ΠΏΡΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΈΠ³ΡΠΎΠ²ΠΈ Π²ΠΎΠ»Π°Π½ΠΈ ΠΈ Π΄ΠΆΠΎΠΉΡΡΠΈΡΠΈ.
- ΠΠΎΠ΄ΠΎΠ±ΡΠ΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° Π³Π΅ΠΉΠΌΠΏΠ°Π΄ΠΎΠ²Π΅ Π² API Windows.Gaming.Input ΠΈ ΠΏΡΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° backend evdev.
- Π Π°ΠΏΠ»Π΅ΡΠ° Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΈΠ³ΡΠΎΠ²ΠΈΡΠ΅ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅ΡΠΈ Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΡΠ°Π·Π΄Π΅Π»Π° Π·Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Π½Π° API Windows.Gaming.Input.
- ΠΠΎΠ²ΠΈΡΠ΅Π½Π° Π΅ ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡΠ° Π½Π° DirectInput ΡΡΡ ΡΡΠ°ΡΠΈ ΠΈΠ³ΡΠΈ.
- Bluetooth
- Π Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ° Π·Π° Bluetooth Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° ΡΠΊΠ°Π½ΠΈΡΠ°Π½Π΅, Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Π½Π° ΠΎΡΠΊΡΠΈΠ²Π°Π½Π΅ΡΠΎ ΠΈ ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²Π°.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠ΅ΡΠ²ΠΈΡΠΎΠ² Bluetooth Low Energy.
- ΠΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡΠ° Π΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π΅Π½Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π΄Π° ΡΡΠ·Π΄Π°Π²Π°Ρ Π½ΠΈΡΠΊΠΎ Π½ΠΈΠ²ΠΎ RFCOMM-ΡΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Ρ Π²ΡΠ½ΡΠ½ΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π°, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ API Winsock.
- ΠΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΡΠΊΠ΅Π½Π΅ΡΠΈ.
- Π Π΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° API TWAIN 2.0, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°ΡΠ° Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ ΡΠΊΠ΅Π½Π΅ΡΠΈ ΠΎΡ 64-Π±ΠΈΡΠΎΠ²ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
- Π Π΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° DAT_IMAGENATIVEXFER Π·Π° ΠΏΡΠ΅Π΄Π°Π²Π°Π½Π΅ Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΎΡ ΡΠΊΠ΅Π½Π΅ΡΠ° Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ.
- ΠΡΠΈΠ³ΡΡΠ΅Π½ΠΎ Π΅ Π·Π°ΠΏΠ°Π·Π²Π°Π½Π΅ Π² ΡΠ΅Π³ΠΈΡΡΡΡΠ° Π½Π° ΠΈΠ·Π±ΡΠ°Π½ΠΈΡ ΡΠΊΠ΅Π½Π΅Ρ ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈΡΠ΅ Π½Π° ΡΠΊΠ΅Π½Π΅ΡΠ°.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΌΠ½ΠΎΠ³ΠΎΡΡΡΠ°Π½Π½ΠΎ ΡΠΊΠ°Π½ΠΈΡΠ°Π½Π΅ ΠΈ Π°Π²ΡΠΎΠΏΠΎΠ΄Π°Π²Π°ΡΠΈ Π½Π° Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈ.
- ΠΡΠ΅ΠΊΡΠ°ΡΠ΅Π½Π° Π΅ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ°ΡΠ° Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Π·Π° ΡΠΊΠ°Π½ΠΈΡΠ°Π½Π΅.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅ Π½Π° ΡΠΎΠ΄Π½ΠΈ Windows Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΈ Π·Π° ΡΠΊΠ΅Π½Π΅ΡΠΈ.
- ΠΠ½ΡΠ΅ΡΠ½Π°ΡΠΈΠΎΠ½Π°Π»ΠΈΠ·Π°ΡΠΈΡ.
- ΠΡΠΈΠ³ΡΡΠ΅Π½Π° Π΅ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΡ Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ Ρ Π»ΠΎΠΊΠ°Π»ΠΈ Π² ΡΠΎΡΠΌΠ°Ρ locale.nls ΠΎΡ Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ Unicode CLDR (Unicode Common Locale Data Repository) Π²Π΅ΡΡΠΈΡ 48. ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ Π»ΠΎΠΊΠ°Π»ΠΈ bua-RU, bqi-IR, cop-EG, ht-HT, kek-GT, lzz-TR, mww-Hmnp-US, oka-CA, pi-Latn-GB, pms-IT, sgs-LT, suz-Deva-NP ΠΈ suz-Sunu-NP.
- Π’Π°Π±Π»ΠΈΡΠΈΡΠ΅ ΡΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΈ Unicode ΡΠ° Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ Π΄ΠΎ Π²Π΅ΡΡΠΈΡ Π½Π° ΡΡΠ°Π½Π΄Π°ΡΡΠ° 17.0.0. ΠΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° Π΅ Π±Π°Π·Π°ΡΠ° ΠΎΡ ΡΠ°ΡΠΎΠ²ΠΈ Π·ΠΎΠ½ΠΈ.
- ΠΡΠ΅ΠΆΠΎΠ²ΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ
- Π Π΄Π²ΠΈΠΆΠΊΠ° MSHTML Π² ΡΠ΅ΠΆΠΈΠΌ Π½Π° ΡΡΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ Ρ ΡΡΠ°Π½Π΄Π°ΡΡΠΈΡΠ΅ Π΅ ΠΎΡΠΈΠ³ΡΡΠ΅Π½Π° ΡΠ°Π±ΠΎΡΠ° Ρ Π°ΡΡΠΈΠ±ΡΡΠΈΡΠ΅ Π½Π° Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ΅ ΠΊΠ°ΡΠΎ Ρ ΠΏΡΠ»Π½ΠΎΡΠ΅Π½Π½ΠΈ Π²ΡΠ·Π»ΠΈ Π½Π° DOM. Π Π΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΡΠ° ΠΎΠ±Π΅ΠΊΡΠΈΡΠ΅ DOMParser, XDomainRequest ΠΈ msCrypto.
- Π JavaScript Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΡΠΈΠΏΠΎΠ²ΠΈΡΠ΅ ΠΌΠ°ΡΠΈΠ²ΠΈ.
- ΠΠ° ICMPv6 Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° ping.
- ΠΠ
- Π Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° MSADO (ActiveX Data Objects) Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Π·Π°ΠΏΠΈΡ Π½Π° ΠΏΡΠΎΠΌΠ΅Π½ΠΈ Π² ΠΠ. Π Π΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΡΠ° ΠΏΠΎΠ²Π΅ΡΠ΅ΡΠΎ ΡΡΠ½ΠΊΡΠΈΠΈ Π½Π° ΠΎΠ±Π΅ΠΊΡΠ° Recordset.
- Π Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° odbc32 Π΅ ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° ANSI win32 Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΈ, Π½Π΅ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈ Π·Π° ΡΠ°Π±ΠΎΡΠ° Ρ Unicode. Π Π΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΡΠ° ΡΡΠ½ΠΊΡΠΈΠΈΡΠ΅ SQLDriverConnectA(), SQLSpecialColumnsW(), SQLGetInfoW(), SQLGetInfoW(), SQLStatisticsW() ΠΈ QLColumnsW().
- ΠΠ³ΡΠ°Π΄Π΅Π½ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
- Π WineCfg Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΡΠ°Π·Π΄Π΅Π»Π° Π·Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Π½Π° MIDI ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎΡΠΎ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅.
- Π ΡΡΠΈΠ»ΠΈΡΠ°ΡΠ° cmd Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΎ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ Π΄ΠΎΠΏΡΠ»Π²Π°Π½Π΅ Π½Π° ΠΈΠΌΠ΅Π½Π°ΡΠ° Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π² ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π΅Π½ ΡΠ΅ΠΆΠΈΠΌ, Π΄ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΡΠ»ΠΎΠΆΠ½ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ ΠΈ Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° βmklink /jβ Π·Π° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° Reparse Point.
- Π ΡΡΠΈΠ»ΠΈΡΠ°ΡΠ° conhost (Console Hosting) Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΏΠΎΠ»ΡΡΠ°Π²Π°Π½Π΅ Π½Π° ΠΈΡΡΠΎΡΠΈΡ Ρ Π½Π°ΡΠΈΡΠΊΠ°Π½Π΅ Π½Π° ΠΊΠ»Π°Π²ΠΈΡΠΈΡΠ΅ F1 ΠΈ F3.
- Π Π΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄ΠΈΡΠ΅ timeout, runas ΠΈ subst.
- Π ΡΡΠΈΠ»ΠΈΡΠ°ΡΠ° find ΡΠ° Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ ΠΎΠΏΡΠΈΠΈ β/cβ Π·Π° ΠΏΠΎΠΊΠ°Π·Π²Π°Π½Π΅ Π½Π° Π±ΡΠΎΡ Π½Π° ΡΡΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΡΡΠ° ΠΈ /i Π·Π° ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Π±Π΅Π· Π΄Π° ΡΠ΅ Π²Π·Π΅ΠΌΠ° ΠΏΡΠ΅Π΄Π²ΠΈΠ΄ ΡΠ΅Π³ΠΈΡΡΡΡΠ°.
- Π ΡΡΠΈΠ»ΠΈΡΠ°ΡΠ° whoami ΡΠ΅ Π΅ ΠΏΠΎΡΠ²ΠΈΠ»Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Π½Π° ΡΠΎΡΠΌΠ°ΡΠ° Π½Π° ΠΈΠ·Ρ ΠΎΠ΄Π°.
- Π Π°Π·Π½ΠΎΠΎΠ±ΡΠ°Π·Π½ΠΎ
- Π ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡΡΠ° Π½Π° Π΅Π·ΠΈΠΊΠ° Π·Π° ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π½Π° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° WIDL (Wine Interface Definition Language) Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Π³Π΅Π½Π΅ΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΠΈ Π·Π° Windows Runtime (WinRT). ΠΡΠΈΠ³ΡΡΠ΅Π½ΠΎ Π΅ Π³Π΅Π½Π΅ΡΠΈΡΠ°Π½Π΅ ΠΈ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½Π΅ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ WinMD (Windows Metadata) Π·Π° API WinRT (Windows Runtime).
- Π ΡΡΠΈΠ»ΠΈΡΠ°ΡΠ° winedump Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Π΄ΡΠΌΠΏ Π½Π° ΡΠ΅ΡΡΡΡΠΈ MUI, Π½ΠΎΠΌΠ΅ΡΠ° Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ½ΠΈ ΠΏΠΎΠ²ΠΈΠΊΠ²Π°Π½ΠΈΡ, Π²Π³ΡΠ°Π΄Π΅Π½ΠΈ NE-ΠΌΠΎΠ΄ΡΠ»ΠΈ ΠΈ Π³ΠΎΠ»Π΅ΠΌΠΈ PDB ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ (> 4 ΠΠ).
- ΠΡΠΎΠ²Π΅Π΄Π΅Π½ Π΅ ΡΠ΅ΡΠ°ΠΊΡΠΎΡΠΈΠ½Π³ Π½Π° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡΡΠ° Π½Π° Common Control, Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° COMCTL32 Π΅ ΡΠ°Π·Π΄Π΅Π»Π΅Π½Π° Π½Π° ΠΎΡΠ΄Π΅Π»Π½ΠΈ ΠΌΠΎΠ΄ΡΠ»ΠΈ Π·Π° Π²Π΅ΡΡΠΈΠΈ 5 ΠΈ 6.
- Π BCrypt Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΡΡΠ°Π½Π΄Π°ΡΡΠ° Π·Π° ΡΠΎΡΠΌΠΈΡΠ°Π½Π΅ Π½Π° ΠΊΠ»ΡΡΠ° PBKDF2.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΈΡΠ΅ UserProgramFiles, AccountPictures ΠΈ Screenshots.
- Π ΡΡΡΡΠ°Π²Π° ΡΠ° ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠ°Π½ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈΡΠ΅ LLVM Compiler-RT 8.0.1 ΠΈ TomCrypt 1.18.2. ΠΠ° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π΅ Π½Π° CPU Π½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° FreeBSD Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° HwLoc.
- ΠΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ Π΄ΠΎ Π½ΠΎΠ²ΠΈ Π²Π΅ΡΡΠΈΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈΡΠ΅ Vkd3d 1.18, Faudio 25.12, FluidSynth 2.4.2, LCMS2 2.17, LibMPG123 1.33.0, Libpng 1.6.51, LibTiff 4.7.1, LibXml2 2.12.10, LibXslt 1.1.43.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
