자유롭게 게시물을 올릴수있는 게시판입니다.
  • 유년추억
  • 학교생활
  • 입시준비
  • 대학생활
  • 군생활
  • 알바생활
  • 취업준비
  • 직장생활
  • 원룸생활
  • 연애중
  • 결혼준비
  • 집안살림
  • 자녀교육
  • 창업준비
  • 이민유학
  • 노후생활
  • 전체보기


유닉스의 잼나는 역사 (나도 몰랐던것이 ^^)

 
시작함돠!!


60년대 말, Bell Telephone Laboratory는 General Electric,

MIT와 더불어 "Multics"라고 불리우는 multiuser operating

system 개발의 project를 수행하고 있었습니다. 저는 잘 모르는

어떤 사정에 의해, 69년 그 project가 취소되었는데, 그 때

Bell Lab의 몇몇 사람은, 심심함을 견디지 못하고 다른 재미있는

project를 추구했데요. 이해하기 힘들지 않나요?

그 중 Ken Thompson이란 한 사람은, Digital Equipment Corporation

사의 PDP-7이라는 computer를 발견하고 그 위에 "Space Travel"이라는

오락을 짜고 있었습니다. 어떤 오락인 지는 몰라도, text-base의

무지하게 재미없는 오락이었으리라 개인적으로 추측합니다.

근데, PDP-7의 개발환경이 구현되어 있지 않아, Honeywell 635에서

돌아가는 GECOS라는 OS에서 cross compile한 후 PDP로 들고 와서

돌려보며 program을 짜다가, 도저히 안 되겠다 싶어 Dennis Ritche

라는 사람을 꼬셔서, PDP-7에서 돌아가는 OS를 같이 개발하기

시작했습니다. 이 때, System V의 file system인 s5fs의 원형이

만들어지고, Bourn shell의 조상인 shell이라는 interpreter와

다른 유틸리티들이 만들어졌습니다. 그들은 이 OS를, Multics에

빗대어 Unix라고 불렀구요.

다음 해, Thompson과 Ritche는, 특허부서를 위한 text-processor를

위해 더 좋은 computer가 필요하다고 Bell Lab을 꼬드기어, PDP-11을

얻어냅니다. 이 위에 "ed" editor와 runoff text rendering tool을

만들지요. 요즘은 ed 쓰는 사람이 없는 것으로 알고 있습니다.

이 과정에서 Thompson은 B라고 이름지어진 interpretive language를

만들었습니다. 정말 막강한 사람이지요. 하지만 interpretor에서

돌아야하기땜에 좀 느린 것이 흠이라, Ritche가 좀 더 발전시켜

C를 만들었데요. 이 Thompson과 Ritche가 우리가 알고 있는 C의

창시자입니다. 73년도에는 이제 Unix가 이 C로 짜여지게 되는데,

이것이 Unix의 성공에 큰 영향을 끼치게 된 것이죠. 저도 73년도에

태어났습니다.





II. 발전


같은 해, Thompson과 Ritche는 "The UNIX Time Sharing System"

이라는 제목으로, ACM Symposium on Operating System에 논문도

발표 했습니다. 청중들로부터 반응이 아주 좋았데요. 근데,

1956년 이후로, Bell Lab은 anti-trust법에 걸려있어, "공중

통신사업" 이외의 분야에선 돈을 버는 것이 금지되어, 교육과

연구용으로 쓰라고 대학교에 공짜로 건네주었습니다. Berkeley의

Unix는 여기서 시작합니다.

Unix는 여러 기종에 porting이 되는데, 여기서 잠깐 Microsoft도

등장합니다. Microsoft와 Santa Cruz Operation (SCO)는 손을

잡고 Unix를 386에 porting하여 XENIX라는 이름을 주었습니다.

MS도 옛날엔 Unix로 장사했었데요. 1978년 DEC는 VAX-11이라는

32-bit computer를 내놓았는데, ㈀藪〉?porting되어 UNIX/32V

라는 OS가 또 하나 생겼습니다. 이것이 Berkeley로 보내지고

조금 향상되어 3BSD가 79년도에 등장합니다.





III. BSD


Unix가 Berkeley에 온 후, 두 대학원생 Billy Joy와 Chuck Haley는

ex라는 editor (vi의 전신이지요)와 pascal compiler 등의

유틸리티로만 구성된 package를 만들어

Berkeley Software Distribution (BSD)라 이름붙이고 50$에

팔았답니다. 교수님이 알고 계셨는 지는 저도 모릅니다. 이

안에는 job control과 command history로 유명한 csh도

들어있었구요.

78년, Berkeley는 VAX-11과 UNIX/32V를 얻었지요. 이 4 GByte의

address space를 지원할 수 있는 32-bit computer에,

physical memory는 2 MByte밖에 안 달려있었는데, Ozalp Babaoglu가

(발음은 모르겠습니다) paging에 기반한 가상 memory system을

개발하여 UNIX/32V에 붙이고 79년 3BSD를 내 놓게되지요.

이 가상 memory가 또 히트를 치게되어, 국방성이 관심을 갖고,

Berkeley의 Unix를 지원하게 됩니다. 돈이지요. DARPA project의

(Defense Advanced Research Project Agency) 주요 관심사 중

하나는, TCP/IP protocol suite가 통합되는 것이었고, 이 때부터

Unix와 Internet이 같이 성장하게 됩니다.

이후 Berkeley에서 Unix가 크게 연구되고, 새로운 버전이 계속

발표되었습니다. 이 Berkeley Unix는 Virtual Memory system,

Fast File System (FFS), Socket communication mechanism 개발,

signal system 재정립 등의 연구성과가 구현되었습니다.

80년, 4.0BSD, 81년 4.1BSD, 83년 4.2 BSD, 86년 4.3BSD,

93년 4.4BSD를 개발 후, Berkeley의 Computer Science Research

Group (CSRG)는 다음과 같은 이유로 Unix의 연구 개발을

그만 둘 것을 발표했습니다.

1. 돈이 없다.
2. BSD의 여러 특성이 이제 다른 상용 system에서도 구현되었다.
3. 작은 research group이 감당하기엔 이제 system이 너무 커졌다.

어찌됐건, Berkeley Software Design, Inc. (BSDI)라는 회사가

성립되었고, 이 회사는 4.4BSD를 상용화하고자 했습니다.

이 때 AT&T랑 몇 가지 법적인 문제를 놓고 큰 싸움이 한판

붙어 Unix의 역사에 약간의 얼룩이 생겼지요. 결과는 양쪽에서

고소를 취하하는 것으로 해결되었고 BSDI는 4.4BSD-lite를

1000$에 내 놓았습니다.




IV. System V


그 동안 AT&T도 꾸준히 Unix를 개발하여, 82년 System III,

83년 System V, 84년 System V Release 2, 87년 System V

Release 3를 발표했고, 최종 version은 System V Release 4
입니다. SVR4라고 많이 불리지요. AT&T는 System V의 유포를 적극

밀었고, 현재의 많은 Unix system들이 이 System V에 기반하고

있습니다. AT&T는 82년, 여러 법적 싸움을 거쳐, Western

Electric이라는 회사를 합병하여, 어떻게 어떻게 해서

computer 사업에 손을 댈 수 있게 되었던 것입니다.

이 System V 역시 많은 새로운 강점들을 갖추게 되었습니다.

BSD의 것과는 전혀 다른 방식의 virtual memory system인

regions architecture, shared memory, semaphore와 message

queue와 같은 interprocess communication 기능들,

remote file sharing, shared library와 STREAM framework

등이 그 예가 됩니다.





V. 상용 Unix


Unix의 인기가 높아짐에 따라, 많은 computer회사들이 덤벼

들게 되었고, 그들만의 부가가치를 갖는 많은 Unix변종들이

생겨나게 되었습니다. 변종이란 말이 좀 듣기 안 좋을 것

같은데, 원래 책에 쓰인 단어는 variant입니다.

하여간, 가장 처음으로 상용화된 Unix는 PDP-11에서 돌아가는

IS/1이라는 것이구요, 앞에서 언급되었던 MS와 SCO의 XENIX

, SCO가 혼자 후에 SVR3를 386에 porting한 SCO UNIX도

있고, IBM의 AIX, HP의 HP-UX, DEC의 ULTRIX - DEC OSF/1 -

Digital UNIX 시리즈 등도 있고, 2BSD의 이름이 귀여운

Bill Joy가 친구와 창립한 Sun Microsystems의, 4.2BSD에

기반한 SunOS도 있지요.

이들 상용 OS의 유명한 업적들을 보자면, SunOS는 다양한

file system을 지원하기 위한 vnode/vfs interface와,

Network File System (NFS지요)을 지원하고, AIX는 최초로

상용 journaling file system을 제공했고, ULTRIX는

최초로 multiprocessor system위의 Unix가 되었다는 것

등이 있습니다.





VI. Mach


Unix의 인기가 높았던 것은 그것이 작고 단순하기 때문이었는데,

새로운 기능이 추가될수록 kernel이 복잡하게만 되어갔습니다.

이에 80년대 중반, Carnegie-Mellong 대학에서 최소한의 필수

기능만을 담당하는 microkernel을 주고, 나머지 service는

user level에서 해결한다는 취지하에 탄생한 Unix가 Mach입니다.

OSF/1과 NextStep과 같은 system이 이 Mach를 기반으로 하고있구요,

Mach 3.0은 최초의 microkernel 구현이라는 의미도 갖고 있습니다.

Academic한 의미가 더 큰 작품이지요.





VII. 표준


Unix가, System V 시리즈와 BSD 시리즈 크게 두 갈래로 성장하

다보니, 거기에 각종 상용 Unix까지 각 회사가 따로 개발하다보니,

저마다 interface가 다 달라 program들이 호환이 되지 않는 것이

큰 문제가 되었습니다. 예나 지금이나 언제나의 문제이겠지요.

안 되겠다 싶으면 어떤 group이 형성되어, 표준을 정립하고자

노력했었는데, 이로는 System V Interface Definition (SVID),

IEEE의 POSIX 1003.1 또는 POSIX.1 (Portable Operating System

based on Unix의 약자라고 합니다), 그리고, computer 회사들의

표준 정립을 위한 국제적 기구인 X/Open의 X/Open Portability

Guide (XPG) 등이 있습니다.





VIII. OSF와 UI


87년, AT&T는 Sun에게 많은 특혜를 주고, Sun은 4BSD에 기반한

SunOS와는 달리 다음부턴 System V에 기반한 Unix를 만들겠다는

조건으로 둘이 손을 잡게 되었습니다. 그 결과가 AT&T의

System V Release 4이지요.

이들 둘이 붙으니, IBM, Digital, HP, Apollo 등과 같은 다른

많은 회사들이 놀라, 자기들끼리 또 힘을 합하여 Open Software

Foundation (OSF)라는 조직을 만들었습니다. 여기서 만든 OS가

Mach 2.5를 기반으로 한 OSF/1이고, 이것에선 GUI개발 API인

Motif가 유명합니다.

AT&T와 Sun도 가만히 있을 수 없어, 다른 회사들을 모아

Unix International (UI)라는 그룹을 만들어 대적하였습니다.

하지만 상황은 두 그룹 중 어느 것의 뜻대로도 잘 되지않고,

Unix가 아닌 Microsoft의 windows가 세상을 장악하게 되어버

렸습니다.





VIIII. SVR4와 그 이후


AT&T와 Sun이 같이 개발한 System V Release 4에는, Korn

shell, 향상된 STREAM, 실시간 scheduling class 등 새로운

기능이 많이 들어있었습니다.

91년 PC 기반 network operating system인 Netware로 유명한

Novell은, AT&T의 Unix System Laboratory (USL)의 일부를 사들여,

UnixWare라는, Netware를 통합한 SVR4의 desktop version을

만들어 냈습니다. 93년 USL을 마저 사들여 SVR4의 새 주인이

되었습니다.

Sun은, AT&T와 손잡던 시절 예정된 대로, SVR4에 기반한 Unix

Solaris를 94년에 내 놓았지요.

휴 ... ^^ 여담!! 하드에 보면은 AT&T 이거 붙여진거 있을 겁니다 퀀텀 하드에 ㅋㅋㅋ
구게 멀까엽 ㅡㅡ?




constantine
2002-09-25 01:29:30
900 번 읽음
☞ 로그인 후 의견을 남기실 수 있습니다
 캐시선물





365ch.com 128bit Valid HTML 4.01 Transitional and Valid CSS!
태그