Canonical last week released Ubuntu Core 16 for the Internet of Things to provide enhanced security and app store support for connected devices.
The platform provides regular security updates and gives independent software vendors, manufacturers and enterprises control of system updates.
Ubuntu Core 16 uses Ubuntu's snap packages technology to ensure that IoT applications access only necessary data. The operating system and kernel in Ubuntu Core also are delivered as snaps.
Ubuntu Core secures the Internet of Things and provides an app store for every device, said Mark Shuttleworth, founder of Ubuntu and Canonical.
"Ubuntu Core 16 solves two critical systemic questions: how to achieve IoT security and how to address the critical focus on software," he said.
Core AdvantagesThe Core 16 platform provides Update Control, which gives software publishers and manufacturers the ability to validate updates across the ecosystem before they are applied. That process makes the entire IoT platform transactionally upgradeable.
Thus, failures automatically are rolled back, which allows developers to update their applications regularly. All Ubuntu Core devices, from all manufacturers, will have free, regular and reliable OS security updates, according to Canonical.
The universal or device-specific snap app store provides developers with support throughout the device life cycle, from beta testing to general availability. As a result, developers can sell IoT software as easily as cloud, enterprise and mobile software.
A white label app store helps device manufacturers build a branded, differentiated device and software experience, according to Ubuntu.
"The Internet of Things will see billions of devices in all aspects of our lives," said George Grey, Linaro CEO. "Ubuntu Core 16 will help developers get their products to market quickly using snaps, bringing a new generation of Linux-based IoT smart devices to the market."
Less Hackable IoT
The new platform solves the critical issues involved with securing IoT devices, said Jason Shepherd, director of strategy and partnership for IoT at Dell.
The hacks of consumer IoT devices that have occurred so far were possible because the devices could not be updated, he said. The security available through the snappy software system makes deploying Ubuntu Core at scale very efficient for OEMs and software developers.
"Security is paramount in IoT. In many cases, very poor security was involved. There were no best practices. Security of IoT devices is all about how you deploy best practices in a layered approach," Shepherd said.
A major difference between the new Ubuntu Core 16 and the previous Core platforms is how the software updates are delivered to the device, Shuttleworth said. Updates to laptops and servers use a format that spreads the files across the entire hard drive.
"With traditional Windows and Linux, you end up with thousands of files spread across the disk. It is hard to tell where they all came from. That is very convenient for developers, because it allows them to mix and match pieces of software very easily. But it is inconvenient if you are operating many millions of devices," said Shuttleworth.
Instead, Ubuntu Core 16 zips up all the files into a single file. The snap file is one zip file that contains everything. The snap files isolate all the files needed for each component. All the kernel files are kept in one zip file. All the system files are kept in a separate zip file. Application files that change are kept on a third zip file.
"We produce updates to that device by providing an entire new version of the zip file. We allow the device to choose which file to use or to go back to a previous version because both versions are kept on the same disk," Shuttleworth said.
That process allows transactionality on the IoT devices. It allows the devices to update without consumer interaction.
Ubuntu Core 16's over-the-air updates, signed snaps and security model help developers and device manufacturers reduce their time to market. Device manufacturers can choose from a wide range of chipset, SoC and single board computer vendors supporting Ubuntu Core, such as the Raspberry Pi 2 and 3, the Qualcomm Dragonboard 410c and the Intel Joule.
Ubuntu Core could have a big impact on the developing robotics industry, which will rely heavily on IoT functionality. Robotics has the potential to impact nearly every industry, from health to space exploration, according to James Jackson, general manager of the maker and innovator group at Intel.
"This future will be based on a secure, reliable platform. We see Ubuntu Core 16 as one of those platforms, where Ubuntu is already the leading platform for ROS (robot operating system)," he said.
Getting robots from the research labs into consumers' daily lives is a challenge that Ubuntu Core 16 can help resolve, according to Brian Gerkey, CEO of the Open Source Robotics Foundation. His organization works with engineers, scientists and entrepreneurs worldwide to develop the use of robots.
"Among the many challenges arising from deploying robots into the real world, remote management and upgrading of robot software is a common and significant problem faced by the community," Gerkey said.
Ubuntu Core 16's ability to deploy ROS applications as snaps offers an opportunity to make the whole software management process easier and more secure. That, in turn, helps developers and organizations in their robotics deployment, he explained.
Making IoT Inroads
Even without the impact on robotics, IoT deployment will occur rapidly over the next few years. More than half of new business processes will incorporate some elements of IoT by 2020, Gartner has predicted.
The new Ubuntu Core delivers confined security with read-only, tamper-proof application images. They are digitally signed. That adds a critical importance to the integrity of IoT devices.
"Snaps allow developers to build and deploy applications in a format that is easily portable and upgradeable across a number of IoT devices," said Mac Devine, CTO of emerging technology and advanced innovation at IBM, "so that a cognitive relationship between the cloud and the edges of the network can be established."