
1990-1995: Hitting the Wall
Thursday, September 7, 2006
"플랫폼의 역사, 그리고 그 대결"은 플랫폼을 새로 발족시키는 일이 얼마나 어려운지, 그 플랫폼을 유지하는 일은 또 얼마나 고된지를 알려주었다. 본 글에서는 컴퓨팅 플랫폼의 역사적인 궤적(軌跡)과 함께, 누가 왜 이겼는지, 누가 왜 졌는지에 대해 알아본다. 컴퓨팅 환경이 언제나 변하기는 하지만, 기본 원칙은 오늘날에도 변함이 없으며, 애플의 레퍼드나 마이크로소프트의 비스타와 같은 미래 개발에 있어서도 마찬가지일 것이다.
지난 기사는
1980년부터 1985년까지와
1985년부터 1990년까지, 그리고
1990년부터 1995년까지, 새 플랫폼을 향한 질주를 알아보았다. 그 기사는 IBM과 마이크로소프트가 DOS와 윈도우즈 상에서 어떤 개선을 이루려 했는지, OS/2로 어떻게 바꾸려 했는지를 조사하였다. 이번 글에서는 맥을 업데이트시키기 위한 애플 자신의 노력에 대해 알아본다.
Hitting the Wall
마이크로소프트와 IBM과 같이, 애플도 똑같은 문제가 점점 더 커지고 있었다. 하지만 애플은 맥 플랫폼 전체를 소유하고 있었기에, 신기술을 개척할 자유가 더 컸고, 그에 따라 소비자와 개발자들도 새로운 기술을 빠르게 채택할 수 있었다. 80년대 후반동안 애플은 맥 시스템 소프트웨어의 메이저 업데이트를 다섯 번 실시하였고, 1990년에는
시스템 6가 나온다.
하지만 빠른 개발 이후로, 맥 플랫폼은 벽에 부딪히게 된다. 맥이 간단한 컴퓨터 기기에서 좀더 복잡하고 네트워크화된 세상으로 들어설 수록, 맥은
Sun이나
SGI,
Apollo와 같은 로우엔드 유닉스 웍스테이션 업체들과의 경쟁에 직면한다. 이때문에 애플은 유닉스와 비견할 만한 새로운 소프트웨어를 제공하였지만, 맥 소프트웨어 구조가 그러한 시도를 어렵게 만들었다.
맥은 원래
1980년부터 1985년까지의 전형적인 가정용 컴퓨터에서 비약적인 향상을 가져온 디자인이었다. 그러나 웍스테이션과 경쟁이 되면서, 유닉스의 유산이 갖는 장점은 보다 분명해졌다. 맥은 친숙한 가정용 컴퓨터이지만, 다른 웍스테이션들은 훨씬 거대한 다중 사용자용의 멀티태스킹 컴퓨터 시스템을 구현했기 때문이다.

가령, 맥 그래픽 드로잉 루틴은 모두 공유메모리에서 다루어졌다. 이때문에 초기 맥은 꽤 제한된 자원을 갖고서도 그래픽을 깔끔하게 그려낼 수 있었지만, 맥 플랫폼이 확장을 거듭하고, 사용자의 기대치도 올라가면서, 다중 애플리케이션을 한 번에 돌릴 때에는 문제가 발생하게 되었다.
즉, 애플리케이션 간의 협력으로 모든 애플리케이션 그래픽을 다루는 맥과 같은 시스템에서
선점형 멀티태스킹이나,
보호메모리를 구사할 간단한 방법이 없었다.
내장된 맥툴박스의 다른 부분도 점차 나이를 먹어가고 있었다. 오리지날 맥의 엔지니어들은 아주 많은 우아한 기능을 하드웨어에 끼워 넣어야 했다. 완전한 그래픽 데스크톱 환경을 지원하기 위해서였다. 즉, 이들은 깔려 있는 하드웨어로 직접 송수신하는 코드를 작성해야 했다.

이렇게 하드웨어에 집어 넣은 코드는 당시 하드웨어에서는 잘 돌아갔다. 하지만 내장된 코드의 융통성은 제한적이었다. 이점은 "
왜 애플은 이제서야 인텔을 사용하게 되었나"에서 이미 설명하였다.
애플은 당혹해하였다. 70년대의 애플 II에서 80년대에 맥으로 이주했을 때처럼 완전히 새로운 플랫폼으로 맥을 교체해야 할 시기였을까? 아니면 새롭고 진보적인 하드웨어상에서 맥 플랫폼을 개선시킬 수 있었을까? 당시 유닉스 웍스테이션에서 쓰이는 운영체제 기능을 맥에 통합시킬 수는 없었을까?
Souls of a New Mac

애플은 다중 전략으로 대처하였다.
1988년, IBM과 마이크로소프트가 OS/2 협력관계를 발표했을 때, 애플은 고유의 유닉스인
A/UX를 제공하였고, A/UX를 계속 업데이트시켜서 하이엔드 맥에
별도의 운영체제로 판매하기까지 하였다. 또한 A/UX 상에서 맥 시스템이나 맥용 소프트웨어를 돌리기 위한 호환 레이어도 제공하였다. A/UX는 유닉스 개선의 기반이 되었거나, 적어도 유사-유닉스 기능을 맥 시스템에도 구현시켰다고 볼 수 있다.
애플은 또한 기존 맥 시스템 소프트웨어의 새로운 세대를 두 가지 작업하였다. 단기적인 기능으로서의 "블루" 목록은
시스템 7로 1991년에 나왔다. 장기적인 기능으로는 코드명 핑크의 계획이 있었다.
그리고 완전히 새로운 플랫폼인 코드명 "재규어"가 있었다. 재규어는 모토로라
88100 RISC 프로세서에 기반하는 시스템으로서 NeXT 시스템과 유사하다는 맥언론의 조명을 받았었다.

그러나 애플 II에서 맥으로 옮기는 데에만 하더라도 애플은 막대한 노력을 펼쳐야 했으며, 애플 III와 애플 IIGS, 리사(LISA)로서는 실망스러운 결과를 내기도 했었다. 교체용 플랫폼으로서의 맥의 소개는 분명 거대한 도전이었다.
처음부터 완전히 새로운 재규어 수퍼맥을 디자인하기란 상대적으로, 그리고 실질적으로도 쉽다. 이제 5년이 넘은 맥을 손쉽게 개선시킬 뿐 아니라, 실수를 피할 수도 있었다. 당시 최신 하드웨어는 1984년의 첫 맥이 협상을 할 수 밖에 없었던 여러가지를 피할 수 있었다. 하지만 완전히 새로운 디자인의 진짜 어려운점은 바로 시장 찾기이다.
하방호환성이 없다면, 애플은 누가 사기도 전에 개발자들을 설득시켜서 애플리케이션을 모두 포팅시켜야 한다. 하지만 누구도 갖고 있지 않다는데, 누가 그런 애플리케이션을 만들거나 포팅할까? 반대로, 맥과의 호방호환성이 완벽하다면, 새로운 기능을 제아무리 만들어봤자, 개발자들이 실제로 활용하기를 바랄 수는 없다.
마이크로소프트와 IBM도 OS/2를 새 플랫폼으로 세우기 위해
똑같은 문제를 해결해야 했다. DOS로부터 얼마나 다를 것인가? OS/2가 훨씬 강력한 기반을 제공하리라고는 하지만, 아직 OS/2를 많이 쓰지 않으니 OS/2용 개발을 하기에는 너무 이르지 않을까?
플랫폼 교훈이다.
새 플랫폼을 위한 하방호환성 개발지원 문제는 새 플랫폼의 시장진입에 있어서 제일 커다란 장벽으로 작용한다.
Splitting Heirs
맥 교체의 문제를 겪는 곳이 애플만은 아니었다. 애플에게는 경쟁사들이 있었고, 이들 경쟁사 중 많은 곳이 전직 애플 직원들로 이뤄져 있었으며, 그들은 더 나은 맥을 만들고자 하였다.
첫 번째는 스티브 잡스의 NeXT이지만, 이곳은 80년대 후반 내내 개발만 계속하였다. 전임 애플 중역, 쟝-루이 가세가 1990년에 설립한
Be Inc.도 잇따랐다. 존 스컬리는 원래 가세를 잡스의 직접적인 후계자로 지명했었다.
그렇다면 넥스트와 비는 어떻게 애플 맥과 비교할 수 있을까? 그리고 이들이 새 플랫폼을 창출하는 데에 겪은 문제점은 무엇일까?
다음 기사, "1990-1995: NeXT, Be, and the Mac PC"를 기대하시라.
I really like to hear from readers. What do you think? Leave a comment or email me with your ideas.
1990-1995: Hitting the Wall