The most widely deployed mobile virtualization solution
Mobile phones now pack the processing power that was once found in mainframes. But like their more massive predecessors, handsets consume ever-increasing amounts of energy, limiting time between battery charges - time intended for voice calls, surfing the Web, and running applications. If next-generation phones deserve to be called wireless/mobile, they need to spend less time plugged into the power mains and more time keeping power users connected to the Net and to their digital lives.
Today's mobile phones host an ever-expanding catalog of applications. They transmit and receive simultaneously over wireless WANs, WiFi LANs, and Bluetooth personal area networks; and they support power users' demands for always-on, always-connected lifestyles and experiences.
While mobile OSes and firmware schemes strive to manage power on their own, real mobile designs must account for the complexity of running multiple OSes on handsets with two, four or even more processor cores. Ideally, mobile software would optimize power consumption to match usage patterns, consolidating background processing and idle states onto fewer cores and spinning threads out across available cores when more oomph is needed, balancing user experience and power consumption.
Individual OSes and monolithic software stacks focus on CPU-local analog power management techniques (clock and voltage scaling) and thus do a poor job of coordinating allocation of load among multiple processor cores.
Unlike the guest OSes it manages, the OKL4 Microvisor is positioned to offer the systemwide abstractions and mechanisms that enable the implementation of a systemwide power management policy in devices where such a policy requires management of multiple processors and multiple operating systems or other software components.
The central abstraction is the creation of virtual CPUs on which operating systems and other software components execute. By enabling multiple virtual CPUs to share the same physical CPU this abstraction opens the door to the implementation of a global power management policy. This policy implementation can balance power usage and performance to meet expectations for both user experience and battery life - it can fire up all available parallel processing power for multimedia, games, and other demanding applications, or it can shepherd all processing onto a single scaled-back CPU for idling or deep sleep.
Through the abstraction of embedded virtualization, the OKL4 Microvisor tames the complexity of dispatching multi-OS workloads across multiple physical CPUs. As the systemwide resource manager, OKL4 is best positioned to support global power management policy, a role beyond the means of individual guest OSes.
Not only can OKL4 manage hardware resources and software workloads to improve performance and time between battery charges, deploying OKL4 mobile virtualization can reduce BOM costs by supporting lower-cost batteries.