리눅스

Isaac914 (토론 | 기여)님의 2015년 4월 23일 (목) 23:17 판 (→‎발전)
리눅스의 마스코트 턱스(Tux)

개요

Linux. LINUX Is Not UNIX.

Unix-like 하고 POSIX 호환인 오픈 소스 커널 중 하나.

현재 버전 4.0. 커널 버전은 여기서 확인할 수 있다.

역사

초기

당시 대학생이었던 리누스 토르발즈미닉스를 보고 이를 약간 개량할겸해서 파스타를 먹으면서 자신의 컴으로 얼추 끄적이던 터미널 에뮬레이터에서 시작되었다. 미닉스를 쓰면서 마음에 안드는 점이 있을 때마다 이것저것 터미널 에뮬레이터에 기능을 추가했고, 어느 새 운영체제에 가까울 정도로 기능이 늘어났다. 리누스는 이 터미널 에뮬레이터를 처음 릴리스 할 때, 무료이니 'free', 자신이 이상한 놈이니(...) 'freak', 그리고 UNIX와 유사하니 'X'를 조합해 'Freax'라고 부르길 원했다고 한다. 무슨 지거리야 그러나 FTP 서버에 소스 파일을 업로드한 아리 렘케는 차라리 리누스가 개발했으니 '리눅스'라고 부르는 게 낫겠다 싶어 리누스의 허락 없이 이름을 '리눅스'로 바꿨고, 리누스도 이 이름이 마음에 들어 새 운영체제의 이름은 리눅스로 확정됐다. [1]

발전

리눅스는 거의 공개 직후부터 가히 폭발적인 성장세를 보인다. 여러가지 원인들이 겹친 결과였다. BSD가 소송에 휘말리면서 대체품에 대한 관심이 커진 것도 큰 역할을 했다.. 극성 BSD빠들 중에서는 그 소송만 없었다면 리눅스는 존재하지도 않았을 거라고 주장하는 사람도 있을 정도. 정신승리 또한, GPL 라이선스를 선택하고, 현재 오픈소스 개발 모델의 모체가 된, 소스 공개와 공개적 개발 모델을 선택한 것도 매우 유효했다. 이전에는 오픈 소스 소프트웨어라도 중심 개발자 집단이 개발 과정을 실질적으로 독점하고, 릴리스할 준비가 되었다고 판단될 때에야 소스를 여는 방식을 사용했다면, 리누스는 누구나 소스를 읽은 후 패치를 작성해 보낼 수 있도록 했다. 패치를 보낸 사람들은 기여자로 다음 릴리스에 포함되었다. 시장과 성당의 표현을 빌리자면, 이는 사람들의 과시욕을 충족시키는 방식이었고, 사람들은 돈을 받지 않고도 커널 버그 수정에 매달렸다.

현재

상당수의 웹 서버모바일 장치(안드로이드, 미고 등…)를 구동하는 운영체제이다. 특히 서버 쪽에서 리눅스의 지위는 엄청나다. 무료인데다가, 리눅스에 익숙한 인력도 많고, 안정성도 높은 편이니 서버 운영체제로서는 최적인 셈. 서버용 프로그램들 대부분이 리눅스를 지원하거나, 리눅스 상에서 개발되고 있다. 모바일 시장에서 안드로이드의 위상이야 더 말할 필요가 없을 정도이고...

물론 데스크탑에서 사용하는 사람들도 많다! 다만 서버와 모바일(안드로이드) 운영체제로서의 입지가 엄청나게 탄탄한 데 비해서 데스크탑에서의 존재감은 미미한 편이다.active X 쓰는 웹사이트에서 맥 사용자만 우는 거 아니다. 리눅스 사용자들도 운다. ㅠㅠ 실제로 리누스 토르발즈는 2014년 "전 아직도 리눅스 데스크탑을 원합니다"라며 리눅스의 데스크탑 운영체제로서의 점유율에 아쉬움을 드러낸 바 있다. 리눅스가 애초에 데스크탑 운영체제로 시작했음을 생각하면 데스크탑에서 리눅스의 미약한 입지는 아이러니하다 할 수 있다. 그렇지만 KDE, GNOME 등의 데스크탑 환경들이 지속적으로 발전하여 사용성과 안정성이 꽤 높아진데다가 리눅스 데스크탑용 소프트웨어의 수가 지속적으로 늘고 있으며, SteamOS의 등장으로 리눅스에 게임도 많이 포팅되고 있다. 리눅스를 데스크탑에서 사용하기에는 지금만큼 좋은 때가 없는 셈.

특징

오픈 소스

리눅스 커널은 GPL v2 라이센스 하에 소스 코드가 공개되어 있다. 소스 공개는 많은 잉여개발자들의 참여를 가능케 했고, 이는 리눅스가 지금의 위치까지 성장하게 된 큰 힘이 되었다.

배포판

리눅스 커널과 시스템 어플리케이션(init, systemd, udev, syslogd, etc..), 그 외 일반 유저 어플리케이션들을 묶어서 배포하는 형태.

대표적인 배포판들

  • 레드햇 계열
  • 데비안 계열
  • 기타
    • Gentoo (GNU/Linux 혹은 µClibc/Linux 두 설정 중 하나로 시스템 구성이 가능하다.)
    • 오픈수세
    • 안드로이드 (Android/Linux - 리눅스 커널을 쓰지만, 일반적 GNU 라이브러리를 사용하지 않아 GNU/Linux 와는 ABI 가 호환되지 않는다.)


주석

  1. 나중에 리누스가 BSD가 왜 실패했느냐는 질문에 "이름에 쓸데없이 약자를 써서 그렇다."라고 대답한 적이 있는 적이 생각하면 참...