Is Android finally like Windows? Talk about the mobile phone GPU driver upgrade.
Recently, MIUI began to push independent GPU drivers, which attracted the attention of many friends. As we all know, the hardware drivers of mobile phones can’t be installed and upgraded independently like computers. Now the situation has actually changed, and many friends have lamented that this is simply black technology.
The app store can actually push GPU driver updates?
GPU drivers can be upgraded independently, which is undoubtedly a good thing for the user experience. Through the independent driver update, the mobile phone can get the performance improvement and problem repair brought by the new driver more quickly and conveniently.
Will such a good thing happen on other Android? Is this unique technology or the general trend? Let’s talk about it.
Why can’t Android upgrade the driver separately?
The reason why Android has not been able to upgrade drivers as flexibly as Windows for a long time is closely related to the system architecture. Android is based on Linux, and Linux uses macro kernel, system kernel and driver modules. The architecture of Windows is closer to microkernel, and the separation between modules of the system is high.
The characteristics of macro kernel and micro kernel (micro-kernel-like) will be reflected in the experience of driver update push. Because the macro kernel couples the driver and the system kernel, if you want to upgrade the driver, you often need to upgrade the system; The microkernel-like system like Windows can upgrade the driver independently.
In order to be compatible with more hardware, Microsoft has also designed standard models for drivers, such as WDDM driven by graphics, UAA of audio architecture, etc. As long as the driver is written in line with WDDM, UAA and other architectures, it can be installed and upgraded by itself without changing the system kernel.
In the traditional sense of Android system architecture, it can be seen that the display driver, camera driver and so on are all packaged in the Linux kernel.
Although the macro kernel is not flexible enough in driver upgrade, it makes sense that Linux is designed this way — — Macro kernel has high coupling, which can bring higher IPC communication efficiency between processes and better performance.
Therefore, we can see that Linux is widely used in all kinds of devices with different performances. Linux can make the best use of supercomputing, and Linux can bring a smoother experience to small objects like smart bracelets.
Changes in Android: Is the driver more and more like Windows?
However, the macro kernel has encountered some challenges in the era of mobile Internet/Internet of Things. With the rapid emergence of various intelligent devices, hardware adaptation has become a problem that has to be faced.
Take Android machine as an example. Android machines in the market use different CPU, GPU, baseband, CODEC, etc. Due to the high coupling degree of macro kernel, it is difficult for Android machines to upgrade the operating system and hardware drivers separately. Regardless of whether they want to upgrade the system or the driver, manufacturers need to make a separate system image for each Android model number.
Not every manufacturer will choose to invest a lot of energy in system maintenance, which makes it difficult to upgrade the Android system and drivers, and the final result is the fragmentation of the Android system version.
To this end, Google changed the form of Android, and implemented the Project Treble mechanism in Android 8.0, separating the system (Android OS framework) from the hardware implementation, and then manufacturers can push the new version of Android for devices independently without adapting the driver again.
Project Treble greatly simplifies the upgrade process of Android system, and we can also observe that devices after Android 8.0 upgrade the Android version faster than before.
Project Treble separates Google’s Android system framework from drivers provided by hardware vendors.
But even this would not be enough In Android 10, Google implemented Project Mainline to further subdivide and modularize the system. In Android 10, 14 system components are Mainline, and system components such as media decoder, rights controller and network components can be updated through the APP store just like ordinary apps — — GPU drivers can be updated independently, which benefits from this.
It can be said that Android is becoming more and more "microkernel" through Project Treble and Project Mainline. In Android 11, which has not yet been officially released, there are as many as 20 component modules of Android, and the system maintenance of Android will become more flexible than ever, becoming more and more like a PC.
Is GPU driver upgrade black technology?
It can be seen that the reason why MIUI can update GPU drivers independently through the app store is mainly due to the characteristics of Android Project Treble and Project Mainline. As the hardware served by this update, the contribution of Qualcomm chip is also indispensable.
At the end of last year, Qualcomm announced that its latest SoC Snapdragon 865 could update the driver independently through the APP store, and the update operation was as simple as updating the app.
However, what Qualcomm said at that time was to update through Google Play Store. Because of well-known reasons, Google Play could not be used in China, so MIUI switched to its own channel to update the GPU driver, which is still very good.
Qualcomm announced that GPU drivers can be updated separately.
If there are no accidents, Qualcomm will continue to release new drivers for its chips in the future, but will all Android machines receive updates? This ultimately depends on the mobile phone OEM — — After the driver is released, it needs to be tested by OEM, and then pushed to users.
In any case, the work that OEMs need to do is much less than before, which makes it unreasonable not to provide users with driver upgrades.
At present, it seems that Qualcomm has not made it clear which chips can get independent driver updates besides Snapdragon 865. But in any case, the future of Project Mainline is bright. Since then, we are expected to get the benefits of GPU driver upgrade on more and more mobile phones. The "black technology" brought by Google will become the hope to solve the fragmentation of Android.
summary
With the development of mobile Internet and Internet of Things, in order to adapt the hardware more flexibly, the "micro-kernel" of the system seems to be a trend, which can be confirmed by the change of the system architecture of Android. I hope more hardware manufacturers will follow the new mechanism of Android and push independent drivers for all kinds of hardware in time to bring better experience to users!