OpenEmbedded

Technology
12 hours ago
8
4
2
Avatar
Author
Albert Flores

OpenEmbedded (zkratka OE) je prostředí pro automatizaci sestavování softwaru a křížový překlad používané pro tvorbu linuxových distribucí pro vestavěná zařízení. OpenEmbedded framework vyvinula komunita OpenEmbedded, která byla formálně založena v roce 2003. OpenEmbedded je doporučený buildovací systém projektu Yocto, což je pracovní skupina Linux Foundation, která pomáhá komerčním společnostem při vývoji linuxových systémů pro vestavěná zařízení.

Buildovací systém je založen na BitBake „receptech“, které udávají, jak se builduje určitý balíček, i seznamy závislostí a lokací zdrojového kódu, a instrukce, jak přeložený balíček nainstalovat nebo odstranit. Nástroje OpenEmbedded používají tyto recepty pro získání a patchování zdrojového kódu, překlad a linkování programů, vytvoření binárních balíčků (ipk, deb, rpm) a vytvoření diskových obrazů pro zavádění systému (boot).

Historicky byly kolekce OpenEmbedded receptů uloženy v jednom repozitáři a metadata byla strukturována do tvaru nyní nazývaného „OpenEmbedded-Classic“. Kolem roku 2010 začala být správa stále rostoucího množství receptů příliš složitá. +more Proto byla metadata receptu rozdělena do několika vrstev. Nejnižší vrstva obsahuje platformně nezávislá a na distribuci nezávislá metadata a nazývá se „OpenEmbedded-Core“. Instrukce závislé na architektuře, aplikaci nebo distribuci jsou aplikovány ve vhodných cílových vrstvách pro podporu cíle, a mohou mít přednost před instrukcemi z nižší vrstvy nebo je mohou doplňovat. Změny receptů v centrální (core) vrstvě se nyní spravují pomocí pull modelu: místo commitování svých změn přímo do repozitáře (což byl dřívější postup) vývojáři posílají svoje patche do elektronická konference. Schválené patche správce zahrne (pull) do projektu.

OpenEmbedded framework lze nainstalovat a automaticky aktualizovat pomocí verzovacího systému git.

Historie

Projekt OpenEmbedded vytvořil Chris Larson, Michael Lauer a Holger Schurig sloučením výsledků projektu OpenZaurus s příspěvky z projektů jako Familiar Linux a OpenSIMpad do společné kódové základny. OpenEmbedded nahradil novější verze uvedených projektů a umožňoval sestavení softwaru kteréhokoli z nich ze stejné kódové báze. +more K dispozici jsou stabilní verze pro starý OpenEmbedded-Classic, i když budoucí vývoj bude nebo je založen na novém OpenEmbedded-Core.

Projekt OpenEmbedded-Core (zkráceně OE-Core) vznikl sloučením projektu Yocto s OpenEmbedded. Jde o poslední verzi OpenEmbedded, a je v něm dostupných mnoho OE-dev receptů. +more Novější verze receptů pro balíčky mohou být portovány pouze pro OpenEmbedded-Core.

Organizace vrstev

Při sloučení s Yocto upravil OpenEmbedded-Core jeho vrstvenou strukturu a postupně byly přidány položky nové vrstvy. Struktura, která reprezentuje vrstvy, má pouze deklarativní povahu. +more Přísnější pravidla platí pro praametry určující, jaké položky patří do jakých balíčků. Vysvětlení vrstev je dostupné v.

Vývojářská vrstva : Uživatelem definovaná vrstva pro přizpůsobování Bitbake receptů. Sem vývojáři vestavěného systému umísťují svůj recept, pokud software nepatří do komerční nebo bázové vrstvy.

Komerční vrstva : Balíčky, pluginy a konfigurace od komerčních dodavatelů softwaru s otevřeným zdrojovým textem patří do této vrstvy.

Vrstva závislá na uživatelském rozhraní : Vrstvy aktuálně přítomné ve vrstvě meta-openembedded: :* meta-efl (okenní manažer Enlightenment) :* meta-gnome (okenní manažer GNOME) :* meta-gpe (okenní manažer GPE) :* meta-xfce (okenní manažer Xfce)

Hardwarově závislá vrstva :* meta-efikamx (zařízení Efika) :* meta-fsl-arm (oficiálně podporované vývojové desky Freescale Semiconductor) :* meta-fsl-arm-extra (komunitou podporované desky Freescale Semiconductor) :* meta-handheld (pro PDA) :* meta-intel (vestavěná zařízení firmy Intel) :* meta-nslu2 (zařízení NSLU2) :* meta-openpandora (zařízení Openpandora) :* meta-smartphone (různé smartfony) :* meta-ti (zařízení Texas Instruments) :* meta-xilinx (zařízení Xilinx) :* meta-altera (zařízení Altera) :* meta-ettus (SDR zařízení Ettus Research USRP) :* a další

Vrstva Yocto :* meta-yocto (vrstva projektu Yocto)

Vrstva OpenEmbedded-Core :* openembedded-core :* meta-openembedded

Podporované distribuce

V OpenEmbedded-Classic mohou být konfigurace ze základní vrstvy do UI vrstvy doplněny různými linuxovými distribucemi. Pro OpenEmbedded je dostupný následující seznam: * Ångström distribution * KaeilOS * Openmoko * Distribuce SHR * SlugOS * WebOS * a další

Podporovaný hardware

Mezi podporovaná zařízení patří:

Desky a procesory : Jsou podporovány desky BeagleBoard firem Texas Instruments, Gumstix, Nvidia Tegra a několik zařízení I. +moreMX (například řady I. MX28) firmy Freescale Semiconductor. : K podporovaným deskám patří i další dobře známé desky jako PandaBoard a další hardware. : OpenEmbedded podporuje některá zařízení řady PowerPC firmy IBM.

Smartfony : K podporovaným smartfonům patří např. Nokia N800 a Neo FreeRunner.

Portování na nový hardware : Struktura OpenEmbedded, především jeho otevřený návrh, usnadňuje úpravy OpenEmbedded na nový hardware.

Odkazy

Reference

Související články

BitBake * Buildroot * Emdebian Grip * Familiar Linux * Openpandora * OpenZaurus * Yocto (projekt)

Externí odkazy

[url=http://www. openembedded. +moreorg/]Oficiální OpenEmbedded web a wiki[/url] * [url=https://web. archive. org/web/20110727034510/http://www. linuxtogo. org/~mickeyl/tools/FOSDEM2005. pdf]Prezentace OpenEmbedded na FOSDEM'05[/url] * [url=https://web. archive. org/web/20110727040940/http://www. linuxtogo. org/~mickeyl/tools/FOSDEM2007. pdf]Prezentace OpenEmbedded na FOSDEM'07[/url] * [url=http://www. celinux. org/elc08_presentations/mlocke-elc2008-oe. pdf]Prezentace OpenEmbedded na ELC'08[/url] * [url=https://www. cumulations. com/img/openembedded-usermanual. pdf]OpenEmbedded Uživatel Manuál[/url].

Kategorie:Automatizace sestavování softwaru Kategorie:Vestavěný Linux Kategorie:Software pro PDA Kategorie:Software pod licencí MIT

5 min read
Share this post:
Like it 8

Leave a Comment

Please, enter your name.
Please, provide a valid email address.
Please, enter your comment.
Enjoy this post? Join Cesko.wiki
Don’t forget to share it
Top