“Device optimisation to a particular device or SoC is a big overhead for OEMs”
Chinese multinational Huawei appears to be the first OEM trialling Google’s fledgling Fuchsia OS (operating system) on one of its platforms.
The company is working on making the potential Android replacement run on its Kirin 970 processor-powered Honor Play smartphone.
(If other OEMs are playing with the open source OS, they’re not contributing what they’re doing in its code repository…)
As Bradshaw notes: “The commit message clearly states that the engineer was able to boot the device into Zircon, Fuchsia’s kernel, but does not make any mention of the other layers of the Fuchsia stack…”
Engineers from Huawei have previously posted a number of public commits to Fuchsia’s Gerrit source code management.
Most Chinese devices run on forks of the Android Open Source Project (AOSP) which was developed by Google; essentially running like Android but without the bundle of Google Services it typically comes with in the west, owing to regulatory barriers.
Software engineer Ashley Narayanen told Computer Business Review: “Device optimisation to a particular device or SoC is a big overhead for OEMs. You do hear stories of devices shipping with juicy chips inside that the OS simply takes no advantage of as the OS developers didn’t have time to integrate support for it in time for release. The HTC Tytn II is a good example of that. In the end, the user community took it upon itself to write their own accelerated graphics driver for the chipset.”
Fuchsia OS: Remind Me…
Google already has two operating systems: Android (for mobile) and Chrome (netbooks, etc.) which is essentially just Linux running web apps, with no native development.
The Fuschsia OS, by contrast, is based on a very small custom kernel from Google called Zircon which unusually, comes with some elements written in C++.
It appears be being developed by Google as a unified platform for mobile and heavier-weight devices, potentially with applications in embedded systems too.
Market rumour suggests it will break cover with a release in 2020. Google has not commented on development progress or timelines.
Late last month Bradshaw noted that Google was testing Fuchsia’s Bluetooth capabilities by quietly bringing devices running Fuchsia to an official Bluetooth testing event.
Can’t wait to be in Berlin testing our bluetooth stack at UnPlugfest next week. Been almost two years since I was last in Berlin which is too long.
— Zac Bowling (@zbowling) October 14, 2018
(Fuchsia relies on the Flutter “app engine” which came out of beta mode this week…)
A programmer’s guide to the nascent OS that broke cover in April revealed that Google had also opted to implement Swift (an Apple-only language at present) as an option for developing applications, possibly in a bid to tempt Apple developers to have a play.
Zircon: Better Security?
Zircon device drivers run in what’s called ‘user land’, meaning they’re not given fully elevated privileges and can be isolated better. In user land, everything that a driver does has to go via the kernel first before hitting the actual computer’s resources
Microsoft security engineer David Kaplan recently noted in a substantial blog on Zircon: “Code should always run with only the required amount of privilege and unfortunately it’s not where we’re at in the industry today. Our current OSes were architected years before we really understood the security problem space and bloated up into these hard-to-defend monolithic beasts.”
He added: “I personally believe that microkernels coupled with innovative ISA extensions can go a long way to reducing the problem space and attack surface. Nintendo have something similar going on with their Switch and sure, that was hacked to shreds (for reasons orthogonal to microkernel design), but I’m still a believer in the microkernel model for general purpose computing if done right.”