38 lines
2.1 KiB
Markdown
38 lines
2.1 KiB
Markdown
---
|
|
id: "GNU 20260407"
|
|
created: "2026-04-07 14:17"
|
|
tags:
|
|
aliases:
|
|
---
|
|
## 💡 생각
|
|
이곳에 하나의 생각 또는 아이디어를 작성합니다.
|
|
|
|
---
|
|
## 📑 개념
|
|
**GNU(그누)** 는 리처드 스톨먼이 1983년에 시작한 **자유 소프트웨어 프로젝트**이자, 그 결과로 만들어진 **운영체제**의 이름입니다.
|
|
GNU라는 이름은 **GNU is Not Unix**(GNU는 유닉스가 아니다)의 약자로, 자기 자신을 이름 안에 포함해 정의하는 재귀적 약어입니다.
|
|
|
|
## 1. GNU 프로젝트의 목적
|
|
|
|
당시에는 소프트웨어 소스 코드를 기업이 독점하고 유료로 판매하는 것이 당연시되었습니다. 리처드 스톨먼은 이에 반대하며 **누구나 소프트웨어를 실행하고, 복제하고, 수정하고, 배포할 수 있는 자유**를 누려야 한다고 주장했습니다. 이를 실현하기 위해 완전히 자유로운 운영체제를 밑바닥부터 만드는 것이 프로젝트의 목표였습니다.
|
|
|
|
## 2. 주요 구성 요소
|
|
|
|
운영체제는 단순히 커널(알맹이)만 있다고 작동하지 않습니다. GNU 프로젝트는 운영체제에 필요한 거의 모든 도구를 직접 만들었습니다.
|
|
|
|
- **GCC (GNU Compiler Collection):** 프로그램을 만드는 컴파일러
|
|
|
|
- **Glibc:** 시스템 자원을 사용하기 위한 기본 라이브러리
|
|
|
|
- **Bash:** 사용자의 명령을 입력받는 셸
|
|
|
|
- **Emacs:** 강력한 기능을 가진 텍스트 에디터
|
|
|
|
|
|
이러한 도구들은 현재 리눅스 환경에서도 표준처럼 사용되고 있습니다.
|
|
|
|
## 3. GNU와 리눅스의 관계 (중요!)
|
|
|
|
GNU 프로젝트는 운영체제의 거의 모든 구성 요소를 완성했지만, 정작 시스템의 두뇌 역할을 하는 **커널(Hurd)** 개발이 늦어지고 있었습니다.
|
|
|
|
이때 1991년, 리누스 토르발스가 **리눅스 커널**을 공개했습니다. GNU 프로젝트가 만든 수많은 소프트웨어와 리눅스 커널이 결합하면서 비로소 완벽하게 작동하는 자유 운영체제가 탄생했습니다. 우리가 흔히 부르는 리눅스는 정확히 말하면 **GNU/리눅스**인 셈입니다. |