Red Hat์ Windows์์ ๊ธฐ๋ณธ Linux API๋ฅผ ์๋ฎฌ๋ ์ด์ ํ๊ธฐ ์ํ DLL ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ํฌํจํ๋ Cygwin 3.4.0 ํจํค์ง์ ์์ ์ ์ธ ๋ฆด๋ฆฌ์ค๋ฅผ ์ถ์ํ์ต๋๋ค. ์ด๋ฅผ ํตํด ์ต์ํ์ ๋ณ๊ฒฝ์ผ๋ก Linux์ฉ์ผ๋ก ์์ฑ๋ ํ๋ก๊ทธ๋จ์ ๊ตฌ์ถํ ์ ์์ต๋๋ค. ํจํค์ง์๋ Windows์์ ์คํ๋๋๋ก ์ง์ ๊ตฌ์ถ๋ ํ์ค Unix ์ ํธ๋ฆฌํฐ, ์๋ฒ ์ ํ๋ฆฌ์ผ์ด์ , ์ปดํ์ผ๋ฌ, ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ฐ ํค๋ ํ์ผ๋ ํฌํจ๋์ด ์์ต๋๋ค.
์ด ๋ฆด๋ฆฌ์ค์์๋ 32๋นํธ ์ค์น์ ๋ํ ์ง์์ด ์ ๊ฑฐ๋๊ณ 64๋นํธ Windows์์ 32๋นํธ ํ๋ก๊ทธ๋จ์ ์คํํ๋ ๋ฐ ์ฌ์ฉ๋๋ WoW64 ๊ณ์ธต์ด ์ ๊ฑฐ๋์์ต๋๋ค. Windows Vista ๋ฐ Windows Server 2008 ์ด์ ์ฒด์ ์ ๋ํ ์ง์๋ ์ค๋จ๋์์ผ๋ฉฐ ๋ค์ ๋ถ๊ธฐ(3.5)์์๋ Windows 7, Windows 8, Windows Server 2008 R2 ๋ฐ Windows Server 2012์ ๋ํ ์ง์์ ์ค๋จํ ๊ณํ์ ๋๋ค. Windows 3.5.0, Windows 8.1, Windows 10, Windows Server 11 R2012, Windows Server 2, Windows Server 2016 ๋ฐ Windows Server 2019๋ง ํด๋น๋ฉ๋๋ค.
๊ธฐํ ๋ณ๊ฒฝ ์ฌํญ:
- Cygwin DLL์์ ๊ธฐ๋ณธ์ ์ผ๋ก ํ์ฑํ๋๋ ASLR(์ฃผ์ ๊ณต๊ฐ ๋ฌด์์ํ)์ ์คํํ๋ ๊ธฐ๋ฅ์ด ์ ๊ณต๋ฉ๋๋ค.
- ".com" ํ์ฅ์๋ฅผ ๊ฐ์ง ํ์ผ์ ๋ํ ํน์ ์ฒ๋ฆฌ๊ธฐ๋ฅผ ์ ๊ฑฐํ์ต๋๋ค.
- setrlimit(RLIMIT_AS) ํธ์ถ์ ์ฒ๋ฆฌํ๊ธฐ ์ํ ์ฝ๋๊ฐ ์ถ๊ฐ๋์์ต๋๋ค.
- /proc/์ ์ ํธ ๋ง์คํฌ๋ฅผ ์ฒ๋ฆฌํ๋ ์ฝ๋๊ฐ ์ถ๊ฐ๋์์ต๋๋ค. /์ํ.
- UDP_SEGMENT ๋ฐ UDP_GRO ์์ผ ์ต์ ์ ๋ํ ์ฒ๋ฆฌ๊ธฐ๊ฐ ์ถ๊ฐ๋์์ต๋๋ค.
- ๊ธฐ๋ณธ ์ต์ ์ "CYGWIN=pipe_byte"์ ๋๋ค. ์ด๋ ์ด๋ฆ ์๋ ํ์ดํ๊ฐ ๋ฉ์์ง ์ ๋ฌ ๋ชจ๋ ๋์ ๋ฐ์ดํธ ๋ชจ๋์์ ์๋ํ๋๋ก ํฉ๋๋ค.
- ํค๋ ํ์ผ stdio.h ๋นํ์ฑํ์ ์ ์๋ ์ ๋ ฅ ํจ์๋ ๋๋ต์ ์ธ Linux ๋์์ ์ํด ํ์ผ ๋(EOF) ์ดํ ์ฝ๊ธฐ๋ฅผ ์๋ํฉ๋๋ค.
- PATH ํ๊ฒฝ ๋ณ์์ ๋น ๊ฒฝ๋ก๋ฅผ ์ง์ ํ๋ฉด ์ด์ Linux์ ๋์์ ํด๋นํ๋ ํ์ฌ ๋๋ ํฐ๋ฆฌ๋ฅผ ๊ฐ๋ฆฌํค๋ ๊ฒ์ผ๋ก ์ฒ๋ฆฌ๋ฉ๋๋ค.
- ๊ธฐ๋ณธ๊ฐ FD_SETSIZE ๋ฐ NOFILE์ด 1024 ๋ฐ 3200์ผ๋ก ๋ณ๊ฒฝ๋์์ต๋๋ค.
์ถ์ฒ : opennet.ru