OpenEmbedded
OpenEmbedded ( OE ) هو إطار عمل لأتمتة البناء وبيئة تجميع متقاطع تُستخدم لإنشاء توزيعات لينكس للأجهزة المدمجة . [ 2 ] تم تطوير هذا الإطار بواسطة مجتمع OpenEmbedded، الذي تأسس رسميًا في عام 2003. يُعد OpenEmbedded نظام البناء الموصى به من قِبل مشروع Yocto ، وهو فريق عمل تابع لمؤسسة لينكس يُساعد الشركات التجارية في تطوير أنظمة لينكس للمنتجات المدمجة.
يعتمد نظام البناء على BitBake . يحدد ملف تكوين BitBake، المسمى "وصفة"، معلومات متنوعة مثل مواقع التبعيات ومواقع الشيفرة المصدرية، وكيفية بناء حزمة، وكيفية تثبيت حزمة مُجمّعة وإزالتها. تستخدم أدوات OpenEmbedded هذه الوصفات لجلب الشيفرة المصدرية وتعديلها، وتجميع الملفات الثنائية وربطها، وإنتاج حزم ثنائية ( deb ، rpm ، ipk)، وإنشاء صور قابلة للتشغيل .
تاريخيًا، كانت وصفات OpenEmbedded تُخزَّن في مستودع واحد، وكانت البيانات الوصفية مُهيكلة وفقًا لما يُعرف الآن باسم "OpenEmbedded-Classic". بدءًا من عام 2010، عُدِّل الهيكل لدعم العدد المتزايد باستمرار من الوصفات بشكل أفضل. قُسِّمت البيانات الوصفية للوصفات إلى طبقات متعددة. تُسمى الطبقة الأدنى، التي تتضمن بيانات وصفية مستقلة عن النظام الأساسي والتوزيع، "OpenEmbedded-Core". [ 3 ] تُطبَّق التعليمات الخاصة بالمعمارية والتطبيق والتوزيع في طبقات دعم مناسبة يمكنها تجاوز أو استكمال التعليمات من الطبقات الأدنى. بالإضافة إلى ذلك، تُدار التغييرات على الوصفات في الطبقة الأساسية الآن بنموذج السحب: فبدلاً من إرسال تغييراتهم مباشرةً إلى المستودع (كما كان الحال سابقًا)، يُرسل المطورون الآن تصحيحات إلى قائمة بريدية. عند الموافقة، يقوم مسؤول الصيانة بدمج التصحيحات (سحبها). [ 3 ]
يمكن تثبيت إطار عمل OpenEmbedded وتحديثه تلقائيًا عبر Git . [ 2 ]
يمكن استخدام برنامج OpenEmbedded Image Creator، المسمى Wic، لإنشاء ملفات صور الأقراص، وعادةً ما يكون لها امتداد .wic.
تاريخ
قام مشروع OpenEmbedded ، الذي أنشأه كريس لارسون ومايكل لاور وهولجر شورج، بدمج إنجازات OpenZaurus مع مساهمات مشاريع مثل Familiar Linux و OpenSIMpad في قاعدة بيانات مشتركة. وقد حلّ OpenEmbedded محل هذه المشاريع، واستُخدم لبناء أي منها من نفس قاعدة البيانات.
نتج مشروع OpenEmbedded-Core (OE-Core) عن دمج مشروع Yocto مع مشروع OpenEmbedded. [ 4 ] ومنذ ذلك الحين، تتم صيانة جميع وصفات الحزم من خلال OpenEmbedded-Core.
يحتوي OpenEmbedded-Core (OE-Core) على مجموعة أساسية من البيانات الوصفية، بما في ذلك الوصفات والفئات الأساسية التي يستخدمها OpenEmbedded والأنظمة ذات الصلة. [ 5 ] في هذا الهيكل، يمكن للمطورين توسيع نظام البناء دون تعديل البيانات الوصفية الأساسية، حيث تدعم طبقات مختلفة منصات أجهزة محددة وتكوينات برمجية. [ 6 ]
تُعد أداة البناء BitBake، التي طُوّرت جنبًا إلى جنب مع OpenEmbedded، بمثابة محرك تنفيذ المهام وتتولى إدارة عمليات بناء الحزم والتبعيات. [ 7 ]
التنظيم الطبقي
اعتمد مشروع OpenEmbedded-Core هذا الهيكل الطبقي عند دمجه مع Yocto، وأُضيفت إليه طبقات جديدة بمرور الوقت. [ 8 ] [ 9 ] تمثل الطبقات هيكلاً ذا طبيعة تصريحية فقط. وتُعدّ المدخلات المحددة أكثر دقة في تحديد أيّ مدخل يُوفّر أيّ حزمة. يمكن الاطلاع على نظرة عامة على الطبقات في : layers.openembedded.org/layerindex/branch/master/layers/
- طبقة المطورين
- طبقة مخصصة لوصفات Bitbake المُعرّفة من قِبل المستخدم. يضع مطورو برامج الأنظمة المُدمجة وصفاتهم هنا إذا لم يكن البرنامج متوافقًا مع الطبقة التجارية أو الأساسية.
- الطبقة التجارية
- يتم وضع الحزم والمكونات الإضافية والتكوينات من موردي البرامج مفتوحة المصدر في هذه الطبقة.
- طبقة خاصة بواجهة المستخدم
- الطبقات الموجودة حاليًا داخل طبقة meta-openembedded:
- meta-efl ( مدير نوافذ Enlightenment )
- ميتا-جنوم ( مدير نوافذ جنوم )
- meta-gpe ( مدير نوافذ GPE )
- ميتا-إكس إف سي إي ( مدير نوافذ إكس إف سي إي )
- طبقة خاصة بالأجهزة
- meta-efikamx ( أجهزة إيفيكا )
- meta-fsl-arm ( لوحات تطوير مدعومة رسميًا من شركة Freescale Semiconductor )
- meta-fsl-arm-extra ( لوحات مدعومة من مجتمع شركة فري سكيل لأشباه الموصلات )
- أجهزة محمولة فائقة ( المساعدات الرقمية الشخصية ، أجهزة المساعد الرقمي الشخصي)
- ميتا-إنتل ( أجهزة إنتل المدمجة)
- meta-nslu2 ( أجهزة NSLU2 )
- ميتا-أوبن باندورا ( أجهزة أوبن باندورا )
- الهاتف الذكي المتعدد (أجهزة الهواتف الذكية المختلفة)
- ميتا-تي ( أجهزة تكساس إنسترومنتس )
- ميتا-زيلينكس ( أجهزة زيلينكس )
- ميتا-ألترا ( أجهزة ألترا )
- ميتا-إيتوس ( أجهزة إيتوس ريسيرش يو إس آر بي إس دي آر)
- (آحرون)
- طبقة OpenEmbedded-Core
- أوبن إمبيدد كور
- ميتا-أوبن إمبيدد
التوزيعات المدعومة
في OpenEmbedded-Classic، يمكن استكمال الإعدادات من الطبقة الأساسية إلى طبقة واجهة المستخدم بواسطة توزيعات لينكس المختلفة . القائمة التالية متاحة لـ OpenEmbedded:
الأجهزة المدعومة
يتم دعم أجهزة متنوعة: [ 13 ]
- اللوحات والمعالجات
- يدعم الجهاز BeagleBoard من شركة Texas Instruments، ومجموعة متنوعة من الأجهزة التي تعتمد على وحدة المعالجة المركزية ARM.
- الهواتف الذكية
- يدعم الجهاز الهواتف الذكية مثل نوكيا N800 ونيو فري رانر .
انظر أيضاً
- Buildroot – أداة لبناء نظام لينكس
- إمديبيان جريب
- لينكس المألوف – توزيعة لينكس لأجهزة iPAQ وغيرها من أجهزة المساعد الرقمي الشخصي
- أوبن باندورا – صفحات كمبيوتر ألعاب محمولة تعرض أوصافًا مختصرة لأهداف إعادة التوجيه
- أوبن زاورس - توزيعة لينكس
- T2 SDE – مجموعة أدوات توزيع لينكس مفتوحة المصدر
مراجع
- ↑ "مطورو OpenEmbedded" . مؤرشف من الأصل بتاريخ 2012-11-09.
- 1 2 بريك، كليف؛ وآخرون (2015)، "مرحبًا بكم في OpenEmbedded" ، ويكي OpenEmbedded ، بلاكسبيرغ، فيرجينيا: openembedded.org .
- 1 2 إيغلتون، بول (2015)، "OpenEmbedded-Core" ، ويكي OpenEmbedded ، بلاكسبيرغ، فيرجينيا: openembedded.org.
- 1 2 "مشروع Yocto يواءم التكنولوجيا مع OpenEmbedded ويكسب متعاونين من الشركات" . مؤرشف من الأصل بتاريخ 11 يناير 2012.
- ↑ "OpenEmbedded-Core - Openembedded.org" . www.openembedded.org . تاريخ الاسترجاع: 19 أبريل 2026 .
- ↑ "دليل نظرة عامة على مشروع Yocto ومفاهيمه - وثائق Yocto Project® 5.3-tip" . docs.yoctoproject.org . تم الاطلاع عليه بتاريخ 19 أبريل 2026 .
- ↑ "دليل مستخدم BitBake — وثائق Bitbake 2.16" . docs.yoctoproject.org . تم الاطلاع عليه بتاريخ 19-04-2026 .
- ١ ٢ طبقات Yocto و OpenEmbedded الأساسية، مؤرشفة بتاريخ ١٩-٠٩-٢٠١١ في Wayback Machine
- ↑ "فهرس البيانات الوصفية OpenEmbedded - الطبقات" . مؤرشف من الأصل بتاريخ 22-06-2013 . تم الاطلاع عليه بتاريخ 18-06-2013 .
- ↑ "SHR" . مؤرشف من الأصل بتاريخ 2011-10-07 . تم الاطلاع عليه بتاريخ 2011-09-30 .
- ↑ بن كومبي في منتدى مطوري بالم - الجمعة 16 يوليو 2010. بناء المكتبات الثابتة. مؤرشف في 26 يوليو 2011 على موقع Wayback Machine.
- ↑ "حلول معلومات B2C" .
- ↑ "نظرة عامة على الأجهزة المدعومة من قبل الشركة المصنعة الأصلية" . تم الاطلاع عليه بتاريخ 2022-09-08 .
- ↑ دليل حزمة دعم لوحة مشروع Yocto
- ↑ "دليل تطوير مشروع Yocto" . مؤرشف من الأصل بتاريخ 16 يناير 2021. تم الاطلاع عليه بتاريخ 28 نوفمبر 2011 .
روابط خارجية
- الموقع الرسمي

- عرض تقديمي لـ OpenEmbedded في مؤتمر FOSDEM'05
- عرض تقديمي لـ OpenEmbedded في مؤتمر FOSDEM'07
- عرض تقديمي لـ OpenEmbedded في مؤتمر ELC'08
- أتمتة البناء
- لينكس المدمج
- برنامج المساعد الرقمي الشخصي
- برنامج مرخص بموجب ترخيص MIT
