2010-05-12 8 views
4

나는 C/C++ 개발자입니다. UNIX에서 C++ 프로그래밍을 한 적이 한번도 없었습니다. Windows에서만했습니다.Windows상의 Cygwin과 실제 UNIX 환경의 차이점

유닉스에서 C++을 연습하고 싶습니다. (왜냐하면 모든 대기업들은 유닉스와 함께 C++에 질문하기 때문이다.)

는 내가 다른 OS를 설치하지 않으려하는 노트북이 (내가 그것을 매우 중요한 소프트웨어를 설치했기 때문에이 나는 설정이없는)

그래서, 내가 검색 한 어떤 Cygwin에서 발견 Windows 용 Unix 에뮬레이터. 나는 이것을 C++로 연습하려고 생각하고있다.

유닉스와 Cygwin의 차이점은 무엇입니까?

+3

랩톱의 가상 컴퓨터에 Unix OS를 설치하는 것을 고려 했습니까? – OregonGhost

답변

0

VirtualBox을 다운로드 한 다음 원하는 유닉스 버전을 설치하십시오. 개인적으로 저는 우분투를 좋아합니다. :)

Cygwin이하는 일은 꽤 훌륭하지만, 유닉스 컴퓨터에서 직접 작업하는 것과 같지는 않습니다.

당신은 도움이 링크를 찾을 수 있습니다
1

: http://en.wikipedia.org/wiki/Cygwin

그들은 많은 유용한 정보는 당신이 더 진행됩니다 이해하는 데 도움을 제공합니다.

내 조언은 자신의 환경을 가상화하는 것입니다 (예를 들어, 가상 상자 안에 Ubuntu 사용). Google에 다운로드 링크를 가져 오십시오.

마음의 내용을 시험해 볼 수 있습니다.

2

Cygwin에는 실제 Unix OS의 기능 중 일부가 있으며 Cygwin에서 알려주지 않는 Unix OS에 대해 알아야 할 사항이 있습니다. 그것은 유닉스 컴퓨터에서해야 할 일에 달려있다. 파일 시스템이 다르므로 Windows와 동일한 디렉토리 구조가 아닙니다. 예를 들어, Unix에는 'Program Files'이 없기 때문에 cygwin에서 찾을 수없는 많은 파일이 어디에 있는지 알아야 할 수도 있습니다. 컴퓨터에 다른 OS를 설치하고 싶지 않은 경우 가상 컴퓨터에 설치하거나 간단히 라이브 CD를 사용할 수 있습니다.

4

Cygwin is 주로 POSIX 에뮬레이터 - POSIX는 UNIX 및 기타 시스템의 가장 낮은 공통 분모입니다. 이렇게하면 Windows에서 실행되는 POSIX 응용 프로그램을 깨끗하게 작성할 수 있습니다.

cygwin에서도 POSIX (파일 시스템 계층 구조,/proc 파일 시스템, 신호, 소켓 등)에 지정된 모든 것을 찾을 수 있으며 POSIX 사양 내에서 작동합니다. 하지만 POSIX에서는 많은 것들이 지정되지 않았기 때문에, 다른 어떤 유닉스 시스템과 마찬가지로 100 %되지는 않을 것이다.

예를 들어, 대부분의 UNIX 시스템에서는 파일이 열려있는 동안 파일을 삭제할 수 있습니다 (마지막 사용자가 파일을 닫을 때 삭제되는 이름없이 임시 파일이됩니다). Windows는 이것을 허용하지 않으며 POSIX는이를 요구하지 않습니다. 따라서 Cygwin에서 Windows 파일 의미 (파일이 열리는 동안 파일을 삭제할 수 없음)가 있습니다.

같은 이름은 파일 이름, 파일 이름 대소 문자 구분, 그리고 (물론) 대부분의 실제 UNIX가 제공하지만 Cygwin에는 포함되어 있지 않은 모든 추가 API (POSIX)에 허용 된 문자를 사용합니다.

(최소한 Cygwin에서 X 서버를 사용할 수 있으며 기본 X 작업 만 다시 지원합니다).