프로그래밍 일기 — Unix를 만나다

안녕하세요.

UNIX에 대해 배우기 시작했습니다.

항상 프로그래밍을 공부하면서 UNIX/Linux등은 항상 불가사의한 세계였습니다. 일반적으로 개발할 때는 IDE에서 Run버튼을 통해 프로그램을 실행할 수 있고, 일반 운영체제 상에서는 GUI상에 보이는 아이콘을 클릭하면 어플리케이션을 실행할 수 있었습니다. 그러나 그러한 유저 인터페이스가 제공되지 않는 상황에서는 명령어 기반의 인터페이스인 CLI에서 프로그램을 실행하는 명령어를 직접 입력해야했습니다. 그리고 그 명령어의 세계는 일반적인 프로그래밍 언어의 문법과는 완전히 달랐습니다. 그래서 항상 이 CLI기반의 운영체제에 관심이 많았고, 그 세계의 마법 주문은 어떠한 방식으로 이루어지는지 배워야할 필요가 있다고 생각했습니다.

UNIX는 가장 원초적인 운영체제 중 하나로써, 1969년 Bell Labs라는 사내 연구실에서 개발되어 1980대 말에 표준화되었다. AT&T라는 미국 정부가 최대주주였던 통신회사에서 군사용으로 개발한 운영체제였습니다. 정부가 주인인 기업이었으므로 UNIX를 상업용으로 풀어 팔지 못하게했습니다. 그때 AT&T는 UNIX를 무료로 시중에 제공하였고 덕분에 대학등 교육 기관에서도 활용할 수 있게되었습니다.

그때 UNIX를 다루었던 이들이 졸업후 산업에 나와 여러 버전의 UNIX를 자신의 입맛에 맞게 만들었습니다. 현재 소프트웨어에서 크게 통용되고 있는 패러다임인 오픈소스(Open-Source) 움직임의 시초라고 볼 수 있습니다.AT&T는 이후 1989년 C 언어가 대세가되어과는 과정에서 대부분의 kernel이 C로 다시 쓰여졌고, 이는 운영체제에 상관없이 C언어 라이브러리를 지원하는 그 어떤 디바이스에서도 UNIX를 사용할 수 있게 만들었습니다. 이때 발표된 버전이 System V로써, 상업용 UNIX의 표준이되었고, 이후 다른 회사들이 해당 UNIX를 기반으로 여러 상업용 UNIX 버전을 내놓기 시작했습니다.

UNIX의 역사를 배워보니, 오픈소스 소프트웨어가 이렇게 오래전에 시작되었다는 것이 매우 놀라웠고, 이 것이 C언의 발전과 궤를 같이 해온 점이 매우 흥미로웠습니다. 운영체제에 상관없이 C언어를 지원하는 디바이스에서 모두 실행될 수 있도록 크로스플랫폼(Cross-Platform)의 개념이 이때부터 시작되었다는 것도 인상적 이었습니다. 생각보다 우리가 당연시 여기는 지금의 기술들이 수십년전부터 시작되었다는 사실에 다시 한번 놀라게 되었습니다.

그 동안 잘 알지 못했던 UNIX의 정체와 간략한 역사를 다룬 글을 공유합니다.

프로그래밍 일기 — Unix를 만나다

5 Likes

Linux의 정체에 대해 알아보았습니다.

Linux는 UNIX의 오픈소스로 변형된 버전으로써, Raspberry Pi부터 고사양의 슈퍼컴퓨터 하드웨어까지 폭넓은 타깃 하드웨어를 지원하는 운영체제입니다. 이러한 강점때문에 특히 임베디드(Embedded) 소프트웨어 세계에서 매우 크게 각광을 받았고, 현재는 이 분야에서 Linux없이 일을 한다는 것을 상상할 수 없을 정도입니다. 가장 유명한 Linux 배포 버전 중에는 Debian, Ubuntu, Redhat, Fedora 등이 있습니다.

Linux는 커널(Kernel)이라는 컴퓨터의 중요한 리소스를 관리하는 부분을 가지고 있는데 초기에 리누스 토발즈(Linus Torvalds)에 의해 Intel 80386이라는 개인용 컴퓨터에서 가장 널리쓰이던 표준 칩을 타깃으로 만들어졌습니다.

Linux가 무엇인지, 또 어떤 식으로 발전하게되었는지 알아보면서 오픈소스라는 개념이 얼마나 강력한지 다시 한번 느낄 수 있었습니다. UNIX가 무료로 시중에 풀리지 않았다면 Linux도 태어나지 못했을 것이고, 현재 임베디드관련 기술발전이 지금 만큼 빨리 이루어지지 못했을 수도 있겠다는 생각을 했습니다. 결국 당시 미국 정부가 AT&T로 하여금 UNIX를 판매하지 못하게 한 결정이, 장기적으로는 UNIX기반 엄청난 소프트웨어 생태계를 낳게했고, 지금 그로 인해 태어난 MacOS 및 Linux등의 운영체제들은 현재 소프트웨어 산업을 지배하고 있는 두 축이 되었습니다. UNIX가 태어난 미국이 전 세계 IT 산업을 주무를 수 밖에 없는 이유를 이해할 수 있었습니다.

Linux의 탄생 배경과 역사에 대해 간략하게 정리한 글을 공유합니다.

프로그래밍 일기 — Linux

1 Like