26๋ ๊ฐ์ ๊ฐ๋ฐ๊ณผ 32๊ฐ์ ์คํ ๋ฒ์ ์ ๊ฑฐ์ณ 9.0๊ฐ ์ด์์ ๋ณ๊ฒฝ ์ฌํญ์ด ํตํฉ๋ Win7000 API - Wine 64์ ๊ฐ๋ฐฉํ ๊ตฌํ์ ์์ ์ ์ธ ๋ฆด๋ฆฌ์ค๊ฐ ๋ฐํ๋์์ต๋๋ค. ์ ๋ฒ์ ์ ์ฃผ์ ์ฑ๊ณผ์๋ 32๋นํธ ํ๊ฒฝ์์ 64๋นํธ ํ๋ก๊ทธ๋จ์ ์คํํ๊ธฐ ์ํ WoW64 ์ํคํ ์ฒ ๊ตฌํ, Wayland ์ง์์ ์ํ ๋๋ผ์ด๋ฒ ํตํฉ, ARMXNUMX ์ํคํ ์ฒ ์ง์, DirectMusic API ๊ตฌํ ๋ฐ ์ค๋งํธ ์นด๋ ์ง์์ด ํฌํจ๋ฉ๋๋ค.
5336๊ฐ(1๋ ์ 5266๊ฐ, 2๋ ์ 5156๊ฐ, 3๋ ์ 5049๊ฐ)์ ํ๋ก๊ทธ๋จ์ด Wine์์ ์ ์์ ์ผ๋ก ์๋ํ๋ ๊ฒ์ผ๋ก ํ์ธ๋์์ต๋๋ค. Windows4397๊ฐ์ ํ๋ก๊ทธ๋จ(1๋ ์ 4370๊ฐ, 2๋ ์ 4312๊ฐ, 3๋ ์ 4227๊ฐ)์ ์ถ๊ฐ ์ค์ ๋ฐ ์ธ๋ถ DLL์ ์ฌ์ฉํด๋ ์ ์์ ์ผ๋ก ์๋ํฉ๋๋ค. 3943๊ฐ์ ํ๋ก๊ทธ๋จ(1๋ ์ 3888๊ฐ, 2๋ ์ 3813๊ฐ, 3๋ ์ 3703๊ฐ)์ ์์ฉ ํ๋ก๊ทธ๋จ์ ๊ธฐ๋ณธ ๊ธฐ๋ฅ์๋ ์ํฅ์ ๋ฏธ์น์ง ์๋ ์ฌ์ํ ๋ฌธ์ ๊ฐ ์์ต๋๋ค.
Wine 9.0์ ์ฃผ์ ํ์ :
- winewayland.drv ๋๋ผ์ด๋ฒ๊ฐ ์ถ๊ฐ๋์ด XWayland ๋๋ X11 ๊ตฌ์ฑ ์์๋ฅผ ์ฌ์ฉํ์ง ์๊ณ ๋ Wayland ๊ธฐ๋ฐ ํ๊ฒฝ์์ Wine์ ์ฌ์ฉํ ์ ์๊ฒ ๋์์ต๋๋ค. ์ด ๊ฐ๋ฐ์ ์คํ ์ง์์ ํฌํจํ ์์ Wayland ํ๊ฒฝ์ ์ ๊ณตํ๋ ๊ฒ์ ๋ชฉํ๋ก ํฉ๋๋ค. Windows- X11 ๊ด๋ จ ํจํค์ง ์ค์น๊ฐ ํ์ ์๋ ์ ํ๋ฆฌ์ผ์ด์
์ ์ฌ์ฉํ๋ฉด ๋ถํ์ํ ๊ณ์ธต์ ์ ๊ฑฐํ์ฌ ๊ฒ์ ์ฑ๋ฅ๊ณผ ์๋ต์ฑ์ ํฅ์์ํฌ ์ ์์ต๋๋ค. ๋ํ Wine์์ ์์ Wayland ํ๊ฒฝ์ ์ฌ์ฉํ๋ฉด X11์ ๋ด์ฌ๋ ๋ณด์ ๋ฌธ์ (์: ์ ๋ขฐํ ์ ์๋ X11 ๊ฒ์์ X11 ํ๋กํ ์ฝ์ด ๋ชจ๋ ์
๋ ฅ ์ด๋ฒคํธ์ ์ ๊ทผํ๊ณ ํค ์
๋ ฅ ๋์ฒด๋ฅผ ํ์ฉํ๊ธฐ ๋๋ฌธ์ ๋ค๋ฅธ ์ ํ๋ฆฌ์ผ์ด์
์ ๊ฐ์ํ ์ ์์)๋ฅผ ํด๊ฒฐํ ์ ์์ต๋๋ค.
๋๋ผ์ด๋ฒ๋ ์คํ ์ค์ด๋ฉฐ ๊ฐ๋ฐ ์ค์ผ๋ก ํ์๋์ด ์์ง๋ง, ์ฐฝ ๊ด๋ฆฌ, ๋ค์ค ๋ชจ๋ํฐ ์ง์, ๊ณ ํด์๋ ํ๋ฉด์์์ ์ถ๋ ฅ ํฌ๊ธฐ ์กฐ์ ์ง์, ๋ง์ฐ์ค ์์ง์ ์ถ์ ์ ์๋ ์ขํ ์ฌ์ฉ, Vulkan ๊ทธ๋ํฝ API ์ง์ ๋ฑ ๋ค์ํ ๊ธฐ๋ฅ์ ์ด๋ฏธ ์ง์ํ๊ณ ์์ต๋๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก ๋๋ผ์ด๋ฒ๋ ํ์ฑํ๋์ด ์์ง ์์ผ๋ฉฐ, ํ์ฑํํ๋ ค๋ฉด ๋ ์ง์คํธ๋ฆฌ ๋งค๊ฐ๋ณ์ "HKCU\Software\Wine\Drivers"์ "wayland"๋ฅผ ์ถ๊ฐํ๊ณ DISPLAY ํ๊ฒฝ ๋ณ์๊ฐ ์ค์ ๋์ด ์์ง ์์์ง ํ์ธํด์ผ ํฉ๋๋ค. wine reg.exe add HKCU\\Software\\Wine\\Drivers /v Graphics /d x11,wayland
- ๋ชจ๋ ๋ชจ๋์ PE์ Unix ๊ณ์ธต ๊ฐ์ ์ง์ ํธ์ถํ๋ ๋์ NT ์์คํ ํธ์ถ ์ธํฐํ์ด์ค๋ก ๋ณํ๋์์ต๋๋ค. ์ด๋ ๋ชจ๋ DLL ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ PE(Portable Executable) ์คํ ํ์ผ ํ์์ ์ฌ์ฉํ๋๋ก ๋ณํํ๊ธฐ ์ํ ์๋ ๊ฐ์ ์์ ์ด ์๋ฃ๋์์์ ์๋ฏธํฉ๋๋ค.
- WoW64 ๋ ์ด์ด(64๋นํธ) ๊ฐ๋ฐ์ด ๊ณ์๋์์ต๋๋ค. Windows-์ ์์-Windows)๋ฅผ ์ฌ์ฉํ๋ฉด 32๋นํธ๋ฅผ ์คํํ ์ ์์ต๋๋ค. Windows- 64๋นํธ ์ ๋์ค ์์คํ
์์ ์คํ๋๋ ์ ํ๋ฆฌ์ผ์ด์
. ์ ๋์ค ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ์ ๊ทผํ๋ ๋ชจ๋ ๋ชจ๋์ WoW64 ์์คํ
ํธ์ถ ๋ณํ๊ธฐ(thunk)๋ฅผ ์ฌ์ฉํ๋ฏ๋ก PE ํ์์ 32๋นํธ ๋ชจ๋์ด 64๋นํธ ์ ๋์ค ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ์ ๊ทผํ ์ ์์ต๋๋ค.
์๋ก์ด WoW64 ์คํ ๋ชจ๋๊ฐ ๊ฐ์ ๋์ด 32๋นํธ ์ฝ๋๊ฐ 64๋นํธ ํ๋ก์ธ์ค ๋ด์์ ์คํ๋ ์ ์๊ฒ ๋์์ต๋๋ค(์ด์ WoW64 ๋ชจ๋์์๋ 32๋นํธ ์ ํ๋ฆฌ์ผ์ด์ ์ด 32๋นํธ ์ ๋์ค ํ๋ก์ธ์ค์์ ์คํ๋์์ต๋๋ค). ๋ํ, ํด๋น ํ๋ซํผ์์ ์๋ก์ด WoW64 ๋ชจ๋๋ฅผ ์ฌ์ฉํ ์ ์๋๋ก ์ง์ ๊ธฐ๋ฅ์ด ์ถ๊ฐ๋์์ต๋๋ค. macOS์๋ก์ด WoW64 ๋ชจ๋์๋ 16๋นํธ ์ง์ ๋ถ์กฑ ๋ฐ ARB_buffer_storage ํ์ฅ ๊ธฐ๋ฅ ์ง์ ๋ถ์กฑ์ผ๋ก ์ธํ OpenGL ์ฑ๋ฅ ์ ํ์ ๊ฐ์ ๋ช ๊ฐ์ง ์ฌ์ํ ๋ฒ๊ทธ๊ฐ ์์ผ๋ฏ๋ก ์์ง ๊ธฐ๋ณธ์ ์ผ๋ก ํ์ฑํ๋์ด ์์ง ์์ผ๋ฉฐ ๊ตฌ์ฑ ์คํฌ๋ฆฝํธ์์ "--enable-archs=i386,x86_64" ์ต์ ์ ์ฌ์ฉํ์ฌ ๋น๋ํด์ผ ํฉ๋๋ค.
- ๊ธฐ์กด ์คํ ํ์ผ์ ์คํํ ์ ์๋ ๊ธฐ๋ฅ์ ์ถ๊ฐํ์ต๋๋ค. Windows ARM64 ์ํคํ ์ฒ ์์คํ ์์ Wine์ ARM64EC(ARM64 ์๋ฎฌ๋ ์ด์ ํธํ) ABI์ฉ์ผ๋ก ๋น๋ํ ์ ์์ผ๋ฉฐ, ARM64EC ๋ชจ๋์ ๋ก๋ํ ์ ์์ต๋๋ค. ์ด๋ฌํ ๋ชจ๋์ ์๋ฎฌ๋ ์ดํฐ๋ฅผ ์ฌ์ฉํ์ฌ ARM64 ํ๊ฒฝ์์ ๊ฐ๋ณ x86_64 ์ฝ๋ ๋ชจ๋์ ์คํํ ์ ์๋๋ก ํจ์ผ๋ก์จ x86_64 ์ํคํ ์ฒ์ฉ์ผ๋ก ์์ฑ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ARM64 ์์คํ ์ผ๋ก ํฌํ ํ๋ ๊ณผ์ ์ ๊ฐ์ํํฉ๋๋ค. ARM64X PE ํ์ผ ํ์์ ๋ํ ์ง์์ด ์ถ๊ฐ๋์ด ๋จ์ผ ์คํ ํ์ผ์ x64/Arm64EC ๋ฐ ARM64 ํ๋ก์ธ์ค ๋ชจ๋์์ ๋ก๋ํ ์ ์์ต๋๋ค. 32๋นํธ x86 ์์คํ ์ ์๋ฎฌ๋ ์ด์ ํ๊ธฐ ์ํ ์ธํฐํ์ด์ค๊ฐ ๊ตฌํ๋์์ง๋ง, ์๋ฎฌ๋ ์ดํฐ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ์์ง Wine ๋ฐฐํฌํ์ ํฌํจ๋์ด ์์ง ์์ต๋๋ค(์ธ๋ถ FEX ์๋ฎฌ๋ ์ดํฐ๋ฅผ ์ฌ์ฉํ์ฌ ARM64 ํ๊ฒฝ์์ x86 ์ฝ๋๋ฅผ ์คํํ ์ ์์ต๋๋ค).
- ๊ทธ๋ํฝ ํ์ ์์คํ
- PostScript ๋๋ผ์ด๋ฒ๊ฐ ๋ค์ ํ์์ ์คํ ํ์ผ์ ์ง์ํ๋๋ก ์ฌ์ค๊ณ๋์์ต๋๋ค. Windows์ธ์ ์์ ์ ๋ํ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ํ์ผ์ ๋๋ค. ์ ๋์ค ํ๊ฒฝ์์ ๋๋ผ์ด๋ฒ๋ฅผ ์ง์ ํธ์ถํ๋ ๊ฒ์ ์ ์ธ๋ฉ๋๋ค.
- 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 ํ์๋ฟ ์๋๋ผ SF2 ํ์์์๋ ์ฌ์ด๋ ํฐํธ(SoundFont - MIDI ํ์ผ ์ฌ์์ ์ฌ์ฉ๋๋ ์ํ ๊ธฐ๋ฐ ํฉ์ฑ ํ์) ๋ก๋ฉ ์ง์์ ๊ตฌํํ์ต๋๋ค. Linux.
- FluidSynth ์ํํธ์จ์ด ์ ์์ฌ์ด์ ์ DirectSound API๋ฅผ ์ฌ์ฉํ์ฌ ์ค๋์ค ์ถ๋ ฅ์ ํตํด dmsynth ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ MIDI ์ฝํ ์ธ ๋ฅผ ์ฌ์ํ๋ ๊ธฐ๋ฅ์ ์ถ๊ฐํ์ต๋๋ค.
- Indeo IV50 ๋น๋์ค ์ฝ๋ฑ ํ์์ ๋น๋์ค์ ๋์ฝ๋๋ฅผ ์ถ๊ฐํ์ต๋๋ค.
- DirectShow
- WMV ํ์ ๋์ฝ๋๋ฅผ ํฌํจํ๋ DMO(DirectX Media Object) ๊ตฌ์ฑ ์์๊ฐ ๊ตฌํ๋์์ต๋๋ค.Windows ๋ฏธ๋์ด ๋น๋์ค).
- ์ค๋์ค ์บก์ฒ ํํฐ(DirectShow ์ค๋์ค ์บก์ฒ ํํฐ)๋ฅผ ์ถ๊ฐํ์ต๋๋ค.
- 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 ํค ๊ตํ ํ๋กํ ์ฝ์ ๋ํ ์ง์์ ์ถ๊ฐํ์ต๋๋ค.
- ํ์ ํจํค์ง๊ฐ ๊ตฌํ๋์ด ๋ณด์ ์ง์ ๊ณต๊ธ์ ์ธํฐํ์ด์ค(SSPI)๋ฅผ ์ฌ์ฉํ์ฌ ๋ณด์ ์ง์ ๊ณต๊ธ์(SSP)์ ์ก์ธ์คํ ์ ์๋ ๊ณ์ธต์ ์ ๊ณตํฉ๋๋ค.
- ์๋ฒ ๋๋ ์ ํ๋ฆฌ์ผ์ด์
- Wine Debugger(winedbg)๋ Zydis ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ X86 ๊ธฐ๊ณ ๋ช ๋ น์ด๋ฅผ ๋ถํดํฉ๋๋ค.
- WineCfg ์ธํฐํ์ด์ค๊ฐ 64๋นํธ ํ๋ซํผ์์ ์ด์ ๋ฒ์ ์ ์ง์ํ๋๋ก ์ ๋ฐ์ดํธ๋์์ต๋๋ค. Windows (XP ์ด์ ๋ฒ์ ์์๋) WoW64 ๋ชจ๋๋ฅผ ์ฌ์ฉํ์ฌ ๊ธฐ์กด ์ ํ๋ฆฌ์ผ์ด์ ์ ์คํํ ์ ์์์ต๋๋ค.
- ๋ชจ๋ ๋ด์ฅ ๊ทธ๋ํฝ ์์ฉ ํ๋ก๊ทธ๋จ์ ์ด์ ์ค๋ฅ ์ ๋ณด๋ฅผ ์ฝ์์ ํ์ํ๋ ๋์ ๋ณ๋์ ๋ํ ์์์ ํ์ํฉ๋๋ค.
- systeminfo ํ๋ก๊ทธ๋จ์ WMI ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ๋ณด๋ฅผ ํ์ํฉ๋๋ค.Windows ๊ฒฝ์ ๋๊ตฌ).
- Kerberos ํฐ์ผ์ ํ์ํ๋ klist ์ ํ๋ฆฌ์ผ์ด์ ์ด ์ถ๊ฐ๋์์ต๋๋ค.
- taskkill ์ ํ๋ฆฌ์ผ์ด์ ์ ํ์ ํ๋ก์ธ์ค๋ฅผ ๊ฐ์ ๋ก ์ข ๋ฃํ๋ ๊ธฐ๋ฅ์ ๊ตฌํํฉ๋๋ค.
- ์์ ์ ํธ๋ฆฌํฐ์๋ ์ด์ x86 ๋ฐ ARM์ ์ง์ํ๋ ํ์ด๋ธ๋ฆฌ๋ ์คํ ํ์ผ์ ์คํํ ๋ ์ฌ์ฉ๋๋ ์ํคํ ์ฒ๋ฅผ ์ ํํ๋ "/machine" ์ต์ ์ด ์์ต๋๋ค.
- ์์ ๋ชฉ๋ก ํ๋ก๊ทธ๋จ์ ๋๋ถ๋ถ์ ๊ธฐ๋ฅ์ด ๊ตฌํ๋์์ต๋๋ค.
- 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
