본문 바로가기
【Fundamental Tech】/Linux

리눅스 커널 3.2 와 복잡한 커널 트리 간단 정리 - linux-next, mainline, stable

반응형

* 원문출처: m.blog.naver.com/5bpa/130126341715

 

2.0 대에서 2.2 대로 올라갈 때 난리 소식을 들은 적이 있고,

2.2 대에서 2.4 대로 올라갈 때 난리 속에 나도 말려든 적이 있다. 

인터럽트 처리 방법이 달라져서, 그 때 당시 짜던 코드를 포팅하느라 진땀을 흘렸다. 

물론 다행히 그리 어렵지 않게 고칠 수 있어서 한숨 돌릴 수 있긴 했지만. 

그런 것에 익숙하다보니, 리눅스 커널이 3.0 이 된다는 것은 엄청난 breakthrough가 있지나 않을까 했다. 

그런데 리누스의 말처럼, 3.0에는 먼저 화끈한 것은 없었고, 

리눅스 커널 탄생 20주년을 맞이해서 3.0으로 버전업을 했다고.. ^^

자유로운 생각답다. 

 

그렇게 나는 나도 모르게 커널 3.0을 쓰고 있는 와중에... 

어느새 3.2 커널이 나올 채비를 하고 있단 뉴스를 들었다. 

이 때 다시 궁금증이 발동... 

예전 2.4 커널 시절에는 2.4는 stable, 2.5 는 development tree였다. 

그래서 일반적인 나 같은 사용자는 2.4 커널을 쓰면 되고, 

실험적인 기능이나 해커들은 2.5 커널을 가져와서 난리부르스를 칠 수 있었다.

그렇게 짝수는 안정커널, 홀수는 개발커널이었다. 

 

그런데 어느샌가 내가 커널에 관심을 끊은 이후, 

홀수 버전의 개발커널이 없어지고... 

소수 네째 자리를 가진 커널이 개발(?)커널이 되었단 소식을 들었다. 

예를 들어, 2.6.23.11 같이 2.6.23 커널인데, 2.6.24 커널로 올라가기 위해 11번의 패치가 진행된 개발 커널.. 

그런데 오늘 kernel.org에 들어가보니, 또 다른 세상이 펼쳐져 있다. ㅎㅎ 

 

 

안정 커널이 7개나 되고, 

mainline 커널이라는 게 생겼고, 

linux-next 라는 커널이 또 생겼다!

 

그래서 이게 어떻게 된 것인가 한참을 찾아봤는데... 

 

일단 mainline 커널이 실제 지금 한창 개발되고 있는 커널. 

vanila 커널이라고도 하고, 새로운 기능들이 추가되어서 쓸 수 있을만한 녀석이다. 

물론 버그는 많이 없어졌겠지만, 새로운 디바이스 드라이버를 쓰고 있다면 언젠간 한번 만나게 될 법한 커널이라고나 할까. 

 

linux-next 는 예전의 개발 커널로 보면 될 듯 하다. 

또는 daily snapshot 처럼 볼 수도 있을 것 같다. 

다음 리눅스 mainline 커널에 들어갈 패치들이 여기서 붙여보고 문제가 있나를 보는 것 같다. 

정말 커널 개발자들이 쓰는 공간이라... 나 같으면 절대 안 써볼 것 같은 커널이다. 

 

stable 커널은 새로운 기능이 충분히 확인될 때까지 안 넣고 그냥 오래오래 쓸 커널이라고 봐야 할 것 같다. 

특히 여러 개가 있다는 것이 웃긴데(?)... 

CentOS 같은 서버 리눅스 배포판의 경우 2.6.18 커널을 오래도록 쓰는데, 

2.6.18 커널이 아주 안정적이라고 소문이 났기 때문이다. 

그런데 새로운 디바이스가 나오고 새로운 기능도 나오는데, 이 녀석들을 2.6.18 커널에 패치하는 요상한 일이 생겼다. 

이런 일을 backport 라고 하는데, 이 때문에 지금 내가 쓰는 CentOS 5.3의 커널은 2.6.18-164.el5 다. 

 

이런 식으로 한 커널 버전을 유지하면서 꼭 필요한 기능이라던지 패치, 버그 픽스를 backporting하는 일이 

실제로 stable 커널에서 일어난다고 한다. 

여러 명이 각 stable 커널 버전을 붙들고 언제까지 backport하면서 유지보수하겠다고 하는 모양이다. 

 

실제로 위키피디아에 보면 아래와 같이 나온다. (출처:http://en.wikipedia.org/wiki/Linux_kernel#cite_note-84)

 

long-term stable release라는 녀석이 바로 위의 stable 이라고 봐야 할 것 같다. 

관건은 얼마나 오래동안 메인테이너가 저 버전을 붙들고 있을까 하는 것이 아닐까 싶다. 

 

반응형