26๋ ๊ฐ์ ๊ฐ๋ฐ๊ณผ 32๊ฐ์ ์คํ ๋ฒ์ ์ ๊ฑฐ์ณ 9.0๊ฐ ์ด์์ ๋ณ๊ฒฝ ์ฌํญ์ด ํตํฉ๋ Win7000 API - Wine 64์ ๊ฐ๋ฐฉํ ๊ตฌํ์ ์์ ์ ์ธ ๋ฆด๋ฆฌ์ค๊ฐ ๋ฐํ๋์์ต๋๋ค. ์ ๋ฒ์ ์ ์ฃผ์ ์ฑ๊ณผ์๋ 32๋นํธ ํ๊ฒฝ์์ 64๋นํธ ํ๋ก๊ทธ๋จ์ ์คํํ๊ธฐ ์ํ WoW64 ์ํคํ ์ฒ ๊ตฌํ, Wayland ์ง์์ ์ํ ๋๋ผ์ด๋ฒ ํตํฉ, ARMXNUMX ์ํคํ ์ฒ ์ง์, DirectMusic API ๊ตฌํ ๋ฐ ์ค๋งํธ ์นด๋ ์ง์์ด ํฌํจ๋ฉ๋๋ค.
Wine์ Windows์ฉ 5336(5266๋ ์ 5156, 5049๋ ์ 4397, 4370๋ ์ 4312) ํ๋ก๊ทธ๋จ์ ์ ์ฒด ์๋์ ํ์ธํ์ผ๋ฉฐ, ๋ ๋ค๋ฅธ 4227(3943๋ ์ 3888, 3813๋ ์ 3703, XNUMX๋ ์ XNUMX) ํ๋ก๊ทธ๋จ์ด ์๋ฒฝํ๊ฒ ์๋ํจ์ ํ์ธํ์ต๋๋ค. ์ถ๊ฐ ์ค์ ๋ฐ ์ธ๋ถ DLL. XNUMX๊ฐ์ ํ๋ก๊ทธ๋จ(XNUMX๋ ์ XNUMX, XNUMX๋ ์ XNUMX, XNUMX๋ ์ XNUMX)์ ํด๋น ์ดํ๋ฆฌ์ผ์ด์ ์ ์ฃผ์ ๊ธฐ๋ฅ ์ฌ์ฉ์ ์ง์ฅ์ ์ฃผ์ง ์๋ ์ ๋์ ์ฌ์ํ ์๋ ๋ฌธ์ ๊ฐ ์์ต๋๋ค.
Wine 9.0์ ์ฃผ์ ํ์ :
- XWayland ๋ฐ X11 ๊ตฌ์ฑ ์์๋ฅผ ์ฌ์ฉํ์ง ์๊ณ ๋ Wayland ํ๋กํ ์ฝ ๊ธฐ๋ฐ ํ๊ฒฝ์์ Wine์ ์ฌ์ฉํ ์ ์๋๋ก ๋๋ผ์ด๋ฒ winewayland.drv๋ฅผ ์ถ๊ฐํ์ต๋๋ค. ๊ฐ๋ฐ์ ๋ชฉํ๋ X11 ๊ด๋ จ ํจํค์ง ์ค์น๊ฐ ํ์ ์๋ Windows ์ ํ๋ฆฌ์ผ์ด์
์คํ์ ์ง์ํ๋ ์์ํ Wayland ํ๊ฒฝ์ ์ ๊ณตํ๋ ๊ฒ์
๋๋ค. ์ด๋ฅผ ํตํด ๋ถํ์ํ ๋ ์ด์ด๋ฅผ ์ ๊ฑฐํ์ฌ ๊ฒ์์ ์ฑ๋ฅ๊ณผ ๋ฐ์์ฑ์ ๋์ผ ์ ์์ต๋๋ค. Wine์ฉ ์์ Wayland ํ๊ฒฝ์ ์ฌ์ฉํ๋ฉด X11์ ๋ด์ฌ๋ ๋ณด์ ๋ฌธ์ ๋ ์ ๊ฑฐ๋ฉ๋๋ค(์๋ฅผ ๋ค์ด, X11 ํ๋กํ ์ฝ์ ๋ชจ๋ ์
๋ ฅ ์ด๋ฒคํธ ๋ฐ ๊ฐ์ง ํค ์
๋ ฅ ๋์ฒด์ ๋ํ ์ก์ธ์ค๋ฅผ ํ์ฉํ๋ฏ๋ก ์ ๋ขฐํ ์ ์๋ X11 ๊ฒ์์ ๋ค๋ฅธ ์์ฉ ํ๋ก๊ทธ๋จ์ ๊ฐ์ํ ์ ์์ต๋๋ค).
๋๋ผ์ด๋ฒ๋ ์คํ์ ์ด๋ฉฐ ๊ฐ๋ฐ ์ค์ธ ๊ฒ์ผ๋ก ํ์๋์ด ์์ง๋ง ๊ทธ๋ผ์๋ ๋ถ๊ตฌํ๊ณ ์ด๋ฏธ ์ฐฝ ๊ด๋ฆฌ, ๋ค์ค ๋ชจ๋ํฐ ์์ , ๋์ ํฝ์ ๋ฐ๋(๋์ DPI) ํ๋ฉด์์ ์ถ๋ ฅ ํฌ๊ธฐ ์กฐ์ ์ง์, ๋ง์ฐ์ค ์์ง์ ์ถ์ ์ ์๋ ์ขํ ๋ฐ Vulkan ๊ทธ๋ํฝ API ์ง์. ๊ธฐ๋ณธ์ ์ผ๋ก ๋๋ผ์ด๋ฒ๋ ํ์ฑํ๋์ด ์์ง ์์ผ๋ฉฐ ์ด๋ฅผ ํ์ฑํํ๋ ค๋ฉด ๋ ์ง์คํธ๋ฆฌ ๋งค๊ฐ ๋ณ์ "HKCU\Software\Wine\Drivers"์ "wayland"๋ฅผ ์ถ๊ฐํ๊ณ DISPLAY ํ๊ฒฝ ๋ณ์๊ฐ ์ค์ ๋์ด ์์ง ์์์ง ํ์ธํด์ผ ํฉ๋๋ค. wine reg.exe add HKCU\ \Software\\Wine\\Drivers /v ๊ทธ๋ํฝ /d x11,wayland
- ๋ชจ๋ ๋ชจ๋์ PE์ Unix ๊ณ์ธต ๊ฐ์ ์ง์ ํธ์ถ์ ์ํํ๋ ๋์ NT ์์คํ ํธ์ถ ์ธํฐํ์ด์ค๋ก ๋ณํ๋์ด ๋ชจ๋ DLL์ PE(Portable Executable) ์คํ ํ์ผ ํ์์ ์ฌ์ฉํ๋๋ก ๋ณํํ๋ ์๋ ๊ฐ์ ์์ ์ด ์๋ฃ๋์์ต๋๋ค.
- 64๋นํธ Unix ์์คํ
์์ 64๋นํธ Windows ์ ํ๋ฆฌ์ผ์ด์
์ ์คํํ ์ ์๋ WoW32 ๊ณ์ธต(64๋นํธ Windows-on-Windows)์ ๊ฐ๋ฐ์ด ๊ณ์๋์์ต๋๋ค. Unix ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ์ก์ธ์คํ๋ ๋ชจ๋ ๋ชจ๋์ WoW64 ์์คํ
ํธ์ถ ์ฝํฌ๋ฅผ ์ฌ์ฉํ์ฌ 32๋นํธ PE ํ์ ๋ชจ๋์ด 64๋นํธ Unix ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ์ก์ธ์คํ ์ ์๋๋ก ํฉ๋๋ค.
64๋นํธ ํ๋ก์ธ์ค ๋ด์์ 32๋นํธ ์ฝ๋๋ฅผ ์คํํ๋ ์๋ก์ด WoW64 ์์ ๋ชจ๋๊ฐ ๊ฐ์ ๋์์ต๋๋ค(์ด์ WoW64 ๋ชจ๋์์๋ 32๋นํธ ์์ฉ ํ๋ก๊ทธ๋จ์ด 32๋นํธ Unix ํ๋ก์ธ์ค์์ ์คํ๋์์ต๋๋ค). macOS ํ๋ซํผ์์ ์๋ก์ด WoW64 ๋ชจ๋ ์ฌ์ฉ์ ๋ํ ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค. ์๋ก์ด WoW64 ๋ชจ๋์๋ 16๋นํธ ๋ชจ๋ ์ง์ ๋ถ์กฑ, ARB_buffer_storage ํ์ฅ ์ง์ ๋ถ์กฑ์ผ๋ก ์ธํ OpenGL ์ฑ๋ฅ ์ ํ ๋ฑ ๋ช ๊ฐ์ง ๋จ์ ์ด ์์ผ๋ฏ๋ก ์์ง ๊ธฐ๋ณธ์ ์ผ๋ก ํ์ฑํ๋์ด ์์ง ์์ผ๋ฉฐ โโenable-โ ์ต์ ์ ์ฌ์ฉํ์ฌ ๋น๋ํด์ผ ํฉ๋๋ค. ๊ตฌ์ฑ ์คํฌ๋ฆฝํธ์ "archs=i386,x86_64"๊ฐ ์์ต๋๋ค.
- ARM64 ์ํคํ ์ฒ ์์คํ ์์ ๊ธฐ์กด Windows ์คํ ํ์ผ์ ์คํํ๋ ๊ธฐ๋ฅ์ด ์ถ๊ฐ๋์์ต๋๋ค. ARM64EC ABI(ARM64 ์๋ฎฌ๋ ์ด์ ํธํ)์ฉ Wine์ ๋น๋ํ๋ ๊ธฐ๋ฅ๊ณผ ARM64EC ๋ชจ๋ ๋ก๋ ์ง์์ด ๊ตฌํ๋์์ผ๋ฉฐ, x64_86๋ก ๊ฐ๋ณ ๋ชจ๋์ ์คํํ๋ ๊ธฐ๋ฅ์ ์ ๊ณตํจ์ผ๋ก์จ ์๋ x64_64 ์ํคํ ์ฒ์ฉ์ผ๋ก ์์ฑ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ARM86 ์์คํ ์ผ๋ก ํฌํ ํ๋ ๊ฒ์ ๋จ์ํํ๋ ๋ฐ ์ฌ์ฉ๋์์ต๋๋ค. ์๋ฎฌ๋ ์ดํฐ๋ฅผ ์ฌ์ฉํ์ฌ ARM64 ํ๊ฒฝ์์ ์ฝ๋๋ฅผ ์์ฑํฉ๋๋ค. x64/Arm64EC ๋ฐ ARM64 ํ๋ก์ธ์ค์์ ๋จ์ผ ์คํ ํ์ผ์ ๋ก๋ํ ์ ์๋ ARM64X PE ํ์ผ ํ์์ ๋ํ ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค. 32๋นํธ x86 ์์คํ ์ ์๋ฎฌ๋ ์ด์ ํ๊ธฐ ์ํ ์ธํฐํ์ด์ค๊ฐ ๊ตฌํ๋์์ง๋ง ์๋ฎฌ๋ ์ดํฐ๊ฐ ํฌํจ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ์์ง ๊ธฐ๋ณธ Wine ํจํค์ง์ ํฌํจ๋์ด ์์ง ์์ต๋๋ค(์ธ๋ถ FEX ์๋ฎฌ๋ ์ดํฐ๋ฅผ ์ฌ์ฉํ์ฌ ARM86 ํ๊ฒฝ์์ x64 ์ฝ๋๋ฅผ ์คํํ ์ ์์).
- ๊ทธ๋ํฝ ํ์ ์์คํ
- PostScript ๋๋ผ์ด๋ฒ๋ ์ธ์ ์์ ์ ๋ํ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ Windows ํ์์ ์คํ ํ์ผ์ ์ง์ํ๋๋ก ๋ค์ ์ค๊ณ๋์์ต๋๋ค. Unix ํ๊ฒฝ์์ ๋๋ผ์ด๋ฒ์ ๋ํ ์ง์ ํธ์ถ์ ์ ์ธ๋ฉ๋๋ค.
- WinRT ํ ๋ง์ ์ด๋์ด ๋ชจ๋ ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค. ์ด๋์ด ์ธํฐํ์ด์ค ๋์์ธ์ ๊ฐ๋ฅํ๊ฒ ํ๋ ์ค์ ์ด WineCfg์ ์ถ๊ฐ๋์์ต๋๋ค.
- Vulkan ๊ทธ๋ํฝ API์ฉ ๋๋ผ์ด๋ฒ์๋ Vulkan 1.3.272 ์ฌ์์ ๋ํ ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค(8.0์ Wine 1.3.237์์ ์ง์๋จ).
- GdiPlus ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๊ธฐ๋ฅ์ด ์ต์ ํ๋์ด ๊ทธ๋ํฝ ์ฑ๋ฅ์ด ํฅ์๋์์ต๋๋ค.
- Direct3D
- ์ฒ๋ฆฌ ์ค์ธ ๋ ๋๋ง ๋ช ๋ น์ด ์์ผ๋ฉด ๋ฉํฐ ์ค๋ ๋ ๋ช ๋ น ์คํธ๋ฆผ์ ๊ตฌ๋ฌธ ๋ถ์์ด ์ผ์ ์ค์ง๋ฉ๋๋ค. ์ด๋ฅผ ํตํด ์ ์ฒด ๋ช ๋ น ์คํธ๋ฆผ ๋์ญํญ์ ์ฐจ์งํ์ง ์๋ ํ๋ก๊ทธ๋จ์ ์คํํ ๋ ์๋์ง ์๋น๋ฅผ ๋จ์ผ ์ค๋ ๋ ์ฒ๋ฆฌ ์์ค์ผ๋ก ์ค์ผ ์ ์์ต๋๋ค.
- Direct3D 10์๋ ์ถ๊ฐ ํจ๊ณผ์ ๋ํ ์ง์์ด ํฌํจ๋์ด ์์ต๋๋ค.
- Vulkan ๊ทธ๋ํฝ API๋ฅผ ์ฌ์ฉํ์ฌ WineD3D ์ฝ๋ ๋ฐ ๋ฐฑ์๋์ ์ฑ๋ฅ์ ์ต์ ํํ์ต๋๋ค.
- ์ด์ Vulkan API ๊ธฐ๋ฐ ๋ ๋๋ง ์ฝ๋๋ ์ฅ์น๊ฐ ์ง์ํ๋ ๊ธฐ๋ฅ์ ํ์ธํ๊ณ ์ฌ์ฉ ๊ฐ๋ฅํ Direct3D ๊ธฐ๋ฅ ์์ค์ ์ ํ๋ฆฌ์ผ์ด์ ์ ์๋ ค์ค๋๋ค.
- D3DXFillTextureTX ๋ฐ D3DXFillCubeTextureTX ๊ธฐ๋ฅ์ด ๊ตฌํ๋์์ต๋๋ค.
- ํด๋์ OpenGL ARB ์ ฐ์ด๋ ๋ฐฑ์๋์๋ ARB_fragment_program_shadow ํ์ฅ์ ์ฌ์ฉํ์ฌ ๊ทธ๋ฆผ์๋ฅผ ์ ์ํ๊ธฐ ์ํ ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค.
- D3DXLoadMeshHierarchyFromX ๋ฐ ์ ์ฌํ ํจ์์๋ ID3DXLoadUserData ์ธํฐํ์ด์ค๋ฅผ ์ฌ์ฉํ์ฌ ์ฌ์ฉ์ ๋ฐ์ดํฐ๋ฅผ ๋ก๋ํ๊ธฐ ์ํ ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค.
- ์ฌ์ด๋ ๋ฐ ๋น๋์ค
- DirectMusic API์ ์ด๊ธฐ ๊ตฌํ์ด ์ ์๋์์ต๋๋ค. SoundFont ํ์์ ์ปฌ๋ ์ , ์ ๊ธฐ ๋ฐ ์ฌ์ด๋ ์ํ์ ๋ํ ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค. ๋ํ๋ฌ ํจ๊ณผ์ ๋ํ ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค. dmime ์ํ์ ๋ฐ dmsynth MIDI ์ ๋์ฌ์ด์ ๋ฅผ ์๋ํ ๋ ์ฌ๋ฐ๋ฅธ ๊ตฌํ์ ํ์ธํ๊ธฐ ์ํด ํ ์คํธ๊ฐ ๊ตฌํ๋์์ต๋๋ค.
- FluidSynth ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ์ฌ์ฉ์ ์ํด DirectMusic API์ ๋ด์ฅ๋์ด ์์ต๋๋ค.
- DLS1 ๋ฐ DLS2 ํ์์ ๋ฌผ๋ก Linux์์ ์ฌ์ฉ๋๋ SF2 ํ์์ ์ฌ์ด๋ ๊ธ๊ผด(SoundFont - MIDI ํ์ผ ์ฌ์์ ์ฌ์ฉ๋๋ ์ํ ๊ธฐ๋ฐ ํฉ์ฑ ํ์) ๋ก๋์ ๋ํ ์ง์์ด ๊ตฌํ๋์์ต๋๋ค.
- FluidSynth ์ํํธ์จ์ด ์ ๋์ฌ์ด์ ์ ์ค๋์ค ์ถ๋ ฅ์ ์ํ DirectSound API๋ฅผ ์ฌ์ฉํ์ฌ dmsynth ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ MIDI ์ฝํ ์ธ ๋ฅผ ์ฌ์ํ๋ ๊ธฐ๋ฅ์ ์ถ๊ฐํ์ต๋๋ค.
- Indeo IV50 ๋น๋์ค ์ฝ๋ฑ ํ์์ ๋น๋์ค์ฉ ๋์ฝ๋๋ฅผ ์ถ๊ฐํ์ต๋๋ค.
- DirectShow
- WMV(Windows Media Video) ํ์ ๋์ฝ๋๊ฐ ํฌํจ๋ DMO(DirectX Media Object) ๊ตฌ์ฑ ์์๊ฐ ๊ตฌํ๋์์ต๋๋ค.
- ์ค๋์ค ์บก์ฒ ํํฐ(DirectShow ์ค๋์ค ์บก์ฒ ํํฐ)๋ฅผ ์ถ๊ฐํ์ต๋๋ค.
- ์ค๋์ค ์คํธ๋ฆผ ์ธ์๋ MPEG-1 ์คํธ๋ฆผ ๋ถ๋ฐฐ๊ธฐ(DirectShow MPEG-1 ์คํธ๋ฆผ ๋ถ๋ฐฐ๊ธฐ)๋ ์ด์ ๋น๋์ค ์คํธ๋ฆผ๊ณผ ์๋น์ค ์คํธ๋ฆผ์ ์ง์ํฉ๋๋ค.
- MPEG-1 ํ์(DirectShow MPEG-1 ๋น๋์ค ๋์ฝ๋)์ ๋น๋์ค ๋์ฝ๋ฉ์ ์ํ ํํฐ๊ฐ ๊ตฌํ๋์์ต๋๋ค.
- ์
๋ ฅ ์ฅ์น
- DirectInput์ ๊ฒ์ ์ปจํธ๋กค๋ฌ์ ๋ฒํผ์ ๊ฒ์์ ํน์ ๋์์ ๋ฐ์ธ๋ฉํ ์ ์๋ ๋์ ๋งคํ์ ์ง์ํฉ๋๋ค.
- ๋ฐ์คํฌํ ํตํฉ
- ๋ฐ์ธ๋ฉ์ด ๊ธฐ๋ณธ ์ฌ์ฉ์ ํ๊ฒฝ์ผ๋ก ๋ด๋ณด๋ด์ ธ URL์ ์ด ๋ Wine์์ ์คํ๋๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ํ๋กํ ์ฝ ํธ๋ค๋ฌ๋ก ํธ์ถํ ์ ์์ต๋๋ค(์: "spotify:user:spotify:playlist:848218482355482821"๊ณผ ๊ฐ์ ๋งํฌ๋ฅผ ์ด ๋ spotify.exe ์คํ).
- ์ฅ์น ์ด๋ฆ, ๋ชจ๋ธ ๋ฑ ์ฐ๊ฒฐ๋ ๋ชจ๋ํฐ์ ๋งค๊ฐ๋ณ์์ ๋ํ ์ ๋ณด๊ฐ ํฌํจ๋ EDID(ํ์ฅ ๋์คํ๋ ์ด ์๋ณ ๋ฐ์ดํฐ) ๋ฐ์ดํฐ ์ถ์ถ์ ๊ตฌํํ์ต๋๋ค.
- "์์" ๋ฉ๋ด์ "๋ฐ์คํฌํฑ ์ข ๋ฃ" ๋ฒํผ์ ์ฌ์ฉํ์ฌ ์ ์ฒด ํ๋ฉด ๋ชจ๋๋ก ๋ฐฐํฌ๋ ๋ฐ์คํฌํฑ ์ฐฝ์ ๋ซ์ ์ ์์ต๋๋ค.
- ๊ตญ์ ํ
- IME(์ ๋ ฅ ๋ฐฉ๋ฒ ํธ์ง๊ธฐ)์ ๋ํ ์ง์์ด ํ์ฅ๋์์ต๋๋ค. ๊ธฐ๋ณธ Windows IME ๊ตฌํ๊ณผ์ ํธํ์ฑ์ ๋ณด์ฅํ๊ณ Linux IME์์ ํตํฉ์ ๊ฐ์ ํ๊ธฐ ์ํ ์์ ์ด ์ํ๋์์ต๋๋ค.
- ์ ๋์ฝ๋ CLDR(Unicode Common Locale Data Repository) ๋ฒ์ 44 ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ locale.nls ํ์์ ๋ก์ผ์ผ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์ฑ์ด ์ ๊ณต๋์์ผ๋ฉฐ bew-ID, blo-BJ, csw-CA, ie-EE, mic-CA ์ถ๊ฐ ๋ก์ผ์ผ ์ง์ , prg-PL, skr-PK, tyv-RU, vmw-MZ, xnr-IN ๋ฐ za-CN์ด ์ถ๊ฐ๋์์ต๋๋ค.
- ์ธํฐํ์ด์ค๊ฐ ๊ทธ๋ฃจ์ง์ผ์ด๋ก ๋ฒ์ญ๋์์ต๋๋ค. 16๊ฐ ์ธ์ด์ ๋ํ ์ ์ฒด ๋ฒ์ญ, 31๊ฐ ์ธ์ด์ ๋ํ ๋ถ๋ถ ๋ฒ์ญ์ด ์ ๊ณต๋ฉ๋๋ค.
- ์ ๋์ฝ๋ ๋ฌธ์ํ๊ฐ ํ์ค ๋ฒ์ 15.1.0์ผ๋ก ์ ๋ฐ์ดํธ๋์์ต๋๋ค. ์๊ฐ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ์ ๋ฐ์ดํธ๋์์ต๋๋ค.
- ์ปค๋(Windows ์ปค๋ ์ธํฐํ์ด์ค)
- ๋ฐํ๋๋ Windows์ ๊ธฐ๋ณธ ๋ฒ์ ์ Windows 10์ ๋๋ค.
- PE ํ์์ ์คํ ํ์ผ์ ๊ฒฝ์ฐ ASLR(์ฃผ์ ๊ณต๊ฐ ๋ฌด์์ํ) ์ง์์ด ๊ตฌํ๋์ง๋ง ์ฝ๋๋ฅผ ๋ฉ๋ชจ๋ฆฌ์ ๋ก๋ํ๊ธฐ ์ํ ์ฃผ์๋ ์์ง ์์ ํ ๋ฌด์์ํ๋์ง ์์์ต๋๋ค.
- ์ฝํ๊ฒ ์กฐ๊ฐํ๋ ํ(LFH, Low Fragmentation Heap)์ ๋ํ ์ง์์ด ๊ตฌํ๋์ด ๋ฉ๋ชจ๋ฆฌ ํ ๋น ์์ ์ ์ฑ๋ฅ์ด ํฅ์๋์์ต๋๋ค.
- ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ ํ ๋น ๋ฉ์ปค๋์ฆ์ ๋ฉ๋ชจ๋ฆฌ ์์ฝ(์๋ฆฌ ํ์์) ์ง์์ด ์ถ๊ฐ๋์ด ์ ํ๋ฆฌ์ผ์ด์ ์ด ํฅํ ์ฌ์ฉ์ ์ํด ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ์ ํน์ ์์ญ์ ์์ฝํ ์ ์์ต๋๋ค.
- ์คํ ํ์ผ ๋ฐ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ 64๋นํธ ๋ก๋(๋ก๋ ๋ฐ ํ๋ฆฌ๋ก๋)๋ PIE(์์น ๋ ๋ฆฝ์ ์คํ ํ์ผ) ํ์์ผ๋ก ์ปดํ์ผ๋์ด 32๋นํธ ์ฃผ์ ๊ณต๊ฐ์ ์ผ๋ถ๋ฅผ ํ๋ณดํฉ๋๋ค.
- NT ์์คํ ํธ์ถ ๋ฐ ์ฌ์ฉ์ ์ฝ๋ฐฑ ํธ์ถ์ ๋ํด ์ฌ๋ฐ๋ฅธ ์คํ ํด์ ๊ฐ ์ ๊ณต๋ฉ๋๋ค.
- ๋คํธ์ํน ๊ธฐ๋ฅ
- MSHTML ์์ง์ "์ฃผ๊ธฐ ์์ง" ๊ฐ๋น์ง ์์ง ๋ฉ์ปค๋์ฆ์ ์ง์ํฉ๋๋ค.
- MSHTML์๋ XMLHttpRequest ์์ฒญ์ ๋๊ธฐ ์ฒ๋ฆฌ์ ๋ํ ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค.
- jscript.dll์ ํค๊ฐ ์์์ ๊ฐ์ ์ฐ๊ฒฐํ ์ ์๋ ๊ฐ์ฒด์ธ ํค/๊ฐ ์ ์ปฌ๋ ์ ๊ณผ ํจ๊ป ์๋ํ๋๋ก WeakMap ๊ฐ์ฒด์ ๋ํ ์ง์์ ์ถ๊ฐํฉ๋๋ค. WeakMap.get(), WeakMap.delete(), WeakMap.clear() ๋ฐ WeakMap.has() ๋ฉ์๋๋ฅผ ๊ตฌํํ์ต๋๋ค.
- Gecko ๋ธ๋ผ์ฐ์ ์์ง์ด ๋ฒ์ 2.47.4๋ก ์ ๋ฐ์ดํธ๋์์ต๋๋ค.
- ๋คํธ์ํฌ ์ธํฐํ์ด์ค ์ํ ๋ณ๊ฒฝ์ ๋ํ ์๋ฆผ ์ง์์ด ๊ตฌํ๋์์ต๋๋ค.
- ์ํธํ ๋ฐ ๋ณด์
- PCSClite ์์คํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ํตํด ๊ตฌํ๋ Winscard.dll ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ์ค๋งํธ ์นด๋์ ๋ํ ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค.
- BCrypt๋ Diffie-Hellman ํค ๊ตํ ํ๋กํ ์ฝ์ ๋ํ ์ง์์ ์ถ๊ฐํ์ต๋๋ค.
- Negotiate ํจํค์ง๊ฐ ๊ตฌํ๋์ด SSPI(Security Support Provider Interface) ์ธํฐํ์ด์ค๋ฅผ ์ฌ์ฉํ์ฌ SSP(Security Support Provider) ๊ณต๊ธ์์ ์ก์ธ์คํ๊ธฐ ์ํ ๊ณ์ธต์ ์ ๊ณตํฉ๋๋ค.
- ์๋ฒ ๋๋ ์ ํ๋ฆฌ์ผ์ด์
- Wine Debugger(winedbg)๋ Zydis ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ X86 ๊ธฐ๊ณ ๋ช ๋ น์ด๋ฅผ ๋ถํดํฉ๋๋ค.
- 64๋นํธ ํ๋ซํผ์์ ์ด์ ๋ฒ์ ์ Windows(XP ์ด์ )๋ฅผ ๋ ธ์ถํ๋ ๊ธฐ๋ฅ์ด WineCfg ์ธํฐํ์ด์ค์ ์ถ๊ฐ๋์์ต๋๋ค. ์ด๋ฅผ ํตํด WoW64 ๋ชจ๋๋ฅผ ์ฌ์ฉํ์ฌ ๋ ๊ฑฐ์ ์์ฉ ํ๋ก๊ทธ๋จ์ ์คํํ ์ ์์ต๋๋ค.
- ๋ชจ๋ ๋ด์ฅ ๊ทธ๋ํฝ ์์ฉ ํ๋ก๊ทธ๋จ์ ์ด์ ์ค๋ฅ ์ ๋ณด๋ฅผ ์ฝ์์ ํ์ํ๋ ๋์ ๋ณ๋์ ๋ํ ์์์ ํ์ํฉ๋๋ค.
- systeminfo ํ๋ก๊ทธ๋จ์ WMI(Windows Management Instrumentation) ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ๋ณด ํ์๋ฅผ ์ ๊ณตํฉ๋๋ค.
- Kerberos ํฐ์ผ์ ํ์ํ๋ klist ์ ํ๋ฆฌ์ผ์ด์ ์ด ์ถ๊ฐ๋์์ต๋๋ค.
- taskkill ์ ํ๋ฆฌ์ผ์ด์ ์ ํ์ ํ๋ก์ธ์ค๋ฅผ ๊ฐ์ ๋ก ์ข ๋ฃํ๋ ๊ธฐ๋ฅ์ ๊ตฌํํฉ๋๋ค.
- x86 ๋ฐ ARM์ ์ง์ํ๋ ํ์ด๋ธ๋ฆฌ๋ ์คํ ํ์ผ์ ์คํํ ๋ ์ฌ์ฉ๋๋ ์ํคํ ์ฒ๋ฅผ ์ ํํ๊ธฐ ์ํด ์์ ์ ํธ๋ฆฌํฐ์ "/machine" ์ต์ ์ ์ถ๊ฐํ์ต๋๋ค.
- tasklist ํ๋ก๊ทธ๋จ์ ๋๋ถ๋ถ์ ๊ธฐ๋ฅ์ด ๊ตฌํ๋์์ต๋๋ค.
- findstr ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ธฐ๋ณธ ๊ตฌํ์ ์ถ๊ฐํ์ต๋๋ค.
- ๊ฐ๋ฐ ๋๊ตฌ
- WineDump ์ ํธ๋ฆฌํฐ๋ Windows ๋ ์ง์คํธ๋ฆฌ ํ์ผ(REGF ํ์)์ ๋ด์ฉ์ ํ์ํ๊ณ ํ์ด๋ธ๋ฆฌ๋ PE ํ์ผ์์ ์ง์๋๋ ๋ชจ๋ ์ํคํ ์ฒ(x86/ARM64)์ ๋ํ ๋ฐ์ดํฐ๋ฅผ ํ์ํ๋ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค.
- IDL ์ปดํ์ผ๋ฌ๋ "composable", "default_overload", "deprecated" ๋ฐ "protected" ์์ฑ์ ๋ํ ์ง์์ ์ถ๊ฐํ์ต๋๋ค.
- Wine 6.0์์ ๋ ์ด์ ์ฌ์ฉ๋์ง ์์ผ๋ฉฐ ์ค๋ซ๋์ Wine์์ ๋ ์ด์ ์ฌ์ฉ๋์ง ์๋ libwine.so๊ฐ ์ ๊ฑฐ๋์์ต๋๋ค. libwine.so๋ฅผ ์ฌ์ฉํ์ฌ ์ด์ ๋ฒ์ ์ Wine(5.0 ์ด์)์์ ๋น๋๋ ELF ํ์์ ํ๋ก๊ทธ๋จ์ Wine 9.0์์ ์คํํ๋ ค๋ฉด ๋ค์ ๋น๋ํด์ผ ํฉ๋๋ค.
- ๋ด์ฅ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ฐ ์ธ๋ถ ์ข
์์ฑ
- FluidSynth 2.3.3, Musl 1.2.3(์ํ ํจ์๋ง ํด๋น) ๋ฐ Zydis 4.0.0 ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ํจํค์ง์ ํตํฉ๋์์ต๋๋ค.
- ๊ตฌ์ฑ ์์ Vkd3d 1.10, Faudio 23.12, OpenLDAP 2.5.16, LCMS2 2.15, LibMPG123 1.32.2, LibPng 1.6.40, LibTiff 4.6.0, LibXml2 2.11.5, LibXslt 1.1.38 ๋ฐ Zlib 1.3์ด ์ ๋ฒ์ ์ผ๋ก ์ ๋ฐ์ดํธ๋์์ต๋๋ค. .NET ํ๋ซํผ์ ๊ตฌํํ Wine Mono ์์ง์ด ๋ฆด๋ฆฌ์ค 8.1.0์ผ๋ก ์ ๋ฐ์ดํธ๋์์ต๋๋ค.
- ๋๋ผ์ด๋ฒ winewayland.drv๋ Wayland ํด๋ผ์ด์ธํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ธ๋ถ ์ข ์์ฑ์ผ๋ก ์ฌ์ฉํ๊ณ xkbcommon ๋ฐ xkbregistry ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ์ฌ์ฉํฉ๋๋ค.
- ์ค๋งํธ ์นด๋๋ฅผ ์ง์ํ๊ธฐ ์ํด ์ธ๋ถ ๋ผ์ด๋ธ๋ฌ๋ฆฌ PCSClite(macOS - PCSC)๊ฐ ์ฌ์ฉ๋ฉ๋๋ค.
- i386์ด ์๋ ํ๋ซํผ์์ PE ํ์ผ์ ๋น๋ํ๋ ค๋ฉด ์ด์ ์์ธ๋ฅผ ์ฒ๋ฆฌํ๊ธฐ ์ํด ".seh" ์ง์์ด๋ฅผ ์ง์ํ๋ ํฌ๋ก์ค ์ปดํ์ผ๋ฌ๊ฐ ํ์ํฉ๋๋ค.
์ถ์ฒ : opennet.ru