Unix의 역사

공학을 전공한 사람이라면 에니악이라는 이름을 들어본 적은 있을 것이다. electronic numerical integrator and calculator, electronic numerical integrator and computer의 약자인 에니악은 1940년대 중반 개발되었으며, 1955년까지 사용되었다.

최초의 상용 컴퓨터였는데 은 단일 작업만 수행이 가능하여 그다지 효율적이지 못하였다.

 

그리고 1960년대 말, Dennis Ritchie (1941~2011) 는 Multics 라는 새로운 개념의 운영체제를 개발하기 위한 프로젝트에 투입되었는데, 이 프로젝트는 중지되었고 다시 Bell 연구소로 복귀하게 된다.

1969년..

Bell 연구소 (지금의 AT&T) 의 이 Dennis Ritchie 는, Ken Thompson (1943~) 과 함께 Multics 의 개념을 이용하여 UNIX 를 개발하게 된다.

DEC PDP-7 컴퓨터에서 Space Travel이라는 게임이 실행되게 하는 과정에서 작성되었으며 당시 이름은 UNIX가 아닌 UNICS (UNiplexed Information and Computer System) 였다.

기본 개념은 파일 시스템 구성, command 인터프리터(사용자가 명령을 내려 실행하는) 개념, command가 새로운 process 를 생성하여 실행하는 개념 등이 포함되었다.

참고로 PDP-7 컴퓨터는 DEC 사의 Flip Chip 기술을 이용한 최초의 컴퓨터로 1965년 $72,000의 가격에 출시되었다.

그런데 UNIX는 PDP-7 컴퓨터에 맞게 어셈블러로 작성되었다. 따라서 다른 컴퓨터에서 이 UNIX를 사용하기 위해서는 해당 컴퓨터의 어셈블러로 재작성을 해야했다. 1970년에, 결국 이기종의 머신에 이식하기 위하여 UNIX 를 어셈블러에서 C언어로 다시 작성하였다. (미국의 컴퓨터 과학자인 Dennis Ritchie는 C언어의 창시자이다)

이로써 UNIX는 하드웨어를 극복한 최초의 운영체제, 고급언어로 작성된 최초의 운영체제가 되었다.

그리고 1974년, Ken Thompson과 Dennis Ritchie가 UNIX에 대한 논문을 발표하면서 본격적으로 세상에 이름을 알리게 되었다.

 

또한 이 1974년에는 BSD (Berkeley Software Distribution) 가 설립되었으며, 요즘의 UNIX 에서도 흔히 볼 수 있는 vi 나 C-Shell 등이 추가되었다.

이 시기에 Sun Microsystems 사가 설립되었으며, BSD의 확장판이라고 할 수 있는 SunOS가 개발되었다. SunOS 4.x 버전이나 Solaris 1.x 버전은 BSD 계열의 UNIX 였는데,  Solaris 2.x 부터는 System V 계열로 전환되었다.

1977년에는 UNIX가 PDP 머신이 아닌 IBM S/370에 이식되게 되었으며, 이후 IBM 의 AIX, DEC 의 Ultrix, HP 의 HP-UX 등이 자리를 잡게 된다.

1980년에는 MS 사로부터 PC 용 UNIX 혹은 미니 UNIX 라고 할 수 있는 XENIX가 발표되었다.

1983년에는 AT&T System V R1이 발표되었다. (이후 System V 는 R4 까지 발표됨)

 

헬싱키 대학 전산과 대학원생이던 리누스 토발즈는 UNIX의 교육용 버전이라고 할 수 있는 MINIX를 이용하여 프로그래밍 수업을 받던 중 그 성능에 실망한 후 아예 무료 OS 를 만들기도 하였다. 

그렇게 1991년 9월 17일 발표된 LINUX 최초 버전은 물론 파일시스템 수준의 아주 미약한 OS였다. 이후 0.02 버전이 등장하였으며 bash, gnu make, gcc, compress 등이 추가되기 시작하였다.

그러나 현재는 인류 역사상 가장 큰 공조 프로젝트가 되어 있다.

만일 LINUX를 한 사람이 만들었다면 60,000년 간 $8,000,000,000 (80억 달러)의 개발비가 들었을 것이란 통계가 있다.

 

요즘은 어떨까?

http://w3techs.com/technologies/details/os-unix/all/all 에서 보니 2014년 5월 기준으로 UNIX를 사용하고 있는 사이트의 57%가 LINUX 라고 한다.

(LINUX 를 UNIX 의 하나라고 볼 수도 있고, 물론 서로 구별할 수도 있다)

http://en.wikipedia.org/wiki/Usage_share_of_operating_systems 에서는 서버용, 개인용 구별 없이 OS 마켓 쉐어를 볼 수 있다. 물론 전체적으로는 아직 WINDOWS 가 압도적이다.