uClibc

في مجال الحوسبة ، تُعدّ uClibc (أو μClibc أحيانًا) مكتبة قياسية صغيرة مكتوبة بلغة C، مُصممة لأنظمة التشغيل المبنية على نواة لينكس، والمخصصة للأنظمة المدمجة والأجهزة المحمولة . كُتبت uClibc لدعم μClinux ، وهو إصدار من لينكس لا يتطلب وحدة إدارة ذاكرة ، وبالتالي فهو مناسب لوحدات التحكم الدقيقة (uCs؛ الحرف "u" هو تقريب طباعي لاتيني - وليس كتابة رومانية صحيحة ، والتي ستكون الحرف "m" - للحرف μ الذي يرمز إلى "micro"). [ 3 ]

بدأ تطوير مكتبة uClibc حوالي عام ١٩٩٩. [ ٤ ] كُتبت uClibc في معظمها من الصفر، [ ٥ ] ولكنها تضمنت شفرة من مكتبة glibc ومشاريع أخرى. [ ٦ ] يقود المشروع إريك أندرسن، والمساهم الرئيسي الآخر هو مانويل نوفوا الثالث. uClibc مرخصة بموجب رخصة جنو العمومية الصغرى ، وهي برنامج مجاني ومفتوح المصدر .

uClibc عبارة عن غلاف حول استدعاءات النظام الخاصة بنواة لينكس و μClinux .

مكتبة uClibc أصغر بكثير من مكتبة glibc ، وهي مكتبة لغة C المستخدمة عادةً مع توزيعات لينكس. بينما تهدف glibc إلى دعم جميع معايير لغة C ذات الصلة بشكل كامل عبر نطاق واسع من منصات الأجهزة وأنظمة التشغيل، تركز uClibc تحديدًا على أنظمة لينكس المدمجة. ويمكن تفعيل أو تعطيل الميزات وفقًا لمتطلبات المساحة.

يعمل برنامج uClibc على أنظمة لينكس القياسية وأنظمة لينكس التي لا تحتوي على وحدة إدارة الذاكرة (MMU ). وهو يدعم معالجات i386 و x86-64 و ARM (ترتيب البايتات الكبير/الصغير) و Atmel AVR32 و Analog Devices Blackfin و Renesas/Hitachi H8 (h8300) و Motorola m68k و MIPS (ترتيب البايتات الكبير/الصغير) و IBM PowerPC و SuperH (ترتيب البايتات الكبير/الصغير) و Sun SPARC و Renesas/NEC v850 .

يُعدّ uClibc-ng [ 7 ] نسخةً مُعدّلة من uClibc، وقد أُعلن عنها في القائمة البريدية لـ OpenWRT في يوليو 2014 بعد مرور أكثر من عامين على آخر إصدار لـ uClibc، وذلك بسبب انقطاع التواصل من قِبل مُطوّر المشروع. [ 8 ] [ 9 ] [ 10 ] في الوقت الحالي، لم يعد مُطوّر المشروع الأصلي يُصدر تحديثات، ولكنه يُشير إلى النسخة المُعدّلة uClibc-ng، التي لا تزال قيد التطوير النشط، للحصول على الإصدارات الحالية. [ 11 ]

انظر أيضاً

مراجع

  1. "µClibc" . µClibc. مؤرشف من الأصل بتاريخ 2013-04-11.
  2. "أسئلة وأجوبة uClibc: الترخيص" . uclibc.org . تم الاطلاع عليه بتاريخ 11 يوليو 2015 .
  3. تسمية uClibc تم الوصول إليها في 10 فبراير 2008.
  4. "حقوق الطبع والنشر لـ μClibc" (TXT) . تم الاطلاع عليه في 23 فبراير 2024 .
  5. "التاريخ" . الأسئلة الشائعة لـ uClibc . تم الاطلاع عليه بتاريخ 19-06-2007 .
  6. "سجل تغييرات uClibc" . مؤرشف من الأصل بتاريخ 2007-06-09 . تم الاطلاع عليه بتاريخ 2007-06-19 . دعم pthreads (مشتق من مكتبة linuxthreads الخاصة بـ glibc 2.1.3) [...] تم دمج دعم الأرقام العشوائية (rand، srand، إلخ) من glibc.
  7. ^ "uClibc-ng" . uclibc-ng.org . تم الاسترجاع 11 يوليو 2015 .
  8. برودكورب، فالديمار (20 يوليو 2014). "uClibc-ng" . قائمة بريدية openwrt-devel . مؤرشفة من الأصل في 21 يونيو 2017. تم الاطلاع عليها في 21 يونيو 2017 .
  9. بيتازوني، توماس (21 يوليو 2014). "uClibc-ng" . uclibc (قائمة بريدية). مؤرشف من الأصل بتاريخ 21-06-2017.
  10. برودكورب، فالديمار (21 يوليو 2014). "uClibc-ng" . قائمة بريدية openwrt-devel . مؤرشفة من الأصل في 21 يونيو 2017. تم الاطلاع عليها في 21 يونيو 2017 .
  11. "uClibc - آخر الأخبار" . تم الاطلاع عليه بتاريخ 9 يناير 2019 .

للمزيد من القراءة

  • كريم يغمور؛ جون ماسترز؛ جلعاد بن يوسف؛ فيليب جيروم (2008). بناء أنظمة Linux المدمجة (2  ed.). أورايلي وسائل الإعلام. ص 115 – 127. ISBN  978-0-596-52968-0.
  • فون هاجن، ويليام ل. (2006). الدليل الشامل لـ GCC، الطبعة الثانية . بيركلي، كاليفورنيا: APress. الصفحات 290-297 . ISBN  1-59059-585-8.