오픈소스 이야기

조회 수 471 추천 수 0 댓글 1
?

단축키

Prev이전 문서

Next다음 문서

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

단축키

Prev이전 문서

Next다음 문서

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

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


TCP/IP 통합
아파넷에서 가장 중요한 부분은 바로 네트워크 프로토콜을 설계하고 구현하는 작업이였다. 미국방성 고등 방위 연구 계획국(DARPA)은 군수업체 중 하나인 BBN Technologies에게 여러 플랫폼에 TCP/IP를 구현하도록 했다. TCP/IP 구현이 어느 정도 진행된 후, UC 버클리대학 CSRG(Computer Systems Research Group)는 BBN Technologies이 구현한 TCP/IP 코드를 BSD 유닉스에 통합하기 시작했다.

“드디어 TCP/IP 소스코드가 도착했네. 어디 BSD에 적용해볼까”

“이런식으로 구현하면 로컬 네트워크에서는 성능이 안나올 텐데.. 내가 좀 고쳐야겠다.”

1980년 초 TCP/IP 회의


“제가 모이자고 한 이유는 CSRG에서 BBN Technologies에서 개발 중인 TCP/IP 코드를 받아 일부 수정을 했는데, 성능이 무척 향상되었다는 보고를 받았기 때문입니다.”


“어떻게 이게 가능한가요?”


“늦어져 죄송합니다. 빌 조이입니다”
“때 마침 잘 왔어요.”


“어떻게 이렇게 성능이 좋아졌나요?”
“아, 제가 소스코드를 보니 이대로 적용해서는 안될 것 같더군요. 로컬 네트워크에서는 많은 컴퓨터가 동시에 사용해서 높은 대역폭이 필요해서 좀 더 성능을 높일 수 있는 방안을 구현했지요.”


“어떻게 구현했나요?”
“아.. 그냥 TCP/IP 스펙을 보고 구현했어요.”

BBN Technologies가 BSD용 TCP/IP를 시작했지만, CSRG멤버들이 초기에 받아 구현한 TCP/IP 코드가 4.2BSD를 통해 릴리스되었다. BBN은 자신들이 개발한 TCP/IP를 4.3BSD에 적용하려고 했지만, CSRG가 구현한 TCP/IP가 더 안정적으로 동작하여 최종적으로 BSD에 적용되었다. 그리고, 1982년 빌 조이는 썬 마이크로시스템스 창업을 위해 CSRG를 떠난다.

“과제는 끝내고 가야지!”
“교수님 죄송합니다. 레플러가 저 대신 BSD유닉스 릴리스를 맡을 겁니다.”
“자, 진짜 유닉스 머신을 만들러 가자!”

하지만, 빌 조이는 CSRG를 떠난 후에도, IPC 구현과 커널 코드가 포팅이 용이하도록 수정하는 작업을 마무리 지었다.

“작업하던 IPC구현은 빨리 끝내자. 어차피 SunOS에도 추가해야 하니까..”

빌 조이가 떠나자 사무엘 J 래플러(Samuel J Leffler)가 책임자가 되었다. 사무엘은 새 시그널을 구현하고 마셜 커크 매큐직(Marshall Kirk McKusick)가 구현한 파일시스템과 TCP/IP 등을 추가해서 1983년 8월 4.2BSD를 발표한다.

“4.2BSD의 주요 기능은 시그널과 TCP/IP!”

사무엘이 4.2BSD를 완성하고 루카스아츠사로 떠나자, 후임으로 마이클 J. 캐럴스(Michael J. Karels)가 개발을 책임지게 된다.

4.2BSD는 인기가 많아서 1000개 이상 라이선스 계약을 따냈는데, 당시 AT&T유닉스에 TCP/IP 기능이 없는 것도 큰 이유 중 하나였다.

“아직도 TCP/IP가 안되는 AT&T 유닉스를 쓰고 있나요? 4.2BSD를 써보세요.”

곧바로 AT&T 유닉스도 BSD에서 추가된 네트워크 기능을 추가한다.


“4.2BSD에 추가된 TCP/IP를 AT&T 유닉스에도 추가하시요.”


“새로 구현하란 말씀인가요?”


“크… 당신이 TCP/IP를 새로 구현할 수 있겠는가?”
“으…. 아닙니다. 4.2BSD에서 TCP/IP 코드를 가져와서 바로 적용하겠습니다.”

다음에 계속…

참고 문헌

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

  • ?
    krhamoni 2018.04.20 20:37

    빌 조이 당신은 도대체?


    어느새 컴퓨터 형태가 PC에 가까워 졌네요.


List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 최준호 - 프로그래밍의 깊은 세계로 들어가는 길 file Kevin 2018.04.22 1157
공지 허준회 - 더 나은 세상을 위한 소통 file Kevin 2018.04.22 677
공지 류창우 - 그냥 부담 없이 취미로 2 file Kevin 2018.04.22 566
공지 이희승 - 도전과 점진적 개선, 그리고 변화에 열린 마음 1 file Kevin 2018.04.22 1179
공지 김정균 - 자신을 발전시키는 소중한 공부 file Kevin 2018.04.22 499
공지 허태준 - 가장 의미 있고 즐거운 개발 file Kevin 2018.04.22 2604
공지 오픈소스 이야기 게시판 이용안내 3 file Kevin 2018.04.13 1640
59 그놈(GNOME) 데스크탑의 시작 2 Kevin 2020.08.06 1077
58 오픈소스 이미지 편집 프로그램 김프와 GTK+ 시작 2 Kevin 2020.06.08 1605
57 오픈소스 GUI 툴킷 Qt와 KDE 프로젝트의 시작 1 Kevin 2020.05.21 4410
56 리눅스 배포본과 데비안 프로젝트 Kevin 2020.05.11 1014
55 리눅스 이야기: 네트워킹 Kevin 2019.07.19 2007
54 FreeCAD 한국어 번역 함께 해 보아요 8 세벌 2019.06.26 2894
53 리눅스 이야기: 리눅스 vs. 미닉스 2부 Kevin 2019.05.27 1649
52 리눅스 이야기: 리눅스 vs. 미닉스 1부 Kevin 2019.02.22 1579
51 리눅스 이야기: 진정한 자유 운영체제 1 Kevin 2018.12.27 1434
50 리눅스 이야기: 운영체제를 만들자! 7 Kevin 2018.12.03 1956
49 LibreOffice Korea 2 세벌 2018.11.27 1554
48 김프 2.10.8 나왔습니다. 1 세벌 2018.11.14 1103
47 XFree86과 X.Org Kevin 2018.08.13 1163
46 X11의 탄생 4 Kevin 2018.07.25 1411
45 X-Window 탄생 1 Kevin 2018.06.21 1918
44 오픈소스란 무엇인가요? 1 file Kevin 2018.06.01 11106
43 [TED2016] 리눅스의 기본 철학(한글 자막) 1 file PEACH 2018.05.15 1044
42 ‘리눅스 아버지’처럼 성공하기 위한 11가지 조건 file PEACH 2018.05.15 903
41 깃허브 러닝랩 - 혼자서 아무것도 없이 깃허브 마스터 가능합니다. 2 file PEACH 2018.05.11 1854
40 The C programming language 2nd edition 2 세벌 2018.05.11 2307
Board Pagination Prev 1 2 3 ... 4 Next
/ 4
CLOSE