본문 바로가기
컴퓨터공학기초 개념/시스템 프로그래밍

1. 리눅스의 배경

by devraphy 2021. 9. 3.

1. 리눅스의 특징 

- UNIX 계열의 OS

- 서버와 클라우트 컴퓨팅에서 많이 사용되는 OS

- 프로그래밍에도 유용한 OS (ANSI C의 C언어 표준을 사용)


2. 리눅스의 역사

a) 리눅스의 시작

▶ 리누스 토발즈 (리눅스 개발자)

   - 대학에 있는 UNIX 컴퓨터를 집에서도 사용하고 싶다는 개발동기

   - 다중 사용자, 다중 작업(시분할 시스템, 멀티 태스킹)을 지원하는 UNIX와 유사한 OS를 개발하기 시작  

b) GNU 프로젝트

▶ GNU(Gnu is Not UNIX)

   - UNIX 운영체제는 여러회사에서 각자 개발되었고 서로 소스를 공유하지 않았다.

▶ 리차트 스톨만
- 초기 개발공동체의 상호협력적인 문화로 돌아가자는 GNU 선언문을 발표
- 최초의 컴퓨터 애니악을 개발할 때에는, 여러 개발자들이 상호협력 하는 문화가 있었다.
- 인류가 만든 기술은 모두 인류 공동의 자산이라는 것

 

▶ 자유 소프트웨어 재단(FSF) 설립 및 GNU 공개 라이센스(GPL) 규약

   - 오픈소스 프로젝트를 지원하기 위한 재단(FSF)

   - 오픈소스를 자유롭게 수정 및 활용할 수 있다(GPL 규약)

   - GPL 규약이 붙은 오픈소스를 활용해 만든 프로젝트도 GPL 라이센스를 붙여야 한다는 규약

   - 궁극적으로 오픈소스를 장려하는 환경, 문화를 만듬

▶ GNU Hurd (https://www.gnu.org/software/hurd/)

   - UNIX를 대체할 오픈소스의 운영체제를 개발하기 시작

   - GNU Hurd라는 운영체제 커널을 개발

   - 운영체제 기본구성에 필요한 라이브러리, 컴파일러, 에디터, 쉘 등을 개발

 

 

c) GNU와 리눅스의 만남 

▶ GNU 프로젝트의 지연

   - 위의 웹사이트 링크를 보면 알 수 있듯이, GNU Hurd의 개발이 제대로 진행되지 않았다.

   - 리누스 토발즈의 리눅스 커널 오픈소스를 발견한다.

   - GNU의 프로젝트 산출물과 리눅스 커널이 통합 개발되기 시작한다. 

댓글