DARPA에서는 버클리 대학에 유닉스 개발을 맡기고, 네트워크 망과 관련한 프로토콜로 TCP/IP를 유닉스를 포함시키고자 했다. TCP/IP(Transmission Control Protocol / Internet Protocol)는 빈톤 서프(Vinton Cerf)밥 칸(Bob Khan)이 고안한 것으로 오늘날의 인터넷의 근간을 이루는 프로토콜로 인터넷 상에 있는 컴퓨터끼리 데이터를 주고 받는 방법을 정의하고 있다. 

DARPA는 TCP/IP 프로토콜을 C언어로 구현하는 프로젝트를 버클리 대학이 아니라 보스턴에 있는 BBN(Bolt, Beranek and Newman)이라는 회사에 맡겼다. 그런데, BBN이 작성한 TCP/IP 코드를 버클리의 빌 조이가 마음에 들어하지 않았다. 천재개발자라고 불리는 그답게, 빌 조이는 BBN의 코드를 단순히 마음에 들지 않아했을 뿐 아니라 자신이 더욱 뛰어난 TCP/IP 코드를 작성한 뒤에 이것을 BSD 유닉스에 탑재하겠다고 DARPA에 주장을 하였다. DARPA에서 큰 돈을 투자해서 이 분야에서 최고라고 했던 기업에 맡겨서 작성한 코드는 제대로 작동하지 않았고, 버클리 대학의 20대 대학원생인 빌 조이가 작성한 코드가 더 뛰어난 성능을 보인 것이다. 어쨌든 이렇게 작성된 빌 조이의 TCP/IP 코드는 주로 이더넷으로 구성된 대학의 네트워크에서 최적의 성능을 보였고, 뛰어난 운영체제에 분산된 네트워크 환경에 최적화된 프로토콜을 멋지게 통합함으로써 오늘날의 인터넷이 기지개를 펼 수 있는 기반을 마련하였다.

인터넷에게 있어 TCP/IP는 가장 핵심적인 기능을 담당한 인프라와도 같은 것이다. 90년대 이후에 인터넷이 급격하게 팽창했을 때에도 BSD 유닉스의 TCP/IP는 이를 무리없이 처리하였고, 그리고 실제로 이것이 이후 AT&T와의 법정소송에서 BSD 유닉스가 승리하게 만드는 결정적인 원인이 된다.


AT&T와 버클리의 법정 싸움

벨 연구소에서 개발된 유닉스는 AT&T가 1984년 반독점법에 의해 여러 회사로 강제분할이 되면서 새로운 운명을 받아들게 된다. AT&T가 더 이상 독점기업이 아니었기 때문에, 미국 정부 입장에서는 AT&T가 유닉스를 상업화하는 것에 대해 더 이상 제동을 걸기 어려워진다. AT&T는 공공적인 측면을 감안하여 1년에 99달러라는 저렴한 가격에 이미 많은 대학과 기업에 라이센스를 주고 있었는데, 상업화의 길이 열리자 라이센스 비용을 25만 달러까지 올렸다. 그런데, 버클리의 BSD 유닉스가 널리 활용이 되기 시작했고, 버클리의 CSRG 출신들이 설립한 BSDi 라는 회사와 버클리 대학에서 저렴한 비용에 자신들의 유닉스를 판매되었기 때문에 사업에 난항을 겪게 되었다. 그러자, AT&T는 1992년 BSDi와 버클리 대학이 자신들의 코드를 훔쳤다며 미국 법정에 제소를 하였다.

그런데, 당시 AT&T가 상업화의 중요한 제품인 시스템 5(System 5)에는 많은 BSD 유닉스의 코드를 사용하고 있었는데, 그 중에서 TCP/IP 코드는 기능적으로 가장 중요한 역할을 담당한 것이기도 하였다. 버클리 대학은 자신들의 코드를 해당 소스의 저작권이 버클리 대학에 있다는 것만 명시하면 무엇이든 할 수 있도록 했는데, 정작 AT&T는 저작권 문구를 삭제하고 마치 자신들이 개발한 것처럼 시스템 5를 판매하고 있었던 것이다. 이 사실이 밝혀지자 버클리 대학의 변호사들이 AT&T를 맞고소하게 되었는데, 이로 인해 소송은 AT&T에 불리한 양상으로 흘러가게 되었다. 결국 벨 연구소에서 고유로 작성한 코드를 제거하는 조건으로 이 소송은 합의에 이르게 되는데, 버클리 대학의 뛰어난 해커들은 벨 연구소에서 만들어진 코드를 완전히 없애고 BSD 유닉스를 완전히 자유로운 운영체제로 만드는데 성공한다.


천재 개발자 빌 조이

어찌보면 빌 조이의 TCP/IP에 대한 치기어린 고집이 오픈소스 정신을 완고한 저작권 법정에서 살려낸 것이다. 빌 조이는 TCP/IP 뿐만 아니라, 화면의 특정위치에 커서를 배치할 수 있는 새로운 터미널 기기들에서 쉽게 사용할 수 있는 vi 편집기도 작성을 했는데, 아직도 이 편집기는 전 세계에서 널리 쓰이고 있으며 어떤 종류의 유닉스 계열의 운영체제에도 기본적으로 탑재되는 중요한 소프트웨어이다. 

개발자인 빌 조이에 대해서도 주변의 다양한 평가가 있다. 그가 작성한 코드는 지저분하고 다른 사람들이 읽기가 매우 힘든 것으로 악명 높아서, 유지보수하는데 엄청난 애를 먹었다고 한다. 그런데, 확실한 것은 뛰어난 개발자라도 일주일 이상 걸릴 일을 빌 조이는 자신 만의 방식으로 하루 정도에 해결을 했다고 한다. 그는 매우 방대한 코드를 순식간에 읽고, 이를 간단하게 정리하는 능력이 매우 뛰어나서 대규모 코드를 금방 고치는데 일가견이 있었다. 생활에서도 그런 그의 능력이 간혹 나타나기도 하였는데, 여러 가지 일을 전혀 간섭을 받지 않고 나누어서 한꺼번에 처리하는 멀티태스킹 능력이 대단했다고 전해진다.

이렇게 뛰어난 개발자였기에, 빌 조이는 리눅스의 정신을 그다지 좋아하지 않는다. 그는 오픈소스의 힘이 수많은 개발자들의 참여와 열정에서 나온다는 리눅스의 평등주의적인 윤리관을 믿지 않았다. 리눅스의 기저에는 모든 개발자들이 뛰어난 코드를 작성하지 못해도, 여럿이 함께 코드를 검토하고 개발을 한다면 결국 위대한 코드가 나타날 수 있다는 믿음이 깔려 있다. 그에 비해 빌 조이는 참여하는 대부분의 개발자들은 실력이 떨어지며, 그 중에서 버그를 찾아내고 이를 제대로 개선할 수 있는 사람은 몇몇에 불과하다고 주장한다. 오픈소스 개발방법론 자체를 부정하는 것은 아니지만, 몇몇 핵심개발자들의 역할이 그만큼 중요하다는 것이다. 그의 이런 시각에 대해서는    많은 논란의 여지가 있다. 


어쨌든 빌 조이와 버클리 등이 관여한 오픈소스 운동은 버클리 캠퍼스에서 시작된 자유언론운동(Free Speech Movement)의 또 하나의 변형으로 보아도 무방할 듯하다. 소스코드는 어찌보면 독특한 언어로 만들어진 시처럼 보이지만, 실제로 작동하는 기계의 언어이기도 하다. 이 언어는 컴퓨터로 하여금 어떤 동작을 하도록 만들고, 컴퓨터의 동작에 의한 상황변화에 따른 상태를 컴퓨터에게 들을 수 있는 대화의 도구이다. 그리고, 이런 컴퓨터들의 네트워크는 자유로운 연설과 이야기의 가장 중요한 무기가 되었다. 인터넷의 힘에 의해 해방의 기운을 느낀 버클리의 해커들은 “기계로서의 컴퓨터”의 인간성을 회복시키고 인간과 기계, 그리고 기계를 매개로 한 인간과 인간의 의사소통을 촉진시켰다. 이것이 해커들과 자유언론운동, 그리고 오늘날의 인터넷을 따로 떼어놓고 생각할 수 없는 이유이다.

(다음 편에 계속 ...)


저작자 표시 비영리
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

WRITTEN BY
하이컨셉
미래는 하이컨셉, 하이터치의 세계라고 합니다. 너무 메마르고 딱딱한 이야기보다는 글로벌 시대에 어울리는 세계 각국의 이야기, 그리고 의학과 과학을 포함한 미래에 대한 이야기의 세계로 여러분을 초대합니다.

받은 트랙백이 없고 ,

Bill Joy from Wikipedia.org



유닉스에서 시작된 혁신의 바람이 미국 서부에서 꽃을 피우기 시작한 곳으로 또 하나 빼놓을 수 없는 곳이 버클리 캘리포니아 주립대학이다. 그리고, 버클리에서 시작된 변화의 소용돌이에 여러 인물들이 큰 역할을 하게 되지만, 그 중에서도 가장 중요한 사람으로 천재 개발자로도 불리던 빌 조이(Bill Joy)가 있다.


켄 톰슨과 자유언론운동, 그리고 빌 조이와의 만남

유닉스를 만든 켄 톰슨(Ken Thompson)은 1966년 버클리에서 전기공학 학위를 취득하고, 벨 연구소에서 근무를 하였다. 켄 톰슨이 버클리에서 학교를 다니던 당시 버클리 대학은 자유언론운동(Free Speech Movement)의 발상지로 유명했는데, 이 운동은 버클리 캠퍼스에서 시작된 학생운동으로 학생들에게 자유로운 이야기를 할 권리와 학술적인 자유를 주장하였다. 이 운동은 버클리 캠퍼스 내부에만 영향을 준 것이 아니라, 이후 미국 전역으로 퍼져 나가는 시민의 자유권리에 대한 운동에 큰 역할을 하였다. 이런 분위기에서 학교를 다녔기에, 켄 톰슨은 벨 연구소에서 동료들과 같이 개발한 유닉스에 대해서 거리낌없이 많은 사람들과 나누려는 사상적 철학을 가지고 있었다. 그는 1975년 벨 연구소로부터 안식년 휴가를 받아서 버클리 대학으로 돌아오게 되었다.

켄 톰슨이 버클리로 돌아온 1975년, 버클리에는 21세 약관의 나이로 미시건 주립대학을 졸업하고 버클리 대학원에 입학한 뛰어난 청년이 있었는데, 그가 바로 빌 조이다. 빌 조이의 천재성과 관련해서는 많은 전설과도 같은 이야기들이 전해지는데, 그 중 대학 구술시험을 할 때 새로운 정렬 알고리즘을 그 자리에서 창안해서 면접을 본 교수들이 "흡사 어릴 적의 예수를 보는 듯하다"라는 평까지 들었다는 이야기는 꽤 유명한 일화이다.

그러나, 1975년의 버클리는 켄 톰슨이 다니던 시절과는 많은 것이 변해있었다. 과거와는 달리 정치적으로 무관심한 곳이 되어 있었고, 대신 컴퓨터 과학과 관련한 연구를 수행하기에는 좋았다. 빌 조이는 버클리에서 몇몇 동료 대학원생들, 그리고 연구원들과 함께 벨 연구소의 유닉스를 획기적으로 개선하기 시작했는데, 이렇게해서 탄생한 것이 바로 버클리판 유닉스(Berkeley Unix) 또는 버클리 소프트웨어 배포판(Berkeley Software Distribution, BSD) 으로 불리는 BSD 유닉스이다. BSD 유닉스는 벨 연구소의 오리지널 유닉스보다 훨씬 훌륭한 성능을 자랑했기에, 이후 인터넷의 모태가 되는 미국 국방부 고등연구계획국(DARPA, Defense Advanced Research Projects Agency)의 아르파넷(ARPANET) 프로젝트의 기본 컴퓨터 환경으로도 선택되었다. 

비록 1975년에는 버클리 캠퍼스에 과거 자유언론운동의 정신이 잊혀지고 있었지만, 버클리로 돌아온 켄 톰슨은 자유언론운동의 정신을 또 다른 세계적인 운동으로 연결시키고 있었다. 빌 조이 등이 있었던 에반스 홀 건물(Evans Hall) 4층에서는 수시로 켄 톰슨이 주재하는 유닉스 소스코드 강독회의가 열렸다. 수십 명의 서부해안의 열성적인 개발자들이 그의 회의에 참여하였고, 여기에서 오픈소스 운동의 싹이 트게 된다. 켄 톰슨은 버클리로 돌아와서 자유언론운동을 다시 시작하지는 않았지만, 자유롭게 생각하고 표현할 수 있는 새로운 문화를 만드는데 성공하였다. 그는 코드를 이용해서 민중에게 권력을 돌려준 것이다.


BSD 유닉스와 오픈소스 개발방법론

BSD 유닉스가 높은 평가를 받은 것은 소프트웨어 자체보다는 그것이 만들어지는 과정이었다. BSD는 소수의 핵심 개발자들이 네트워크상의 다수의 공헌자들의 성과를 관리하는 방식으로 개발이 되었는데, 이것이 "오픈소스 개발방법론"의 시초가 되었다. BSD 유닉스가 탄생한 이후 유닉스는 다양한 변신을 하게 되는데, 어찌보면 당연하게도 벨 연구소의 모기업인 AT&T와의 법정소송을 겪게 된다. 그렇지만, 이미 수 많은 사람들의 협력으로 새로운 개방된 운영체제의 역사를 쓴 BSD 유닉스에 대해 어떠한 법적인 책임을 물리는 것은 사실 상 불가능한 일이었다. 90년대 초 지리한 법정싸움 끝에 BSD 유닉스는 100% 자유롭게 배포가능한 소프트웨어로서의 지위를 부여받게 되었고, 이렇게 해서 그 이후에 FreeBSD, OpenBSD, NetBSD 등과 같은 여러 후손들이 생겨났다.

BSD 유닉스를 이끌던 빌 조이는 1982년 썬 마이크로시스템스(Sun Microsystems)가 설립되면서 공동창업자로 IT산업계에 뛰어들었다. 그가 떠난 뒤의 BSD 유닉스의 지위는 사실 과거와는 많은 차이가 있다. 특히 개발자 집단이 분열하였고, AT&T와 소송전이 지속되면서 동력이 약해졌던 것이 큰 원인이다. BSD의 빈 자리는 핀란드의 신성 리누스 토발즈가 지휘한 리눅스가 메꾸게 되었으며, 리눅스는 현재 모든 컴퓨터 운영체제에 있어 가장 중요한 자리를 차지하고 있다. 그렇지만, 아직도 BSD 유닉스의 충성스러운 지지자들은 BSD 유닉스의 핵심커널이 리눅스보다 기술적으로 훨씬 우수하기 때문에 앞으로 새로운 꽃을 피울 가능성이 있다고 주장하기도 한다.

BSD 유닉스 프로젝트의 가장 중요한 인물은 빌 조이지만, 이 프로젝트를 주도하게 만든 CSRG(Computer Systems Research Group, 컴퓨터시스템연구그룹)를 조직한 버클리 대학의 컴퓨터과학과 교수인 밥 파브리(Bob Fabry)도 큰 공로자이다. CSRG는 빌 조이를 비롯해서 샘 레플러(Sam Leffler), 커크 맥쿠식(Kirk McKusick), 키스 보스틱(Keith Bostic) 등과 같은 최고의 컴퓨터 과학자들을 배출하였다. 특히 그는 국방부 고등연구계획국과의 관계가 좋아서, 많은 연구지원금을 타낼 수 있었고, 이에 따라 아르파넷과 BSD 유닉스의 동거가 시작되었다. 밥 파브리가 유닉스를 선택한 것은 비용적인 문제가 컸는데, 70년대 중반만 하더라도 대세를 이루던 메인프레임(mainframe) 컴퓨터와 터미널 방식으로 학생들이 컴퓨터를 이용하기 위해서는 사용자당 5만 달러 정도가 필요했다고 한다. 그에 비해 유닉스는 상대적으로 저렴한 DEC의 PDP 계열에서도 문제없이 동작했고, 적은 라이선스 비용으로 소스코드까지 받아서 쓸 수 있었기에 대학에서 사용하기에 안성맞춤이었다. 

이런 유닉스의 장점은 아르파넷 프로젝트의 핵심 운영체제를 선정할 때에도 그대로 접목되었다. 아르파넷 프로젝트에 이용된 DEC의 VAX 컴퓨터는 DEC의 VMS라는 운영체제가 기본으로 이용되었는데, VMS는 이 기기 만을 위해 만들어진 상업적 운영체제로 소스코드가 주어지지 않았다. 그래서, 소스코드를 보고 고칠 수 있으면서 VAX 컴퓨터에서 이용될 수 있는 BSD 유닉스가 대안으로 선택되었다. 어쩌면 인터넷이 가지고 있는 자유로운 정신에는 이렇게 운영체제를 선택할 때부터 과거의 철학과는 다른 접근방식을 가졌던 역사가 영향을 미쳤는지도 모르겠다.

밥 파브리는 2000년에 이루어진 Salon.com의 앤드류 레너드(Andrew Leonard)와의 인터뷰에서 "단 한번도 소프트웨어가 공짜이어야 한다는 목표를 설정한 적이 없냐?" 라는 질문에 대해 "소스코드를 돈 받고 팔아야겠다는 생각은 도대체 어디서 나온 것입니까? 제 생각에는 그 질문이 더 옳을 것 같습니다."라고 답을 하였다. 이와 같이 BSD 유닉스와 연관된 모든 사람들은 마치 교수들이 수천년동안 자신의 연구 성과를 공개해왔듯이 BSD 유닉스를 학문공동체와 공유하였다.


(다음 편에 계속 ...)


저작자 표시 비영리
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

WRITTEN BY
하이컨셉
미래는 하이컨셉, 하이터치의 세계라고 합니다. 너무 메마르고 딱딱한 이야기보다는 글로벌 시대에 어울리는 세계 각국의 이야기, 그리고 의학과 과학을 포함한 미래에 대한 이야기의 세계로 여러분을 초대합니다.

받은 트랙백이 없고 ,