We take a deep dive into HarmonyOS, Huawei’s new breakthrough OS
We’re still here in Dongguan China, attending Huawei’s 2019 Developer Conference where the company announced its long-rumored home-grown, HarmonyOS.
We’ve been trying to wrap our heads around what HarmonyOS is and what exactly it does differently from Android sine we know a lot of you are a little overwhelmed about the technical aspects of the OS. Believe us, we had to have it explained to us too multiple times before we finally got the gist of it, so here’s our deep dive and hopefully not too technical explanation of HarmonyOS:
HarmonyOS is a microKernel based OS, which essentially means it puts system components in different, segmented sections, instead of putting them into one big box as Android does. Think of kernels as the core of an operating system, containing lines of code that controls everything from the screen to the speaker to the haptic engine that controls the vibration on your phone. On Android, all of these instructions are grouped together into a big box, while a microKernel-based OS has instructions separated into self-contained boxes, or in the spirit of this explanation, Lego bricks.
The current practice today for many developers is that if they want to make Android do a specific thing for their app, they have to customize and mess with the entire box. With HarmonyOS they only have to take the Lego piece that directly corresponds to what they want to make the app do (like the screen, vibration motors, etc.). This reduces the amount of time that a developer devotes to creating an app since they don’t have to deal with extra code that doesn’t necessarily concern the app that they’re making.
Because of the modular nature of HarmonyOS, it also allows a degree of deployment and customization across a whole multitude of devices, not just smartphones. And while HarmonyOS is debuting on an Honor TV first (what Huawei refers to as a smart screen), the company envisions it as a be-all solution for many other things, like smartwatches, car head units, watches, smartphones and more.
In fact, HarmonyOS is so modular that Huawei claims it can even run on devices that only have KB of memory, which is useful for small, IoT devices like lightbulbs, water sensors, and so on.
Huawei says that the microKernel nature of HarmonyOS allows it to perform better than Android, thanks to the Deterministic Latency Engine. The engine, in a nutshell, is able to determine which function or application has priority, with apps that have to rely on lower latency taking the lead. Huawei says that the engine is able to reduce the response latency of apps by 25.7% overall.
Since Huawei is able to break down the functions of the OS into self-contained microKernels, they can use formal verification methods to reshape security and trustworthiness from the ground up in a Trusted Execution Environment (TEE). Formal Verification uses mathematical code to ensure that the lines of code in any piece of software is correct and secure. The problem with Formal Verification is that the more lines of code that needs to be checked using this method, the more computational power is needed.
Since HarmonyOS is broken up into manageable chunks of software instead of having one big box with almost 20 million lines of code, which is the case for Android, Formal Verification tests are possible with it.
Huawei is also touting the fact that there is no root access to HarmonyOS which increases security, because of the distributed nature of the microKernel system. This makes any device with HarmonyOS difficult to hijack because the decoupled nature of the OS means you’ll have to defeat multiple locks to completely take over a system, instead of just requiring root access on Android.
Because HarmonyOS is so new, Huawei is doing everything it can to help developers make apps with it. The company claims that its ARK Compiler can compile code from multiple languages like C/C++, Java, and Kotlin, which should simplify deployment for developers that are already deeply involved in Android. Huawei will also be providing IDE support that automatically adapts to varied screen layouts, controls, and interactions.
The biggest challenge for Huawei with HarmonyOS is the same challenge that Microsoft, Nokia, and BlackBerry faced when they created their own mobile OS: the app ecosystem. While Huawei is building its AppGallery platform and is aggressively pushing for many developers to come to its fold, it’s going to be a tough task to get people to switch to HarmonyOS from Android. And while Huawei isn’t planning to use HarmonyOS in smartphones immediately (its product roadmap for HarmonyOS puts smartphone deployment at least 2 or 3 years away) recent uncertainty with Google and their placement on the Entity List may force Huawei to use the OS sooner rather than later.
For now, Huawei is looking to develop HarmonyOS for the Chinese market, as Huawei CEO Richard Yu says that it’ll be sticking with Android for the meantime as consideration for its existing partners. Will we see it powering Huawei phones like the Mate 30 in a few months? We never know – while Huawei would very much like to stay with Android for the meantime, there’s a lot of other external factors at play here they can’t control.