안녕하세요? LG CNS 대학생 기자단 이승균입니다.
오픈소스(Open Source)라는 말을 들어보신 적 있나요? 무료로 소프트웨어를 공급하고 지원하는 오픈소스는 소프트웨어 시장에서 블루오션으로 떠오르고 있습니다. 모바일, 빅데이터, 클라우드는 물론 사물인터넷(IoT)까지 사용하지 않는 분야를 찾기 힘들 정도입니다.
오픈소스 소프트웨어 기업 레드햇(redhat)의 CEO 짐 화이트허스트(Jim Whitehurst)는 2014년 10월 한국 방문 당시 오픈소스의 중요성을 강조하기도 했는데요. 오늘은 최근 가장 뜨거운 IT 분야의 키워드인 오픈소스의 활용사례와 미래 전망에 대해 살펴 보도록 하겠습니다.
오픈소스(Open Source)의 개념과 확장 배경
먼저 오픈소스의 사전적 의미를 알아볼까요? 위키피디아의 따르면 오픈소스는 “소프트웨어 혹은 하드웨어의 제작자의 권리를 지키면서 소스코드를 누구나 열람할 수 있도록 한 소프트웨어 혹은 오픈소스 라이선스에 준하는 모든 통칭을 일컫는다”라고 정의합니다. 즉, 소프트웨어의 소스코드를 무상으로 공개해 이를 자유롭게 사용, 복제, 수정, 재배포할 수 있도록 하는 것을 의미합니다.
이러한 정의에는 단순히 무료라는 것 이상의 의미가 포함되어 있습니다. 오픈소스를 자유롭게 활용하기 위해서는 오픈소스 정의(Open Source Definition, OSD)라는 규칙을 준수해야 하는데요. 이 규칙의 내용은 1) 자유로운 재배포 2) 소스코드 포함 3) 동일한 용어의 사용 4) 저작자의 소스코드 원형유지 5) 개인이나 단체에 대한 차별금지 6) 사용분야에 대한 차별금지 7) 라이선스의 배포 8) 특정 제품에만 유효한 사용 허가의 금지 9) 다른 소프트웨어에 대한 제한 금지 10) 기술 중립적인 라이선스라는 10가지 항목으로 구성되어 있습니다.
그런데 조금 이상하지 않나요? 기업은 왜 자신의 자산인 소스코드를 공개하는 것일까요? 오픈소스의 장단점을 살펴보면 그 이유를 알 수 있습니다. 오픈소스의 가장 큰 특징은 역시 무료라는 점이죠. 이렇게 공개된 코드는 상대적으로 보안 수준이 낮을 수밖에 없습니다. 그리고 영리 목적으로 개발된 것이 아니므로 지속적인 로드맵을 기대하기 어렵습니다.
반면 많은 사람이 이용하고 자유롭게 수정할 수 있기 때문에 버그 수정이 빠르게 진행됩니다. 또한, 여러 사람의 의견을 수렴하면서 저렴한 서비스를 제공할 수 있습니다. 점차 상용화되고 있는 소프트웨어 시장에서 오픈소스의 향방을 바꾸게 한 결정적 요인이라고 할 수 있죠.
시장에서 우위를 차지하고 있는 오픈소스 소프트웨어
대표적인 오픈소스 몇 가지를 살펴보겠습니다.
1) 리눅스(Linux)
리눅스(Linux)는 컴퓨터 운영 체제의 하나인데요. 커널(kernel)이라고도 불리는 대표적인 오픈소스입니다. 특히, 리눅스 출시 당시 공개한 배포 정책은 현재의 오픈소스의 확장성을 가져온 가장 큰 배경이라 할 수 있습니다.
현재는 구글, 테슬라는 물론 LG, 삼성 등 많은 세계적 기업이 리눅스 기반의 OS를 사용하고 있습니다. 한 예로 CES 2015에서 파나소닉이 공개한 UHD TV의 OS 역시 리눅스 커널 방식을 기반으로 하죠. LG의 스마트워치는 리눅스 기반의 팜(Palm) OS를 사용했고, 테슬라는 유니티(Unity)를 사용하여 리눅스를 배포하는 우분투(ubuntu)를 사용하였습니다. 사물인터넷의 구현에 리눅스가 큰 역할을 했음을 알 수 있습니다.
IDC에 따르면 리눅스를 기반으로 하는 생태계는 2012년에 35조 원 규모라고 밝혔는데요. 2016년까지 약 60조 원 대의 시장 형성을 예상한 만큼 그 발전은 무궁무진하다고 할 수 있습니다.
2) 안드로이드(Android)
안드로이드(Android)는 구글과 오픈 핸드셋 얼라이언스(Open Handset Alliance)가 개발한 대표적인 모바일용 오픈소스 운영체제입니다. 출시 당시 안드로이드 OS의 차별화 포인트는 바로 개방형 플랫폼이었습니다. 어느 스마트폰 제조사든 안드로이드 OS를 자사 휴대폰에 적용할 수 있도록 한 것이죠. 이는 향후 안드로이드 확장의 가장 큰 원동력이 되었습니다.
공개된 안드로이드의 소스코드를 기반으로 개발자들은 기존의 안드로이드 서비스를 확장하였는데요. 이를 통해 소비자에게 안드로이드의 장점을 효과적으로 알릴 수 있는 계기가 되었습니다.
한 가지 예를 들어볼까요? 아이폰에서는 mp4 방식의 파일만 영상으로 재생이 되는 반면 안드로이드에서는 wmv, asf, avi 등의 확장자를 가진 파일도 재생이 되는데요. 이것이 바로 오픈소스를 기반으로 사용자 니즈에 기반을 둔 서비스를 제공한 대표적인 사례입니다. 특히, 안드로이드는 2013년 11월 81%의 점유율로 애플사의 iOS를 제치고 모바일 운영체제에서 우위를 점하고 있으며, 그 증가세는 가속화될 것으로 예상합니다.
3) 파이어폭스(Firefox)
마지막으로는 웹 브라우저 중에 대표적인 오픈소스 파이어폭스(Firefox)를 소개해 드리겠습니다. 파이어폭스는 모질라 재단이 2003년 공개한 웹 브라우저입니다. 당시에는 인터넷 익스플로러가 80%가 넘는 압도적 점유율을 차지하고 있었는데요. 2009년 파이어폭스는 인터넷 익스플로러의 점유율을 뛰어넘었고, 46% 이상의 시장점유율을 차지하게 되었습니다. 이러한 판도 변화의 이유도 바로 파이어폭스가 오픈소스를 기반을 두고 있다는 데 있습니다.
파이어폭스가 지원하는 대표적인 오픈소스 개발도구인 파이어버그는 HTML, CSS, JS(자바스크립트)를 변경과 모니터링을 도와주는 무료 플러그인입니다. 저 역시 파이어버그를 직접 사용해본 적이 있는데요. 실시간으로 CSS 및 html 코드를 수정할 수 있어 디버깅에 큰 도움이 되었습니다. 아쉽게도 파이어폭스의 현재 점유율은 크롬에 밀리고 있습니다. 하지만 파이어폭스 OS를 출시하는 등 웹 브라우저 외의 다양한 방면으로 도전을 하고 있습니다.
향후 생존을 위한 소프트웨어의 개발방향은?
앞서 소개드린 것처럼 글로벌 기업의 오픈소스 활용은 이제 대세라고 해도 과언이 아닙니다. 반면 국내 상황은 이를 따라가지 못하고 있는데요. 최근에는 다양한 프로젝트가 추진되고 있고, 콘퍼런스도 다양하게 개최되고 있습니다. 하지만 여전히 부족하다는 느낌은 지울 수 없습니다. 이미 오픈소스 시장에 뛰어든 많은 기업이 주로 프로젝트형 개발도구에 참여하여 자체 소프트웨어 경쟁력 향상에 몰두하고 있기 때문입니다.
국내의 공개 소프트웨어 생태계는 대부분 소규모의 프로젝트와 공개 소프트웨어 업체들이 주도하는 시장구조로 되어 있습니다. 따라서 국내의 공개 소프트웨어 경쟁력을 높이기 위해서는 좀 더 개방적이고 구심점이 되는 오픈소스를 기준으로 서로 간의 소통이 필요합니다.
다행인 것은 LG와 삼성 등 국내의 글로벌 기업 역시 소프트웨어 오픈소스 전문가를 영입하기 위해 치열한 경쟁을 벌이고 있다는 사실입니다. LG CNS 역시 2012년부터 오픈소스 전담조직을 신설해 관련 표준과 가이드를 수립하였습니다. 이를 바탕으로 오픈소스 솔루션의 원활한 활용하는 기술지원체계 및 검증작업을 진행하고 있습니다.
이상 함께 하는 공유 개발인 오프소스에 대해서 알아봤는데요. 오픈소스는 더 많은 개발자와의 협력을 통해서 경쟁력을 높이는 시스템입니다. 따라서 열린 공간에서 다양한 사람들과의 교류를 통해서 만들어가는 오프소스를 계속 해서 확대해 나가야 할 것입니다.