“이미 출시한 안드로이드 스마트폰에 올릴 최신 운영체제를 올리는 일은 사실 새 제품을 개발하는 거나 마찬가지라니까요.”
1년 마다 새로운 안드로이드 운영체제를 발표될 때마다 업그레이드를 준비해야만 하는 제조사들은 이 같은 하소연을 반복한다. 이런 하소연은 보는 입장에 따라 마치 제조사들이 업그레이드에 부정적인 뉘앙스로 읽힐 때도 있지만, 실제로 안드로이드 업그레이드의 근본적인 문제점을 압축한 말이기도 하다. 어차피 새로운 안드로이드 소스 코드가 공개되더라도 제조사는 이미 출시한 안드로이드 장치에 맞게 코드를 수정하고 시스템 호환성을 검토를 끝내야만 배포할 수 있기 때문이다.
이 전 과정을 거치는 기간을 따지면 실제로 배포될 때까지 적지 않은 시간과 비용을 써야 한다. 업그레이드 과정에서 걸리는 시간과 비용에 대해 제조사와 구글의 입장은 미묘하게 다르다. 제조사는 시간보다 비용 측면에서, 구글은 비용보다 새 운영체제의 업그레이드 기간에 더 관심을 보인다. 물론 둘다 서비스의 질과 깊이 관계된 문제라는 공통점은 있다.
일단 제조사는 비용을 이유로 운영체제 업그레이드를 쉽게 포기할 수는 없는 게 현실이다. 이는 제품과 연결되는 서비스의 질과 직결되는 문제라서다. 새로운 운영체제의 업그레이드에 대해 성능 개선과 새로운 기능을 경험하려는 이용자의 기대치가 높고, 이를 충족하는 것은 곧 해당 제품과 제조사에에 대한 신뢰로 연결되기에 쉽게 포기를 말하기 힘든 부분이다. 그나마 구글과 제조사들이 2011년부터 제품 출시 후 18개월 동안 운영체제 업그레이드에 대한 지원 정책을 세우고 제품마다 1~2번 정도의 운영체제 업그레이드로 제한하면서 그 부담을 조금은 덜게 된 것이 숨통을 틔운 정도다.
구글의 문제는 조금 다르다. 매번 새 운영체제가 나오더라도 업그레이드를 위한 준비 기간이 길어 실제 새로운 운영체제를 발표해도 그 이전의 운영체제를 대체하는 속도가 너무 느리다는 점이다. 구글에 따르면 지난 해 8월 22일에 공개한 안드로이드 7.0과 10월 2일 나온 안드로이드 7.1은 지난 11월 9일까지 신제품과 운영체제 업그레이드를 합쳐 각각 17.6%와 3%의 점유율을 차지한 것으로 확인됐는데, 이 운영체제들이 자리도 잡기 전에 안드로이드 8.0 오레오가 나온 까닭에 다시 업그레이드를 준비해야 하는 상황이다.
기존 버전으로 이전할 시간도 없이 새로운 운영체제가 나오면서 안드로이드 파편화는 더욱 심해지는 현상을 띄고 있다. 안드로이드 4.4 킷캣과 5.0 및 5.1 롤리팝, 6.0 마시멜로까지 합친 점유율이 72%에 이르는 점을 감안하면 안드로이드 업그레이드에 대한 부담을 줄이지 않고는 새 버전 출시에 따른 파편화 심화 현상을 막는 것은 불가능한 상황에 이른 것이다.
이에 구글은 파편화 자체를 없앨 수는 없겠지만, 업그레이드 지연으로 생기는 안드로이드의 피로감을 줄이는 방법에 대해 고민한 끝에 안드로이드 8.0 오레오를 업그레이드가 편한 구조로 변경하기로 했다. 제조사들이 새로운 버전의 안드로이드 운영체제를 좀더 쉽고 빠르게 업그레이드할 수 있도록 안드로이드 프레임워크 부분과 부품의 정삭 작동을 담당하는 낮은 레벨의 소프트웨어를 분리해 안드로이드를 부분적으로 모듈화한 것이다. 이것이 ‘프로젝트 트레블’이다.
프로젝트 트레블 이전 안드로이드 제품 제조사들은 프로세서를 비롯한 장치의 부품이 제대로 작동하는 하위 레벨 소프트웨어를 제조사에게 받아 이를 새로운 안드로이드 버전에 맞춰 최적화해야 했다. 마치 각 운영체제에 맞춰 부품 제조사가 하드웨어를 구동하는 드라이버와 연결할 수 있는 통로를 따로 만들어서 제공해야만 했다는 이야기다. 이 작업은 구글이 새로운 운영체제의 오픈 소스 코드를 게시한 이후 진행되기 때문에 칩셋 제조사의 수정을 거친 소프트웨어를 제조사에서 받아 안드로이드 소스 코드와 이용자 인터페이스 등을 합쳐 업데이트용 롬 파일을 만드는 과정까지 상당한 시간이 걸린다. 만약 부품 제조사의 지원이 늦거나 특정 제조사에게 먼저 최적화된 하위 소프트웨어를 제공하는 경우, 또는 소스 코드와 결합하는 동안 최적화가 늦어지면 이동통신사업자 테스트에서 발생한 문제까지 정비하는 것을 굳이 따지지 않아도 업그레이드 시기는 상당히 뒤로 미뤄질 수밖에 없다.
구글은 프로젝트 트레블에서 기존 부품 업체에서 제공하는 하위 레벨 소프트웨어와 안드로이드 프레임워크를 분리한다. 즉, 제조사가 기존의 하위레벨 소프트웨어를 안드로이드 운영체제에 통합하는 작업을 하지 않도록 안드로이드 부분만 손을 대도록 만든 것이다. 이렇게 하면 제조사들은 새로운 운영체제에 맞는 칩셋 업체들의 하위 소프트웨어를 기다릴 필요 없이 소스 코드를 수정해 자체 롬을 만들 수 있다. 이를 테면 종전에 드라이버와 연결하던 통로만 따로 빼 운영체제만 업그레이드하는 식이다.
대신 구글은 새로운 운영체제가 기존 하위 레벨 소프트웨어와 호환성을 갖는 지 알 수 있는 테스트 스위트을 제공한다. 새로운 안드로이드 운영체제에서 응용 프로그램이 제대로 실행되는지 확인하는 호환성 테스트 스위트(Compatible Test Suite)와 마찬가지로 새로운 운영체제가 하위 레벨 소프트웨어와 호환되는지 유효성을 검토하는 벤더 테스트 스위트(Vender Test Suite)를 정의했는데, 이를 이용하면 트레블 환경에서 하드웨어 추상화 계층(HAL) 및 OS 커널 테스트를 자동화할 수 있다.
결국 제조사는 부품 업체가 제공하는 맞춤형 소프트웨어를 기다릴 필요 없이 안드로이드 소스 코드가 게시되는대로 곧바로 최신 운영체제를 통합한 자체 롬 개발을 시작할 수 있는 만큼 업그레이드를 위한 준비 시간을 줄일 수 있다. 제조사가 만든 업그레이드 롬이 기존 하위 소프트웨어와 호환되는 것을 확인한 이후 몇 가지 테스트를 거쳐 배포할 수 있기 때문에 종전보다 새 운영체제의 업그레이드 비율을 높일 수 있을 것으로 기대하는 것이다.
앞서 말한 대로 프로젝트 트레블은 이미 안드로이드 8.0 오레오에 적용되어 있다. 하지만 안드로이드 8.0 오레오를 설치한 스마트폰이라도 프로젝트 트레블을 포함하고 있는 것은 아니다. 구글 픽셀 2와 엑스페리아 XZ1처럼 안드로이드 8.0 오레오를 탑재한 스마트폰은 트레블을 지원한다. 그러나 안드로이드 7.1 이전 운영체제에서 안드로이드 8.0으로 업데이트한 장치라도 트레블이 반드시 포함된 것은 아니다.
안드로이드 폴리스에 따르면 구글 픽셀 1이나 에센셜의 PH-1, 화웨이 메이트9 및 아너 8 프로는 트레블을 지원하는 반면, 구글 넥서스 6P, 5X, 픽셀 C를 비롯해 노키아 8, 원플러스 3와 5, 소니 엑스페리아 XZ과 XZ 프리미엄은 안드로이드 8.0으로 업그레이드를 했음에도 트레블을 지원하지 않는다. 삼성 갤럭시 S8/S8+도 트레블을 제외했고, 일부 테스터에게 안드로이드 8.0 시험판을 배포 중인 LG V30은 확인되지 않았다. 따라서 이들 스마트폰은 차기 운영체제 업그레이드에서 제외되거나 시간이 훨씬 더 오래 걸릴 것으로 보인다.
프로젝트 트레블이 보편적으로 적용되면 이용자가 얻을 수 있는 이점은 종전보다 새 운영체제의 업그레이드를 좀더 앞당길 수 있다는 점이다. 비록 제조사의 노력에 달린 문제긴 해도 기술적, 정책의 걸림돌을 제거했기 때문에 제조사들도 업그레이드를 미룰 수 있는 명분이 약해진 터라 적극적으로 대응하지 않을 수 없게 된 것이다.
이용자나 구글, 그리고 제조사에 나타나는 안드로이드 8.0의 프로젝트 트레블의 효과는 올해는 나타나지 않을 것이다. 안드로이드 8.0을 탑재한 하드웨어가 보편화되고 내년에 나오는 새로운 운영체제의 업그레이드가 이뤄지는 속도를 봐야 하므로 최소 2년은 걸려야 확인될 수 있다. 2년이면 아직 한참을 기다려야 할 것 같지만, 시간은 의외로 빨리 흐른다.
Be First to Comment