- Apple의 최신 OS 출시 버전은 Open Group 목록에서 공식적으로 검증된 최신 UNIX™ 호환버전이지만, 여러분이 생각하는 것과는 일치하지 않을 수 있음
- macOS는 AT&T 소스 코드를 사용하지 않음. "Unix"는 1993년 Novell이 Bell Labs로부터 UNIX를 인수한 이후로 더 이상 그런 의미를 갖지 않음
- 참고: OS X은 16년 전부터 이미 UNIX로 인증 받음
UNIX™ 인증이 의미하는 바
- 코드와는 관련이 없음. 30년 넘게 그랬음
- UNIX™ 인증은 이제 "POSIX 호환"을 의미함
- POSIX는 호환성 사양 및 테스트 세트로, 올바른 도구가 올바른 위치에 있어야 함
- IBM의 z/OS 메인프레임 운영 체제도 이 목록에 있음
Unix와 유사한 OS의 정의
- Unix처럼 보이고, Unix처럼 작동하며, Unix용으로 작성된 프로그램을 주요 수정 없이 이식할 수 있어야 함
- macOS의 핵심은 이에 충분히 부합함. XNU 커널과 주로 BSD 코드에서 파생된 사용자 공간을 사용함
- XNU는 Mach 커널을 기반으로 하며, BSD 코드에서 파생된 대형 인커널 "Unix 서버"도 있음
- 사용자 공간의 대부분은 오픈 소스이며 BSD에서 나옴
- GUI 계층과 예쁘게 보이게 하는 가시적 부분이 독점적임
Apple의 Darwin 프로젝트
- Apple은 과거에 Darwin이라는 프로젝트로 OS의 하위 계층을 독립형 버전으로 제공했음
- OpenDarwin, PureDarwin 등 다른 FOSS OS의 비트를 사용하여 이를 완성하려는 여러 배포판이 있었음
- NextBSD 프로젝트는 반대 방향으로 진행되었는데, FreeBSD 커널을 유지하면서 launchd와 같은 Apple의 상위 수준 코드를 사용할 수 있도록 수정함
macOS의 진화 과정
- 1996년 말 Apple은 NeXT Computer 인수를 발표했고, 1997년 10월 차세대 OS인 Rhapsody 프리뷰를 출시함
- Rhapsody는 NeXTstep 5와 거의 동일했음
- 1999년에는 Mac OS X Server 1.0이 되었고, 이는 2000년 Mac OS X 1.0으로 발전함
- 10.8 Mountain Lion부터는 OS X로, 10.12 Sierra부터는 macOS로 단순화됨
- 그러나 여전히 1988년 Steve Jobs가 시연한 NeXTstep 0.8과 인식 가능할 정도로 유사한 OS임
GN⁺의 의견
- macOS가 UNIX 인증을 받은 것은 큰 의미가 없어 보임. 대부분의 사람들에게는 실질적인 영향이 없을 것임
- 하지만 macOS의 기반이 되는 Darwin이 오픈 소스라는 점은 주목할 만함. 이를 통해 개발자들은 macOS의 내부 작동 방식을 더 잘 이해할 수 있음
- POSIX 호환성은 여전히 OS 간 이식성 확보에 중요한 역할을 하지만, 최신 표준을 준수하는 것은 더 이상 우선순위가 아닌 듯함
- NeXTSTEP에서 macOS에 이르는 진화 과정을 보면, 사용자 인터페이스와 개발자 경험의 혁신이 운영 체제의 성공에 얼마나 중요한지 알 수 있음
- 궁극적으로 UNIX 인증 자체보다는 macOS가 개발자 친화적이고 사용하기 쉬우며 강력한 생태계를 갖추고 있다는 점이 더 중요해 보임. 하지만 UNIX 인증은 macOS의 견고한 기반을 보여주는 상징적 의미는 있음