POSIX(Portable Operatiing System Interface)…?

POSIX(Portable Operatiing System Interface)는 서로 다른 유닉스 운영체제의 공통 API를 정리하여 이식성이 높은 유닉스 운영체제 프로그램 개발을 위한 목적으로 정의된 인터페이스 규격입니다. 규격의 정의는 IEEE에 정의가 되어 있고, 최신 규격으로는 2.0 버전까지 정의되어 있습니다.

유닉스의 장점인 높은 이식성은 바로 이 규격을 통하여 이용되는 장점이죠… 커널 수준의 시스템 콜뿐만 아니라 사용자 레벨 프로그램, 프로세스 환경, 파일과 디렉토리 관련, 시스템 데이터베이스, 압축 포맷 등등의 다양한 분야에서 이용되는 표준 규격 인터페이스이기 때문에 여러 유닉스, 리눅스에서도 거의 동일하게 프로그램 소스를 컴파일해서 이용할 수 있는 장점을 가지게 되는 겁니다.

실제로 사용하는 데 있어서 차이점이 있다면 각 운영체제마다 가지는 환경적인 특징들만 차이가 날 것이지 쓰는데는 별 지장이 없다는 것을 알게 될 겁니다. 유닉스, 리눅스 프로그램들의 경우에는 프로그램 바이너리 파일만 받아서 그대로 make 돌려도 거의 바로 이용할 수 있는 게 바로 이 POSIX 규격에 맞춘 프로그램 바이너리이기 때문이죠. 소스 코드만 받아서 바로 컴파일 해서 쓰는 프로그램들도 표준 C 컴파일러조차 POSIX 규격에 맞춰서 시스템마다 동일하게 적용되어 있기 때문입니다. 간혹 페도라라던가 AIX와 같이 독자 환경이 있는 경우에는 좀 손을 봐서 처리해야 겠지만 규격에 준수가 되어 있는 대부분의 유닉스, 리눅스에서는 별 문제가 없습니다….ㅇㅅㅇ;;

윈도우 NT 계열에서도 POSIX 서브시스템을 탑재하고 있어서, POSIX 응용 프로그램을 서브시스템에서 실행할 수 있었습니다. 이게 윈도우 2000까지는 POSIX 서브시스템을 탑제하고 있었으나, XP에서 폐지되었습니다. 이후에 2003 서버에서부터 POSIX 2.0을 준수하는 서브시스템을 통하여 POSIX를 지원하는 형식으로 갖추고 있게 되었습니다. 윈도우에 보면 프로그램 추가/제거에 보면 유닉스 서브시스템이라고 되어 있는 것이 이 POSIX 지원 기능이죠. ㅇㅅㅇ;;

헷갈리면 안되는 게 윈도우 XP에 프로그램 추가 -> 윈도우 추가 제거에 보면 유닉스 시스템에서 프린터 공유하는 기능이 있습니다. 이걸 착각해서 예기하는 분이 있긴 한데.. 이거 아닙니다…ㅡㅅㅡ;;; 옛날부터 있던 프린터 공유 기능입니다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.