18.05.2013

Компания Google работает над технологией Native Client в течение пары лет, однако ещё есть куда развиваться. Это открытая разработка, которая предназначена для неопасного и независящего от операционной системы выполнения машинного кода в браузерах. Следующим логическим шагом развития технологии станет PNaCl (Portable Native Client).

Во время конференции Google I/O разработчик Google Дэвид Зер (David Sehr) представил PNaCl, следующее поколение Native Client, которое решает главные трудности технологии. Native Client позволяет исполнять приложения, откомпилированные в C/C , прямо в браузере. Это предоставляет большой выигрыш в производительности, хотя имеются и недочеты. Проблема безопасности компенсируется системой выполнения в песочнице Chrome.

Однако есть и другие трудности. Преимущество веб-технологий в том, что они работают где угодно снутри браузера (по крайней мере, в теории). Но машинный низкоуровневый код обязан иметь привязку к определенной процессорной архитектуре либо даже операционной системе. Стандартная разработка Native Client, которую Chrome поддерживает с 2011 года, решила делему операционных систем — код исполняется на всех ОС, где работает Chrome. Однако разработчики до ближайшего времени всё же должны были компилировать отдельные сборки для выполнения их на x86 либо ARM (поддержка ARM появилась исключительно в этом году).

Видеоряд из игр, исполняемых в Chrome через Native Client

Разработка PNaCl позволяет разработчикам компилировать одну версию собственной программы, которая будет исполняться в Chrome вне зависимости не только лишь от операционной системы, да и от процессорной архитектуры. Программы компилируются в универсальный биткод LLVM (файлы .pexe), который потом Chrome передает в код для определённой архитектуры. Этим обеспечивается широкая сопоставимость приложений не только лишь с существующими архитектурами x86 (32-бит и 64-бит) и ARM, однако в теории и с будущими архитектурами без необходимости перекомпиляции кода.

Другими словами, разработчикам не придётся мыслить, где конкретно исполняется их PNaCl-приложение: в Chrome под Linux на ARM-процессоре либо в Chrome под Windows на x86-системе. В перспективе поддержка технологии может показаться и в других браузерах, ведь привязка Native Client к определённой архитектуре нередко подвергалась критике от посторониих разработчиков. Mozilla, к примеру, так и не ввела поддержку NaCl в Firefox. Может быть, с выходом PNaCl положение дел поменяется?

Вобщем, невзирая на доступность PNaCl для разработчиков, Google пока не готова включать по эталону поддержку технологии в собственный браузер и делать её доступной рядовым пользователям. PNaCl включена в сборку Chrome 29 и выше через пуск браузера с флагом --enable-pnacl. После выхода PNaCl разработчики сумеют запускать исполняемые файлы PNaCl не только лишь в приложениях Chrome Web Store, да и на любой интернет-странице.

В целом, анонс Portable Native Client знаменует собой новый шаг на пути перевоплощения браузеров в платформы, независящие ни от операционной системы, ни от архитектуры микропроцессоров.

news.softpedia.com, developers.google.com

Комментировать ( )


chrome os chrome программирование кроссплатформенный framework


Количество показов: 2
Кем создан (имя): (SpiriT)

Возврат к списку


Оставить комментарий

 
Текст сообщения*
Загрузить файл или картинкуПеретащить с помощью Drag'n'drop
Перетащите файлы
Ничего не найдено
Защита от автоматических сообщений
Загрузить изображение
 
...
...