¿Tableta con actualización de Android 4.0 al último sistema operativo Android? (actualmente 4.4) [duplicado]

¿Es posible actualizar una tablet que tenga android 4.0 a la última versión (4.4.2)? Estoy pensando en comprar una tableta. Tiene Android 4.0 que es más barato que las otras tabletas que tienen 4.0 (que no me hace senec).

Sin embargo, ¿podría decirme la ciencia detrás de esto? ¿Por qué un dispositivo no puede "actualizarse" incluso con el mismo número de versión?
Depende del fabricante portar nuevas versiones de Android a su dispositivo y lanzar la actualización. Ver también las respuestas a esta y esta pregunta existente.
No había visto este comentario hasta ahora. Gracias.

Respuestas (1)

Los teléfonos y tabletas (especialmente los más baratos) generalmente no tienen mucho espacio de almacenamiento, y sus otros componentes no son tan potentes (memoria baja, procesador lento, etc.). Por lo tanto, el sistema operativo que se ejecuta en ellos debe mantenerse en su tamaño mínimo absoluto. , y estar muy optimizado para el hardware muy específico que se encuentra dentro.

Por ejemplo, para que Windows admita una amplia gama de computadoras personales de varios fabricantes, se envía con una gran cantidad de controladores diferentes, algunos son genéricos para manejar múltiples versiones de hardware (es decir, tarjetas de video o tarjetas de sonido). De esta manera, uno o Microsoft puede distribuir dos paquetes de instalación (32 bits Vs. 64 bits) que podrían instalarse en prácticamente cualquier PC compatible. La otra cara de la moneda es que esto hace que la instalación de Windows sea enorme en comparación.

Por otro lado, Android en su nivel más bajo tiene algo llamado "Kernel". Esto es lo que permite que el resto del sistema operativo se comunique con la RAM, la pantalla, la CPU, la cámara, los botones, etc., y es equivalente a los controladores de Windows. Vea este diagrama de la pila de software de Android. Debido a las restricciones mencionadas anteriormente, el kernel debe adaptarse para que coincida perfectamente con el dispositivo específico en el que se instalará Android. De esta manera, su tamaño puede mantenerse mínimo, pero la desventaja es que sería incompatible con otro dispositivo, incluso del mismo fabricante, que tenga componentes ligeramente diferentes.

El kernel es desarrollado por el fabricante del dispositivo, como Samsung, Motorola, LG, etc. Dado que está basado en Linux, el código del kernel es de código abierto, pero generalmente contiene código propietario de código cerrado de otros fabricantes de componentes, como CPU o GPU (por ejemplo, Qualcomm o Nvidia) en forma de blobs binarios. Luego hay una capa de personalización que los fabricantes y operadores agregan al Android "de stock", que también suele ser de código cerrado y propietario. A veces son un par de aplicaciones adicionales, pero por lo general estas personalizaciones son más invasivas en forma de una interfaz de usuario diferente, como con TouchWiz de Samsung o SenseUI de HTC.

Cuando Google lanza una actualización a Android, está cambiando toda la pila de software de Android, incluido el kernel, las bibliotecas, el tiempo de ejecución, el marco y las aplicaciones. Ya puede ver dónde está la dificultad para actualizar un dispositivo. Los cambios de Google requieren que los fabricantes actualicen su código para todos los controladores para cada dispositivo específico en el teléfono/tableta. Si Samsung usa la CPU/GPU de Qualcomm en lugar de la suya, también deberán esperar a que Qualcomm actualice sus blobs binarios. Lo mismo ocurre con cualquier otra pieza de circuito: Wi-Fi, Bluetooth, módem celular, controlador de memoria flash, etc. El fabricante de cada uno de estos componentes deberá ver si los cambios de Google requieren que modifique los controladores que se incluirán en el kernel, para que el teléfono siga funcionando con normalidad.

Esta es también la razón por la cual una actualización del sistema operativo Android destinada a un teléfono específico no puede simplemente "flashearse" en otro diferente. Los diferentes modelos de teléfonos, incluso del mismo fabricante, generalmente contendrán hardware diferente, por lo que necesitarán un kernel personalizado.

Ahora considere los costos para el fabricante de actualizar cada modelo de dispositivo que fabrican cada vez que Google lanza una actualización a Android. Sus ingenieros de software deben revisar los cambios en el sistema operativo actualizado, modificar su código para cada controlador, probar exhaustivamente sus cambios para asegurarse de que no rompan nada y publicar el código final para su implementación. Ahora multiplique esto por cada modelo de teléfono que hayan lanzado desde la última actualización de Android.

Los gigantes de teléfonos celulares como Samsung o Motorola pueden permitirse este proceso en nombre de la satisfacción del cliente y la lealtad a la marca, pero los pequeños fabricantes simplemente no tienen los recursos para esto. En primer lugar, no hay ningún incentivo para que actualicen los dispositivos que probablemente ya están vendiendo con márgenes muy reducidos.

Guau. Realmente aprecio esto. Gracias. Para no restar valor a tu publicación, déjame ver si realmente entiendo esto. ¿Es que las diferentes versiones del sistema operativo Android están vinculadas al hardware del dispositivo que está vinculado a la forma en que se fabrica el código (kernal)? No será rentable "actualizar" los dispositivos Android antiguos debido al hardware antiguo integrado en ellos.
@PassingBy Eso es lo esencial, sí. Si sigue el enlace que Dan publicó en su comentario, puede ver que lo que publiqué en realidad es una simplificación excesiva del proceso de actualización real para un fabricante.