Talkin ‘Treble: cómo son los ingenieros de Android ganando la guerra contra la fragmentación

Logotipo de Google  para Android P Developer Preview Ampliar / Logotipo de Google para Android P Developer Preview.

Con el lanzamiento de Android 8.0 el año pasado, Google lanzó Proyecto Treble en el mundo. Treble fue uno de los más grandes de Android proyectos de ingeniería, modularizando el funcionamiento de Android sistema lejos del hardware y reduciendo en gran medida la cantidad de trabajo necesario para actualizar un dispositivo. El objetivo aquí es nada menos que de arreglar el problema de fragmentación continua de Android, y ahora, seis meses después, parece que el plan realmente está funcionando.

En Google I / O este año, puedes ver signos de los agudos revolución en todo el espectáculo. Se lanzó la versión beta de Android P, pero no solo en los dispositivos Pixel de Google, por primera vez, una Vista previa para desarrolladores de Android lanzada simultáneamente en dispositivos de Google, Nokia, OnePlus, Xiaomi, Essential, Vivo, Sony y Oppo, todo gracias a la compatibilidad de Project Treble. Incluso coche los fabricantes, algunos de los que adoptaron la tecnología más lentamente en la Tierra, estaban en el proyecto Treble train. Dodge y Volvo tenían autos prototipo ejecutando Android como sistema de infoentretenimiento, y ambos estaban funcionando Android P.

Como se está volviendo personalizado para nuestro viaje anual a Google I / O, estábamos capaz de sentarse con algunos miembros principales del equipo de Android: Iliyan Malchev, jefe del Proyecto Treble, y Dave Burke, Android Vicepresidente de ingeniería. (Citamos a Iliyan Malchev un millón de veces durante la revisión de Android 8.0, por lo que fue bueno obtener información de él de primera mano, y Dave Burke ha pasado por la entrevista de Ars guantelete varias veces ahora.) Y a través de esta larga conversación, nosotros tengo una mejor comprensión de cómo es la vida ahora que Project Treble está viendo cierta aceptación de los OEM.

Lo que sigue es una transcripción con algunas de las entrevistas a la ligera. editado para mayor claridad. Para una perspectiva más completa, también hemos incluido algunos comentarios de fondo de actualidad en cursiva.

Probar Project Treble con Android P

Primero, un resumen de lo que está sucediendo con Treble en este momento.

Iliyan Malchev: Con Treble, el operativo sistema se ha separado a las capas de adaptación que se adaptan a El hardware. Y ese sigue siendo el caso, pero el diablo está en el detalles. Hay un montón de matices que todavía necesitamos corregir, y esto es en lo que nos hemos centrado con esta versión [Android P]. �Cuál es el caso hoy? Y creo que muchas personas lo pasan por alto. la prensa en agudos es que cualquier dispositivo que esté precargado con Las aplicaciones de Google, cualquier dispositivo que se inicie con Oreo o posterior lanzamientos, debe funcionar sin problemas con una imagen binaria de Android que nosotros construido para fines de certificación.

Esta imagen no es un producto. La intención no es lanzar esto, pero la idea es, al exigir que esta “imagen dorada” se ejecute en todo por ahí, creamos una fuerza centrípeta que empuja nuestros socios muy gentilmente hacia no cambiar Android en formas que no son realmente significativos para sus resultados finales. Terminamos ese trabajo técnico con Android P este año, y comenzamos trabajando con fabricantes de silicio.

Dave Burke: Sí, creo que este es realmente uno de los turnos más grandes Después de terminar el trabajo técnico, hay fue el proceso real de compromiso de trabajar con el silicio vendedores, lo cual es un gran cambio.

Google's "Life of an Android release" diagram. La Junta de Apoyo  Package is step #2.Agrandar / Diagrama de “La vida de un lanzamiento de Android” de Google. The Board SupportEl paquete es el paso # 2.Google

Malchev: Tenemos equipos en Taipei, Seúl, y San Diego que trabajan con Mediatek, Samsung Semiconductor y con Qualcomm, respectivamente. Tomamos nuestro trabajo y lo aplicamos a sus BSP [Paquete de Soporte de la Junta]. Qualcomm y todos los demás lo harán tome AOSP [Proyecto de código abierto de Android] mientras lo publicamos, incorpórelo a ese BSP, y luego dele eso a su vez fabricantes de dispositivos. Ese BSP realmente es donde comienzan los dispositivos. Ellos no comience con AOSP, porque AOSP, por sí solo, no es un completo producto.

Como dice Malchev, las partes de código abierto de Android (AOSP) solo consiste en código de sistema operativo y no se ejecutará realmente en un pieza de hardware. Un paquete de soporte de placa (BSP) combina AOSP con todos los demás códigos necesarios para que Android se ejecute en cada uno de hardware. Esto suele ser cosas como el kernel de Linux y conductores Como muestra el diagrama, Google publica AOSP, proveedores de SoC como Qualcomm combinan AOSP con una versión específica de Android Kernel y controladores de Linux para crear un BSP, y los OEM cargan el BSP en un teléfono, agregando personalizaciones de hardware y software.

Malchev: Eran los problemas permanentes con los BSP que abordamos, porque si lanzamos AOSP en agosto y entonces Qualcomm hace tres meses de trabajo para lanzar el BSP, luego Ya es fin de año. Si eres un fabricante de dispositivos, básicamente no tienes suerte. Así que absorbimos todo este trabajo para hacerlo simultáneo con el desarrollo interno de Android.

Burke: Creo que un ejemplo es Telecom y Telefonía. �Y cuántos cambios hicimos aguas arriba? Hubo un mucho.

Malchev: Correcto, así que además de todo esto, También comenzamos a hacer que AOSP fuera más un producto desarrollado por Upstreaming 150 características que nuestros socios tenían que mantener fuera del árbol Eso es muy importante para ellos porque el continuo Los costos de mantener todo este tipo de código son enormes.

“Upstream” para Android es el kernel de Linux. Googlemantiene su propio fork de Linux para Android, pero los dos están más cerca hoy que nunca been.Correction:Nevermind,”Upstream” aquí significa “upstream de OEM”, que es AOSP. Malchev es refiriéndose a la inclusión de funciones de teléfonos de terceros en AOSP para que los OEM no tiene que administrar tanto código.

Project Treble mostly splits up Android (shown here by partition) por empresa  Google es el proveedor de la plataforma Android, generalmente  Qualcomm es el proveedor de SoC, y una empresa como Samsung es el  OEM/ODM.Agrandar / Project Treble divide principalmente Android (se muestra aquí por partición) by company. Google is the Android platform vendor, typicallyQualcomm is the SoC Vendor, and a company like Samsung is theOEM / ODM. Google

Burke: Y el otro gran cambio es solo nuestro Flujo de trabajo. Los vendedores de silicio: los tres en este caso para chipsets que estamos respaldando, en realidad están comprometiendo código en AOSP. Todas las empresas están trabajando juntas en un repositorio. Ese es un gran cambio en la forma en que operamos, porque solíamos construir el sistema operativo hasta cierto punto; entonces el vendedor de silicio lo llevaría a cierto punto; entonces el fabricante del dispositivo lo llevaría a un cierto punto, todo en serie. Ahora, podemos trabajar en paralelo con el proveedores de silicio en la misma base de código. Cuando tenemos liberación candidato de P, tienen lo que llaman “CS” o “comercial muestreo “, y están listos al mismo tiempo, lo cual es un gran diferencia.

Burke y Malchev están describiendo el proceso que vimos en E / S con El lanzamiento de Android P Beta. Google, Qualcomm y otros SoC los vendedores y los fabricantes de equipos originales tienen que ver con la presentación de una nueva versión de Android a un dispositivo. Y, antes, el proceso de desarrollo “serializado” significaba que cada compañía tenía que terminar antes de que la siguiente compañía pudiera comienzo. Con una interfaz estable entre el hardware y el software. partes de Android, todos pueden trabajar simultáneamente para portar un nueva versión de Android para una pieza de hardware.

Para tener una idea de cómo es esto ahora, Google fue incluso agradable suficiente para enviar esta cita de Essential, que nos da un línea de tiempo de cuánto tiempo llevó la versión beta de Android P al puerto.

“Asegurándonos de que nuestros usuarios esenciales tengan el último sistema operativo las actualizaciones son increíblemente importantes para nosotros. Una vez que hicimos cumplir al vendedor y la separación del sistema en Oreo usando Treble, nuestro pequeño equipo consiguió Android P ejecutándose en PH-1 en solo 3 días. “- RebeccaZavin, VP Software, Essential

El teléfono esencial es probablemente el mejor escenario para un actualización: un dispositivo compatible con Project Treble con Android de serie, entonces no se requerirán muchas modificaciones de software. Tres días para un puerto todavía parece una increíble cantidad de progreso, teniendo en cuenta que muchos OEM tardan meses en actualizarse.

Malchev: Y esa es realmente la parte de la iceberg que está debajo de la superficie. Dave acaba de describir cooperar con estos fabricantes de silicio; significa que ambos necesitábamos cambiar nuestras prácticas de desarrollo dramáticamente. Qualcomm tiene un 6,000 departamento de ingeniería personal que funciona en Android. por Proyecto Treble, comenzaron a trabajar conjuntamente en nuestra infraestructura con nosotros. Así que ambos mantenemos su BSP actualizado, y hacemos Seguro que madura como lo hace Android. Y eso es un masivo, cambio masivo Y estamos haciendo lo mismo con MediaTekand con Samsung Semiconductor.

Like this post? Please share to your friends:
Leave a Reply

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: