Google Native Client ( NaCl ) es una tecnología de aislamiento descontinuada para ejecutar un subconjunto de código nativo Intel x86 , ARM o MIPS , o un ejecutable portátil, en un entorno aislado. Google Chrome y otros navegadores web basados en Chromium incorporaron NaCl para ejecutar de forma segura código nativo dentro de aplicaciones web y extensiones de navegador , en gran medida independientemente del sistema operativo del usuario y a velocidades casi nativas. Esta capacidad era fundamental para los planes de Google para ChromeOS como plataforma informática de propósito general. NaCl también se utilizó para proteger complementos de navegador , como Adobe Flash Player , y partes de otras aplicaciones o aplicaciones completas [ 2 ] como ZeroVM . [ 3 ]
El concepto general de NaCl (ejecutar código nativo en el navegador web) ya se había implementado en ActiveX , pero NaCl ejecuta el contenido en un entorno aislado, mientras que una aplicación ActiveX tiene acceso completo al sistema (disco, memoria, interfaz de usuario, registro, etc.). Mozilla propuso asm.js como alternativa tanto a ActiveX como a NaCl. asm.js también permite compilar aplicaciones escritas en C o C++ para que se ejecuten en el navegador y admite la compilación anticipada, pero es un subconjunto de JavaScript y, por lo tanto, compatible con versiones anteriores de navegadores que no lo admiten directamente.
En 2016, Google dejó de priorizar el desarrollo de funciones para Pepper y Native Client. El 30 de mayo de 2017, Google anunció la descontinuación de PNaCl en favor de WebAssembly . [ 4 ] [ 5 ] Durante los años siguientes, Google Chrome fue descontinuando y eliminando NaCl gradualmente en diferentes plataformas. La versión 138 de ChromeOS se convirtió en la última plataforma y versión de Google en admitir Native Client hasta julio de 2025, cuando el lanzamiento de ChromeOS 139 dejó de admitir Native Client. [ 6 ] [ 7 ] [ 8 ]
Descripción general
Native Client fue un proyecto de código abierto desarrollado por Google . [ 9 ] Juegos como Quake , [ 10 ] XaoS , Battle for Wesnoth , [ 11 ] Doom , [ 12 ] Lara Croft and the Guardian of Light , [ 13 ] From Dust , [ 14 ] y MAME , así como el sistema de procesamiento de sonido Csound , se han portado a Native Client. Native Client ha estado disponible en el navegador web Google Chrome desde la versión 14, y ha estado habilitado por defecto desde la versión 31, cuando se lanzó Portable Native Client (PNaCl, pronunciado: pinnacle). [ 15 ] [ 16 ] [ 17 ] Native Client también se ha utilizado para ejecutar de forma segura código descargado en software distinto de los navegadores web, como en el motor de juegos Dæmon. [ 18 ]
En marzo de 2010 se lanzó una implementación ARM . [ 19 ] También se admitieron x86-64 , IA-32 y MIPS .
Para ejecutar una aplicación de forma portable bajo PNaCl, debe compilarse a un subconjunto estable e independiente de la arquitectura del código de bytes de representación intermedia de LLVM . [ 20 ] Los ejecutables se denominan ejecutables PNaCl (pexes). La cadena de herramientas PNaCl crea archivos .pexe; la cadena de herramientas NaCl crea archivos .nexe. El número mágico de los archivos .nexe es 0x7F 'E' 'L' 'F', que es ELF . En Chrome, se traducen a ejecutables específicos de la arquitectura para que puedan ejecutarse.
NaCl utiliza detección y aislamiento de fallos de software para sandboxing en x86-64 y ARM. [ 21 ] La implementación x86-32 de Native Client es notable por su novedoso método de sandboxing, que utiliza la instalación de segmentación poco utilizada de la arquitectura x86 . [ 22 ] Native Client configura segmentos x86 para restringir el rango de memoria al que puede acceder el código sandboxed. Utiliza un verificador de código para evitar el uso de instrucciones no seguras como las que realizan llamadas al sistema. Para evitar que el código salte a una instrucción no segura oculta en medio de una instrucción segura, Native Client requiere que todos los saltos indirectos sean saltos al inicio de bloques alineados a 32 bytes, y las instrucciones no pueden abarcar estos bloques. [ 22 ] Debido a estas restricciones, el código C y C++ debe recompilarse para ejecutarse bajo Native Client, que proporciona versiones personalizadas de la cadena de herramientas GNU , específicamente GNU Compiler Collection (GCC), GNU Binutils y LLVM .
Native Client está licenciado bajo una licencia de estilo BSD .
Native Client utiliza Newlib como su biblioteca C , pero también está disponible una versión de la biblioteca C de GNU (GNU libc). [ 23 ]
Historia
El 8 de diciembre de 2008, Google presentó Native Client al público poco después del lanzamiento de Google Chrome en septiembre. [ 24 ] NaCl estuvo disponible para el público en general cuando se lanzó en una versión estable de Chrome en septiembre de 2011. [ 1 ]
El 9 de diciembre de 2011, Google demostró la madurez de la tecnología al anunciar la disponibilidad de varias versiones nuevas, exclusivas de Chrome, de juegos conocidos por sus gráficos complejos y exigentes en cuanto a procesamiento , incluyendo Bastion (que ya no está disponible en la Chrome Web Store ). NaCl ejecuta gráficos 3D acelerados por hardware (mediante OpenGL ES 2.0), almacenamiento local de archivos aislado, carga dinámica , modo de pantalla completa y captura de ratón . También existían planes para que NaCl estuviera disponible en dispositivos portátiles. [ 25 ] [ 26 ]
En 2013, Google presentó Portable Native Client (PNaCl), una versión de NaCl compilada por adelantado e independiente de la arquitectura. [ 27 ] Portable Native Client (PNaCl) es una versión independiente de la arquitectura. Las aplicaciones PNaCl se compilan por adelantado . Se recomienda PNaCl sobre NaCl para la mayoría de los casos de uso. [ 28 ] El concepto general de NaCl (ejecutar código nativo en el navegador web) se ha implementado antes en ActiveX , que, aunque todavía se usa, tiene acceso completo al sistema (disco, memoria, interfaz de usuario, registro, etc.). Native Client evita este problema mediante el uso de sandboxing.
Mozilla propuso como alternativa asm.js , que también permite compilar aplicaciones escritas en C o C++ para que se ejecuten en el navegador y además admite la compilación anticipada, pero es un subconjunto de JavaScript y, por lo tanto, compatible con versiones anteriores de navegadores que no lo admiten directamente.
El 12 de octubre de 2016, un comentario en el rastreador de problemas de Chromium indicó que los equipos de Pepper y Native Client de Google habían sido desmantelados. [ 29 ] El 30 de mayo de 2017, Google anunció la descontinuación de PNaCl en favor de WebAssembly . [ 4 ] [ 5 ] Aunque inicialmente Google planeó eliminar PNaCl en el primer trimestre de 2018, [ 4 ] y más tarde en el segundo trimestre de 2019, [ 30 ] se eliminó en junio de 2022 (junto con Chrome Apps ). [ 31 ] [ 32 ] El soporte en ChromeOS continuó hasta ChromeOS 138 y finalizó en julio de 2025 con el lanzamiento de ChromeOS 139, que dejó de dar soporte a Native Client. [ 6 ] [ 7 ] [ 8 ]
LLVM 22, lanzado en febrero de 2026, se convirtió en la primera versión en perder soporte para compilar binarios de NaCl. [ 33 ]
Pimienta
NaCl denota cloruro de sodio , sal común de mesa ; como juego de palabras , también se usó el nombre de pepper . Pepper API es una API multiplataforma de código abierto para crear módulos Native Client. [ 34 ] Pepper Plugin API, o PPAPI [ 35 ] [ 36 ] es una API multiplataforma para complementos de navegador web protegidos por Native Client, basada inicialmente en NPAPI de Netscape y luego reescrita desde cero. Se utilizó en Chromium y Google Chrome para habilitar la versión PPAPI de Adobe Flash [ 37 ] y el visor de PDF integrado . [ 38 ]
PPAPI
El 12 de agosto de 2009, una página de Google Code presentó un nuevo proyecto, Pepper, y la API de complementos Pepper (PPAPI) asociada, [ 39 ] "un conjunto de modificaciones a NPAPI para hacer que los complementos sean más portátiles y seguros". [ 40 ] Esta extensión está diseñada específicamente para facilitar la implementación de la ejecución de complementos fuera del proceso . Además, los objetivos del proyecto son proporcionar un marco para que los complementos sean totalmente multiplataforma. Los temas considerados incluyen:
- Semántica uniforme para NPAPI en todos los navegadores.
- La ejecución se realiza en un proceso separado del navegador de renderizado.
- Estandarizar la representación gráfica utilizando el proceso de composición del navegador.
- Definición de eventos estandarizados y funciones de rasterización 2D.
- Primer intento de proporcionar acceso a gráficos 3D.
- Registro de complementos.
La API Pepper también admite Gamepads (versión 19) y WebSockets (versión 18). [ 41 ]
A fecha de 13 de mayo de 2010 El navegador de código abierto de Google, Chromium , fue el único navegador web que utilizó el nuevo modelo de complementos del navegador. [ 42 ] A partir de 2020, Pepper es compatible con Chrome, Chromium y los navegadores basados en el motor de diseño Blink, como Opera y Microsoft Edge.
En agosto de 2020, Google anunció que el soporte para PPAPI se eliminaría de Google Chrome y Chromium en junio de 2022. [ 43 ]
PPAPI en Firefox
Los desarrolladores de Firefox declararon en 2014 que no darían soporte a Pepper, ya que no existía una especificación completa de la API más allá de su implementación en Chrome, que a su vez fue diseñado para usarse solo con el motor de diseño Blink , y tenía API privadas específicas para el complemento Flash Player que no estaban documentadas. [ 44 ] En octubre de 2016, Mozilla anunció que había reconsiderado y estaba explorando si incorporar la API Pepper y PDFium en futuras versiones de Firefox, [ 45 ] sin embargo, no se tomaron tales medidas. En julio de 2017, Adobe descontinuó Flash y anunció su fin de vida útil a finales de 2020. [ 46 ] Para enero de 2021, Adobe Flash Player, Google Chrome, Firefox, Safari y Windows [ 47 ] recibieron actualizaciones que deshabilitaron o eliminaron por completo Flash.
Aplicaciones
Un sitio web [ 48 ] utilizó NaCl en el servidor para permitir a los usuarios experimentar con el lenguaje de programación Go desde sus navegadores. [ 49 ]
Uso fuera de los navegadores web
El juego de código abierto Unvanquished utiliza Native Client en el motor de juego Dæmon [ 50 ] en sustitución de Q3VM ( máquina virtual de Quake III ). [ 51 ] [ 52 ] En este motor de juego, el entorno aislado de Native Client se utiliza para ejecutar de forma segura código de juego arbitrario ( mods ) descargado de servidores de juego. El uso de la tecnología Native Client permite a los desarrolladores de juegos utilizar el lenguaje C++ para juegos que se ejecutan en la máquina virtual, utilizar bibliotecas de C++, compartir código entre el juego y el motor y obtener un mejor rendimiento que con Q3VM. [ 18 ]
Recepción
Algunos grupos de desarrolladores de navegadores apoyaban la tecnología Native Client, mientras que otros no.
Seguidores
Chad Austin (de IMVU ) elogió la forma en que Native Client puede llevar aplicaciones de alto rendimiento a la web (con una penalización de aproximadamente el 5% en comparación con el código nativo) de manera segura, al tiempo que acelera la evolución de las aplicaciones del lado del cliente al ofrecer la opción de elegir el lenguaje de programación utilizado (además de JavaScript ). [ 53 ]
John D. Carmack de Id Software elogió Native Client en QuakeCon 2012, diciendo: "Si tienes que hacer algo dentro de un navegador, Native Client es mucho más interesante, ya que comenzó como un truco x86 bastante ingenioso, pues podían aislar todo esto en modo usuario de una manera interesante. Ahora es una recompilación dinámica, pero algo que programas en C o C++ y se compila a algo que no tendrá el nivel de optimización -O4 para código completamente nativo, pero sí se acerca bastante al código nativo. Puedes hacer todas tus malvadas persecuciones de punteros y lo que quieras hacer como desarrollador de juegos a nivel de metal". [ 54 ]
Detractores
Otros profesionales de TI fueron más críticos con esta tecnología de aislamiento de procesos (sandboxing), ya que presentaba problemas de interoperabilidad importantes.
El vicepresidente de productos de Mozilla , Jay Sullivan , afirmó que Mozilla no tiene planes de ejecutar código nativo dentro del navegador, ya que "estas aplicaciones nativas son solo pequeñas cajas negras en una página web. [...] Creemos firmemente en HTML, y ahí es donde queremos centrarnos". [ 55 ]
Christopher Blizzard, de Mozilla, criticó NaCl, afirmando que el código nativo no puede evolucionar de la misma manera que la web basada en código fuente. También comparó NaCl con la tecnología ActiveX de Microsoft , plagada del problema de las DLL . [ 2 ]
Håkon Wium Lie , CTO de Opera, creía que "NaCl parece estar 'anhelando los viejos tiempos, antes de la web'", y que "Native Client se trata de construir una nueva plataforma, o portar una plataforma antigua a la web [...] traerá complejidad y problemas de seguridad, y desviará la atención de la plataforma web". [ 2 ]
Segunda generación
La segunda generación de sandboxing desarrollada en Google es gVisor . [ 56 ] [ 57 ] Está destinada a reemplazar a NaCl en Google Cloud , más concretamente en Google App Engine . Google también ha estado promoviendo WebAssembly . [ 58 ]
Véase también
- Virtualización de aplicaciones
- Emscripten
- Sandboxie , ejecutar programas de Windows en un entorno aislado.
- WebAssembly , un estándar de código de bytes para navegadores web.
- Aplicaciones de navegador XAML (XBAP)
Referencias
- 1 2 "Google Native Client se lanza en Chrome" . The Register . 16 de septiembre de 2011. Consultado el 12 de marzo de 2016 .
- 1 2 3 Metz, Cade (12 de septiembre de 2011). "Google Native Client: ¿La web del futuro o del pasado?" . The Register . Recuperado el 17 de septiembre de 2011 .
- ↑ "Arquitectura ZeroVM" . Archivado del original el 8 de febrero de 2014. Consultado el 16 de marzo de 2014 .
- 1 2 3 Nelson, Brad (30 de mayo de 2017). "¡Adiós PNaCl, hola WebAssembly!" . Blog de Chromium . Recuperado el 31 de mayo de 2017 .
- 1 2 Armasu, Lucian (31 de mayo de 2017). "Chrome dejará de usar 'PNaCl' y adoptará el nuevo estándar 'WebAssembly'" . Tom's Hardware . Recuperado el 8 de julio de 2026 .
- 1 2 "Cliente nativo" . Chrome para desarrolladores . Consultado el 8 de julio de 2026.
ChromeOS 138 marcará el fin del ciclo de vida de la tecnología NaCl en ChromeOS
. - 1 2 "Resumen de la versión 139 de ChromeOS" . Ayuda de Google . Consultado el 8 de julio de 2026.
Desuso de Native Client (NaCl)
. - 1 2 "Notas de la versión 139 de Chrome para empresas y educación" (PDF) . Google . 13 de agosto de 2025. Consultado el 8 de julio de 2026.
Descontinuación del Cliente nativo (NaCl)
. - ↑ "Google Native Client en Google Code" . Consultado el 25 de abril de 2012 .
- ↑ davemichael (3 de octubre de 2020). "GitHub - davemichael/NaCl-Quake: Quake para cliente nativo (basado en el puerto Quake de SDL)" . GitHub .
- ↑ "La batalla por Wesnoth" .
- ↑ "Índice de /" . Archivado del original el 23 de abril de 2025. Recuperado el 26 de noviembre de 2013 .
- ↑ "Chrome Web Store - Lara Croft y el Guardián de la Luz" . Archivado del original el 8 de diciembre de 2013. Consultado el 26 de noviembre de 2013 .
- ↑ "From Dust" . Archivado del original el 12 de marzo de 2016. Consultado el 24 de febrero de 2016 .
- ↑ Chen, Brad (8 de diciembre de 2008). "Native Client: una tecnología para ejecutar código nativo en la web" . Google-code-updates.blogspot.com . Recuperado el 25 de abril de 2012 .
- ↑ "El blog de Chromium: Native Client lleva código nativo aislado a las aplicaciones de Chrome Web Store" . Blog.chromium.org. 18 de agosto de 2011. Consultado el 25 de abril de 2012 .
- ↑ "Google Code Blog: Portable Native Client: The "pinnacle" of speed, security, and portability" . blog.chromium.org. 12 de noviembre de 2013. Consultado el 16 de marzo de 2014 .
- 1 2 "Unvanquished continúa trabajando en su soporte para PNaCl" . Phoronix . 15 de marzo de 2014. Consultado el 3 de diciembre de 2024.
Los entornos aislados PNaCl permiten a los desarrolladores de juegos usar bibliotecas modernas de C++ y C/C++ directamente dentro de sus máquinas virtuales y facilitarán un mejor intercambio de código entre el código del motor y la lógica del juego. También se informa que PNaCl ofrece un mejor rendimiento que las máquinas virtuales originales de Quake III.
- ↑ "Google's Native Client llega a ARM y más allá" . The H. 18 de marzo de 2010. Consultado el 19 de mayo de 2010 .
- ↑ "PNaCl: Ejecutables de cliente nativo portátiles" (PDF) . Archivado del original (PDF) el 2 de mayo de 2012. Consultado el 25 de abril de 2012 .
- ↑ Sehr, David; Muth, Robert; Biffle, Cliff L.; Khimenko, Victor; Pasko, Egor; Yee, Bennet; Schimpf, Karl; Chen, Brad (2010). "Adaptación del aislamiento de fallos de software a las arquitecturas de CPU contemporáneas" . 19.º Simposio de Seguridad de USENIX . Consultado el 31 de julio de 2011 .
- 1 2 Yee, Bennet; Sehr, David; Dardyk, Greg; Chen, Brad; Muth, Robert; Ormandy, Tavis; Okasaka, Shiki; Narula, Neha; Fullagar, Nicholas (2009). "Native Client: A Sandbox for Portable, Untrusted x86 Native Code" . Simposio IEEE sobre Seguridad y Privacidad (Oakland'09) . Recuperado el 31 de julio de 2011 .
- ↑ "Cliente nativo: Creación" . developer.chrome.com. Archivado del original el 17 de marzo de 2014. Consultado el 16 de marzo de 2014 .
- ↑ Chen, Brad (8 de diciembre de 2008). "Native Client: una tecnología para ejecutar código nativo en la web" . Archivado del original el 9 de diciembre de 2008.
- ↑ Rosenblatt, Seth (9 de diciembre de 2011). "Native Client convierte a Chrome en una plataforma de juegos de alta gama" . CNET. Archivado del original el 28 de agosto de 2012. Consultado el 9 de diciembre de 2011 .
- ↑ "Google Code Blog: Juegos, aplicaciones y entornos de ejecución llegan a Native Client" . Googlecode.blogspot.com. 9 de diciembre de 2011. Consultado el 25 de abril de 2012 .
- ↑ "Cliente nativo portátil: la "cúspide" de la velocidad, la seguridad y la portabilidad" . 12 de noviembre de 2013.
- ↑ "NaCl y PNaCl" . Archivado del original el 18 de noviembre de 2020. Consultado el 15 de noviembre de 2015 .
- ↑ "Bugs.chromium.org" . 12 de octubre de 2016. Consultado el 12 de octubre de 2016 .
- ↑ "Guía de migración de WebAssembly - Google Chrome" . developer.chrome.com . Archivado del original el 12 de marzo de 2019. Consultado el 20 de diciembre de 2018 .
- ↑ "Cambios en el cronograma de soporte de la aplicación Chrome" . Blog de Chromium . 10 de agosto de 2020.
- ↑ Li, Abner (10 de agosto de 2020). "Google retrasa la descontinuación de las aplicaciones de Chrome en todas las plataformas" . 9to5Google . Consultado el 2 de octubre de 2021 .
- ↑ "LLVM 22 elimina el soporte final para el cliente nativo de Google "NaCl"" . www.phoronix.com . Consultado el 25 de febrero de 2026 .
- ↑ "Descripción técnica" . Archivado del original el 28 de febrero de 2014.
- ↑ "Proyecto API de complementos Pepper en" . Archivado del original el 9 de septiembre de 2016. Recuperado el 25 de abril de 2012 .
- ↑ "Chrome Source: Index of /trunk/src/ppapi" . Src.chromium.org . Consultado el 25 de abril de 2012 .
- ↑ "El camino hacia un Flash más seguro, más estable y más llamativo" . 8 de agosto de 2012. Consultado el 10 de agosto de 2013 .
- ↑ Metz, Cade (18 de junio de 2010). "Google se aferra más a Adobe con la fusión de Chrome y PDF" . The Register . Consultado el 25 de abril de 2012 .
- ↑ "Primeros pasos: Antecedentes y conceptos básicos – Los proyectos Chromium" . Chromium.org. Archivado del original el 21 de diciembre de 2020. Consultado el 25 de abril de 2012 .
- ↑ "Pepper.wiki" . 24 de febrero de 2012. Consultado el 25 de abril de 2012 .
- ↑ "Notas de la versión" . Archivado del original el 18 de noviembre de 2020. Consultado el 16 de marzo de 2014 .
- ↑ Metz, Cade (13 de mayo de 2010). "Google acelera el desarrollo del código nativo para Chrome OS" . Theregister.co.uk . Consultado el 25 de abril de 2012 .
- ↑ Anthony Laforge (10 de agosto de 2020). "Cambios en el cronograma de soporte de aplicaciones de Chrome" . Blog de Chromium .
- ↑ Zbarsky, Boris. "Bug 729481 - Compatibilidad con la API del complemento "Pepper" . Consultado el 15 de abril de 2016 .
- ↑ Metz, Cade (3 de octubre de 2016). "Proyecto Mortero" . Mozilla . Recuperado el 30 de octubre de 2016 .
- ↑ "Flash y el futuro del contenido interactivo" . Adobe Inc. 25 de julio de 2017. Archivado del original el 2 de diciembre de 2017. Consultado el 31 de julio de 2023 .
- ↑ Salter, Jim (4 de mayo de 2021). "Adiós de nuevo, Flash: Microsoft hace obligatoria su eliminación de Windows 10" . Ars Technica . Consultado el 1 de agosto de 2023 .
- ↑ "El Go Playground" .
- ↑ "Dentro del Go Playground - El Blog de Go" . blog.golang.org . Consultado el 27 de agosto de 2016 .
- ↑ Larabel, Michael (9 de julio de 2015). "Lanzamiento de Unvanquished Alpha 41, aún avanzando hacia el uso de la máquina virtual NaCl" . Phoronix . Recuperado el 3 de diciembre de 2024.
Han continuado avanzando con su juego de código abierto y el motor Daemon. […] su implementación de libRocket se ha trasladado a la máquina virtual NaCl.
- ↑ "Unvanquished continúa trabajando en su soporte para PNaCl" . Phoronix . 15 de marzo de 2014. Consultado el 3 de diciembre de 2024.
Los desarrolladores de código abierto de Unvanquished continúan trabajando en el soporte para usar el Cliente Nativo Portátil de Google (PNaCl) para reemplazar las QVM de Quake III.
- ↑ "Unvanquished Alpha 34 trae correcciones, todavía se está portando a PNaCl" . Phoronix . 8 de diciembre de 2014. Consultado el 3 de diciembre de 2024.
En el fondo, siguen trabajando arduamente en portar la lógica del juego de QVM a Portable Native Client (PNaCl).
- ↑ Austin, Chad (8 de enero de 2011). "Chad Austin: En defensa de la democracia lingüística (o: Por qué el navegador necesita una máquina virtual)" . Chadaustin.me . Consultado el 25 de abril de 2012 .
- ↑ Carmack, John (3 de agosto de 2012). "QuakeCon 2012" . youtube.com . Consultado el 26 de agosto de 2012 .
- ↑ Metz, Cade (24 de junio de 2010). "Mozilla: Nuestro navegador no ejecutará código nativo" . The Register . Consultado el 25 de abril de 2012 .
- ↑ "Lanzamiento beta de PHP 7.2 en el entorno estándar de Google App Engine | Hacker News" .
- ↑ "Google/Gvisor" . GitHub . 15 de octubre de 2021.
- ↑ Avram, Abel (31 de mayo de 2017). "Google eliminará el soporte para PNaCl" . InfoQ . Consultado el 1 de agosto de 2020.
Como reemplazo, Google ahora está impulsando WebAssembly.
Enlaces externos
- Sitio web oficial

- "Problemas - nativeclient" . bugs.chromium.org . Consultado el 2 de julio de 2022 .
- Google I/O 2013 - Introducción al Cliente Nativo Portátil (PNaCl) en YouTube
- Google I/O 2009: Código nativo para aplicaciones web de alto consumo computacional en YouTube – Charla técnica en Google I/O 2009
- Una lista de proyectos de código abierto adaptados a Native Client.
- Código fuente del cliente nativo en Git
- Introducción a Native Client centrada en el motor del juego con una comparación entre la máquina virtual de Quake3 y PNaCL Wallez, Corentin (15 de marzo de 2014). "Trasladando la lógica del juego del servidor a PNaCl" . Recuperado el 3 de diciembre de 2024 .
Ejemplos
- Folding@home
- Ejemplos de PNaCl (funciona en Chrome 31+, PNaCl, es decir, no requiere instalación)
- Galería del SDK de Native Client archivada el 16 de marzo de 2014 en Wayback Machine.
- torapp.info , editor vectorial, especialmente potente para impresión de seguridad (no PNaCl)
- NACLBox , una adaptación de DOSBox a Native Client (PNaCl)
- SodaSynth , un sintetizador para Native Client (no PNaCl)
- Abadía del crimen , un port de la versión SDL de Vigasoco (remake de La Abadía del Crimen ) a Native Client (PNaCl)
- Bennugd , una adaptación de los ejemplos de videojuegos de Bennugd al cliente nativo (PNaCl).
- Software de seguridad informática
- Software que utiliza la licencia BSD.
- Software libre multiplataforma