안드로이드 운영체제(OS)를 둘러싸고 새로운 전쟁의 서막이 열렸다.
안드로이드가 오픈JDK 라이브러리를 사용하게 되면서, 안드로이드는 더 개방성을 갖게 됐다. 구글과 오라클의 싸움은 이제 구글, 오라클, 마이크로소프트(MS) 등의 삼각 구도로 전이될 전망이다.
지난달 구글이 안드로이드N 버전부터 자바 호환 라이브러리를 오픈JDK 라이브러리로 교체한다는 소식이 전해졌다. 오라클과 구글 사이에 진행중인 자바 특허 및 API 저작권 침해 소송 영향을 받은 것으로 해석된다.(☞관련기사)
구글은 현재 오라클과 자바 특허 및 API 저작권 침해를 둘러싸고 5년에 걸쳐 소송 중이다. 현재까지 구글이 안드로이드 운영체제에 자바와 호환되는 라이브러리를 자체 개발했는데, 이 라이브러리가 오라클의 자바API의 저작권을 침해했다는 판결이 나왔다. 이후 오라클은 구글에 자바API 저작권 침해에 따른 손해배상을 청구하겠다는 입장을 밝혔다.
구글은 자체 개발한 자바 호환 라이브러리 대신 오픈JDK 라이브러리를 사용하기로 했다. 기존 안드로이드를 유지할 경우 오라클과 소송에서 법적 책임을 100% 면키 어렵다고 판단한 것으로 해석된다.
오픈JDK는 오라클의 상용판 자바 라이브러리 '자바개발도구(JDK)'의 오픈소스 라이선스 버전이다. 오라클 JDK와 오픈JDK는 라이선스 종류가 다를 뿐, 그 코드는 거의 같다. 오라클은 JDK를 만들 때 오픈JDK에 없는 기능을 더하거나 있는 기능의 코드를 재작성하는 식으로 개선한다. 오픈소스 버전이지만 저작권을 오라클이 갖는다.
모질라의 전 CTO인 안드레아스 갈은 블로그를 통해 “거대한 변화가 안드로이드와 안드로이드 생태계에 강한 영향을 줄 것”이라고 밝혔다.(☞블로그 바로가기)
그는 오픈JDK를 사용하기로 한 구글에 대해 ‘오라클의 햄스터 쳇바퀴에 들어갔다’고 표현했다. 라이선스가 핵심 이유다.
구글은 안드로이드 개발 초기 썬의 표준 자바 대신 하모니(harmony) 표준 라이브러리를 변형해 사용했다. 하모니는 아파치소프트웨어재단에서 관리하는 변형 자바 라이브러리였다. 완성도나 적학성 측면에서 썬의 자바보다 낫지 않았음에도 하모니를 택한 건 라이선스에서 더 자율성을 확보하기 위해서였다.
하모니는 아파치 라이선스기 때문에, 변경한 소스 코드를 외부에 공개하지 않아도 된다.
오픈JDK는 오픈소스 라이선스로 GPL2를 따른다. GPL2는 소스 코드를 외부에 완전히 공개해야 한다. 전체 SW의 일부분만 GPL2 기반 코드를 사용해도 전체 코드를 공개해야 한다.
자바 호환 라이브러리 외에도 안드로이드 구성요소는 라이선스 문제 때문에 변종을 사용한 게 많다. 안드로이드 1.0은 표준 C 라이브러리로 GNU C라이브러리 대신 바이오닉(bionic)을 사용했다. 바이오닉의 라이선스는 아파치2고, GNU C 라이브러리의 라이선스는 LGPL이다. 구글이 안드로이드에 대한 통제력 유지를 위해 GNU 라이선스를 회피해온 사례로 볼 수 있다.
구글은 그동안 안드로이드를 오픈소스라 포장해왔지만, 완전한 의미의 오픈소스로 보기 어려웠다. 안드로이드오픈소스프로젝트(AOSP)만 소스코드를 공개하고, 구글이 제조사에 제공하는 안드로이드는 코드를 공개하지 않는다. 구글이 독점적으로 안드로이드 로드맵을 주도하며, 커뮤니티가 구글 안드로이드에 영향력을 행사하기 힘들다.
GPL인 오픈JDK를 사용하게 되면 전과 다른 양상을 예상할 수 있다. 오라클의 안드로이드 생태계 통제가 가능해질 수도 있다.
안드레아스 갈은 오라클이 안드로이드에 자바의 여러 요소를 사용하도록 구글을 압박할 수 있다고 전망했다. 자바의 UI 프레임워크인 ‘스윙’을 안드로이드 UI 프레임워크로 사용하도록 하는 식이다. 오라클이 오픈JDK의 개발 로드맵을 쥐는 한 구글의 안드로이드 생태계에 영향력을 뻗치게 됐다는 게 그의 견해다.
일단 현존하는 수백만개의 안드로이드 앱이 오픈JDK에 맞는 지 검증되고, 최적화될 필요가 있다. 안드로이드N 개발에서 호환성 문제와 상당한 일정 지연도 예상할 수 있다. 안드로이드N에서 전과 다른 양상의 성능 문제가 떠오를 것이라고 안드레아스 갈은 전망했다.
MS는 오라클과 별개로 어부지리를 얻을 수 있다. MS는 호시탐탐 안드로이드 생태계를 노려왔다. AOSP의 변종을 개발하는 ‘사이아노젠(cyanogen)’을 배후에서 지원한 게 그 일환이다.(☞관련기사)
MS는 언제나 구글에 한발 뒤처질 수밖에 없는 상황이다.
구글이 안드로이드 소스코드를 공개하면 MS는 원조와 거의 같은 변종 안드로이드를 자체적으로 만들 수 있게 된다. MS는 안드로이드 기기 제조사를 통해 안드로이드 특허료를 받고 있는데, 여기에 휴대폰 제조사를 우군으로 끌어들일 또 다른 무기를 확보하는 것이다.
2011년 오라클과 구글의 자바 소송 과정에서 공개된 구글 내부 슬라이드 자료는 구글의 안드로이드 개발 원칙을 담았다.
이 자료에서 앤디 루빈은 자신의 안드로이드 조직에 “개방형으로 개발하지 마라, 대신 소스코드를 혁신이완성된 후에 사용할 수 있게 하라”고 적었다. 이 원칙 때문에 MS는 안드로이드의 최신 기능을 뒤늦게 따라갈 수 밖에 없다.
MS는 또한 오라클과 긴밀한 파트너십을 맺고 있다. MS와 오라클은 2013년 포괄적인 협력을 약속했는데, 안드로이드로 협력의 범위를 확대할 수 있다. MS가 구글을 견제하려 오라클의 자바 소송을 후방에서 지원하는 연합군 중 하나란 추정도 많다.
작년 4월 MS는 사이아노젠과 정식 파트너십을 맺었다. 사이아노젠의 커트 맥마스터 CEO는 “구글로부터 안드로이드를 빼앗으려 시도하고 있다”고 목표를 밝혔었다.
사이아노젠과 MS는 최근 MS 코타나 기능을 긴밀하게 통합한 업데이트를 선보였다. 구글이 안드로이드용 코타나의 핵심 기능을 제한한 것과 달리 사이아노젠의 코타나는 윈도10 버전과 유사하다.
MS는 이처럼 안드로이드에서 구글의 서비스를 걷어내고 자신의 서비스를 집어넣으려 한다. 구글플레이 대신 별도의 앱스토어를, G메일 대신 아웃룩을, 구글드라이브 대신 원드라이브를 넣는 식이다. 이미 안드로이드 앱 마켓은 만들어졌다.
관련기사
- 구글,오픈JDK 선택…'자바戰' 판도바꿀까2016.01.11
- "구글, 오라클 호환 자바API 안 쓴다"2016.01.11
- 변종 안드로이드에 MS 코타나 통합된다2016.01.11
- 사이아노젠, MS 업고 脫구글 안드로이드 진영 확대2016.01.11
MS는 안드로이드 생태계에서 구글의 영향력을 지우고, 모바일 사업의 도약 지점을 만들 수 있다. 이는 2014년 노키아에서 내놨던 AOSP 휴대폰 ’노키아X’로 가능성이 확인됐다. 윈도10을 모바일 OS 시장에 직접 진입시키는 것과 별개로 안드로이드 시장 틈새를 공략하는 것이다.
오라클은 구글과 자바 소송을 통해 모바일 생태계에 막강한 영향력을 확보했다. MS는 그 덕에 안드로이드 중심의 모바일 생태계로 파고들 틈을 더 넓혔다. 안드로이드 생태계를 둘러싼 새 전쟁이 시작되려 한다.