다음 이전 차례

1. 커널

커널은 운영체제의 핵심입니다. 메모리에 상주하여 시스템 디바이스와 메모리, 프로세스를 관리하고, 입출력을 처리하는 등 유저의 다양한 요구에 바로 반응 합니다. Linux라는 이름도 커널에 붙여진 것입니다.

리눅스의 다른 프로그램처럼 커널도 소스 형태으로 배포됩니다. 커널 소스는 모 든 배포판에 들어있으며 ftp나 BBS유저그룹을 통해 다운받을 수 있습니다. 컴파일을 위한 환경은 잘 만들어진 몇 가지 스크립트를 이용하여 쉽게 설정할 수 있으며 커널 해킹을 위한 문서 또한 쉽게 구할 수 있습니다. 다른 부분과 마찬가지로 리눅스의 열린 정신이 커널을 빠르고 강하게 만듭니다.

커널 컴파일은 항상 심각하게 다루어지는 주제이지만 왜 컴파일을 굳이 하느냐 고 묻는 이들도 많습니다. 대개의 리눅서들이 두 세 가지 정도 이유를 말하는데, 일반적으로 커널 컴파일은 시스템 최적화의 한 수단 으로 쓰입니다. 시스템에 가장 적합한 작은 커널을 만들어 리눅스 박스의 성능 을 최대로 끌어올리는 것입니다. 또 한가지 이유는 새 커널을 생성해 빠르게 등 장하는 진보된 기능을 사용하거나 새로운 장치를 지원하는 것입니다.

그리고 리눅서는 기쁨을 얻습니다.

1.1 커널의 두 갈래

리누스(LinuS TorvaLdS)와 많은 해커들의 노력으로 커널은 매우 빠르게 진보하 고 있습니다. 그러나 빠른 성장, 기능 향상은 커널의수정과 새로운 기능을 더 하는 과정에서 문제가 발생하기도 합니다. 개발자들은 안정성과 발전을 위해 리 눅스 커널을 두 가지 버전으로 부릅니다.

새로운 기능들이 실험되는 개발과정의 커널을 개발버전(DeveLopmentaLverSio N)이라 부르며, 새로운 것에 열광적인 리눅서와 테스터, 개발자를 위한 버전입니 다. 개발버전은 많은 테스트와 패치과정을 거쳐 안정버전(StabLe verSion or productioN)으로 일반 사용자들에 배포됩니다.

커널의 버전번호는 2.0.36또는 2.1.35와 같이세 부분으로 구성되어있습니다. 처음의 숫자는 커다란 변화가 있을 때 바뀌는 주 버전 번호입니다. 리눅스 커널의 2가 도스의 7보다 하찮게 느껴집니까? 버전 번호를 올리는 것은 개발자 마음이지만 버전번호가 모든 성능을 나타내는 것은 절대 아닙니다. 가운데 숫자는 짝수일 때 안정버전을 뜻하고 홀수일 때 개발버전임을 알려 줍니다. 마지막 숫자는 패치 레벨을 나타내는 서브 넘버입니다.

1.2 커널 2.2

이 글을 쓰는 동안 최근 커널은 2.2.14 버전입니다. (이 글은 2.2.12 커널을 기초로 작성되었습니다.)


다음 이전 차례