본문 바로가기

Home > 열린마당 > 공개SW 소식

공개SW 소식

미약한 취미에서 창대한 협업 프로젝트로 '리눅스의 어제와 오늘

OSS 게시글 작성 시각 2015-04-21 16:17:02 게시글 조회수 3301

2015년 04월 17일 (금)

ⓒ CIO Korea, Paul Rubens | CIO



대부분의 리눅스 커널 코드는 독자 여러분들의 생각처럼 개발되지 않는다. 이 문제가 중요한 이유를 좀더 자세히 설명하겠다. 


Credit: Thinkstock

독자 여러분들이 생각하는 리눅스란, 독립적인 프로그래머가 자신의 시간을 들여 개발하고 체제에 저항하며 단순히 자유를 원하는 운영체제인 ‘저항 코드’라는 인식이 강한가? 그렇다면, 다시 한 번 생각해 보길 바란다.

리눅스 커널은 리눅스 시스템에서 구동하는 소프트웨어의 가장 낮은 단계인 하드웨어 관리, 사용자 프로그램 운용, 보안과 전체 구성의 무결성 유지를 담당한다. 현재 급여를 받는 특정 기업 소속의 개발자들이 리눅스 개발을 수행하고 있다는 사실을 모르는 사람이 많다.

이런 개발자들 중 상당 수는 IBM, 인텔, 텍사스 인스트루먼트, 시스코 등 소프트웨어 및 하드웨어 대기업들로 구성된, ‘자신들이 소속된 회사’를 위해서 일하고 있다. 이는 지난 2월에 리눅스 커널 개발에 관한 리눅스재단의 보고서를 통해 공개됐다.

‘공짜’ 개발은 없다 
해당 보고서에 따르면 사실 전체 리눅스 커널 개발의 80%가 이런 대기업(때로는 소기업)들이 수고의 대가를 받는 개발자들에 의해 이뤄지고 있다.

이 보고서에서 리눅스 커널 개발 인력에 비용을 지불하지 않는 기업 중에는 마이크로소프트가 유일하다. 마이크로소프트의 상용 소프트웨어 모델은 한 때 오픈소스 부문에서 최고의 적으로 간주되었지만, 지금은 이 회사도 무료 코드를 받아들이고 있다.

이 보고서에서 언급한 또다른 IT대기업으로는 전직 중국인민군 장교 출신이 설립한 중국의 기술 기업 화웨이도 포함돼 있었다. 이것이 문제의 소지가 될 수 있다. 화웨이는 중국 정부와의 관련성을 부인하지만 미국, 영국, 호주 등의 일부 정부는 간첩 행위를 위해 사용할 수 있는 소프트웨어 백도어(Back Door)가 탑재되어 있을지도 모른다는 이유로 하드웨어의 특정 하드웨어 제품 구매를 금지하기도 했다.

리눅스재단의 보고서에 따르면, 리눅스 커널의 변경사항 중 약 1%를 화웨이가 고용한 개발자들이 작성하고 있다.

오픈소스의 개방성 유지
리눅스재단의 개발자 포럼 부사장인 아만다 맥퍼스는 오픈소스 소프트웨어의 핵심 검토와 면밀한 분석에 대한 개방성을 유지하는 것이라고 강조했다. 화웨이와 기타 기업들이 판매하는 여러 하드웨어 제품에서 구동하는 기업 소유 소프트웨어와는 다르다는 설명이다.

그녀는 "그 누구도 자기만의 패치를 제출할 수 없다. 보안이 우려되기는 하지만 패치는 유지보수자들을 통한 수 많은 코드 검토를 항상 거친다. 소스 코드를 제공하지 않는 폐쇄적인 시스템보다 훨씬 안전한 메커니즘이다"라고 말했다.

그것이 사실일 수는 있지만 최근 오픈소스 배쉬(Bash)와 OpenSSL 소프트웨어에서 발견된 심각한 하트블리드와 쉘쇽(Shellshock) 취약성으로 안전하지 못한 코드가 실수로 또는 의도적으로 오픈소스 제품에 유입되고 수 년 동안 감지되지 않을 수 있다는 사실을 입증했다.

리눅스 커널 개발자의 대부분은 고용주들에게 급여를 받는다는 점이 당시 헬싱키 대학교에 재학 중이던 리누스 토발즈가 1991년 8월 comp.os.minix에서 발표한 리눅스와는 다른 점이다. 당시 그는 "386(486) AT 클론을 위한 (취미며 gnu 처럼 전문적이지 않은) (무료) 운영체제를 개발하고 있다"고 말했다.

사실 리눅스 커널에 대한 학생과 기타 자원봉사자들의 기여도는 한 동안 꾸준한 감소세를 보이고 있다. 리눅스재단 보고서에 따르면 2012년에는 기여도가 14.6%였지만 지금은 11.8%에 불과하다.

맥퍼슨은 "이런 수치를 수집하면서 많은 사람들이 급여를 받는다는 사실에 놀랐고 이런 사실이 놀랍기는 일반 대중도 마찬가지일 것이다. 하지만 리눅스는 하나의 상업화된 기업이다"라고 밝혔다.

"즉 자원 봉사자가 지하실에서 개발하고 있다는 생각은 이제 현실과 다르다. 기업들이 각자의 이익을 이유로 기여하고 있다. 어쨌든 이는 긍정적인 현상이라고 생각한다. 그들은 리눅스를 지원하고 있지만 리눅스를 소유하거나 개발되는 방식을 지배할 수는 없다"고 그녀는 덧붙였다.

그녀에 따르면, 리눅스가 하나의 애플리케이션이 아니기 때문에 IT업체에 고용된 개발자들이 자신들의 회사에 필요에 맞는 기능들을 추가하지 않은 것이다. 하지만 커널은 훨씬 낮은 수준의 코드기 때문에 IT업체에 고용된 개발자들이 회사의 하드웨어 연결될 수 있도록 커널 드라이버를 제공하는 부분이 있을 수는 있다.

아마추어 상태를 벗어나다
그렇다면 리눅스 개발이 1991년 토발즈가 말했던 것처럼 ‘단순한 취미’에서 기업을 위해 일하는 전문적인 개발자의 직업으로 옮겨간 이유는 무엇일까?

한 가지 확실한 것은 인텔이나 텍사스 인스트루먼트 등의 하드웨어 제조 대기업들이 자사의 하드웨어를 위한 리눅스 드라이버를 확보하고 커널이 자사의 제품을 지원할 수 있도록 하는데 관심이 있다는 사실이다. 시간이 지나고 리눅스의 인기가 점차 높아지면서 이런 종류의 지원이 점차 중요하게 되었다.

하지만 맥퍼슨은 더 간단한 이유가 더 그럴 듯 하다고 생각했다. "커널 개발자 공급이 부족하기 때문에 이런 코드를 개발할 수 있는 능력을 입증하는 사람은 일자리를 쉽게 찾는 경향이 있다. 사실 일자리 제안을 거절하는 것이 더 어려울 것이다"고 이 보고서에서 밝혔다.

이 보고서는 맥퍼슨의 말을 인용해 리눅스를 ‘역사상 가장 협업적인 소프트웨어 프로젝트’라고 강조했다.

1,200여 개 기업에서 근무하는 1만 1,695명의 개발자들 덕분에 커널이 8~12주마다 주요 판올림을 통해 업데이트되고 있다. 각 판올림에는 1만 개 이상의 변경사항이 포함되어 있기 때문에 7시간에 한 번씩 커널에 변경사항이 적용된다는 엄청난 성과를 얻을 수 있다.

*Paul Rubens는 영국에 사는 테크놀로지 저널리스트다.



※ 본 내용은 한국IDG(주)(http://www.itworld.co.kr)의 저작권 동의에 의해 공유되고 있습니다.
Copyright ⓒITWORLD. 무단전재 및 재배포 금지


[원문출처 : http://www.ciokorea.com/news/24892]

맨 위로
맨 위로