11. BSD 유닉스 4화 – CSRG(Computer Science Research Group) 결성

미국방성 고등 방위 연구 계획국(DARPA, Defense Advanced Research Projects Agency)의 지원

디렉터: 우리가 국방성 연구, 개발 부분을 담당하고 있지만, 다른 연구 기관과 대학과의 효율적인 공동 연구를 위해 네트워크 구축이 필요합니다.
국장: 어떤 운영체제를 선정할지 논의가 필요하겠군요.

“앞으로 각 연구기관과 대학에서 사용하고 있는 컴퓨터를 하나로 연결할 수 있는 네트워크 구축을 논의하기 위해 여러분을 불렀습니다”


“아시다시피, 각 연구 기관에 있는 컴퓨터를 교체할 시점이 다가오고 있습니다”
“여기서 가장 큰 비용은 연구용 소프트웨어를 새로운 컴퓨터에 이식하는 것입니다.”


“하지만, 하드웨어와 운영체제가 다양해서 소프트웨어를 서로 공유하기가 어렵습니다.” “그렇다고, 각 연구소 마다 요구사항이 다른데, 단일 회사의 컴퓨터를 사용하는 것은 실용적이지 못합니다”


“운영체제 수준에서 네트워크를 통합하는 방안을 찾아봅시다.”
“이렇게 되면, 원격으로 다른 컴퓨터 소프트웨어를 쉽게 사용할 수 있습니다.”


“유닉스를 활용하는 어떨까요? C언어로 개발되어 여러 컴퓨터에 이식이 쉽고 이미 많은 학교와 연구소에서 사용하고 있습니다.”


“이것이 바로 인터넷의 초기 형태인 아파넷(ARPANET)을 이야기하는거야.”


“좋은 생각입니다. 버클리대 밥 패브리 교수랩에서 BSD라는 유닉스 배포본을 만드는데, 과제를 맡겨봅시다.”

1979년 버클리대 밥 패브리 교수

밥 패브리 교수: BSD 덕분에 이렇게 좋은 기회를 갖게 되다니… 하하, 그런데, 빌, 제안서 다 썼나요?
빌 조이: 지금 열심히 쓰고 있어요. “코딩에 배포본 배송에 제안서까지.. 빨리 도망가야지…”

마침내 1980년 4월 밥 패브리 교수는 미국방성 고등 방위 연구 계획국(DARPA)과 유닉스 향상에 대한 계약을 체결한다.

“과제 계약을 축하드립니다.”

밥 패브리 교수: 빌, 계약도 했으니, 이제 개발팀을 만듭시다. 똘똘한 친구들 좀 찾아봐요.

버클리대 밥 패브리 교수는 버클리대학내에 CSRG(Computer Science Research Group)라는 연구 그룹을 만들어 과제를 수행하게 된다. 핵심 멤버로 키스 보스틱(Keith Bostic), 빌 조이(Bill Joy), 마셜 커크 매큐직(Marshall Kirk McKusick), 사무엘 J 래플러(Samuel J Leffler), 마이클 J. 캐럴스(Michael J. Karels) 등이 과제에 참여했다.

물론, 과제를 수행하는 일은 쉽지 않았다. 패브리 교수는 연구원들이 개발에 집중하도록 대학의 관료주의와 싸웠고 때로는 AT&T와 법적 문제 그리고 미국방성 고등 방위 연구 계획국(DARPA)에서 계속 펀딩이 될 수 있도록 과제를 도왔다.

그리고, 작업 제어, 자동 리부팅, 1K블록 파일시스템 등을 포함해서 150개의 4BSD를 배포하였다. 4BSD에는 AT&T에 동의아래 유닉스 소스코드도 포함되었다.

밥 패브리 교수: 자, 어서 테이프 150개를 포장합시다.
키스 보스틱: 유닉스 코드도 함께 배포하니 사용자가 더 쉽게 BSD를 설치할 수 있겠네요.
빌 조이: 여럿이 함께 작업하니 한결 편하군요.

친구: 이봐 빌, VAX용 유닉스가 VMS보다 느리다고 누가 논문을 썼네.
빌조이: 뭐라고?

“논문을 보니 맞는 말 같은데, 유닉스 커널 코드 좀 봐야겠군.”

키스 보스틱: 빌 뭐해?
빌 조이: 내가 커널 코드 좀 수정했어. 이제 BSD 유닉스도 VMS만큼 성능이 나와. 자 이제 5BSD를 배포해야겠어.

“네? 5BSD라는 이름을 쓰지 말라고요?”

“저희 고객들이 AT&T에서 릴리스한 시스템V와 이름을 혼동할 수 있습니다.”

빌 친구: 왜 이리 화가 났어?
빌 조이: 방금 교수님 만나고 왔는데, AT&T에서 5BSD라는 이름을 쓰지 말라고 했어.

당시 BSD유닉스는 벨 연구소에서 만든 유닉스 코드를 기반으로 동작했다. 비록 많은 코드가 추가되고 수정되었어도 벨 연구소를 소유한 AT&T에서 언제라도 유닉스에 대한 권리를 주장할 수 있었다.

결국, 1981년 6월 버전5는 4.1BSD이라는 이름으로 출시된다.


“드디어 4.1BSD가 도착했네.”

“소문대로 4BSD 보다는 훨씬 빠르군.”

이처럼 유닉스는 벨 연구소에서 개발되었지만, 소스코드와 함께 배포되었기 때문에 누구나 소스 코드를 고칠 수 있었다. 그 결과, 수 많은 외부 기여자에 의해 혁신이 이루어지고 유닉스 발전에 기여하게된다.

참고 문헌

만화 중 잘못된 부분이나 추가할 내용이 있으면 만화 원고에 직접 의견을 남겨주시면 고맙겠습니다. 그 외 전반적인 의견은 이 블로그에 바로 답글로 남겨주세요. 다음 5화에서는 TCP/IP 개발이 소개될 예정입니다.