3 votos

¿Qué parte de los directorios de Android contiene los llamados blobs propietarios?

Al construir AOSP ( Proyecto de código abierto Android ) o LineageOS Hay una herramienta llamada "desayuno". Descarga los blobs propietarios y los integra en el árbol de fuentes.

He leído este artículo ¿significa que todas las manchas están bajo /system/vendor/ ¿directorio?

¿Existen también esos archivos binarios en el sistema de archivos de Android? ¿Y dónde están?

6voto

Jack Wade Puntos 231

Sí, los blobs binarios forman parte del sistema de archivos de Android. Android no puede arrancar sin ellos, ya que son una especie de controladores de hardware para el dispositivo. La mayoría de ellos se encuentran en /vendor/lib(64) , algunos también bajo /system , /etc y /bin . Antes de Android Treble , /vendor no era necesariamente una partición sino un enlace simbólico a /system/vendor directorio. Empezando por Oreo, /vendor es una partición que contiene todo el contenido relacionado con OEM y SoC proveedor. La mayoría de los blobs son archivos ejecutables o bibliotecas, que se ejecutan como servicios independientes en el arranque. Vea este ejemplo archivos de propiedad lista.

Además, la primera partición (normalmente etiquetada como modem ) en la eMMC contiene el firmware relacionado con la Radio/RIL. Otra partición dsp contiene la tecnología de Qualcomm Procesador digital de señales binarios relacionados. No se construyen con la ROM, sino que forman parte de Android árbol del sistema de archivos , montado en (/vendor)/firmware y (/vendor)/dsp . Su ejecución está aislada del resto del dispositivo.

Muchas particiones relacionadas con los cargadores de arranque son en sí mismas binarios completos, como aboot , sbl , rpm , tz , cmnlib , devcfg , keymaster , lksecapp en dispositivos Qualcomm. No son sistemas de archivos montables, sino que son ejecutados directamente por los gestores de arranque durante el proceso de arranque. Todos ellos son blobs binarios propietarios; la parte de código cerrado de los dispositivos Android.

PS: Android (un superconjunto de AOSP) no es un sistema operativo genérico que se pueda instalar en cualquier hardware como hacemos en los PC. El soporte para el hardware está bloqueado en los binarios propietarios ( HALs ) por el OEM y/o los proveedores de silicio. Así que los blobs binarios son críticos, y el AOSP de código abierto (incluyendo la fuente modificada del kernel de Linux proporcionada por Google) no sirve de nada sin los controladores de hardware. Y los fabricantes rara vez documentan el funcionamiento de su hardware para que desarrolladores como Replicante puede implementar un controlador de código abierto. Hay un conjunto muy pequeño de componentes de hardware en los dispositivos Android que se puede esperar que se manejen directamente haciendo syscalls al kernel como es el caso de los PC. La única adición notable por parte de los vendedores de SoC / OEM a la fuente genérica del kernel ya modificada por Google ( 1 , 2 ) es el manejo de dispositivos no detectables (definición de los nodos del dispositivo). El resto del material relacionado con el hardware se maneja en el espacio de usuario a través de blobs binarios.

Más información:

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X