V8 (motor JavaScript)
La versión actual de la página aún no ha sido revisada por colaboradores experimentados y puede diferir significativamente de la
versión revisada el 16 de enero de 2018; las comprobaciones requieren
28 ediciones .
V8 es un motor JavaScript de código abierto distribuido bajo la licencia BSD . Desarrollado por la sucursal danesa de Google .
Características del V8
El desarrollo del motor JavaScript V8 comenzó en la sucursal danesa de Google en la ciudad de Aarhus . Lars Bak se convirtió en el desarrollador principal . Los principales problemas que los desarrolladores tuvieron que resolver en el motor fueron el rendimiento y la escalabilidad [7] . La primera versión de laboratorio del motor apareció el 3 de julio de 2008 [8] , y ya el 2 de septiembre se presentó oficialmente la versión 0.2.5, que se incluyó en el primer lanzamiento público de Chromium [9] .
Lars Bak consideró [10] que los pilares de V8 son:
- Compilación del código fuente de JavaScript directamente en el código de máquina nativo, sin pasar por la etapa intermedia del código de bytes .
- Sistema de gestión de memoria eficiente que da como resultado una asignación rápida de objetos y pausas cortas en la recolección de basura [11] .
- V8 detiene la ejecución del código mientras la recolección de elementos no utilizados está en curso.
- Reduce el impacto y el impacto de suspender la aplicación durante la recolección de basura.
- V8 puede determinar exactamente dónde se encuentran los objetos y los punteros en la memoria, lo que evita pérdidas de memoria cuando los objetos se identifican falsamente como punteros.
- La introducción de clases ocultas y cachés integrados que aceleran el acceso a propiedades y llamadas a funciones.
V8 ejecuta scripts de JavaScript en "contextos" especiales, que son esencialmente máquinas virtuales separadas. Cierto, solo una máquina virtual puede funcionar en un proceso, a pesar de la posibilidad de usar múltiples subprocesos [12] . En Chromium, esto se evita mediante una arquitectura multiproceso que también mejora la estabilidad y la seguridad, implementando así un mecanismo de " caja de arena " [13] . Así, a pesar de la naturaleza dinámica de JavaScript, los desarrolladores han logrado aplicar métodos que son típicos para la implementación de lenguajes clásicos orientados a objetos, como la compilación de código sobre la marcha , el almacenamiento en caché interno, la recolección de basura precisa , las instantáneas al crear contextos [ 7] [12] .
El motor V8 se diferencia de otros motores ( JScript , SpiderMonkey , JavaScriptCore , Nitro) en su alto rendimiento [14] [15] [16] [17] [18] .
Productos que utilizan V8
Navegadores
Sistemas operativos
- Android es el sistema operativo de Google para comunicadores, netbooks y tabletas, se utiliza V8 desde Android Froyo .
- HP webOS es un sistema operativo de Hewlett-Packard para comunicadores, netbooks y tabletas, el motor V8 se utiliza en el navegador incorporado.
- Google Chrome OS es un sistema operativo de Google basado en el proyecto Chromium, enfocado a servicios en la nube, el motor es un componente importante de todo el sistema operativo.
Véase también
Notas
- ↑ Uso de V8 en webOS Archivado el 24 de julio de 2010. (Inglés)
- ↑ Descripción general de la nueva versión de webOS 2.0 y el navegador integrado. Archivado el 4 de septiembre de 2010 en Wayback Machine (ruso).
- ↑ Soporte de arquitectura . Consultado el 10 de marzo de 2013. Archivado desde el original el 4 de abril de 2017. (indefinido)
- ↑ Soporte oficial desde la versión 3.8.2
- ↑ El proyecto de código abierto v8-js en Open Hub: página de idiomas - 2006.
- ↑ https://github.com/v8/v8/blob/master/LICENSE.v8
- ↑ 1 2 Lars Buck en St. Petersburg Archivado el 8 de marzo de 2013 en Wayback Machine , 2009-12 (ruso)
- ↑ Exportación inicial del motor JavaScript V8 . Consultado el 10 de marzo de 2013. Archivado desde el original el 3 de octubre de 2014. (indefinido)
- ↑ Lanzamiento de V8, Chromium y Google Chrome Archivado el 13 de marzo de 2015 en Wayback Machine , 2008-09
- ↑ Resumen de características Archivado el 3 de diciembre de 2010 en Wayback Machine , 2008-09
- ↑ Recolección de basura eficiente . Archivado el 17 de septiembre de 2013 en Wayback Machine .
- ↑ 1 2 Descripción general de las funciones del motor V8 en servidores Archivado el 29 de julio de 2013 en Wayback Machine (ruso)
- ↑ Descripción general de la arquitectura multiprocesador . Archivado el 19 de mayo de 2013 en Wayback Machine .
- ↑ Elementos de diseño Archivado el 17 de septiembre de 2013 en Wayback Machine .
- ↑ Prueba de velocidad: Google Chrome supera a Firefox, IE, Safari . Archivado el 19 de enero de 2012 en Wayback Machine .
- ↑ Inicio rápido de aplicaciones web Archivado el 9 de agosto de 2013 en Wayback Machine (ruso)
- ↑ Mozilla compara el rendimiento del motor . Archivado el 11 de septiembre de 2010 en Wayback Machine .
- ↑ Puede probar el rendimiento del motor de JavaScript utilizado por el navegador ejecutando V8 Benchmark Suite . Archivado el 4 de marzo de 2013. , SunSpider Archivado el 27 de diciembre de 2012 en Wayback Machine , Kraken Archivado el 1 de julio de 2020 en Wayback Machine
- ↑ http://www.maxthon.com/blog/maxthon-3-what-you-always-wanted-to-know/ Archivado el 27 de febrero de 2014 en Wayback Machine Cambiamos a la versión modificada por Maxthon del código abierto V8 de Google motor.
- ↑ Habilitación del motor V8 en el navegador móvil Froyo Archivado el 1 de enero de 2011 en Wayback Machine (enlace descendente al 23-11-2013 [3258 días])
Enlaces
en redes sociales |
|
---|
sitios temáticos |
|
---|