메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

한빛출판네트워크

한빛랩스 - 지식에 가능성을 머지하다 / 강의 콘텐츠 무료로 수강하시고 피드백을 남겨주세요. ▶︎

IT/모바일

칼데라사가 유닉스를 발표한 이유 - 간략한 내력에 대하여...

한빛미디어

|

2002-03-16

|

by HANBIT

9,528

저자: 이완 다윈, 역 송종범

우리가 가진 뜻밖의 꿈들도 때때로 다른 사람들에게는 현실인 듯하다. "공식적인" 유닉스 소스 코드 최후의 주인인 칼데라는 옛 버전들의 유닉스(V7과 32V까지)를 오픈 소스의 라이센스 하에 발표하기로 결심했다. 지난 10간 세상의 관심을 끌지 못했지만 모든 사람들이 유닉스를 처음으로 인기 있게 만들었던 코드에 접근할 수 있는 일은 정말 잘된 일이라 생각된다. 그리고 이러한 분위기는 FreeBSD, NetBSD, OpenBSD, Apple의 다윈(맥 OS X의 기반이 되는)에 기반을 둔 4BSD 시스템의 개발도 이끌어갈 것이다. 필자는 컴퓨터 분야에서 거의 유닉스 초창기부터 열성적으로 활동하고 있었기 때문에 이 기사에서는 간단하게 칼데라 발표와 관련하여 비평을 하려한다.

"자유 유닉스 소스 코드"라는 것은 1970년대 후반과 1980년경에는 대부분의 사람들에게는 생소한 꿈과 같은 이야기였기 때문에 유즈넷의 어디에선가는 만우절용 농담정도로 취급기도 했다. 그러나 그 당시 Minix의 존재는 이 꿈의 실현 가능성을 약간은 보여주는 듯했다. 그 즈음, 존 길모어(John Gilmore)는 "Radio Free Berkeley"라 불리는 프로젝트를 진행 중이었다(이 프로젝트는 BSD 유닉스의 자유를 위해 방해되는 코드를 대체함). 그리고 우리들 대다수는 그것의 일부를 연구했다. 지금까지 말한 이것은 리눅스나 BSD의 시스템의 파일 명령을 썼던 이유와 시기에 관련된 이야기이다.

이런 일이 일어나는 동안, BSD는 성장해가는 인터넷(오늘날보다는 작지만 형편 없지는 않은)에서 힘을 얻으며 거의 성공에 이르고 있었다. 수많은 대학과 연구소는 4BSD를 VAX화하여 운영했고 최초의 주류 유닉스는 TCP/IP 구현물(1993년부터)을 탑재하여 발표했다. Compaq이 합병한 DEC의 ULTRIX, 썬의 SunOS 3.5와 4, 다양한 작은 유닉스, 오래 전에 사라진 회사들은 인터넷을 강화 시켰다. 물론 이들은 BSD 유닉스였다.

이때 캘리포니아 주립대학 버클리 분교에서 4.4-Lite가 나왔으며 이것이야 말로 방해되지 않는 최초라고 생각된다. 일부 현명한 이들은 이것으로부터 파생된 BSDI라는 운영체체를 선전하기 시작했다. 그렇지만 그들은 두 가지 실수를 저질렀다. 첫째는 그들의 선전에 유닉스라는 단어를 사용하여 AT&T사의 변호사들의 주목을 끌었다는 것이고 둘째는 탑재한 코드에 여전히 몇 줄의 AT&T사의 코드가 있었다는 것이다.

그 결과는 자유 소프트웨어 세상을 완전히 변화시켰고, 리눅스의 성장을 바로 이끌었다는 것이다.

AT&T사 변호사들은 졸부인 BSDI뿐만 아니라 캘리포니아 대학교에게도 법적 소송을 제기했다. 이 소송으로 오랫동안 새로운 BSD 발표도 금지되었으며 결과적으로는 BSD 사업을 모든 대학이 포기하도록 만들었다 그리고 수년간의 논쟁 끝에 AT&T사는 돌연히 그들의 소송과 협상을 시작했다. "무료 유닉스" 중단 시도를 포기하고 심지어는 무료 유닉스에 사용되는 남아있는 일부분까지도 허용했다. 그리고 지금까지, Free BSD의 일부 파일들은 유닉스 /sys/kern 디렉토리를 그들의 BSD 라이센스와 함께 이 카피라이트를 포함한다.

* (c) Unix System Laboratories, Inc. * All or some portions of this file are derived from material licensed * to the University of California by American Telephone and Telegraph * Co. or Unix System Laboratories, Inc. and are reproduced herein with * the permission of Unix System Laboratories, Inc.

유닉스 시스템 연구소(Unix System Laboratories)는 AT&T사의 유닉스 지원 그룹이 수년간 책임을 맡아온 이름 중에 하나이다. 유닉스 상표권은 다른 단체들에게 AT&T의 범위 내에 양도되었다. 종종 익살꾼은 troff의 미주 매크로를 "유닉스는 AT&T 상표권으로 등록되어 있습니다." 에서 "유닉스는 서부 전기 회사가 아니라 AT&T, 아니, 유닉스 지원 그룹이 아니라 유닉스 시스템 연구소…헥헥.. 숨차서 포기다.."라고 바꾸었다.

이 사이 FreeBSD가 자유소프트웨어 세상을 지배하고 있는 동안 리눅스가 모든 것을 흡수하게 되었다. BSD가 불가능했기 때문에 무료 리눅스 클론과 더불어 소스 코드가 필요하다는 것을 알았고 우리는 리눅스를 주목했다. 그것은 진짜 유닉스는 아니었다. 그렇지만 "정말 우스운 GPL들"을 달고 있었고 이것만으로도 거의 충분했다.

이러한 분위기로 인해 리눅스는 압도적으로 매스컴을 비롯하여 많은 해커들의 관심을 끌었으며, 리눅스 만큼이나 인기 있었던 BSD 시스템들(FreeBSD, NetBSD, OpenBSD)의 성장을 더 어렵게 만들었다. 리눅스는 더 좋거나 나쁘거나를 떠나 일단 대중성을 얻었다. 역사를 되돌아 볼 때 최악이라 하더라도 처음이라는 이유 하나로 최초의 것이 모든 것을 장악하는 현상을 볼 수 있다. 상업용 및 가정용 데스크탑에서 마이크로소프트의 지배력을 볼 때 이는 사실임을 느낄 수 있을 것이다. 인터넷 서버의 엔진으로 유닉스와 리눅스도 그렇고 프리웨어 운영체제의 적소에서의 리눅스의 지배력도 그렇다. 물론 한 가지 예외로 넷스케이프를 들 수 있다. 넷스케이프는 마이크로소프트의 익스플로러에 의해 브라우저 점유율을 잠식당한 것으로 보이며 이는 마이크로소트의 강력한 마케팅 능력때문이 아니라 넷스케이프 6 출시의 오랜 지연으로 인한 것이라 볼 수 있다.

이 외에 다른 사건들이 유닉스 분야에서 일어났다. AT&T 관리자는 유닉스에 등을 돌렸고 결국 노벨(Novell)사에게 그 권리 자체도 팔아 버렸다. 노벨은 AT&T로부터 산 권리를 나누었다. 유닉스 상표권을 X/Open에게 기증하고 SCO에게 코드를 위한 권리는 팔았다. SCO의 마이크 틸슨(Mike Tilson)은 "라이온의 책(The Lions Book)"이라고 불리는 존 라이온(John Lions)의 『A Commentary on the Unix System, V6』의 출판을 금지하기로 발표했다. 이 책은 AT&T사가 각 대학들을 비롯하여 다른 소스 코드 라이센스들의 엄격한 허가 조항 아래 두었던 원본과 똑 같은 반복을 하고 있었다. 비록 작기는 하지만 V6커널에서 완벽한 조항을 포함하고 있기 때문이다. SCO는 P2P 출판에서 "라이언의 논평"을 역사적인 기록으로 출판해 내기로 했다. 시간이 지나 SCO는 칼데라(Caldera)라는 일찍이 부분적으로나마 오픈 소스화된 OpenDOS 7을 가지고 있던 소프트웨어 회사(역시 지금까지 리눅스 배포처 중의 하나로 알려져 있음)에 인수되었다.

그대로 있는 것은 아무것도 없다. 애플은 BSD를 새로운 운영체제인 맥 OS X의 유닉스 핵심으로 채택했다. 그 과정에서 비록 맥의 GUI에 가려져 있긴 하지만 인기 많은 애플은 세계에서 가장 큰 BSD 유닉스 시스템의 배포자를 계승한 썬으로부터 그 지위를 탈취해가고 있다.

하지만 모든 사건은 다시 제자리로 회귀하는 경향이 있다. 올 1월 23일 칼데라는 그들의 유닉스 전체 코드를 공개했다. 이 소스코드는 7판(1979)과 BSD가 4.0BSD까지 개발했던 VAX 포트인 "32V"(32V는 기본적으로는 V7에서 일부가 PDP-11 어셈블리 언어로 쓰여서 빠진 것이고, 남은 것은 VAX에서 운영되도록 적합하게 되었다)를 말한다. 이것은 마침내 BSD 리눅스가 완전히 공개되었음을 시사한다. 비록 AT&T의 저작권 때문에 수년에 걸쳐 다양한 BSD 시스템에서 일부분이 사용될 수 없다 하더라도 말이다.

흥미롭게도 칼데라는 그것을 원래의 BSD 저작권 아래 발표했다. BSD 라이센스와 GPL(GNU Public License) 라이센스간에는 차이점이 많다. 그러나 지금 우리는 이러한 차이점에 대해 논쟁할 때는 아니다. 칼데라는 GPL을 사용해야 하는가? AT&T사와 이 계승자 그리고 이 코드로 인해 BSD 라이센스의 인기를 약간 상승시켜 주는 BSD 사이에는 오랜 전통적인 협약이 있다. 리눅스는 GPL이며, 유닉스는 BSD 라이센스를 가지고 있다는 것이다. 이 두 가지 라이센스에는 좋은 점과 나쁜 점이 공존한다. (공통점이라면 각각의 라이센스는 각각을 옹호하는 대표자들을 위한다는 것 뿐이다.)

이것을 발표하는데 그렇게 오래 걸렸다는 점이 정말 유감스럽다. 칼데라는 수년간 아무것도 하지 않으면서 "소유"만 하고 있었다. 실제로, 몇몇 공식적인 반응 중 일부는 비판적 이었으며 칼데라의 이러한 시도는 오픈 소스에 동참함으로 인해 대중성을 얻으려 한다는 시도로 보는 시각도 있다.

왜 AT&T는 금지된 몇 출로 소송을 제기하는 것 대신에 구 버전의 유닉스를 과거에 자유화 할 수 없었을까? 만약 AT&T가 유닉스를 자유와 했다면 우리 모두는 아마도 리눅스 대신 4.9BSD로 무엇인가를 운영하고 있었을 것이다. 리누즈가 PC에서 386BSD나 차기 버전들을 운영할 수 있었다면 리눅스 커널을 쓸 필요가 없었을 것이다. 얼마나 재미있는 질문인가! 그렇지만 정답은 없는 질문이다.

더 재미있는 사실은 이 질문들이 과연 무엇을 의미하느냐는 것이다. 현대 유닉스의 선조인 V7 코드 카피를 갖는 것은 확실히 재미있는 일이다. V7 운영체제 커널이 51,000 바이트 밖에 안된다는 것도 재미있는 사실이다. 솔라리스 같은 모듈 로더가 아니라 전체 시스템이다! 그 시대의 머신이 너무 느려서 포트란 컴파일러를 위한 메이크 파일이 저절로 nohup(역자주: 우선권을 5이상 증가시켜 사용자의 로그 아웃 후에도 백그라운드로 실행되게 하는 것)을 하고 실행표의 프로세서에 컴파일러 소스가 백그라운드 되었음을 아는 것도 정말 재미있다. 그러나 실절적 평가에서, 화해의 시기에 자유 소프트웨어의 거대한 성장에 의해 대체되지 않은 것은 거의 없다. 다양한 종류의 GPL화가 안 된 프로그램(예를 들면 BSD 플랫폼에서 비 GPL화 된 유용한 diff프로그램)을 찾아서 거두어 들여야 한다. 그러나 이러한 작업은 누구든 많은 시간을 투자해야 하며 20년 개발 역사를 따라잡기 위하여 노력해야 한다. 더 재미있는 사실은 유닉스를 가르치는 우리들이 도식적 수업에서 사용될 수 있는 새로운 기본 코드를 개발해야 한다는 것이다. V7까지 유닉스의 모든 성능은 누구든지 이용할 수 있다. 이후의 많은 코드도 아주 훌륭하다. 톰슨(Thompson)과 리치(Ritchie)는 C 언어를 안팎으로 알고 있으며 시대를 앞서있는 사람들이다.

이 시점에서 진실된 정답은 코드의 발표가 실무적인 세상에서는 그렇게 중요한 것은 아니라는 것이다.

그렇지만 기분 좋은 일임에는 틀림없다고 생각한다.

이완 다윈(Ian Darwin)은 30년간 컴퓨터 산업에 몸담아 왔다. 1980년도부터 유닉스를 사용했고, 1995년부터는 자바를, 1998년 이후로는 OpenBSD를 사용하고 있다.
TAG :
댓글 입력
자료실

최근 본 상품0