#1 리눅스의 역사 간단하게 알아보기

HYUN·2021년 3월 5일
0
post-thumbnail

리눅스(LINUX)

리눅스는 서버에서 많이 사용되는 운영체제입니다. 서버라고 하면 간단하게 브라우저(클라이언트) 주소창에 특정한 주소를 입력(요청)하면 요청받은 데이터(보통은 HTML 파일)을 전달하는 컴퓨터를 의미합니다.

또한 C언어와 같은 컴파일이 필요한 프로그래밍 언어로 개발을 할 때에도 컴파일 시간을 많이 단축시킬 수 있기 때문에 많이 사용하며, 클라우드 컴퓨팅을 이용한 서버 환경에서도 대부분 리눅스 운영체제를 사용합니다.

리눅스 운영체제는 리누스 베네딕트 토르발스(Linus Benedict Torvalds)에 의해 개발되었는데 컴퓨터의 응답 시간을 최소화할 수 있는 다중 사용자 그리고 시분할 시스템을 지원하는 유닉스를 기반으로 개발 하였다고 합니다. 이러한 리눅스는 대표적인 오픈 소스의 운영체제이기도 합니다.


오픈 소스의 역사 | GNU (GNU's Not UNIX) 프로젝트

GNU 프로젝트(GNU project)는 1983년 9월 27일 유즈넷 net.unix-wizard 그룹을 통해 일반에 알려졌다. 스톨만은 첫 선언문에 이은 "GNU 선언문"을 비롯한 여러 글들을 통해서, "초기 전산 공동체에 지배적이었던, 협동 정신을 되돌리자"라고 주장했다. GNU 프로젝트는 누구나 자유롭게 "실행, 복사, 수정, 배포"할 수 있고, 누구도 그런 권리를 제한하면 안 된다는 사용 허가권(License) 아래 소프트웨어를 배포한다. 카피레프트로 불리는 이런 생각은 GPL(GNU 일반 공중 사용 허가서)에 나타나 있다. | 출처: 위키백과

오픈 소스를 이해하기 위해 GNU 프로젝트를 간단하게 이야기하자면 여러 회사에서 개발되던 유닉스 운영체제의 소스들은 공유되지 않는 것이 보통이였습니다. 그러나 리차드 스톨만은 이러한 문화에 반발 했고 1985년도에 GNU 선언문을 발표하여 기술은 공유를 통해서 더욱 발전할 수 있다는 상호협력적인 문화로 돌아갈 것을 주장했습니다. 이러한 선언문 발표와 동시에 GNU 프로젝트를 지원하기 위한 자유 소프트웨어 재단(FSF)를 설립하였고 동시에 GNU 공개 라이선스인 GPL이라는 규악을 제공하였습니다.

정리하자면 소스가 공유하지 않는 유닉스 운영체제를 대체할 수 있는 새로운 운영체제를 만들고자 하였고 이에 대한 소스는 모두 오픈한다는 말입니다. 그리고 이렇게 오픈된 소스들은 모든 사용자들이 실행, 연구, 공유, 수정할 수 있습니다. 다만 이렇게 만들어진 소프트웨어 또한 다른 사용자들에게 실행, 연구, 공유, 수정할 수 있는 자유를 부여하는 GPL라는 규약을 정했습니다.

GNU 일반 공중 사용 허가서(GNU General Public License, GNU GPL 또는 GPL)

이렇게 오픈 소스의 역사에 대해서 간단하게 알아보았습니다.


GNU Hurd (HIRD of Unix-Replacing Daemons | 유닉스를 대체하는 데몬들의 HIRD)

앞에서 유닉스 운영체제를 대처할 수 있는 운영체제를 만든다고 했는데요.

운영체제를 다시 한번 복습해보면 운영체제를 만들기 위해서 가장 먼저 커널을 개발해야 한다고 말했습니다. 이것을 GNU Hurd라고 이야기 하는데 운영체제에 필요한 것들을 간단하게 다시 살펴보자면 사용자가 운영체제의 기능을 요청하기 위한 셸(Shell) 그리고 응용 프로그램이 운영체제의 기능을 요청하기 위한 시스템 콜(System Call)과 각 프로그래밍 언어별로 사용할 수 있는 API 혹은 라이브러리 그리고 프로그래밍 언어를 기계어로 변환해주는 컴파일러 등을 유닉스를 기반으로 오픈 소스로 만들게 됩니다.

하지만 정작 GNU Hurd 즉, 가장 중요한 커널 개발이 지연되는 상황에 스톨만은 리눅스 커널을 개발한 위에서 얘기한 토르발스를 발견하게 되고 해당 커널 소스를 오픈해서 사용할 수 있는 GPL 라이센스를 권하며 이를 수락한 토르발스에 의해 GNU 프로젝트의 산출물과 리눅스 커널이 통합되어 개발되기 시작합니다.

profile
자바스크립트를 좋아합니다. | 이유를 알고 있는 것과 모르는 것의 차이는 분명하다.

0개의 댓글