윈디하나의 누리사랑방. 이런 저런 얘기

글쓴시간
분류 기술,IT

공개SW? 공짜SW?

공개 소프트웨어(Open Software)와 공짜 소프트웨어(Free Software)는 엄연히 다른 말이다. 공개 소프트웨어란 소스가 공개(Open Source)되어있는 소프트웨어를 뜻하고 공짜 소프트웨어란 말 그대로 공짜로 사용할 수 있는 소프트웨어를 뜻한다.

소프트웨어에서 소스(Source)란 일종의 제품 설계도와 같다. 소스를 컴파일러를 이용해 컴파일 하면 실행 코드가 나온다. 이는 자동차 설계도(소스)를 가지고 공장에서 기계(컴파일러)를 이용해 작업(컴파일)하면 자동차(실행코드)가 나오는 것에 비유될 수 있다.

문제는... 소스가 공개되어있다고 해서 공짜로 쓸 수 있다는 것은 아니라는 것이다. 소프트웨어 특성상 원가가 없다, 복제가 자유롭다는 것 때문에 공개된 소스를 이용해 거의 0에 가까운 비용을 들여 실행코드를 만들 수 있기 때문에 공개소스소프트웨어는 대부분 공짜소프트웨어이다. 하지만 항상 그런건 아니다.

단지 소스만 공개되어있을 뿐이다. 그것이 쓸만한 소스이고 그것을 이용해서 제품을 만들려면 설계도에 대해 비용을 지불해야 하는 경우가 많다. 이게 공개 소프트웨어에 대한 올바른 이해다. [소스만 공개]되었다는 것에 유의해야 한다.

자, 그럼 소스를 왜 공개할까? 자칫하면 프로그래머들의 밥줄을 끊어놓을 수 있는 것 아니냐는 생각이 들지도 모르겠다. 하지만 이는 조금 잘못된 생각이다. 당신이 자동차 설계도를 얻었다고 해보자. 그것 가지고 당신은 자동차를 만들 수 있는가? 아니다. 우선 그 설계도를 이해하는 것 조차 쉽지 않은 일이다. 그럼 어떻게 해야할까? 그 설계도를 이해할 수 있는 사람을 고용해 자동차를 만드는 방법이 있다. 그렇다. 프로그래머 취직 더 잘된다. ㅎㅎ

소스가 공개되어있으니 그대로 만들면 타사와의 제품 차별성이 전혀 없어져 판매할 수가 없다. 살짝~ 바꿔야 한다. 소스를 가지고 조금 더 좋게, '나만의 제품'을 만들어서 제품 팔면 안될까? 하는 얌체같은 생각을 할 수가 있다. 이는 라이센스때문에 안된다. 대부분의 오픈 소스 제품은 GPL(GNU Public License)이라는 라이센스를 가지고 있다. 이 라이센스의 핵심은 'GPL라이센스를 따르는 오픈 소스 제품을 소스를 수정한 경우 수정된 소스를 공개해야 한다'는 조항이 있다. 그렇다. '나만의 제품'도 소스를 공개해야 한다.

그럼 GPL로 하면 돈이 안되겠네. 회사들은 다 망하는거 아냐? 하고 생각할 수 있겠다. 소스를 공개해놓고 제품 만들어 파는건 회사의 수익에 악영향을 끼칠것이라 생각하기 쉽기 때문이다. 하지만 이는 소프트웨어라는 특수한 환경에서는 통용되지 않는다.

실례로, 레드햇이라는 회사는 [리눅스]라는 제품의 소스를 수정해 만든 [레드햇 엔터프라이즈 리눅스 서버, 이하 RHELS]라는 제품을 판매하며, [리눅스]가 GPL을 따르기 때문에 당연히 저 제품도 소스가 공개되어있다. 그리고 이 공개된 소스를 가지고 센트오에스라는 곳에서 'CentOS'를 만들었다. 따라서 RHELS와 CentOS는 사실상 동일하다. 단지 RHES는 약 40만원에 판매되는 제품이고 CentOS는 무료라는 점이다. 그럼 레드햇이란 회사는 어떤가? 잘나가고 있다. 돈 잘~번다. 왜냐... 한가지때문이다. 바로 [지원]. 소프트웨어란 버그가 있게 마련이고, 그 버그는 치명적일 수 있다. 그리고 그에 대한 해결책을 급하게 필요로 할 때가 있다. 이런때 필요한 것이 레드햇 회사의 [지원]이다. 'CentOS'는 그런거 없다. 즉 회사에서는 40만원의 부담되지 않는(?)가격이라면 살만 한 것이다.

소프트웨어뿐만 아니라 하드웨어도 공개소스가 있다. 어차피 FEB(반도제 제조 공장)을 일반인들이 가지고 있는건 아니니 이거 공개한다고 무슨 소용이겠냐만 어쨌든 공개는 되어있다. 오픈 스팍(Open SPARC) 이라는 CPU가 그 좋은 예이다.

공개 소스 소프트웨어와 공짜 소프트웨어는 같은 말이 아니다.

----

GNU의 GPL 라이센스
http://www.gnu.org/copyleft/gpl.html

GNU의 GPL 라이센스 한글판(비공식) - 공식적으로 GPL은 번역하지 않습니다
http://korea.gnu.org/people/chsong/copyleft/gpl.ko.html

레드햇
http://www.redhat.com/

CentOS
http://www.centos.org/

오픈 스팍
http://opensparc.sunsource.net/nonav/index.html