قاعدة لينكس القياسية

كانت قاعدة لينكس القياسية ( LSB ) مشروعًا مشتركًا بين العديد من توزيعات لينكس تحت الهيكل التنظيمي لمؤسسة لينكس لتوحيد بنية نظام البرمجيات، بما في ذلك معيار التسلسل الهرمي لنظام الملفات . استندت LSB إلى مواصفات POSIX ، ومواصفات UNIX الموحدة (SUS)، والعديد من المعايير المفتوحة الأخرى، ولكنها وسعتها في بعض المجالات.

بحسب LSB:

يهدف مجلس معايير لينكس (LSB) إلى تطوير وتعزيز مجموعة من المعايير المفتوحة التي من شأنها زيادة التوافق بين توزيعات لينكس، وتمكين تطبيقات البرامج من العمل على أي نظام متوافق، حتى في شكلها الثنائي . إضافةً إلى ذلك، سيساعد المجلس في تنسيق الجهود الرامية إلى استقطاب موردي البرامج لنقل منتجاتهم وكتابتها لأنظمة تشغيل لينكس.

قد يتم اعتماد امتثال المنتج لمعايير LSB من خلال إجراءات الاعتماد. [ 1 ]

حددت LSB المكتبات القياسية (التي تتمحور حولها ld-lsb.so)، وعددًا من الأوامر والأدوات المساعدة التي تُوسّع معيار POSIX ، وتخطيط التسلسل الهرمي لنظام الملفات ، ومستويات التشغيل ، ونظام الطباعة، بما في ذلك برامج التخزين المؤقت مثل CUPS وأدوات مثل Foomatic ، والعديد من الامتدادات لنظام X Window . كما حددت أيضًا مرافق الإقلاع، مثل $local_fs و $network ، والتي استُخدمت للإشارة إلى تبعيات الخدمات في نصوص التهيئة بنمط System V. [ 2 ] وقدّمت كتلة التعليقات المقروءة آليًا في أعلى النص البرمجي المعلومات اللازمة لتحديد نقطة استدعاء النص البرمجي في عملية التهيئة؛ وسُمّيت هذه الكتلة برأس LSB. [ 3 ]

كان الأمر lsb_release -aمتاحًا في العديد من الأنظمة للحصول على تفاصيل إصدار LSB، أو يمكن إتاحته عن طريق تثبيت حزمة مناسبة، على سبيل المثال الحزمة redhat-lsbفي توزيعات Red Hat مثل Fedora ، [ 4 ] أو lsb-releaseالحزمة في التوزيعات المستندة إلى Debian.

توقف تحديث المعيار في عام 2015، ولا تلتزم توزيعات لينكس الحالية به أو توفره؛ ومع ذلك، lsb_releaseلا يزال الأمر متاحًا في بعض الأحيان. في 7 فبراير 2023، كتب أحد القائمين السابقين على صيانة LSB: "مشروع LSB مهجور بشكل أساسي". [ 5 ]

مثال على مخرجات LSB في طرفية (إصدار Debian 11)

التوافق مع الإصدارات السابقة

يهدف LSB إلى جعل الملفات الثنائية في مساحة المستخدم قابلة للنقل

تم تصميم LSB ليكون متوافقًا مع النظام الثنائي، وقد أنتج واجهة ثنائية مستقرة للتطبيقات (ABI) لموردي البرامج المستقلين .

لضمان التوافق مع الإصدارات السابقة، اعتمدت LSB سياسة إيقاف دعم الواجهات، مما يمنح مطوري التطبيقات وقتًا كافيًا للتكيف في حال إزالة واجهة من LSB. تُصنّف الواجهة المراد إزالتها أولًا على أنها مُهملة في إصدار LSB، وتبقى هذه الواجهة مدعومة في ذلك الإصدار وإصدارين لاحقين على الأقل من LSB. يسمح هذا للمطور بالاعتماد على كل واجهة في LSB لفترة زمنية محددة، بالإضافة إلى التخطيط للتغييرات. [ 6 ]

كان الإصدار LSB  5.0 أول إصدار رئيسي يكسر التوافق مع الإصدارات السابقة، حيث أزال Qt 3؛ ولم يكن من المضمون تشغيل التطبيقات المرتبطة ديناميكيًا بمكتبات Qt 3 على جميع التوزيعات المتوافقة مع LSB 5.0. [ 7 ]

سجل الإصدارات

  • 1.0: الإصدار الأولي 29 يونيو 2001.
  • 1.1: تم إصداره في 22 يناير 2002. تمت إضافة مواصفات خاصة بالأجهزة ( IA-32 ).
  • 1.2: صدر في 28 يونيو 2002. تمت إضافة مواصفات خاصة بالأجهزة ( معالج PowerPC 32 بت ). بدأ الاعتماد في يوليو 2002.
  • 1.2.1: تم إصداره في أكتوبر 2002. تمت إضافة إيتانيوم .
  • 1.3: تم إصداره في 17 ديسمبر 2002. تمت إضافة مواصفات خاصة بالأجهزة (Itanium، Enterprise System Architecture/390، z/Architecture).
  • 2.0: صدر في 31 أغسطس 2004
    • تم تصميم LSB كوحدات نمطية إلى LSB-Core و LSB-CXX و LSB-Graphics و LSB- I18n (لم يتم إصدارها بعد).
    • مواصفات جديدة خاصة بالأجهزة (PowerPC 64 بت ، AMD64 )
    • تمت المزامنة مع الإصدار 3 من مواصفات يونكس الموحدة (SUS).
  • 2.0.1: تم إصداره في 21 أكتوبر 2004، وهو إصدار ISO من LSB 2.0، والذي تضمن مواصفات لجميع بنى الأجهزة (باستثناء LSB-Graphics، والتي يتوفر منها إصدار عام فقط).
  • 2.1: تم إصداره في 11 مارس 2005.
  • 3.0: صدر في 1 يوليو 2005. من بين التغييرات الأخرى في المكتبة:
  • 3.1: تم إصداره في 31 أكتوبر 2005. تم تقديم هذا الإصدار كمعيار ISO/IEC 23360:2006.
  • 3.2: تم إصداره في 28 يناير 2008. تم تقديم هذا الإصدار كمعيار ISO/IEC 23360:2006.
  • 4.0: تم إصداره في 11 نوفمبر 2008. يحتوي هذا الإصدار على الميزات التالية:
  • 4.1: صدر في 16 فبراير 2011: [ 8 ]
    • تمت إزالة جافا [ 9 ]
    • تمت ترقية وحدات "الاستخدام التجريبي" من LSB 4.0، والتي تغطي الوسائط المتعددة ( ALSA ) والأمان (NSS) ووظائف سطح المكتب المتنوعة ( xdg-utils )، إلى وحدات فرعية مطلوبة.
    • مكتبات GTK+ و Cairo و CUPS المحدثة
    • تمت إضافة ثلاث مجموعات اختبار جديدة
  • 5.0: تم إصداره في 2 يونيو 2015، وقد تم تقديم هذه النسخة كمعيار ISO/IEC 23360:2021
    • مكتبة GNU C الإصدار 2.10 (لبرنامج psiginfo)
    • أول إصدار رئيسي يكسر التوافق مع الإصدارات السابقة (متوافق مع LSB 3.0، ومتوافق إلى حد كبير مع LSB 3.1 والإصدارات الأحدث، مع بعض الاستثناءات [ 10 ] ).
    • يتضمن التغييرات التي أُجريت في FHS 3.0
    •  تمت إزالة مكتبة Qt 3
    • استراتيجية الوحدات النمطية المتطورة؛ تم تصميم LSB كوحدات نمطية إلى LSB Core وLSB Desktop وLSB Languages ​​وLSB Imaging وLSB Trial Use

معيار ISO/IEC

تم تسجيل معيار LSB، الإصدار 3.1، كمعيار دولي رسمي من قبل المنظمة الدولية للمعايير (ISO) واللجنة الكهروتقنية الدولية (IEC) . وتتمثل أجزاؤه الرئيسية فيما يلي:

  • ISO/IEC 23360-1:2006 مواصفات نواة Linux Standard Base (LSB) 3.1  — الجزء 1: المواصفات العامة [ 11 ]
  • ISO/IEC 23360-2:2006 مواصفات نواة Linux Standard Base (LSB) 3.1  — الجزء 2: مواصفات معمارية IA-32
  • ISO/IEC 23360-3:2006 مواصفات نواة Linux Standard Base (LSB) 3.1  — الجزء 3: مواصفات معمارية IA-64
  • ISO/IEC 23360-4:2006 مواصفات نواة Linux Standard Base (LSB) 3.1  — الجزء 4: مواصفات معمارية AMD64
  • ISO/IEC 23360-5:2006 مواصفات نواة Linux Standard Base (LSB) 3.1  — الجزء 5: مواصفات معمارية PPC32
  • ISO/IEC 23360-6:2006 مواصفات نواة Linux Standard Base (LSB) 3.1  — الجزء 6: مواصفات معمارية PPC64
  • ISO/IEC 23360-7:2006 مواصفات نواة Linux Standard Base (LSB) 3.1  — الجزء 7: مواصفات بنية S390
  • ISO/IEC 23360-8:2006 مواصفات نواة Linux Standard Base (LSB) 3.1  — الجزء 8: مواصفات بنية S390X

يوجد أيضًا معيار ISO/IEC TR 24715:2006 الذي يحدد مجالات التعارض بين معيار ISO/IEC 23360 (مواصفات Linux Standard Base 3.1) ومعيار ISO/IEC 9945:2003 الدولي (POSIX). [ 12 ]

تم تسجيل LSB، الإصدار 5.0، أيضًا كمعيار دولي رسمي ISO / IEC .

  • ISO/IEC 23360-1-1:2021 قاعدة معيار لينكس (LSB) - الجزء 1-1: التعريفات الشائعة
  • ISO/IEC 23360-1-2:2021 قاعدة معيار لينكس (LSB) - الجزء 1-2: المواصفات الأساسية - الجزء العام
  • ISO/IEC 23360-1-3:2021 قاعدة معيار لينكس (LSB) - الجزء 1-3: مواصفات سطح المكتب - الجزء العام
  • ISO/IEC 23360-1-4:2021 قاعدة معيار لينكس (LSB) - الجزء 1-4: مواصفات اللغات
  • ISO/IEC 23360-1-5:2021 قاعدة معيار لينكس (LSB) - الجزء 1-5: مواصفات التصوير
  • ISO/IEC TS 23360-1-6:2021 معيار لينكس الأساسي (LSB) - الجزء 1-6: مواصفات الرسومات و Gtk3
  • ISO/IEC 23360-2-2:2021 قاعدة لينكس القياسية (LSB) - الجزء 2-2: المواصفات الأساسية لبنية X86-32
  • ISO/IEC 23360-2-3:2021 قاعدة معيار لينكس (LSB) - الجزء 2-3: مواصفات سطح المكتب لبنية X86-32
  • ISO/IEC 23360-3-2:2021 قاعدة معيار لينكس (LSB) - الجزء 3-2: المواصفات الأساسية لبنية IA64 (Itanium™)
  • ISO/IEC 23360-3-3:2021 قاعدة معيار لينكس (LSB) - الجزء 3-3: مواصفات سطح المكتب لبنية IA64 (Itanium TM)
  • ISO/IEC 23360-4-2:2021 قاعدة معيار لينكس (LSB) - الجزء 4-2: المواصفات الأساسية لبنية AMD64 (X86-64)
  • ISO/IEC 23360-4-3:2021 قاعدة معيار لينكس (LSB) - الجزء 4-3: مواصفات سطح المكتب لبنية AMD64 (X86-64)
  • ISO/IEC 23360-5-2:2021 قاعدة لينكس القياسية (LSB) - الجزء 5-2: المواصفات الأساسية لبنية PowerPC 32
  • ISO/IEC 23360-5-3:2021 قاعدة معيار لينكس (LSB) - الجزء 5-3: مواصفات سطح المكتب لبنية PowerPC 32
  • ISO/IEC 23360-6-2:2021 قاعدة معيار لينكس (LSB) - الجزء 6-2: المواصفات الأساسية لبنية PowerPC 64
  • ISO/IEC 23360-6-3:2021 قاعدة معيار لينكس (LSB) - الجزء 6-3: مواصفات سطح المكتب لبنية PowerPC 64
  • ISO/IEC 23360-7-2:2021 قاعدة معيار لينكس (LSB) - الجزء 7-2: المواصفات الأساسية لبنية S390
  • ISO/IEC 23360-7-3:2021 قاعدة معيار لينكس (LSB) - الجزء 7-3: مواصفات سطح المكتب لبنية S390
  • ISO/IEC 23360-8-2:2021 معيار لينكس الأساسي (LSB) - الجزء 8-2: المواصفات الأساسية لبنية S390X
  • ISO/IEC 23360-8-3:2021 قاعدة معيار لينكس (LSB) - الجزء 8-3: مواصفات سطح المكتب لبنية S390X

يمكن تنزيل المواصفتين ISO/IEC 23360 و ISO/IEC TR 24715 مجاناً من موقع ISO الإلكتروني. [ 13 ]

استقبال

على الرغم من أن LSB كان معيارًا فريدًا من نوعه، إلا أنه لم يتبعه سوى عدد قليل من توزيعات لينكس . فعلى سبيل المثال، تم اعتماد 21 إصدارًا فقط من التوزيعات لإصدار LSB 4.0، ولا سيما Red Flag Linux Desktop 6.0 و Red Hat Enterprise Linux 6.0 و SUSE Linux Enterprise 11 و Ubuntu 9.04 (Jaunty Jackalope) ؛ [ 14 ] وكان عدد التوزيعات المعتمدة لإصدار 4.1 أقل من ذلك بكثير.

تعرض مجلس البرمجيات المحلي لانتقادات [ 15 ] [ 16 ] [ 17 ] [ 18 ] لعدم أخذه مدخلات من المشاريع، وأبرزها مشروع دبيان ، خارج نطاق الشركات الأعضاء فيه.

اختيار تنسيق حزمة RPM

حددت LSB أنه يجب تسليم حزم البرامج إما كمثبت متوافق مع LSB، [ 19 ] أو (يفضل) تسليمها في شكل مقيد من تنسيق مدير حزم RPM . [ 20 ]

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

القيود المفروضة على دبيان

أدرجت دبيان دعمًا اختياريًا لـ LSB في وقت مبكر، بدءًا من الإصدار 1.1 في "woody" (3.0؛ 19 يوليو 2002)، ثم الإصدار 2.0 في "sarge" (3.1؛ 6 يونيو 2005)، ثم الإصدار 3.1 في "etch" (4.0؛ 8 أبريل 2007)، ثم الإصدار 3.2 في "lenny" (5.0؛ 14 فبراير 2009)، وأخيرًا الإصدار 4.1 في "wheezy" (7؛ 4 مايو 2013). لاستخدام حزم RPM الأجنبية المتوافقة مع LSB، يحتاج المستخدم النهائي إلى استخدام برنامج Alien الخاص بدبيان لتحويلها إلى تنسيق الحزمة الأصلي ثم تثبيتها.

كان تنسيق RPM المحدد وفقًا لمعيار LSB يحتوي على مجموعة فرعية محدودة من ميزات RPM، وذلك لمنع استخدام ميزات RPM التي لا يمكن تحويلها إلى تنسيق .deb باستخدام برنامج Alien أو برامج تحويل الحزم الأخرى، والعكس صحيح، حيث يمتلك كل تنسيق إمكانيات يفتقر إليها الآخر. عمليًا، لم تكن جميع حزم Linux الثنائية متوافقة بالضرورة مع معيار LSB، لذا على الرغم من إمكانية تحويل معظمها بين تنسيقي .rpm و .deb، إلا أن هذه العملية كانت محصورة في مجموعة فرعية من الحزم.

باستخدام Alien، كان دبيان متوافقًا مع معيار LSB من جميع النواحي، ولكن وفقًا لوصف حزمتهم lsb، [ 21 ] فإن وجود الحزمة "لا يعني أننا نعتقد أن دبيان يمتثل تمامًا لمعيار Linux الأساسي، ولا ينبغي تفسيره على أنه بيان بأن دبيان متوافق مع معيار LSB". [ 21 ]

سعت دبيان جاهدةً للالتزام بمعيار LSB، ولكن مع العديد من القيود. [ 22 ] إلا أن هذا الجهد توقف في يوليو 2015 تقريبًا بسبب قلة الاهتمام ونقص القوى العاملة داخل المشروع. [ 23 ] في سبتمبر 2015، أكد مشروع دبيان أنه بينما سيستمر دعم معيار التسلسل الهرمي لنظام الملفات (FHS)، فقد تم التخلي عن دعم معيار LSB. [ 24 ] تبعت أوبونتو دبيان في نوفمبر 2015. [ 25 ]

جودة مجموعات اختبار الامتثال

بالإضافة إلى ذلك، وُجهت انتقادات لمجموعات اختبارات الامتثال لكونها مليئة بالأخطاء وغير مكتملة، ولا سيما في عام 2005 عندما انتقد أولريش دريبر مجلس معايير البرمجيات (LSB) لسوء كتابة الاختبارات التي قد تتسبب في عدم التوافق بين التوزيعات المعتمدة من قبل المجلس، حيث يقوم بعضها بتنفيذ سلوك غير صحيح لجعل الاختبارات المعيبة تعمل، بينما يتقدم البعض الآخر بطلبات للحصول على إعفاءات من الامتثال للاختبارات ويحصل عليها. [ 26 ] كما ندد بنقص اختبار التطبيقات، مشيرًا إلى أن اختبار التوزيعات فقط لا يمكن أن يحل مشكلة اعتماد التطبيقات على سلوك محدد من قبل التنفيذ. [ 26 ]

بالنسبة للبائعين الذين يفكرون في شهادات LSB في جهودهم المتعلقة بقابلية النقل، قامت مؤسسة لينكس برعاية أداة تقوم بتحليل وتقديم إرشادات حول الرموز والمكتبات التي تتجاوز LSB. [ 27 ]

انظر أيضاً

مراجع

  1. "اعتماد تطبيق لدى مجلس إدارة لينكس" . مؤسسة لينكس . 2008. مؤرشف من الأصل في 15 يوليو 2009. تم الاطلاع عليه في 26 أبريل 2010 .
  2. "أسماء المرافق" . مواصفات لينكس الأساسية القياسية 3.1 . 2005.
  3. "اتفاقيات التعليق لبرامج بدء التشغيل" . مواصفات لينكس الأساسية القياسية 3.1 . 2005.
  4. "حزمة redhat-lsb" . fedoraproject.org . مؤرشفة من الأصل في 1 سبتمبر 2015. تم الاطلاع عليها في 15 أغسطس 2015 .
  5. "رد: أرشيف هذه القائمة البريدية" . قائمة lsb-discuss البريدية . 7 فبراير 2023. مؤرشف من الأصل في 7 أبريل 2023. تم الاطلاع عليه في 7 أبريل 2023 .
  6. "خارطة طريق LSB" . مؤسسة لينكس . 2008. مؤرشفة من الأصل في 23 يوليو 2011. تم الاطلاع عليها في 26 أبريل 2010 .
  7. "ملاحظات إصدار LSB 5.0" . linuxfoundation.org . مؤرشف من الأصل في 8 يوليو 2017. تم الاطلاع عليه في 3 يونيو 2015 . 
  8. djwm (10 مارس 2011). "إزالة جافا من لينكس ستاندرد بيس 4.1" . مؤرشف من الأصل في 7 ديسمبر 2013.
  9. "إزالة جافا من لينكس ستاندرد بيس 4.1" . h-online.com . 10 مارس 2011. تم الاطلاع عليه في 15 أغسطس 2015 .
  10. "ملاحظات إصدار LSB 5.0: إزالة Qt 3" . linuxfoundation.org . تم الاطلاع عليه في 3 يونيو 2015 . 
  11. ISO/IEC 23360-1:2006 - المواصفات الأساسية لنظام لينكس (LSB) 3.1 -- الجزء 1: المواصفات العامة . تم الاطلاع عليه بتاريخ 15 أكتوبر 2011 .
  12. ISO/IEC TR 24715:2006 - تكنولوجيا المعلومات - لغات البرمجة، وبيئاتها، وواجهات برامج النظام - تقرير فني حول التعارضات بين معيار ISO/IEC 9945 (POSIX) وقاعدة معيار لينكس (ISO/IEC 23360) . تم الاطلاع عليه بتاريخ 15 أكتوبر 2011 .
  13. "معايير المنظمة الدولية للمقاييس المتاحة للجمهور" . تم الاطلاع عليه بتاريخ 15 أكتوبر 2011 .
  14. دليل المنتجات المعتمدة على موقع linuxbase.org (12-01-2015)
  15. "bugs.debian.org" .
  16. "linuxfoundation.org" .
  17. "openacs.org" .
  18. "osnews.com" . مؤرشف من الأصل في 21 يناير 2012. تم الاطلاع عليه في 25 أغسطس 2011 .
  19. "الفصل 22. تثبيت البرامج 22.1. مقدمة" . مواصفات لينكس الأساسية القياسية 3.1 . 2005.
  20. "الفصل 22. تثبيت البرامج 22.3. قيود برنامج الحزمة" . مواصفات لينكس الأساسية القياسية 3.1 . 2005.
  21. 1 2 "ديبيان - تفاصيل حزمة lsb في ليني (مستقر) - حزمة دعم Linux Standard Base 3.2" . مشروع ديبيان . 18 أغسطس 2008. تم الاطلاع عليه في 26 أبريل 2010 .
  22. "Debian LSB" . مشروع دبيان . تم الاطلاع عليه بتاريخ 26 أبريل 2010 .
  23. "مناقشة قائمة بريد دبيان LSB" . مشروع دبيان . تم الاطلاع عليه بتاريخ 12 سبتمبر 2015 .
  24. "ديبيان تتخلى عن قاعدة لينكس القياسية" . LWN.net .
  25. "حزمة المصدر lsb 9.20150917ubuntu1 في أوبونتو" . 19 نوفمبر 2015.
  26. 1 2 دريبر، أولريش (17 سبتمبر 2005). "هل ما زلت تعتقد أن لـ LSB قيمة؟" . تم الاسترجاع في 26 أبريل 2010 .
  27. "كل ما يتعلق بمدقق تطبيقات لينكس" . مؤسسة لينكس . 2008. مؤرشف من الأصل في 16 أكتوبر 2012. تم الاطلاع عليه في 26 أبريل 2010 .

وسائط: