
OpenEmbedded,gömülü sistemler içinLinux dağıtımları oluşturmak için kullanılan bir yapı otomasyonu çerçevesi veçapraz derleyiciler ortamıdır. OpenEmbedded çerçeve 2003 yılında resmen kurulan OpenEmbedded topluluğu tarafından geliştirilmiştir. OpenEmbedded, ticari şirketlere gömülü ürünler içinLinux tabanlı sistem geliştirilmesine yardımcı olan veLinux Foundation çalışma grubu olan Yocto Projesinin önerilen yapı sistemidir.[1]
Yapı sistemi, belirli bir paketin nasıl oluşturulduğunu belirten BitBake "tarifleri" ni temel alır, ancak bağımlılıkların ve kaynak kodlarının bulunduğu listelerin yanı sıra derlenmiş bir paketin nasıl kurulacağı ve kaldırılacağıyla ilgili talimatları da içerir. OpenEmbedded araçları, bu tarifleri kaynak kodu getirip yamalamak, ikili dosyaları derlemek ve bağlamak, ikili paketler (ipk, deb, rpm) üretmek ve önyüklenebilir görüntüler oluşturmak için kullanmaktadır. OpenEmbedded çerçevesi yüklenebilir ve otomatik olarakGit ile güncellenir.[2]
OpenEmbedded Projesi (kısaca OE-ancak, çoğunlukla OE-dev olarak adlandırılır); Chris Larson, Michael Lauer ve Holger Schurig tarafındanOpenZaurus'un kazanımlarınıFamiliar Linux gibi projelerden birleştirerek yaratılmıştır. Linux veSIMpad'i ortak bir kod tabanı haline getirir. OpenEmbedded, bu projelerin yerini almış ve bunlardan herhangi birini aynı kod tabanından oluşturmak için kullanılmıştır. Çoğu gelişme gelecekte yeni OpenEmbedded-Core temel alınsa da olacağı halde, eski OpenEmbedded-Classic için kararlı bakım yapıları bulunmaktadır.OpenEmbedded-Core Projesi (kısaca OE-Core), Yocto Projesinin OpenEmbedded ile birleştirilmesinden kaynaklanmıştır. Bu, OpenEmbedded'un en yeni sürümüdür ve OE-dev tariflerinin birçoğu OE-Core'da mevcuttur. Paket tariflerinin daha yeni sürümleri yalnızca OpenEmbedded-Core için taşınabilir.
OpenEmbedded-Core bu katmanlı yapıyı Yocto ile birleştirdi ve zamanla yeni katman girdileri eklendi. Katmanlar yalnızca bildiri niteliğindeki bir yapıya sahiptir. Belirli girdiler hangi girdinin hangi paketleri sağladığına karar verme alanında daha sıkıdır.[3]
Geliştirici katmanı - Özel Bitbake tarifleri için kullanıcı tanımlı katman. Gömülü sistem yazılım geliştiricileri, yazılım ticari veya temel katmana uymuyorsa, tarifi buraya yerleştireceklerdir.Ticari katman - Açık kaynak satıcılarının paketleri, eklentileri ve yapılandırmaları bu katmanda yer alır.
UI'ya özgü katman - Katmanlar şu anda meta-açık katıştırılmış katman içinde mevcut:[4]
Donanıma özgü katman
Yocto katmanı
OpenEmbedded-Classic'te Base'den UI Layer'a yapılan yapılandırmalar çeşitli Linux dağıtımı tarafından desteklenebilir. OpenEmbedded için şu liste mevcuttur:[5]
Çeşitli cihazlar desteklenmektedir:[6]Kartlar ve vagonetler - Texas Instruments'tanBeagleBoard,Gumstix, NvidiaTegra ve Freescale Semiconductor'dan çeşitli I.MX cihazları (örneğin I.MX28 serisi) desteklenmektedir.Pandaboard gibi diğer iyi bilinen panolar da diğer donanımlarla birlikte desteklenmektedir.IBM PowerPC serisinin bazı aygıtları OpenEmbedded tarafından desteklenir.Akıllı telefonlar -Nokia N800 veOpenmoko Neo FreeRunner gibi akıllı telefonlar desteklenmektedir.