컴퓨터 하드웨어와 OS를 동시에 만드는 회사는 그리 흔하지 않다. 기억하기로는 애플, Sun, HP, SGI, IBM 정도 일텐데, 각자 특징을 가지고 있다. 이 와중에서, 폐쇄적인 설계구조로 욕먹는 회사는 아마 애플뿐이리라 생각된다. Sun의 Solaris는 x86계열의 CPU(특히, 옵테론)을 적용하기 위해 x86으로 포팅된게 아닌가 싶을 정도로 자사 플랫폼에서만 사용되던 OS였고, HP의 HP-UX나 IBM의 AIX등은 아예 자사 하드웨어 플랫폼에서만 돌아간다. (고 알고있다.)
애플의 폐쇄구조를 가지고 수많은 이야기들이 오고가지만, Mac OS의 핵심부분인 Kernel이 공개되어있다는 사실은 아는지 모르겠다. 2000년경 Darwin이란 이름으로 공개가 되었으며, 해킨토시(Mac OS X을 일반 PC에서 돌리기 위한 일련의 작업들)에서 많이 사용되는 부두커널같은 녀석도 결국은 Darwin의 소스코드를 이용하여 특정 플랫폼에 맞게 작업하는 것으로 알고 있다. 물론, Quartz나 Cocoa같은 커널 위에 올라가는 다른 부분들은 공개되지 않지만, 의외로 애플에서 공개적으로 개발하는 것은 많다.
현대 컴퓨팅 환경에서 가장 중요한 컴포넌트라면 웹브라우저의 렌더링엔진을 꼽을 수 있다. 애플의 Safari에서 사용하는 엔진은 WebKit인데, KDE 프로젝트에서 진행하던 KHTML+KJS 프로젝트의 분기branch로 시작한 공개 프로젝트다. WebKit Team에 가보면, 애플과 구글의 개발자들이 참가하고 있는 것을 알 수 있다. 반면, 전통적으로 소프트웨어 개발에서 가장 중요한 컴포넌트라면 소스코드를 번역하여 기계어 코드를 생산하는 컴파일러를 꼽을 수 있다. 애플은 주목받고 있는 오픈소스인 LLVM 프로젝트에 투자하고 있다. 역시, LLVM Developers를 살펴보면, (WebKit처럼 잘 나와있지는 않지만) 애플의 개발자가 있음을 알 수 있다.
물론, 이러한 사항들이 애플이 갖고 있는 폐쇄적인 구조에 대한 변명거리가 될 수는 없다. 하지만, 애플을 컴퓨터 제조업체가 아닌 가전제품 업체로 놓고 생각한다면, 이야기는 좀 달라진다. 삼성이나 LG가 자신들의 제품에 대해서 공개하는 범위와 애플이 자신들의 제품에 대해 공개하는 범위를 놓고 보면 답이 나온다. 휴대폰만 봐도 그렇다. 애플의 휴대폰에서 작동하는 소프트웨어를 만드는 것과 삼성이나 LG의 휴대폰에서 작동하는 소프트웨어를 만드는 것을 비교해보면 자명하다. 삼성이나 LG에는 공개된 SDK가 없다. 게다가, 이들이 공개적으로 개발하는 것도 없다. 그 내부에서 무엇이 일어나고 있는지는 아무도 모른다.
애플의 폐쇄적인 구조에 대한 비판은 Mac의 경우, 보통 성능에 비해 비싼 가격에서 출발하는데, 조립컴퓨터를 사용하던 사람들의 이야기가 아닐까 생각된다. 잘 구성된 하드웨어 위에 그 하드웨어의 성능을 잘 뽑아내는 OS를 얹고, 더불어 그 둘 사이가 잘 연계되어 별 문제없이 (즉, 하드웨어와 OS의 연계에 뇌를 낭비하지 않고) 쓸 수 있는 컴퓨터가 있다면, 성능은 기본만 해주면 크게 문제될 영역은 아니다. 남은 영역은 가격인데, 가격면에서 본다 하더라도 그렇게 많이 비싼편은 아니다. 안정적인 하드웨어 구성과 OS와의 연계에서 오는 장점을 생각해본다면, 사실 이득을 본다고 할 수 있다. 물론, 일반적으로 Windows를 사용하는 PC들에게서 얻은 복잡한 세팅문제에서 출발하는 이야기일 것이다. 하지만, 생각해보자. TV나 DVD 플레이어를 구입하고 세팅에 신경쓰는 사람은 없다. 컴퓨터도 매한가지 아닐까? Let me free. 그냥 컴퓨터로 할 일을 하게 해달라.
연장선상에서 컴퓨터를 별세계의 이야기로 두지 않고, 그냥 가전제품이란 관점에서 보면, 삼성이나 LG가 불법복제 생산품들을 막으려고 애쓰는거나 별반 다를게 없다. 삼성이나 LG가 휴대폰이나 TV같은 제품들의 내부구조나 소프트웨어를 공개하지 않듯이, 애플도 마찬가지다. 그리고, Mac OS X은 애플입장에서는 자사의 제품들에서 작동시키기 위한 OS이지 소프트웨어로 판매하기 위한 OS는 아니다. 게다가, Mac OS X을 공개하거나 다른 플랫폼에 설치할 수 있도록 개방하게 된다면, 애플입장에서는 거기서 발생하는 수익보다 그걸 유지하기 위해서 들어가야하는 비용이 훨씬 커지기 마련이다. MS의 Hardware Compatibility Lab을 생각해보라. 생각만해도 머리아프다.
그리고, 최근에 애플의 폐쇄구조에 대한 이야기가 나오면, iTunes App Store에 대한 이야기가 따라나오기 마련이다. 허나, App Store가 폐쇄적이라는 이야기에 대해서는 동감하지 못하겠다. 애시당초 전혀 다른 Platform이다. 그러니까, 천문학적으로 말하자면 전혀 다른 행성이고, 생물학적으로 말하자면 전혀 다른 생태계다. 애시당초, 스마트폰이 무엇인지도 애매하다. 그리고, 클릭 몇번으로 소프트웨어를 찾아서 다운로드 받는 건, 기존의 휴대폰에도 있던 기능이다. 그 제어 권한이 통신사에서 애플로 넘어갔다는게 첫번째 차이이고, 개발자-컨텐츠 제공자-의 범위가 일반 개발자에게까지 확대 되었다는 점이 두번째 차이이다. 애플의 관리하에 있다는 것이 폐쇄적이란 이야기로 이어지는 것은 어불성설이다. 권한이 바뀌고, 영역이 넓어졌을 뿐이다. Auction이나 G마켓도 폐쇄적이란 말인가?
결론적으로 보자면, 가전업체로서의 애플은 생각보다 그리 폐쇄적이지 않고, 생각보다 많이 공개되어 있고, 개방되어 있다. 그렇다고 애플의 단점이 없는 것은 아니다. 하드웨어와 소프트웨어의 통합이라는 강점을 이용해 소비가전시장에서 돌풍을 일으켜 온 애플이지만, 하드웨어와 소프트웨어를 둘 다 한다는 것은 결국 양쪽에서 모두 경쟁해야 한다는 점이다. 현재는 연합전선의 형태로 단일전선을 유지하지만, 하드웨어 전선과 소프트웨어 전선이 분리되는 순간 애플의 위기는 다가오지 않을까 생각한다. 물론, 애플의 가장 큰 위기는 잡스의 건강이겠지만.