Sign In
Forgot Password?
Sign In | | Create Account

Yocto versus Poky versus Angstrom, etc

There’s a lot of talk about Yocto and Poky and Angstrom these days.  Unfortunately, there’s also a fair amount of confusion in the terms.  In some popular websites and presentations, the terms Yocto and Poky seem to be used interchangeably.  But there are quite unsubtle differences in the terms, and these differences will continue to grow over time, as other bits and pieces of technology find their way into Yocto.  And just what, exactly is Angstrom and how does it relate to Yocto?  In this short article, I will attempt to provide some clarity around the various terms being thrown around in the Yocto space.

Yocto Project

You might find it interesting to note that it’s not “Yocto” but more properly, it’s the “Yocto Project”.  The Yocto Project is an umbrella project covering a fairly wide swath of embedded Linux technologies.  It is not a Linux distribution.  Taken directly from the Yocto Project website (www.yoctoproject.org) “…The Yocto Project™ is an open source collaboration project that provides templates, tools and methods to help you create custom Linux-based systems for embedded products regardless of the hardware architecture.”  There are two key concepts here. First, it is a collaboration.  A number of different open source projects have come together under the Yocto Project umbrella.  The second key concept is custom.  Using technology from the Yocto Project allows you to build a customized embedded Linux distribution that is suitable to your own project, rather than using a cookie-cutter, one-size-fits-all, take-it-or-leave it embedded Linux distribution.  One of the stated objectives of the Yocto Project is to make embedded Linux development and customization easier.

Yocto Project Projects

No, that’s not a typo!  It is interesting to note that the Yocto Project website currently maintains a list of projects here: www.yoctoproject.org/projects.  That page lists ten different projects that currently make up the Yocto Project.  They include the Poky “distribution” (it’s arguably more or less than that, depending on your point of view), an Eclipse plugin, and the openembedded core repository of metadata which makes up the bulk of the packages for a typical small embedded Linux distribution. Take a look at that projects page for a detailed look at the Yocto Project’s projects.

Poky

So then, what exactly is Poky?  Poky can be thought of as a reference distribution, using Yocto Project technology.  Some people use the term “build system” to refer to Poky, but I think that’s a misnomer.  Certainly there are components within Poky that together make up a build system. Poky is simply one of the projects under the Yocto Project umbrella.  Currently, Poky is the most visible and possibly the most active project within the Yocto Project.  Today, when someone mentions Yocto, many people tend to think of Poky.  Over time, this perception will surely change.

Angstrom

Angstrom is another distribution.  Angstrom is based on the OpenEmbedded project, and more specifically, the openembedded-core (often abbreviated simply oe-core) layer.  As of the date of this article, you might consider Angstrom and Poky to be close cousins, because Poky is also based on oe-core.  But Angstrom is not officially part of the Yocto Project (yet).  Discussions are underway to change that relationship to something more like siblings.  There was a long-winded discussion on the yocto mailing list about pulling Angstrom under the Yocto Project umbrella.  There was general support for doing this, but time will tell whether or not that happens. Angstrom is somewhat different in that the developers call it a binary distribution, in a similar way that you might think of Ubuntu.  One primary output of Angstrom builds is a binary package feed, allowing a developer to simply install a package on a compatible ARM target, for example, without having to compile it, in a similar manner that you might use ‘sudo apt-get install <package>’ on a Ubuntu distribution.

Summary

The Yocto Project has attracted a significant amount of industry attention, both in terms of developers and end-users.  One thing is certain.  When you take a look at the Yocto project a year from now, it will probably look different than it does today!  There are several distributions that are Yocto derived, and I’m happy to report that Mentor Embedded Linux has been recognized in the community as being one of the few options for a commercially supported embedded Linux customization platform.

More Blog Posts

About Chris Hallinan

Chris Hallinan

Chris is a technical marketing engineer for the embedded systems division of Mentor Graphics. He has more than 20 years in high tech companies in assignments ranging from engineering and engineering management, marketing, sales and business development. He spent four years as an independent development consultant porting U-Boot and the Linux kenel to custom boards. He is the author of Embedded Linux Primer, now in its 2nd edition. His writing has appeared in magazines including Linux Journal, Telecommunications Magazine, Fiber Optics Magazine and Aviation Digest.

Visit The Chris Hallinan Blog

More Posts by Chris Hallinan

Comments 1

Post a Comment
Ah, at last it's clear now! I was lost among these projects and their relation. Thank You.

KBart
2:01 PM Aug 22, 2013

Add Your Comment

Please complete the following information to comment or sign in.

(Your email will not be published)

Archives

Tags

 
Online Chat