시그윈
개발자 | 레드햇 등 |
---|---|
발표일 | 1995년 10월 18일 |
안정화 버전 | 3.5.4-1[1]
/ 2024년 8월 25일 (3개월 전) |
저장소 | |
운영 체제 | 마이크로소프트 윈도우 |
종류 | 에뮬레이터 |
라이선스 | GNU GPL |
웹사이트 | cygwin |
시그윈(Cygwin; IPA: /ˈsɪgwɪn/)은 원래 시그너스 솔루션스가 개발한 자유 소프트웨어 모음집으로, 마이크로소프트 윈도우에서 POSIX기반 소프트웨어를 구동 및 개발할 수 있는 환경을 제공한다. GNU GPL로 배포되어 자유롭게 사용할 수 있다.
개요
[편집]런타임 라이브러리 ‘Cygwin1.dll’이 시그윈의 핵심이다. 유닉스에서 빈번히 사용되는 셸이나 명령 등을 윈도우에서 소스 코드로부터 컴파일할 수 있도록 한 것으로, 유닉스용 기계어 이진 코드를 에뮬레이션한 것은 아니다.
Cygwin1.dll 런타임 라이브러리가 POSIX의 시스템 호출과 동등한 기능을 제공하고 있으므로, 각 프로그램은 이것을 동적으로 링크함으로써 유닉스에서와 거의 비슷하게 동작할 수 있게 한다. 또, 이 라이브러리가 존재하는 까닭에 시그윈용으로서 제공되지 않고 유닉스용 프로그램의 소스 코드도 이전과 같은 큰 수정 없이 윈도용으로 컴파일할 수 있다.
유닉스 시스템 V에서 유래한 IPC을 이용하는 응용 프로그램을 위해, 런타임 라이브러리에서 서비스(NT 서비스)를 준비해 놓고 있다. 현재 시그윈에 포함되어 있는 PostgreSQL은 이 서비스가 제공하는 공유 버퍼나 세마포어를 이용해 동작한다. PostgreSQL 자신은 버전 8.0 이상에서는 시그윈 의존으로부터 탈피, 전면적으로 Win32 네이티브로 소스를 고쳐 쓰고 있다.
역사
[편집]시그윈은 1995년, 윈도우 NT와 95가 오브젝트 파일 포맷으로 COFF를 사용하고 GNU가 이미 x86과 COFF, C 라이브러리 newlib 지원을 포함한 것을 관찰한 시그너스의 엔지니어 Steve Chamberlain의 프로젝트로 시작되었다. 그는 GCC의 대상을 변경하여 윈도우에서 동작 가능한 실행 파일을 만들어내는 크로스 컴파일러를 만들어낼 수 있을 것이라 생각하였다.
초기에 시그윈은 gnuwin32 (현재의 GnuWin32와는 다름)로 불렸다. 이 이름은 시그윈32로 바뀌면서 시그너스가 이를 만드는 역할을 강조하였다. 마이크로소프트가 상표 Win32를 등록하였을 때, gnuwin32에서 32를 제거하면서 시그윈이 되었다.
기능
[편집]- MinGW를 사용하여 네이티브 응용 프로그램 작성 지원
- sh (본 셸) 스크립트 지원
- rsh, ssh, telnet을 사용한 원격 로그인 지원
- PSP, PS2를 비롯한 수많은 플랫폼에 대한 임베디드 크로스 플랫폼 지원
- X 및 오픈GL 지원
- 윈도우 비스타 지원
단점
[편집]- 시그윈을 시작하고 프로그램들을 실행하는 데 시간이 걸린다.
- 키 코드 인지에 버그가 많다.
- 호환성 계층 DLL을 요구한다.
- 설치하는데 정말 많은 시간이 소요된다.
같이 보기
[편집]- MinGW
- 인테릭스(서비시스 포 유닉스 패키지의 일부)
참조
[편집]- ↑ “cygwin 3.5.4-1”. 2024년 8월 25일. 2024년 8월 27일에 확인함.