Linux์ฉ ์ค๋์ค ์ฒ๋ฆฌ ์์คํ
๊ฐ๋ฐ ์ ๋ฌธ Juuso Alasuutari(์ ์)
Proton-i๋ Valve์ ์๋ก์ด ์ฃผ์ ๋ฆด๋ฆฌ์ค๋ฅผ ๊ธฐ๋ค๋ฆฌ์ง ์๊ณ ํ์ฌ Proton ์ฝ๋๋ฒ ์ด์ค๋ฅผ ์ต์ ๋ฒ์ ์ Wine์ผ๋ก ํฌํ
ํ๋ ๊ฒ์ ๋ชฉํ๋ก ํฉ๋๋ค. ํ์ฌ Proton ๋ณํ์ ๋ค์์ ๊ธฐ๋ฐ์ผ๋ก ํฉ๋๋ค.
Proton-i์ ์ฃผ์ ์์ด๋์ด๋ ์ต์ ๋ฒ์ ์ Wine์ ๋์ ๋ ํจ์น(๊ฐ ๋ฆด๋ฆฌ์ค๋ง๋ค ์๋ฐฑ ๊ฐ์ ๋ณ๊ฒฝ ์ฌํญ์ด ๊ฒ์๋จ)๋ฅผ ์ฌ์ฉํ ์ ์๋ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ ๊ฒ์ ๋๋ค. ์ด๋ ์ด์ ์ ์ถ์์ ๋ฌธ์ ๊ฐ ์์๋ ๊ฒ์์ ์ถ์ํ๋ ๋ฐ ์ ์ฌ์ ์ผ๋ก ๋์์ด ๋ ์ ์์ต๋๋ค. ์ผ๋ถ ๋ฌธ์ ๋ Wine์ ์ ๋ฆด๋ฆฌ์ค์์ ์์ ๋ ์ ์๊ณ ์ผ๋ถ๋ Proton ํจ์น๋ก ํด๊ฒฐ๋ ์ ์๋ค๊ณ ๊ฐ์ ํฉ๋๋ค. ์ด๋ฌํ ์์ ์ฌํญ์ ์กฐํฉํ๋ฉด ์ ์ฌ์ ์ผ๋ก ์๋ก์ด Wine๊ณผ Proton์ ๋ณ๋๋ก ์ฌ์ฉํ๋ ๊ฒ๋ณด๋ค ๋ ๋์ ํ์ง์ ๊ฒ์ ๊ฒฝํ์ ์ป์ ์ ์์ต๋๋ค.
Valve์์ ๊ฐ๋ฐํ Proton ํ๋ก์ ํธ๋ Wine ํ๋ก์ ํธ์ ๊ฐ๋ฐ์ ๊ธฐ๋ฐ์ผ๋ก ํ๋ฉฐ Windows์ฉ์ผ๋ก ์ ์๋๊ณ Linux์ Steam ์นดํ๋ก๊ทธ์ ํ์๋๋ ๊ฒ์ ์ ํ๋ฆฌ์ผ์ด์
์ ์ถ์๋ฅผ ๋ณด์ฅํ๋ ๊ฒ์ ๋ชฉํ๋ก ํฉ๋๋ค. Proton์ ์ฌ์ฉํ๋ฉด Steam Linux ํด๋ผ์ด์ธํธ์์ Windows ์ ์ฉ ๊ฒ์ ์ ํ๋ฆฌ์ผ์ด์
์ ์ง์ ์คํํ ์ ์์ต๋๋ค. ํจํค์ง์๋ DirectX 9(D9VK ๊ธฐ๋ฐ), DirectX 10/11(DXVK ๊ธฐ๋ฐ) ๋ฐ 12(vkd3d ๊ธฐ๋ฐ) ๊ตฌํ์ด ํฌํจ๋์ด ์์ผ๋ฉฐ DirectX ํธ์ถ์ Vulkan API๋ก ๋ณํํ์ฌ ๊ฒ์ ์ปจํธ๋กค๋ฌ์ ๋ํ ํฅ์๋ ์ง์๊ณผ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค. ๊ฒ์์์ ์ง์ํ๋ ํ๋ฉด ํด์๋์ ๋ฐ๋ผ ์ ์ฒด ํ๋ฉด ๋ชจ๋๋ฅผ ๋
๋ฆฝ์ ์ผ๋ก ์ฌ์ฉํ๋ ค๋ฉด ์๋ Wine์ ๋นํด "esync"(Eventfd ๋๊ธฐํ) ๋๋ "
์ถ์ฒ : opennet.ru