리눅스(Linux)는 어떻게 만들어졌나?


리눅스는 리누스 베네딕트 토발즈가 개발한 운영체제입니다.


핀란드의 헬싱키 대학에 다니던 리누스 베네딕트 토발즈(Linus Benedict Torvalds)라는 학생이 있었습니다. 당시 리누스는 수업용 운영체제인 미닉스(minix)를 이용하여 운영체제에 대해 공부하던 중이었습니다. 문득 그는 386에서도 돌아갈 수 있는 유닉스와 운영체제를 만들면 좋겠다는 생각을 가집니다. 199173, 리누스는 미닉스에 대해 토론하는 뉴스그룹인 comp.os.minix에 자신의 생각을 밝히면서 도움을 요청합니다.

뉴스그룹의 구성원들은 리누스의 생각에 흥미를 느꼈고 많은 사람들이 리누스를 도와서 새로운 운영체제의 개발에 참여하게 됩니다. 뉴스그룹은 인터넷을 통해서 자신이 관심을 가지는 분야에 대해서 토론하는 일종의 동아리 성격을 지니고 있습니다. 따라서 전 세계의 많은 지식인들이 리누스의 계획에 도움을 줍니다. 리누스와 전 세계의 인터넷 사용자는 서로의 의견과 기술을 주고받으면서 점차 새로운 운영체제 프로그램을 만들어가기 시작합니다.

리눅스는 현재 사용 층이 크게 늘고 있는 운영체제입니다.


마침내 1991105일에 그 결과물이 세상에 발표됩니다. '누구나 자유롭게 사용가능한 386컴퓨터에서 돌아가는 미닉스와 같은 커널 소스'라는 제목으로 그동안 연구했던 새로운 운영체제의 커널을 발표합니다.

이렇게 발표한 커널 소스가 요즘 리눅스의 시조가 되는 리눅스 0.02(=버전)입니다. 리눅스는 이처럼 한 대학색의 단순한 호기심에서 시작되었습니다. 그러나 많은 사람의 손을 거치면서 현재는 가장 주목받는 운영체제로 급속하게 전 세계 컴퓨터 사용자에게 보급되고 있습니다.

리눅스의 오픈소스 정신과 GNU


리눅스는 소스 파일이 공개된 오픈 소스 운영체제입니다.


리눅스의 아이디어는 리누스가 제공했습니다. 또한 이후로도 리누스에 의해서 계속 다듬어져 좀 더 좋은 성능의 운영체제로 개선되었습니다. 그러나 리눅스는 처음부터 리누스 토발즈 혼자서 만든 것이 아닙니다. 뉴스그룹의 구성원들과 전 세계의 네티즌(=PC통신 또는 인터넷 사용자)에 의하여 만들어진 것입니다. 많은 네티즌들이 리누스에게 아이디어와 기술을 제공했으며, 발표된 리눅스의 커널을 보고 문제점을 지적하고 이를 개선한 소스 파일을 보내왔습니다.

소스 또는 소스 파일은 프로그램을 만들기 위하여 꼭 필요한 프로그램의 구성내용입니다. 사람들은 소스 파일을 만든 후에 이를 컴퓨터 언어 프로그램을 이용해 실질적인 프로그램으로 만듭니다. 영화로 따지면 시나리오에 해당합니다. 건축에서는 설계도면에 해당하며, 전기전자 쪽에서는 제품의 회로도 설계도에 해당하는 것입니다. 영화 시나리오를 보고 같은 그 내용 그대로 영화를 만들 수도 있고 좀 더 나은 시나리오로 개작할 수도 있습니다. 건축설계도, 제품 설계도나 회로도만 있으며 누구나 집을 만들거나 첨단 제품을 똑 같이 만들 수 있습니다. 또는 설계도를 변형시켜 좀 더 개선된 집이나 제품을 만들 수도 있습니다. 이처럼 소스 파일은 프로그램을 만드는데 가장 중요한 요소입니다. 모든 프로그램은 소스 파일을 이용해서 만듭니다.

리눅스는 처음부터 커널 부분의 소스 파일을 공개했습니다. 따라서 전 세계 컴퓨터 사용자는 누구나 이 소스 파일을 가져다가 사용할 수 있습니다. 많은 사람들이 리눅스의 소스 파일을 이용해 사용해보고 문제점을 보완하거나 좀 더 기능을 개선시켰습니다. 그리고 이렇게 개선된 소스 파일은 다시 전 세계 네티즌에게 공개되었습니다. 그리고 개선된 소스 파일을 가져가서 사용해본 사용자가 또 다시 개선된 소스 파일을 공개하고. 이런 식으로 리눅스는 계속해서 성능을 개선시켜 나갑니다. 그리고 현재에까지 이르렀습니다.

오픈 소스 정신은 좀더 나은 기술 발전을 위한 자세에서 출발합니다.


이와 같이 프로그램의 가장 핵심이자 재산이라 할 수 있는 소스를 공개하는 정신을 오픈 소스(OpenSource) 정신이라고 합니다. 오픈소스 정신은 자신이 가진 기술을 공개하여 좀 더 나은 기술로 발전시키자는 정신을 밑바탕으로 합니다.

자신이 가진 기술을 독점적으로 이용하여 부를 창출하고자 하는 상업적 정신과는 차별되는 정신입니다. 상업적인 회사는 자신이 가진 프로그램의 소스를 공개하지 않습니다. 자신이 몇 년 동안 엄청난 돈을 들여 개발한 프로그램 기술을 공개할 경우 다른 업체에서 똑 같은 제품을 만들어 팔 수 있기 때문입니다.

리눅스가 다른 운영체제와 다른 점은 바로 이 점입니다. 소스 파일이 공개된 운영체제라는 점입니다. 누구라도 가져다가 쓸 수 있고 누구라도 성능을 개선시킬 수 있습니다. 이 점이 리눅스의 가장 큰 장점입니다.

많은 사용자에 의해 리눅스의 부족한 부분이 채워지고 있습니다.


리눅스는 유닉스와 윈도우처럼 상업적으로 판매되는 운영체제에 비하면 많은 면에서 부족합니다. 발표 초기는 물론 아직도 부족한 점이 많습니다. 그러나 이 부족한 점은 현재 급속도로 빠르게 채워지고 있습니다. 많은 사용자들에 의해 부족한 부분이 보완되면서 윈도우에 버금가는 막강한 성능의 운영체제로 태어나고 있습니다. 전 세계 프로그래머가 리눅스의 성능을 개선시키고 있기 때문입니다. 특히 최근 몇 년 동안 눈부신 발전을 이룩했습니다. 그래서 현재 전 세계를 장악하고 있는 윈도우의 강력한 경쟁상대로 떠오르고 있는 것입니다.

한 가지 알아두어야 할 점은 오픈소스 정신은 무료나 공짜라는 개념과는 다르다는 점입니다. 오픈소스 정신을 잘못 이해하고 있는 사람들은 리눅스를 공짜 소프트웨어로 알고 있는데 리눅스는 공짜 소프트웨어가 아닙니다.

GNU는 오프 소스 정신을 실천하는 단체입니다.


오픈소스 정신은 GNU 정신을 바탕으로 하고 있습니다. GNU 정신이란 무엇인가? 인류문화의 공동 소유 정신을 상징하는 낱말입니다. GNU'Gnu is Not Unix'의 줄임말입니다. 번역하자면 'Gnu는 유닉스가 아니다'라는 뜻입니다. 도대체 무슨 소리일까? GNU를 처음 접하는 분이라면 잘 이해되지 않을 것입니다.

GNU는 해커의 대부이자 마지막 해커라고 부르는 리차드 스톨만에 의해 계획된 프로젝트이자 문화운동을 뜻하는 낱말입니다. 리차드 스톨만은 컴퓨터 분야의 모든 하드웨어와 소프트웨어가 몇몇 대기업에 종속되는 현상에 대해서 반대했습니다. 더 많은 사람들이 자유롭게 컴퓨터를 이용할 때 좀더 많은 문화적인 창작물이 생겨날 것이고 이는 좀더 나은 인류문화 발전에 기여할 것이라고 생각했습니다. 그러나 현실은 그렇지 않았습니다. 컴퓨터의 각 분야는 몇몇 대기업에 의해서 독점되었으며 그들 기업은 자신들이 가진 기술을 공개하지 않고 독점적으로 사용함으로써 상업적 이익만을 추구했습니다.

이런 현상은 여러 가지 문제를 발생시킵니다. 첫 번째는 프로그래머를 경쟁상대로 만듭니다. 서로 정보를 교류하면서 기술을 공유하고 좀더 나은 기술을 함께 개발하는 상대가 아니라 자신이 개발한 프로그램을 자신만이 소유하고 남이 절대로 알지 못하도록 꼭꼭 숨기는 현상을 낳습니다. 인류를 위해 좀 더 나은 프로그램을 만들기 위해 프로그램을 공유하려는 정신과는 완전히 반대됩니다. 결국 프로그램 작업을 새로운 문화 창조의 관점에서 보는 것이 아니라 돈벌이의 관점에서 바라보게 만듭니다.

이에 리차드 스톨만은 몇몇 뜻 있는 사람들과 함께 GNU 프로젝트를 결성합니다. 'Gnu는 유닉스가 아니다'라는 재귀 법을 이용한 이 낱말은 여러 가지 중의적인 뜻을 포함하고 있습니다.

비싼 유닉스에 대항할 수 있는 운영체제를 만들기 위해 GNU를 구성합니다.


이 낱말에서 사용한 유닉스는 무엇입니까? 앞서 말씀드린 바 있는 운영체제의 한 종류입니다. 유닉스라는 운영체제는 대형 컴퓨터에서 주로 사용되는 운영체제로 가격도 매우 비쌌습니다. 아무리 싸도 자동차 한 대 값은 되었으며 보통 집 한 채 가격에 해당하는 비싼 가격으로 팔렸습니다. 때문에 학생이나 가난한 사람들이 유닉스를 정식으로 구입해서 사용하는 일은 불가능한 일입니다. 그러나 당시 모든 컴퓨터는 유닉스를 기반으로 돌아가고 있었으며 학교에서는 유닉스를 기본적인 운영체제로 교육시키고 있었습니다. 그래서 리차드 스톨만은 상업적인 유닉스에 대항하는 말로써 'GNU는 유닉스가 아니다'라는 낱말을 사용한 것입니다. 자유 소프트웨어재단(Free Software Foundation)GNU 프로젝트에 동감하는 사람들이 모여서 만든 단체입니다. GNU 정신에 대해 좀 더 자세하게 알고 싶다면 자유 소프트웨어재단에서 만든 GNU GPL(General Public License) 등의 문서를 참고하기 바랍니다.

GNU 정신은 공짜가 아니라 자유로운 프로그램 배포를 뜻합니다.


이미 많은 사람들이 GNU 정신에 공감하고 GNU 프로젝트에 참여했습니다. GNU 정신에 공감하는 프로그래머는 자신이 만든 프로그램의 자유로운 배포를 승인합니다. 또한 대부분 소스를 공개합니다. 이때 프로그램의 '자유로운 배포'를 오해해서는 안 됩니다. 자유로운 배포란 공짜로 배포한다는 뜻이 아닙니다. GNU 프로그램은 공짜 프로그램만을 의미하지 않습니다. 프로그래머는 자신의 노력만큼 돈을 받을 권리가 있습니다. 따라서 GNU 프로그램이라 하더라도 유료로 판매될 수 있습니다. 다만 돈이 없는 사람들이 사용하는 것까지 막는 행위를 해서는 안 된다는 뜻입니다. 또한 다른 사람이 원래의 프로그램을 고쳐서 사용하는 것을 막아서는 안 된다는 뜻입니다.

다시 말해서 GNU 프로그램 또는 자유 소프트웨어란 사용자가 프로그램의 배포와 수정에 자유를 갖는 프로그램을 말하는 것일 뿐, 무료나 공짜 프로그램을 말하는 것은 아닙니다.

GNU 프로그램은 사용에 제한을 두지 않습니다.


따라서 프로그램에 복사 방지락(Lock)을 걸거나, 복제방지장치를 하거나, 암호화를 하거나, 사용에 제한을 두는 행위 등은 GNU 프로그램을 배포하는 사람들이 하지 않습니다. 유료 프로그램이라 하더라도 누구나 배포해 사용할 수 있으며, 수정할 수 있는 자유가 주어진 프로그램입니다.

리눅스 역시 GNU 프로그램에 속합니다. GNU 정신을 따르는 가장 대표적인 프로그램이라 할 수 있습니다. 따라서 누구나 자유롭게 배포, 수정할 수 있습니다. 또한 이미 공개된 소스 파일을 이용해 새로운 프로그램을 만들고 이를 유료로 판매할 수도 있습니다.
오픈소스 정신과 GNU 정신은 사람을 경쟁적으로 만들고 상업적으로 만들며, 폐쇄적으로 만드는 정책에 반대하는 정신입니다. 좀더 나은 인류문화의 발전을 위해 서로 협력하며, 우정을 나누는 관계를 유지하며, 지식을 공유하자는 정신입니다.

리눅스는 GNU 정신에 의거해 만들어지는 운영체제이고, 리눅스 사용자는 리눅서라고 부릅니다.


리눅스를 사용하는 사람들을 리눅서라고 합니다. 리눅서라면 리눅스에서 추구하는 오픈소스 정신을 잊지 말아야 합니다. 물론 대부분의 리눅서들이 이런 GNU 정신에 동참하고 있습니다. 때문에 리눅스용 프로그램 역시 대부분 GNU 프로그램으로 제공됩니다. 그리고 이로 인한 혜택은 다시 리눅서들에게 돌아갑니다. 리눅서들이 무료로 많은 종류의 리눅스 관련 프로그램을 사용할 수 있는 것은 GNU 정신 때문입니다. 그리고 앞으로도 이런 정신은 더욱 확산될 것이라고 생각합니다.

한 때 한국에서 이런 GNU와 리눅스의 정신을 망각한 일부 사람들에 의해 리눅스 상표권 분쟁이 일어난 적이 있습니다.
이 분쟁은 결국 법원 소송을 통해 컴퓨터 관련 분야에 대한 상표권 자체가 무효로 처리되는 상식적인 판결로 결말이 났지만 많은 리눅서들에게 씁쓸한 상처를 남겼습니다. 공개 정신에 의해 세계에 공개된 리눅스에 대해 독점적인 상표권을 주장하면서 모든 컴퓨터 책과 상품에 Linux라는 말을 사용하지 말라는 어처구니없는 주장을 한 한 개인 때문에 많은 사람들이 고생을 했던 사건으로 남게 되었습니다.

 

 

* 이 글은 빌려온 글입니다.


번호 제목 글쓴이 조회 날짜
1404 VMware Workstation 10.0.4 Full Build 2249910 12월에 11버젼 나온답니다. 1 보[boram]람 4156 2014.11.12
1403 WinToGo PE 만드는 방법 46 카리스마조 4140 2014.07.08
1402 참 멀해도 녹녹치 않는 리눅스.. 14 거지왕초 4098 2013.11.01
1401 (수정)복구용pe의 올바른 사용법. 1 file audacious 4091 2013.12.22
1400 USB PE 부팅 시간 mlc slc 6 file 광복로 4075 2014.07.16
1399 WinToGo+Enterprise PE 만드는 방법 38 file 카리스마조 4029 2014.07.09
1398 로엔님이 쓰신 인증에 관하여 49 file 카리스마조 4012 2014.07.11
1397 윈도우 PE 논란 정리하겠습니다. 69 컴퓨터매니아 3958 2014.08.17
1396 사람의 마음을 바꾸는 아홉 가지 방법 2 file 빨강모자 3799 2014.06.05
1395 PE 빌더로 PE만드는 강좌 4 카리스마조 3774 2014.03.24
1394 Scribus file audacious 3771 2014.06.21
1393 멋진 중년을 위한 7계명......^^ 11 언제나당당 3767 2014.07.28
1392 한줄 글귀... 3 file 초원의빛 3756 2014.07.02
1391 리눅스 PE 설문조사 안내 4 컴퓨터매니아 3726 2014.08.04
» 리눅스(Linux)는 어떻게 만들어졌나? 2 언제나당당 3724 2014.01.17
1389 리눅스를 배우면 좋은 이유. 11 컴퓨터매니아 3719 2013.10.30
1388 UltimatePE-EX-Driver.wim <== 잘 모르시는 분을 위하여 10 한방88 3704 2014.06.01
1387 놀이터에 가보세요 3 BlueShark 3695 2014.07.24
1386 [보안] 패스워드 무작위 대입 공격 방어를 위한 "fail2ban 설치 및 설정" 5 file 빨강모자 3679 2014.07.18
1385 구글-아도비 한글폰트 오픈소스 공개 2 김명숙 3652 2014.07.17

 빠른 글쓰기




   Copyright 2013-2023 LinuxForum