오늘:
1,628
어제:
2,964
전체:
3,224,653

오픈소스 이야기

조회 수 572 추천 수 0 댓글 2
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

오픈소스에 대한 이해를 만화로 쉽게 할 수 있는 블로그가 있어서 원작자 님의 허락을 얻고 공유합니다. 공유를 허락해주신 원작자님에게 감사 드립니다.
원작자 : https://joone.net/


자유로의 투쟁
초기 유닉스 라이센스 비용은 카피당 $99로 저렴했고 소스코드도 함께 제공되었다. 그 이유는 AT&T가 IBM과 50년대 맺은 협약 때문인데, IBM은 전화 사업에 그리고 AT&T는 컴퓨터 사업에 진출할 수 없었기 때문이다. 미국방성 고등 방위 연구 계획국(DARPA)도 유닉스가 소스코드와 함께 배포되는 부분을 중요하게 생각했다. 이러한 이유로 인터넷 구축에 DEC가 개발한 VMS 대신 BSD 유닉스를 선택했다[1].

하지만, 1984년 AT&T가 여러 회사로 쪼개지면서 유닉스를 상업적으로 판매할 수 있는 길이 열렸고, AT&T는 갑자기 유닉스 가격을 $99에서 $250,000로 올렸다[1].

이때까지 BSD 사용하려면 AT&T 유닉스 라이선스를 갖고 있어야했다. 하지만, AT&T가 유닉스 라이선스 가격을 올리자, 몇몇 회사들이 BSD 유닉스에서 네트워킹 코드만을 배포하기를 요청했다.

“AT&T가 유닉스 라이선스 가격을 올려서 많은 사용자들이 BSD의 네트워킹 코드와 관련 툴을 따로 배포해주기를 원하고 있어요.”
“이번 기회에 한번 우리가 개발한 네트워킹 코드와 툴만 따로 배포본을 만들어봐요”

“BSD 네트워킹 배포본 작업은 잘 되가나?”
“네, 그런데, 라이선스를 어떻게 하죠?”

“우리만의 BSD라이선스를 만들어보는건 어때? 코드를 가져다가 맘대로하세요. 대신 이 코드로 제품을 만들거나 소스코드를 재배포하면 우리 저작권만 메뉴얼 같은데 표기하면 되는거지.”

“너무 자유로운데요? 하긴, 우리가 AT&T처럼 누군가를 제약하고 싶지는 않아요.”

CSRG(Computer Systems Research Group)는 BSD에서 네트워킹 코드와 관련 유틸리티만을 묶어서 1989년 6월에 BSD Networking Release(Net/1)을 공개한다. 이는 AT&T 유닉스를 라이선스하지 않는 사용자를 위해 BSD라이선스로 배포한다. BSD라이선스는 아주 자유로운데, 로열티 없이 수정한 코드를 바이너리나 소스코드 형태로 배포할 수 있었고, 유일한 요구사항은 제품 문서에 BSD코드에 대한 저작권을 명시하기만 하면 됐다.

“드디어 BSD Networking Release를 받았어.“
“얼마야?”

“$1000을 내면 테이프로 복사해서 보내주는데, ftp 사이트에서도 그냥 무료로 받을 수 있어. 놀라운 것은 별도의 로열티 없이 우리맘대로 코드를 수정해서 배포할 수도 있지.”

한편, CSRG에서는

“교수님, BSD 네트워킹 릴리스가 많이 팔렸어요.”
“과제비에 판매비까지 한동안 개발비 걱정은 안해도 되겠네.”

“자, 주간 회의를 시작해볼까?”

“교수님, 이번 기회에 AT&T 유닉스 라이선스가 필요 없는 BSD 유닉스를 만들어 보면 어떨까요?”

“더 이상 AT&T에 끌려다닐 수 없지. 어차피 커널은 우리가 많이 고쳐서 다르고 유틸리티와 C 라이브러리를 다시 만들어야 하는데, 짧은 시간내에 가능한 일인가?”

“한번 시도해 보죠. 외부의 기여만 이끌어낼 수 있으면 AT&T 코드를 다시 작성할 수 있어요.”

결국, CSRG는 AT&T가 작성한 툴과 C 라이브러리를 다시 작성하기로 결정한다. 다행히 외부 기여자의 참여로 18개월동안 대부분의 코드를 다시 작성할 수 있었다.

AT&T 유닉스에서 작성된 대부분의 코드를 제거한 후, 1991년 6월에 드디어 완전히 자유로운 BSD유닉스가 출시된다. 여전히 복사 비용인 1000$만 내면 BSD 유닉스 소스코드를 테이프로 받을 수 있었고, 심지어 ftp 사이트에서 무료로 다운로드 받을 수 있었다.

CSRG는 BSD유닉스를 본격적으로 판매하기 위해 BSDi라는 회사를 설립한다. 캘리포니아 대학도 90년대 초부터 BSD 유닉스를 판매하기 시작했다. 이 당시 AT&T유닉스 보다 95%싸다고 광고를 했는데, 결국, AT&T의 심기를 건드리고 만다.

제국의 역습
결국, 1991년 AT&T는 BSDi와 캘리포니아 대학을 유닉스에 대한 저작권 침해로 고소한다.

“분명히 AT&T 유닉스 코드는 다 지웠을 텐데.. 이건 뭐지?”

하지만, AT&T의 유닉스 시스템V 역시 가상 메모리, TCP/IP, VI 등 BSD 유닉스 코드가 많이 포함되어 있었다. 애초에 BSD 라이선스는 저작권만 표기하면 누구나 맘대로 사용할 수 코드인데, AT&T는 소스코드에서 저작권 부분을 제거하고 자신들이 모든 코드를 만든 것 처럼 유닉스를 판매하였다.

“AT&T가 우리가 유닉스 코드를 무단으로 배포했다고 고소를 했네”
“말도 안됩니다. AT&T 시스템V는 우리가 개발한 가상 메모리, TCP/IP, VI 등 코드를 포함하고 있습니다.”
“맞아요. 우리도 맞소송을 해야합니다.”

결국, BSD 유닉스 측도 AT&T를 상대로 맞고소를 한다.

결국 1994년 1월, CSRG가 일부 남아있던 AT&T 유닉스 코드를 제거하는 조건으로 각자 유닉스를 판매할 수 있도록 합의가 이루어졌다.

그 이유는 비록 BSD유닉스가 AT&T 유닉스 코드를 기반으로 개발되었지만 상당수 코드가 다시 개발되었고, AT&T 역시 BSD에서 개발한 TCP/IP, 가상 메모리, VI 코드를 가져다 쓰면서 임의로 저작권 표기를 삭제한 정황이 드러났기 때문이다. 하지만 소송 기간 동안 BSD유닉스는 배포될 수 없었고 완전한 자유 소프트웨어로된 BSD 유닉스가 나오기까지 2년여의 시간을 낭비한 탓에 그 사이 리눅스가 탄생할 여지를 주게 된다.


리누스 토발즈

“만약 BSD 유닉스를 제 인텔 386 PC에 설치할 수 있었다면, 리눅스를 만들 이유는 없었겠죠.”

다음에 계속..

참고 문헌

  1. ANDREW LEONARD, BSD Unix: Power to the people, from the code, 2000
  2. 마샬 커크 맥퀴식, 버클리 유닉스의 20년, 오픈소스 혁명의 목소리, 한빛출판사, 2013
  3. https://en.wikipedia.org/wiki/Computer_Systems_Research_Group
  4. https://www.freebsd.org/doc/en/books/design-44bsd/overview-network-implementation.html

참고로, 등장 인물 간 대화는 자료를 바탕으로 재구성되었습니다.

만화 중 잘못된 부분이나 추가할 내용이 있으면 만화 원고에 직접 의견을 남겨주시면 고맙겠습니다. 그 외 전반적인 만화 후기는 블로그에 바로 답글로 남겨주세요.

  • ?
    Moordev 2018.04.13 15:11
    이 사건이 솔직히 BSD입장에서는 제일 뼈아픈 사건일겁니다...
    이것만 아니었어도 BSD는 지금의 리눅스의 입장이 되었을거에요. BSD는 당시 떠오르던 x86에 설치가 되지 않았고(될수가 없었지요. 판매자체가 안 되었으니 물론 AT&T의 원본 유닉스도 마찬가지이긴 합니다) 리눅스의 무난했던 성능은 결국 BSD가 가져갔을 자리를 선점하고 말았지요.
    그 결과 유닉스 호환으로 시작했던 리눅스는 전세계 서버시장을 독식했고 BSD에 리눅스 호환레이어가 들어가게 되었습니다. 참 알다가도 모른일입니다.
  • ?
    krhamoni 2018.04.20 20:47

    BSD가 GUI만 잘 지원 해주면 좋겠는데, XFCE만 실행 해도 버벅이니 난감하네요.


List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 오픈소스 이야기 게시판 이용안내 3 file Kevin 2018.04.13 1781
21 오픈 소스 역사 게시판인가요? 2 세벌 2018.04.14 341
20 오픈소스에 대한 다큐멘터리 Revolution OS 1 file Kevin 2018.04.13 961
19 유닉스 철학 - 함께 동작할 수 있는 프로그램을 만들 것 3 Kevin 2018.04.13 810
18 해커문화의 탄생 1 Kevin 2018.04.13 563
» BSD 유닉스 6화 – 자유로의 투쟁 2 Kevin 2018.04.13 572
16 BSD 유닉스 5화 – TCP/IP 개발 1 Kevin 2018.04.13 570
15 BSD 유닉스 4화 – CSRG(Computer Systems Research Group) 결성 1 Kevin 2018.04.13 405
14 BSD 유닉스 3화 – BSD 유닉스 시작 1 Kevin 2018.04.13 541
13 BSD 유닉스 2화 – vi 에디터의 탄생 1 Kevin 2018.04.13 1095
12 BSD 유닉스 1화 – UC 버클리로 간 유닉스 코드 1 Kevin 2018.04.13 671
11 라이온스 교수의 유닉스 해설서 1 Kevin 2018.04.13 530
10 리차드 스톨만과 자유소프트웨어 이야기 1 Kevin 2018.04.13 610
9 GNU Project - ‘GNU’s Not Unix 1 Kevin 2018.04.13 498
8 자유 소프트웨어 재단을 아시나요? 1 Kevin 2018.04.13 478
7 리눅스 생존 가이드 (리눅스 데스크탑 적응기) 2 file 행복한펭귄 2017.01.25 7348
6 리누스 토발즈 강연 The mind behind linux 행복한펭귄 2017.01.19 5455
5 왜 굳이 리눅스를 써야하나? 행복한펭귄 2016.08.31 5810
4 꾸준히, 자유롭게, 즐겁게 : 한국 오픈 소스 개발자들 이야기 2 행복한펭귄 2016.08.24 5542
3 리누스 토르발즈 기조연설 (리눅스 25년을 말하다) 2 행복한펭귄 2016.05.13 7031
Board Pagination Prev 1 ... 2 3 4 ... 5 Next
/ 5
CLOSE