강좌
클라우드/리눅스에 관한 강좌입니다.
자격증 분류

리눅스마스터1급 : 리눅스의 철학

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

리눅스마스터1: 리눅스의 철학



1.2.1 리눅스의 철학

리눅스는 운영체제 소프트웨어이다.

 

 

 

 

리눅스는 유닉스에서 많은 아이디어를 얻어서 제작되었고 유닉스 시스템의 표준 인터페이스로 자리잡고 있는 POSIX 표준을 따르고 있으나, 진정한 자유 소프트웨어를 구현하기 위해 유닉스 소스코드 사용을 배제하고, 모든 소스를 새로 작성했다.

 

 

 

 

초기의 리눅스는 i386이상의 x86 CPU를 탑재한 PC에서 운영되는 것을 목표로 하였으나, 현재는 SPARC, MIPS, Alpha, PowerPC (“5.1.1. 하드웨어 연결CPU 부분을 참고)에서 동작하는 최고의 이식성을 자랑하는 운영체제가 되었다.

 

 

 

 

GNU GPL(General Public License)가 적용된 리눅스의 소스코드는, 자유롭게 어느 누구나 사용, 변경, 배포가 가능하다.

 

 

 

 

이런 이유에서 리눅스는 다양한 배포판이 존재하며 국내에서도 여러 종류의 리눅스 배포판이 개발되어 왔다.

 

 

 

 

특히 리눅스의 커널은 GNU GPL에 따라 배포되고 있고, 리눅스 운영체제의 기반이 되는 쉘, 컴파일러 등도 GNU GPL에 따라 배포되는 것들이다.

 

 

 

 

이렇게 GNU GPL에 따라 배포되는 소프트웨어를 자유 소프트웨어라고 한다.

 

 

 

 

리눅스 운영체제는 이러한 자유 소프트웨어 외에도 다수의 오픈소스 소프트웨어를 포함하고 있다.

 

 

 

 

오픈소스 소프트웨어는 자유 소프트웨어와 유사하게 소스코드를 공개하는 정책을 포함하는 라이선스를 채택한 소프트웨어이다.

 

 

 

 

 

 

자유 소프트웨어와 오픈소스 소프트웨어는 모두 소스코드가 공개될 뿐만 아니라, 소스코드의 복제, 개작, 배포 등이 모두 가능하도록 하고 있다.

 

 

 

 

따라서 리눅스 운영체제는 기본적으로 소스코드가 공개되고 그 개작과 배포가 자유롭다.

 

 

 

 

 

 

그렇지만, 리눅스에서 사용하는 소프트웨어가 모두 이러한 자유 소프트웨어나 오픈소스 소프트웨어라는 것은 아니다.

 

 

 

 

기업에서 리눅스상에서 사용할 수 있도록 판매하는 소프트웨어 중에는 소스코드가 공개되지 않는 독점 소프트웨어가 있을 수 있다.

 

 

 

 

 

또한, 리눅스 운영체제의 소프트웨어들은 기본적으로 누구라도 자유롭게 복제, 개작, 배포 등을 할 수 있도록 하고 있지만, 일단 해당 소프트웨어의 소스코드를 이용하여 새로운 소프트웨어를 개발하는 경우에는 해당 소프트웨어도 자유 소프트웨어나 오픈소스 소프트웨어로서 배포되어야 하는 제약이 있다.

 

 

 

 

이것은 리눅스 운영체제의 개발자들이 기술의 공유를 통해서 자유로운 소프트웨어의 개발과 기술의 발전을 추구한다는 것을 의미한다.

 

 

 

 

, 리눅스 운영체제는 무료를 추구하는 것도 아니고 저작권 체제에 반대하는 것도 아니라 소스코드의 자유로운 공유와 기술자들의 상호협력을 추구하는 것이다.

 

 

 

 

다음은 리차드 스톨만이 자유 소프트웨어의 15년을 돌아보며 작성한 글이다.

 

 

 

 

이 글을 통해 자유 소프트웨어(그리고 이와 관련한 오픈소스 소프트웨어)와 리눅스에 내재된 철학에 대해서 생각해 볼 수 있을 것이다.

 

 

 

 

 

자유 소프트웨어 15년의 역

: 리처드 스톨먼

 

자유 소프트웨어 운동과 GNU 프로젝트가 시작된 지 15년이 막 넘었습니다.

 

 

 

 

우리는 오랜 길을 걸어 왔습니다.

 

 

 

 

 

 

1984년 당시 독점 운영체제를 설치하지 않고서는 현대적인 컴퓨터를 쓰는 것이 불가능했기 때문에 사용자들은 제한적인 라이선스를 얻어야 했습니다.

 

 

 

 

동료 컴퓨터 사용자와 자유롭게 소프트웨어를 나누려는 사람은 아무도 없었고 자기의 필요에 맞게 소프트웨어를 바꿀 수도 없었습니다.

 

 

 

 

소프트웨어 소유자는 벽을 세워 우리를 갈라놓았습니다.

 

 

 

 

 

 

GNU 프로젝트는 그 모든 것을 바꾸기 위해 세워졌습니다.

 

 

 

 

GNU 프로젝트의 첫 번째 목표는 유닉스와 호환되고 이식성 높은 운영 체제를 100% 자유 소프트웨어로 개발하는 것이었습니다.

 

 

 

 

95%, 99.5%도 아닌 100% 자유입니다.

 

 

 

 

이는 사용자들이 자유롭게 전체 시스템을 다시 배포하고 운영체제의 일부를 자유롭게 바꾸고 기여할 수 있게 하기 위함입니다.

 

 

 

 

운영체제의 이름인 GNU`GNU's Not Unix'를 의미하는 재귀적 약어로 유닉스에 경의를 표하고 동시에 GNU가 다른 것임을 말하고자 했습니다.

 

 

 

 

기술적으로 GNU는 유닉스 같지만 유닉스와는 다릅니다.

 

 

 

 

GNU는 사용자에게 자유를 줍니다.

 

 

 

 

 

 

수년 동안 수많은 프로그래머가 이 운영체제를 개발했습니다.

 

 

 

 

자유 소프트웨어 재단과 자유 소프트웨어 회사에서 보수를 받은 사람도 있었지만 대부분은 자원자였습니다.

 

 

 

 

유명해진 사람도 있었지만 대부분은 자기 직업 내에서 자기 코드를 사용하거나 그 코드로 작업하는 다른 해커들에게 주로 알려져 있습니다.

 

 

 

 

모두가 함께 인간 사회를 위해 컴퓨터 네트워크의 잠재성을 해방시키는 것을 도왔습니다.

 

 

 

 

 

 

1991, 유닉스 호환 시스템에서 마지막으로 주요한 필수 구성 요소가 개발됐습니다.

 

 

 

 

바로 리눅스라는 것으로 리누스 토발즈가 만든 자유 커널입니다.

 

 

 

 

오늘날 GNU와 리눅스의 조합은 전 세계 수많은 사람들이 사용하고 있고 점점 대중적이 되어가고 있습니다.

 

 

 

 

이번 달에 우리는 GNU 그래픽 데스크탑인 GNOME 1.0을 발표했습니다.

 

 

 

 

GNOME 덕분에 GNU/리눅스 시스템이 다른 운영체제만큼 사용하기 쉬워지리라 희망합니다.

 

 

 

 

 

 

그러나 우리의 자유가 영원히 보장되는 것은 아닙니다.

 

 

 

 

세상은 가만히 있지 않고, 오늘 우리에게 자유가 있기 때문에 지금부터 5년 후에도 자유가 있을 것이라 장담할 수는 없습니다.

 

 

 

 

자유 소프트웨어는 어려운 도전과 위험에 직면해 있습니다.

 

 

 

 

처음에 자유를 얻기 위해 그랬던 것처럼 우리의 자유를 지키기 위해 결연히 노력해야 합니다.

 

 

 

 

한편으로는 운영체제는 그저 시작일 뿐입니다.

 

 

 

 

이제 우리는 사용자가 하고 싶어 하는 모든 종류의 일을 다룰 수 있는 자유 애플리케이션을 개발해야 합니다.

 

 

 

 

 

 

앞으로 발표할 칼럼에서 저는 자유 소프트웨어 공동체가 직면한 특정한 도전과 GNU/리눅스 운영체제에 영향을 미칠 새로운 상황 뿐 아니라 컴퓨터 사용자의 자유에 영향을 미칠 다른 문제에 대해 쓸 것입니다.

 

 

 

 

 

 

 

이하에서는 GNU 프로젝트와 자유 소프트웨어, GNU GPL 및 오픈소스 소프트웨어에 대해서 알아보도록 한다.

 

 

 

 

이 글들은 리차드 스톨만이 작성한 글의 번역문과 GNU Korea의 송창훈님의 글로서, GNU의 자유 소프트웨어에 대한 철학을 그대로 담아내고자 번역원문을 실었다.

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,034 명
  • 현재 강좌수 :  35,787 개
  • 현재 접속자 :  294 명