단일 유닉스 규격
단일 유닉스 규격(Single UNIX Specification)은 컴퓨터의 운영 체제가 유닉스란 이름을 사용하기 위해 지켜야 하는 표준 규격의 총칭이다. SUS는 전기 전자 기술자 협회(IEEE)와 오픈 그룹(The Open Group)의 표준화 작업 결과물에 바탕을 두고 있으며, 오스틴 그룹이 개발 및 유지 관리를 담당하고 있다. 단일 유닉스 규격 이전에 존재하였던 POSIX는 ISO/IEC JTC1에서의 작업은 종료되어, 오스틴 그룹이 유지 관리 작업에 관여하고 있다.
역사
편집1980년대 중반, 단일 유닉스 규격은 여러 유닉스 계열 운영 체제의 인터페이스를 표준화하기 위해 시작된 한 프로젝트에 그 바탕을 두고 있다. 업체마다 다른 운영 체제 사이의 소프트웨어 이식에 들이는 비용을 되도록 줄여 달라는 여러 운영 체제를 운영하던 기업들의 요청으로 인해 표준화 프로젝트가 시작되었다. 표준화의 바탕이 되는 운영 체제로 유닉스가 선택이 되었으며, 이는 유닉스는 특정 회사 제품에 종속되지 않는 중립형 운영 체제로 받아들여졌기 때문이다. 이 표준화 프로젝트의 결과로 만들어진 것이 IEEE 1003 (ISO/IEC 9945 로 등록되었다) 다른 말로 POSIX이다.
1990년대 초에 POSIX와는 별도로, 이른바 UNIX 전쟁의 결과로 몇 군데의 회사들이 COSE(Common Open Source Environment) 협정을 결성하여, Common API Specification 또는 Spec 1170이라 불리는 사양을 내놓은 바 있다. 이 사양은 무료로 입수할 수 있었기에 IEEE에게 접근 비용을 부담해야 하는 POSIX보다 널리 일반화되었다.
1998년, Austin Group이라 불리는 공동의 워킹 그룹이 이 사양들의 통합을 시작하여, 그 결과로 Single UNIX Specification version 3(단일 유닉스 규격 제3판)이 탄생하였다.
상세 내용
편집단일 유닉스 규격에서 규정하는 운영 체제와 사용자 및 소프트웨어 사이의 인터페이스는 다음의 네 가지로 분류된다.
- Base Definitions : 표준 규격을 기술하는 데 사용되고 있는 정의와 규약 등의 목록과, 이에 따르는 운영 체제가 반드시 제공해야 할 C 언어의 헤더 파일 목록
- Shell and Utilities : 유틸리티(명령)의 목록 및 셸(sh)의 내역
- System Interfaces : 제공되어야 하는 시스템 호출 및 C 라이브러리의 목록
- Rationale : 이상의 표준에 대한 해설
이 표준에 의한 사용자 명령 줄 인터페이스와 스크립트 인터페이스는 초기 콘 셸에 바탕을 둔 본 셸의 확장판인 POSIX 셸이다. 이 밖에 사용자 레벨의 프로그램 또는 서비스, 유틸리티로는 awk, echo, ed 등 수백여개의 목록이 포함되어 있다. 프로그램 레벨에서 필요로 하는 서비스로는 입출력(파일, 터미널, 네트워크) 등이 있다.
표준에는 테스트 프로그램 모음인 PCTS(Posix Certification Test Suite)가 포함되어 있다. PCTS는 NIST에서 오픈 소스로 공개되어 있다.[1]
이 사양을 만족하기 위해 AT&T의 유닉스 소스 코드를 사용하지 않아도 된다는 점에 주의해야 한다. 실제의 예로, IBM의 z/OS (OS/390)의 소스 코드는 완전히 독자적으로 만들어졌으나, 'UNIX'란 이름을 사용하도록 허용받고 있다.
인증 마크
편집이 표준을 만족하는 운영 체제에 사용할 수 있는 마크가 2가지가 존재한다.
- UNIX 98 - SUS Version 2를 만족하는 운영 체제에 붙일 수 있는 마크
- UNIX 03 - SUS Version 3를 만족하는 운영 체제에 붙일 수 있는 마크
이 밖에도 예전에 존재하였던 UNIX 93 및 UNIX 95가 있다.
규격에 등록된 운영 체제 목록
편집다음에 단일 유닉스 규격에 등록, 인증된 운영 체제들을 나열한다.
AIX
편집IBM의 AIX 5L V5.2의 일부 업데이트, AIX 5L V5.3은 UNIX 03를 따르는 것으로 등록되어 있다. AIX 5L V5.2 자체는 UNIX 98로 되어 있다.
HP/UX
편집HP-UX 11i V3 Release B.11.31는 UNIX 03을 따르는 것으로 등록되어 있다. 예전 판은 UNIX 95이다.
맥 OS X
편집맥 OS X 10.5 버전인 레퍼드는 2007년 10월 26일 발표에 의하면, 인텔 CPU 상에서 작동할 때 Open Brand UNIX 03에 준한다고 한다.[2][3]
SCO
편집UnixWare 7.1.3은 UNIX 95를 따른다. SCO OpenServer 5는 UNIX 93을 따른다.
솔라리스
편집솔라리스 10는 32비트 및 64비트의 x86 및 SPARC CPU 상에서 UNIX 03을 따른다. 솔라리스 8 및 9는 UNIX 98을 따른다.
규격에 등록되지 않은 유닉스 호환 운영 체제
편집규격에 등록되지 않은 것은 인증비용이나 인증 유지를 위한 대표 회사 및 단체가 없기 때문이다. 기능적인 면에서는 BSD 계열 OS나 리눅스는 단일 유닉스 규격을 지원한다.
BSD 계열의 OS 및 리눅스.
같이 보기
편집각주
편집- ↑ PCTS:151-2, POSIX Test Suite
- ↑ “Mac OS X Leopard - Technology - UNIX”. 《Leopard Technology Overview》. Apple Inc. 2007년 6월 11일에 확인함.
Leopard is now an Open Brand UNIX 03 Registered Product, conforming to the SUSv3 and POSIX 1003.1 specifications for the C API, Shell Utilities, and Threads.
- ↑ The Open Group. “Mac OS X Version 10.5 Leopard on Intel-based Macintosh computers certification”. 2007년 6월 12일에 확인함.
외부 링크
편집- (영어) The Single UNIX Specification
- (영어) Text of the Single UNIX Specification, Version 3
- (영어) The Portable Application Standards Committee Archived 2021년 2월 10일 - 웨이백 머신
- (영어) Register of products certified for the UNIX and other Open Group brands
- (영어) Unix-Wars Archived 2008년 7월 19일 - 웨이백 머신 (Living Internet)
- (영어) Unix Standards (Eric S. Raymond, The Art of Unix Programming)