꾸준한 개발자

계속적인 성장을 추구하는 개발자입니다. 꾸준함을 추구합니다.

계속 쓰는 개발 노트

시스템 프로그래밍

리눅스의 배경

gold_dragon 2021. 4. 27. 20:26

리눅스는 리누스 토발즈가 개발했습니다. 대학에 있는 UNIX 컴퓨터를 집에서 쓰고 싶다는 마음에 운영체제를 만들었습니다. 컴퓨터의 응답 시스템을 최소화해서 다중 사용자, 다중 작업을 지원하는 즉, 시분할 시스템과 멀티 태스킹을 지원하는 운영체제를 개발하였습니다.

GNU프로젝트

GNU란 Gnu is Not Unix의 줄임말입니다. 유닉스 운영체제를 여러 회사에서 각자 개발했으며, 소스를 공유하지 않았습니다. 이때 리차드 스톨만이라는 사람이 이러한 문화에 반발해서 초기 컴퓨터 개발 공동체의 상호협력적인 문화를 주장하며 1985년도에 GNU 선언문을 발표했습니다. 그러면서 GNU 프로젝트를 시작하게 되고 이 프로젝트를 지원하기 위해서 자유 소프트웨어 재단(FSF)를 설립하고 GNU 공개 라이선스(GPL)라는 규약을 제공했습니다.

GPL 라이선스

GPL 프로그램은 어떤 목적으로든 어떤 형태로든 사용할 수 있지만, 변경된 프로그램을 다시 배포하는 경우, 동일한 GPL 라이선스로 공개를 해야합니다. 소스 오픈을 장려하는 라이선스입니다.

GNU Hurd

GNU Hurd라는 운영체제 커널 개발을 시도합니다. 하지만 shell, api, 컴파일러 등 필요한 소프트웨어를 개발했지만 GNU Hurd 개발이 지연됩니다. 이때 리누스 토발즈가 리눅스 커널 소스를 오픈한 것을 발견하게 되고 GNU 프로젝트 산출물과 리눅스 커널이 통합 개발됩니다.