크롬 최신판, '구글판 액티브X' 품다

일반입력 :2011/08/15 16:56

크롬 최신 버전은 일명 '구글판 액티브X' 기술에 기반한 웹애플리케이션(이하 '웹앱')을 쓸 수 있을 전망이다.

구글은 지난주 공개한 크롬 14 베타판에 오픈소스 웹앱 기술 '네이티브 클라이언트(NaCl)'를 통합했다고 밝혔다. NaCl은 브라우저가 HTML이 아닌 일반 프로그래밍 언어 코드로 짜넣은 웹앱도 돌리게 해줘 구글판 액티브X라고 불린다.

이어 14일(현지시간) NaCl기술을 크롬 웹스토어에 등록된 웹앱에 한해 쓸 수 있다며 제한된 사용 범위를 드러냈다. 명목상 오픈소스 기술이지만 실제로는 개방되지 않아 구글판 액티브X라는 평가를 한동안 걷어내지 못할 것으로 보인다.

한 외신 보도에 따르면 리누스 업슨 구글 엔지니어링 부사장은 크롬 브라우저는 크롬 웹스토어를 통해 배포된 네이티브 클라이언트 기반 애플리케이션만 실행할 것이라고 말했다.

크롬 웹스토어는 구글의 브라우저와 크롬OS를 위해 만든 웹앱, 부가기능, 테마를 찾아 쓸 수 있는 온라인 장터다. 일단 웹기반이기에 다른 브라우저에서도 접속할 수 있지만 이에 등록된 항목 대부분은 크롬 전용이다.

구글은 이를 통해 개발자들에게 x86이나 ARM 기반 프로세서용 일반 프로그램을 만들어 크롬 웹스토어에서 배포할 수 있게 할 것이란 전망이다.

■NaCl 역할은 '앱같은 웹' 구현?

NaCl은 개발자들이 짠 일반 운영체제(OS)용 프로그램 코드를 브라우저에서 실행하는 웹앱을 만들게 해주는 오픈소스 기술이다. 크롬 브라우저가 보안성을 갖춘 환경에서 C, C++로 짠 프로그램 코드를 자바스크립트처럼 실행할 수 있게 만들어 준다는 설명이다. HTML5 기반 게임이나 다른 고성능이 요구되는 웹앱에 자바스크립트를 대신해 성능과 속도를 높이는 역할을 하는 것처럼 묘사되기도 한다.

회사는 NaCl을 주로 ▲웹앱에 기존 소프트웨어 구성요소를 옮겨 쓸 때 ▲구형 데스크톱 프로그램을 (웹앱으로) 포팅할 때 ▲기업용 애플리케이션을 위한 브라우저 기반 암호화, 복호화 기술을 다룰 때 ▲웹앱용 멀티미디어 기능을 다룰 때 ▲물리 엔진이나 인공지능(AI) 등을 웹기반 게임에 쓰고싶을 때 쓰면 유용하다고 예시했다.

구글은 자사 오픈소스 호스팅 서비스 '구글코드'에서 이를 구현하기 위해 필요한 브라우저용 플러그인과 컴파일러 개발을 이끌고 있다. NaCl 전용 소프트웨어 개발도구(SDK)를 제공하며 gcc, 이클립스, 비주얼 스튜디오, X코드 등 다른 개발툴을 사용하는 개발자들도 전용 SDK 기능을 익혀둬야 한다고 강조하고 있다.

현재 베타 상태인 크롬 14 버전이 이를 품고 다음달 공개될 예정이다. 지난 2008년 12월 NaCl 기술을 선보인지 2년9개월만이다.

■'구글판 액티브X'라는 평가

NaCl이 오픈소스 기술이지만 마이크로소프트(MS) 액티브X처럼 독점적인 기술로 인식될 여지가 있다. 공개된지 3년을 채워가지만 지원 가능한 브라우저는 크롬 뿐이기 때문이다. 윈도, 맥, 리눅스 등 OS를 제한하진 않는다. 크롬 브라우저만 쓸 수 있으면 된다는 얘기다. 다만 크롬OS에서도 NaCl기반 웹앱이 돌아가는지 여부는 확실치 않다. 개방적이냐 폐쇄적이냐에 대한 논쟁이 가시화될 전망이다.

구글은 NaCl 프로젝트 공식 사이트에 다양한 브라우저를 지원하는 것이 목표고 다른 브라우저 개발자들과 협력하길 원한다면서도 현재 브라우저의 도움 없이는 요구 수준만큼 기능들을 구현하기 어렵기 때문에 크롬 개발자들과(만) 긴밀하게 일하고 있다고 밝혔다.

관련기사

사실 브라우저 시장 경쟁자인 모질라와 오페라소프트웨어는 NaCl에 유보적인 입장이다. 구글 기술이 웹의 단순함과 여러 플랫폼을 지원할 수 있는 가능성을 해친다는 판단에서다. 이에 구글도 할 말이 있는 모양이다.

예를 들어 구글은 '포터블 NaCl(PNaCl)'이라 불리는 차기 버전을 쓰면 C, C++뿐아니라 저레벨가상머신(LLVM) 비트코드 형식에 포함되는 다른 언어로도 개발할 수 있다고 주장한다. LLVM은 PNaCl 기반 프로그램에서 브라우저가 아니라 OS에 전달되는 명령어를 쓸 수 있게 해준다는 설명이다. 이는 아직 크롬 14 버전에 포함되지 않았다.