CloudPhone realmente está llegando

Introducción

CloudPhone o teléfono en la nube siempre es una idea. He ejecutado el sistema Android en la máquina virtual muy temprano, en ese momento instalé un pequeño juego para jugar aviones y tuve una experiencia simple. Por supuesto, solo puede alcanzar la usabilidad, que aún está lejos de ser realmente satisfactoria. Pero ya podemos ver la tendencia futura de los teléfonos móviles. Por lo tanto, surgió un anhelo por el futuro teléfono móvil.

CloudPhone imaginario

El teléfono móvil tiene muchas funciones en la actualidad, como teléfono, cámara, juego, compras, etc. La variedad de funciones en realidad convierte el teléfono en una computadora pequeña. La tecnología de escritorio en la nube ha sido popular durante mucho tiempo, pero ha podido satisfacer las demandas básicas de la oficina. También es genial convertir un teléfono móvil en un teléfono en la nube (CloudPhone). Hay una solución VDI en el escritorio de la nube. De hecho, la máquina virtual se ejecuta en el servidor de la nube. El thin client utilizado por el usuario proporciona un sistema simple, que se utiliza principalmente para acceder a la máquina virtual remota. Como se muestra
Inserte la descripción de la imagen aquí
en la figura, en el escenario de escritorio en la nube, el problema principal es resolver tres partes.

Cliente ligero: conozca la capacidad de la interfaz del usuario para interactuar con dispositivos físicos. Por ejemplo, conecte auriculares, disco U y otras interfaces.
Servidor: para satisfacer las necesidades del usuario para el uso de la computadora y proporcionar potentes capacidades de máquina virtual.
Protocolo de acceso: enlace cliente ligero y servidor para presentar imágenes localmente. Limitado por las condiciones de la red, el diseño del protocolo debe proporcionar una pantalla de mayor calidad de imagen dentro del ancho de banda limitado.

La nube de escritorio analógica, de hecho, CloudPhone también tiene una arquitectura similar.
Acceso a teléfonos móviles: conozca las capacidades de interfaz de los usuarios que interactúan con dispositivos físicos. Habrá mucho que ofrecer para esta pieza. Hoy en día, los teléfonos móviles, altavoces, cámaras, teléfonos y mensajes de texto todavía tienen que ser locales. Asegúrese de que las funciones básicas estén disponibles cuando la red sea inestable. Se puede considerar que ha retrocedido a las necesidades de las máquinas funcionales.
Servidor: para satisfacer las necesidades de las aplicaciones inteligentes, proporcione un sistema operativo para teléfonos móviles, de modo que los usuarios tengan la misma experiencia que los teléfonos inteligentes.
Protocolo de acceso: proporciona una presentación de mayor calidad de imagen en condiciones de red existentes.

Estas suposiciones se generaron básicamente en 2016. En ese momento, la experiencia de la nube de escritorio no era realmente buena. Una era que el protocolo de escritorio no era ideal y la calidad de la pantalla no era buena. Otra máquina virtual también es débil en la virtualización de la tarjeta gráfica. Después de todo, las máquinas virtuales en ese momento todavía estaban dominadas por la potencia informática. Es bastante extravagante hacer que cada máquina virtual tenga una GPU. En ese momento, la red comenzó 4G. La infraestructura no ha satisfecho las demandas correspondientes. Por lo tanto, desde la perspectiva de la época, CloudPhone aún está fuera del alcance, y las condiciones que deben cumplirse no son solo la tecnología en sí. También se basa en el desarrollo posterior de diversas tecnologías.

Nueva era, nuevo CloudPhone

El tiempo vuela, el tiempo es como un transbordador. Pronto llegó en 2020. Huawei lanzó CloudPhone. NetEase Tencent Baidu también lanzó juegos en la nube en consecuencia. Una ronda de desarrollo tecnológico a la vez puede eventualmente convertir los sueños en realidad. Ahora es el momento de mirar CloudPhone nuevamente.
La arquitectura es realmente consistente. No hay mejora sustancial. Pero mirando el desarrollo de la tecnología, de hecho hay buenas oportunidades.

  • La popularidad de 5G: la noticia de la nueva infraestructura se ha extendido por todo el país. De hecho, 5G ha llevado a cabo reformas en varias industrias. Alto ancho de banda, baja latencia, fragmentación de red. Desde la perspectiva del entorno de red, ha mejorado mucho desde la nube hasta lo local. Esto proporciona un buen medio de soporte para la conexión de protocolo de CloudPhone.
  • La tecnología VGPU GRID VGPU-nvidia ha sido ampliamente utilizada. Con la ayuda de la virtualización de hardware, las máquinas virtuales también pueden proporcionar buenas capacidades de GPU. En tales máquinas virtuales, la potencia de visualización que ha sido criticada también se ha mejorado significativamente.
  • Virtio-GPU-Disks, tarjetas de red, etc. en la máquina virtual KVM son muy pronto para usar virtio para mejorar el rendimiento. La tarjeta gráfica no ha sido una buena solución. La virtio-GPU que apareció después se basó en la tecnología Virgl 3D. Finalmente, los comandos relacionados con la GPU se pueden transmitir de forma transparente al host para la simulación. Pero el efecto solo es compatible con 3D, no tan bueno como la virtualización de hardware.
    La comunidad recientemente utilizó Vulkan para Virtio-GPU. En teoría, debería haber mejores resultados. Cuando GRID no está disponible, el uso de la tecnología Virtio-GPU también es una opción.
  • Servidor ARM: gracias a las sanciones técnicas de Lao Mei. Actualmente hay una ola de servidores ARM. La CPU utilizada en el teléfono móvil es de la arquitectura ARM, por lo que si emula CloudPhone en el servidor ARM, evitará la molestia de tener que realizar la conversión de instrucciones en la plataforma x86_64 para ser compatible con las aplicaciones ARM. Esta pieza también acelerará el rendimiento de CloudPhone.
  • Protocolo de transmisión: los protocolos más utilizados son VNC y Spice. Parece que la visualización de la imagen no ha visto un progreso particularmente grande. Sin embargo, se encuentra que cuando Android usa la prueba adb, la imagen remota del teléfono móvil se puede presentar localmente. En comparación con la forma tradicional de obtener información de la imagen a través de la tarjeta gráfica, esta pieza es una nueva solución.

Ideas de implementación de CloudPhone

Desde el punto de vista más básico, la esencia de CLoudPhone es proporcionar un sistema operativo Android o IOS en el servidor de la nube. Por supuesto, IOS solo puede esperar que Apple nos sorprenda. Para Android, dado que es el sistema, es posible resolver el problema de simular el sistema operativo a través de diferentes niveles.

  • Hardware simulado: al igual que la idea de una máquina virtual, al simular el hardware de un teléfono móvil, engañe a Android para que piense que se está ejecutando en un hardware real de teléfono móvil. Por ejemplo, la tecnología de peces de colores utilizada actualmente. Es simular el periférico del teléfono móvil en qemu y luego proporcionarlo al sistema Android. Por supuesto, si se ejecuta en la plataforma X86 o la plataforma ARM aún requiere una cuidadosa consideración.
  • El sistema operativo-Android también se ejecuta sobre Linux. Entonces Linux mismo puede ejecutarse en plataformas x86 y ARM. Por lo tanto, la versión correspondiente también se puede formular para el sistema operativo, como Android-x86 se puede instalar en la máquina virtual. Muchas tabletas x86 actuales están usando el sistema Android-x86. Lo mismo también puede compilar el sistema Android-arm para que se ejecute en la máquina virtual ARM.
  • Ecología de la aplicación: si usa el ecosistema ARM, la aplicación está lista para usar, lo que requiere una proximidad infinita al entorno del teléfono móvil en el sistema operativo y el hardware simulado. De lo contrario, habrá flashback de la aplicación común, pantalla blanca y otros problemas. Así que cambia de opinión. Si la propia aplicación también puede hacer algunos cambios, comienza a adaptar la compatibilidad del sistema que se ejecuta en CloudPhone. Así que crea que CloudPhone realmente se moverá hacia el uso comercial.
  • La tecnología Container-Anbox consiste en convertir el sistema Android en un contenedor a través de lxc. Esta pieza omite el enlace del emulador y conecta directamente el sistema Android al hardware para mejorar el rendimiento.
    La comparación entre contenedores y máquinas virtuales no se detalla aquí.
    Android en contenedores comenzó a estar orientado a aplicaciones. Se puede inicializar una ventana para cada aplicación, y esta implementación en realidad está más en línea con la idea de los juegos en la nube. Lo que desea no es un teléfono móvil, sino un entorno limitado que puede ejecutar aplicaciones de forma remota.
    Android en la simulación proporciona una función completa de teléfono móvil, ya que lo que desea hacer depende completamente del usuario.
    Por lo tanto, estas dos tecnologías enfrentan escenarios diferentes y tienen sus propios espacios de vida. No hay diferencia entre quién es bueno y quién es malo.

Así que ahora hay varias ideas para implementar teléfonos móviles en la nube o juegos en la nube:

  • Servidor 1.x86 + emulador ARM + brazo de Android
  • 2.x86 servidor + emulador x86 + Android-x86
  • 3. Servidor ARM + emulador ARM + brazo de Android
  • 4.x86 servidor + contenedor Android-x86
  • 5. Servidor ARM + contenedor de Android-arm

Esto se trata principalmente de la forma del sistema. La elección de la APLICACIÓN es un problema ecológico. Para ser compatible con la APLICACIÓN ARM, es necesario traducir la interfaz ARM y ejecutar la APLICACIÓN ARM a través de un sistema houdini similar en x86. Pero, por un lado, habrá pérdida de rendimiento, y el otro no es muy bueno. Si utiliza el sistema ARM, no hay ningún problema ecológico, sino resolver la diferencia de rendimiento entre el servidor ARM y el servidor x86. En conjunto, no es fácil descubrir qué combinación es más adecuada para uso comercial. Por ejemplo, Tencent está dispuesto a compilar una versión x86 de King Glory. Entonces el servidor x86 + contenedor Android-x86 + x86 king glory es definitivamente la mejor opción. Por ejemplo, el servidor Kunpeng de Huawei + simulador ARM + brazo rey gloria es su mejor opción.

Resumen

La perspectiva de desarrollo de CloudPhone sigue siendo enorme, pero el patrón actual sigue siendo caótico. El desarrollo de la tecnología ha resuelto el problema del hardware básico, pero más es un establecimiento ecológico. Espero que varios fabricantes puedan usar sus propias ventajas para promover activamente el desarrollo de esta tecnología. También espero que mi sueño se pueda hacer realidad.

Publicado 6 artículos originales · Me gusta0 · Visitantes más de 10,000

Supongo que te gusta

Origin blog.csdn.net/ssdxiao0/article/details/105559477
Recomendado
Clasificación