Rate This Document
Findability
Accuracy
Completeness
Readability

Software Architecture

Figure 1 shows the Kbox cloud phone container architecture.

Figure 1 Kbox cloud phone container architecture

Android container: The closed-source component Kbox and the AOSP are used to enable basic cloud phones running Android in containers.

Kbox implements hardware emulation (including vinput, sensors, GPS, and IMEI/Wi-Fi mock) and GPU device passthrough, enabling the Android cloud phone container solution. Kbox consists of binary deliverables and demos.

  • Binary deliverables include vinput (touchscreen input module), sensors (sensor emulation), GPS (GPS emulation), IMEI/Wi-Fi mock, Gralloc (off-screen rendering), and HWC (image synthesis).
  • Demos (including MediaFramework, Vold, adbd, Init, and netd) provide patches based on open source code of the Android system.

Docker: The open source Docker software is used to provide a software operating environment for the Android system.

Operating system: Open-source Ubuntu or openEuler can be used as the Docker host OS. The integrated GPU kernel driver is shared by upper-layer container instances and drives GPUs to complete rendering. The ashmem/binder driver provides basic memory management functions for Android containers.

Hardware environment: The ARM server provides hardware for cloud phones, including GPUs, memory, and drives.