# لينكس في أنظمة آي بي إم

لينكس في أنظمة آي بي إم (بالإنجليزية: Linux on IBMZ)‏ هو المصطلح الجماعي لنظام التشغيل لينكس الذي تم تجميعه ليتم تشغيله على الأجهزة الرئيسية لIBM، وخاصة خوادم IBM Z وIBM LinuxONE. المصطلحات المشابهة التي تعني نفس المعنى هي Linux على zEnterprise ، Linux على zSeries ، Linux / 390 ، Linux / 390x ، وما إلى ذلك. تستخدم مصطلحات zLinux أو z / Linux أيضاً في بعض الأحيان، لكن هذه المصطلحات غير مشجعة من قِبل IBM لأنها تخلق التضمين إصدار Linux المقدم من IBM أو غير الموزع من IBM ، وهذا غير صحيح. (علاوة على ذلك، فإن "zLinux" بدون الشرطة المائلة غير صحيح أيضاً، لأنه برنامج، وتتضمن تسمية البرنامج شرطة مائلة: z / VM ، z / OS ، z / VSE ، وما إلى ذلك؛ وليس الأجهزة: z900 ، z13 ، إلخ.)

## نبذة في التاريخ

تم إنشاء Linux على IBM Z كجهدين منفصلين لتوصيل Linux بخوادم System / 390 من IBM. كان الجهد الأول، هو مشروع "Bigfoot"، الذي طورته شركة Linas Vepstas في أواخر عام 1998 وحتى أوائل عام 1999، بمثابة توزيع مستقل، وتم التخلي عنه منذ ذلك الحين. نشرت شركة IBM مجموعة من التصحيحات والإضافات إلى Linux 2.2.13 kernel في يوم 18 من شهر ديسمبر لعام 1999، لبدء نظام Linux الرئيسي اليوم على Z. إعلانات المنتجات الرسمية التي سرعان ما اتبعت في عام 2000، بما في ذلك Integrated Integrated Facility for Linux ومحركات IFL. Think Think Linux كان توزيعاً رئيسياً يتكون من حزم Red Hat المضافة إلى نواة IBM. قدم موزعو Linux التجاريون طبعات الحاسوب المركزي بسرعة كبيرة بعد عمل النواة الأولي.
في بداية مشاركة IBM ، تضمنت تصحيحات Linux لـ IBM Z بعض وحدات رمز الكائن فقط (OCO)، بدون الكود المصدر. بعد فترة وجيزة استبدلت شركة IBM وحدات OCO بوحدات مفتوحة المصدر. Linux on Z هو برنامج مجاني بموجب رخصة جنو العمومية (GNU General Public License).
وفقاً لشركة IBM ، بحلول شهر مايو من عام 2006، كان هناك أكثر من 1700 عميل يقومون بتشغيل نظام Linux على أجهزة الحاسب المركزية الخاصة بهم.

## الافتراضيات

الافتراضية مطلوبة بشكل افتراضي على IBM Z؛ لا يوجد خيار لتشغيل Linux على Z بدون درجة من المحاكاة الافتراضية. (فقط الطرز الأولى ذات 64 بت المركزية، z900 و z800 ، تضمنت «الوضع الأساسي» غير الظاهري.) يتم توفير الطبقة الأولى الافتراضية بواسطة معالج الموارد ونظام إدارة (PR / SM) لنشر واحد أو أكثر من الأقسام المنطقية الإفتراضية (LPARs). يدعم كل LPAR مجموعة متنوعة من أنظمة التشغيل بما في ذلك Linux على IBM Z. ويمكن أيضاً تشغيل برنامج Hypervisor يسمى بـ z / VM باعتباره الطبقة الافتراضية الثانية في LPARs لإنشاء أكبر عدد ممكن من الأجهزة الافتراضية (VM) حيث توجد موارد مخصصة لدعم LPARs معهم. KVM on z هو خيار آخر لبرنامج hypervisor .
عندما تقوم تطبيقات Linux في LPAR بالوصول إلى البيانات والتطبيقات في LPARs الأخرى مثل CICS و IBM DB2 وIMS وLinux والأنظمة الفرعية الأخرى المركزية، التي تعمل على نفس الإطار الرئيسي الفعلي، يمكنهم الاستفادة من HiperSockets – اتصالات TCP / IP سريعة فقط للذاكرة. مقارنةً بـ TCP / IP عبر بطاقات واجهة الشبكة القياسية (بطاقات NIC ، والمعروفة أيضاً باسم محولات النظام المفتوح أو OSAs في الإطارات الرئيسية)، يمكن لـ HiperSockets تحسين استجابة المستخدم النهائي (تقليل زمن انتقال الشبكة ومعالجة النفقات العامة)، والأمان (نظراً لعدم وجود اعتراض في الاتصال بالشبكة)، والموثوقية (لأنه لا يوجد فقدان في الاتصال الشبكة).
مع الموديلات zEC12 و zBC12 والنماذج الأحدث، يتم تمديد مفهوم HiperSocket إلى ما وراء حدود الماكينة المادية عبر محول RDMA عبر شبكة إيثرنت المتقاربة (RoCE) وذلك لتسهيل اتصال آمن وعالي السرعة بين الأنظمة. يمكن للتطبيقات في LPAR A في النظام A أن تستخدم HiperSockets للتواصل مع التطبيقات في LPAR B في النظام B لضمان خصائص الأمان والأداء.

## المعدات

بدءًا من Linux kernel الإصدار 4.1 الذي تم إصداره في أوائل عام 2015، يتوفر Linux on Z فقط كنظام تشغيل 64 بت متوافق مع أجهزة z / Architecture الرئيسية. سابقاً كان نظام Linux on Z متاحاً أيضاً كنظام تشغيل 31 بت متوافق مع أجهزة الحاسب المركزية القديمة التي تم تقديمها قبل طراز z900 لعام 2000. ومع ذلك، فإن توزيعات Linux kernel 64 بت و Linux 64 بت توزيعات Z لا تزال متوافقة مع التطبيقات التي تم تجميعها من أجل Linux 31 بت على Z. تاريخياً، كانت التسميتان البنائية: kernel Linux "s390" و "s390x" للتمييز بين Linux 31 بت و 64 بت على Z kernels على التوالي، ولكن "s390" يشير الآن أيضاً عموماً إلى بنية Linux واحدة على Z kernel.
يعمل نظام Linux وفقاً لمعايير التكلفة المركزية للأغراض العامة (المعالجات المركزية) وكذلك IFLs (التسهيلات المتكاملة لنظام Linux). تعد IFLs معالجات حاسب مركزي مخصصة لتشغيل نظام Linux ، إما أصلياً أو تحت برنامج Hypervisor (z / VM أو KVM على z). يعمل الرمز الصغير على تقييد IFLs من تشغيل أحمال عمل «تقليدية»، مثل z / OS ، لكنها مماثلة فعلياً لمعالجات IBM Z الأخرى. عادةً ما تكون عمليات IFL أقل تكلفة من الاستحواذ من IBM مقارنةً بالتكلفة المستندية.

## المزايا

يمنح Linux on Z مرونة تشغيل Linux مع مزايا الأجهزة المركزية التي تتحمل الأخطاء والتي يمكنها تشغيل أكثر من 90,000 عملية إدخال / إخراج في الثانية ومع متوسط الوقت بين الفشل (MTBF) الذي يمكن قياسه على مدار عقود. باستخدام المحاكاة الافتراضية، يمكن دمج العديد من الخوادم الأصغر في إطار رئيسي واحد، والحصول على بعض فوائد المركزية وخفض التكاليف، مع السماح للخوادم المتخصصة في نفس الوقت. بدلا من الظاهرية الافتراضية، يمكن لمعدات وخوادم وأجهزة IBM الكبيرة استخدام المحاكاة الافتراضية الكاملة، التي تسمح كثافة حجم العمل أكبر بكثير من الظاهرية الافتراضية. يؤدي الجمع بين المحاكاة الافتراضية الكاملة للأجهزة بالإضافة إلى حاويات Virtual Machine خفيفة الوزن التي تقوم بتشغيل Linux بمعزل (تشبه إلى حد ما من حيث مفهوم Docker) إلى نظام أساسي يدعم خوادم افتراضية أكثر من أي خادم آخر في مساحة واحدة، والتي يمكن أن تخفض أيضاً تكاليف التشغيل. يمكن تحقيق عمليات توفير إضافية أخرى من خلال انخفاض الحاجة إلى مساحة الأرضية والطاقة والتبريد وأجهزة الشبكات والبنية التحتية الأخرى اللازمة لدعم مركز البيانات. تتيح حواشي IBM الرئيسية الاستخدام الشفاف لخطوات تنفيذ المعالج الزائدة وفحص النزاهة، وهو أمر مهم للتطبيقات الهامة في بعض الصناعات مثل الأعمال المصرفية.
عادة ما تسمح الإطارات الرئيسية بتبديل الأجهزة بسرعة، مثل المعالجات والذاكرة. يوفر IBM Z تحمل الأخطاء لجميع المكونات الرئيسية، بما في ذلك المعالجات والذاكرة و I / O Interconnect وإمدادات الطاقة ومسارات القنوات وبطاقات الشبكة وغيرها. من خلال المراقبة الداخلية، يتم اكتشاف المشكلات المحتملة وتصميم مكونات المشكلة بحيث يتم تبديلها دون حتى فشل إحدى المعاملات. في حالة حدوث عطل نادر، تقوم البرامج الثابتة تلقائياً بتمكين مكون إضافي، وتعطيل المكون الفاشل، وإخطار IBM بإرسال ممثل خدمة. هذا شفاف لنظام التشغيل، مما يسمح بإجراء إصلاحات روتينية دون إيقاف تشغيل النظام. تستمر العديد من الصناعات في الاعتماد على أجهزة الحاسب المركزية حيث تعتبر الخيار الأفضل من حيث الموثوقية أو الأمان أو التكلفة.

## التسعير والتكاليف

Linux on Z غير مناسب بشكل عام للمباني الخاصة بالشركات الصغيرة التي سيكون لديها أقل من حوالي 10 خوادم Linux موزعة، على الرغم من أن بعض البرامج المرخصة لكل معالج يمكن أن تقلل بسرعة من هذه القاعدة الأساسية. معظم بائعي البرامج، بما في ذلك IBM ، يتعاملون مع IFLs عالية المحاكاة تماماً مثل المعالجات غير الافتراضية على منصات أخرى لأغراض الترخيص. بمعنى آخر، لا يزال حساب IFL واحد يعمل على نسخ من مثيلات Linux يعتبر عادةً وحدة المعالجة المركزية «العادية»، بنفس سعر وحدة المعالجة المركزية، لترخيص البرنامج. يمكن تشغيل مثيلات الاختبار والتطوير وضمان الجودة والتدريب وخوادم الإنتاج الزائدة عن الحاجة على IFL واحد (أو أكثر من IFL ، ولكن فقط إذا لزم الأمر لقدرة أداء الطلب القصوى). وبالتالي، إلى جانب الحد الأدنى، يمكن أن يصبح Linux on Z سريعاً من حيث التكلفة عند حساب تكاليف العمالة والبرامج.
ليست معادلة التكلفة لنظام Linux على Z مفهومة جيداً ومثيرة للجدل دائماً، ويواجه العديد من الشركات والحكومات صعوبة في القياس، إلى جانب اتخاذ قرارات تستند إلى أقل بكثير على البرامج واليد العاملة وغيرها من التكاليف (مثل تكاليف الانقطاعات الأمنية وانقطاعات الأمان). غالباً ما تكون تكاليف الاستحواذ أكثر وضوحاً، والخوادم الصغيرة غير القابلة للتطوير «رخيصة». ومع ذلك، فإن تكاليف عدم الاقتناء ليست أقل واقعية وعادة ما تكون أكبر بكثير من أسعار شراء الأجهزة. أيضاً، يواجه المستخدمون الفرديون والإدارات ضمن الشركات الكبرى والحكومات أحياناً صعوبة في مشاركة البنية التحتية للحوسبة (أو أي موارد أخرى، لهذه المسألة)، مع الإشارة إلى فقدان السيطرة. مركزية الخوادم، كما يوفر Linux on Z ، قد تكافئ التعاون مع خدمة أفضل وتكاليف أقل، لكن هذا لا يعني أن التعاون يتم دائماً بسهولة داخل بيروقراطية الشركات.
يدعم Linux on Z أيضاً أجهزة تخزين الأقراص الأقل تكلفة من z / OS لأن Linux لا يحتاج إلى مرفق FICON أو ESCON ، على الرغم من أن z / OS قد يستخدم مساحة القرص بشكل أكثر فاعلية، بالتوازن، بسبب ضغط قاعدة البيانات بمساعدة الأجهزة الشائعة على z / OS وعدد أقل من مثيلات نظام التشغيل z / OS التي هي بالعادة ما تكون متطلب. هناك أيضاً بعض المزايا التشغيلية التي تستخدم بعض وحدات التخزين المرتبطة بـ FICON مع Linux على Z ، على سبيل المثال دعم z / VM Live Guest Relocation.

## أعباء العمل المناسبة

تم تصميم خصائص حاسب مركزي لأعباء العمل التجارية مثل معالجة المعاملات (خاصةً مع معالجة الدُفعات المتزامنة ذات الحجم الكبير) وإدارة قاعدة البيانات الكبيرة. يؤكد تصميم حاسب مركزي تقليدياً على الأداء «المتوازن» لجميع عناصر الحوسبة بما في ذلك المدخلات / المخرجات، التي يتم تنفيذها عبر القناة I / O. تعمل الإطارات الرئيسية على إلغاء تحميل I / O ، وحساب النظام، ومهام الحوسبة غير الأساسية الأخرى من وحدات المعالجة المركزية الرئيسية قدر الإمكان، كما تقوم z / Architecture بإلغاء تحميل حسابات التشفير. على سبيل المثال، في آلة واحدة من طراز z13 من IBM ، يتوفر ما يصل إلى 141 من مراكز المعالج لتكوينها باعتبارها IFLs. ومع ذلك، يحتوي كل جهاز أيضاً على 27 مركزاً رئيسياً إضافياً: 2 كقطع غيار، 1 لدعم البرامج الثابتة، والباقي يعمل بنظام المحاسبة ومهام دعم الإدخال / الإخراج. بالإضافة إلى ذلك، يحتوي كل محول I / O عادةً على معالجات PowerPC ، ويدعم z13 مئات محولات I / O. هناك أيضاً معالجات منفصلة تتولى مهام التحكم في الذاكرة وذاكرة التخزين المؤقت، والرصد البيئي، والتوصيلات الداخلية، كأمثلة.
تاريخياً، لم تنفذ الحاسبات الرئيسية عموماً و Linux على Z على وجه الخصوص العمليات الحسابية للمهام الفردية «المكثفة لوحدة المعالجة المركزية» ذات الأداء العالي بشكل ملحوظ مقارنةً ببعض المنصات الأخرى مع بعض الاستثناءات البارزة مثل حسابات التشفير. وشملت الأمثلة معظم المحاكاة العلمية والتنبؤ بالطقس والنمذجة الجزيئية. أجهزة الحواسب العملاقة، بما في ذلك أجهزة الحاسب العملاقة لينكس على أساس، تتفوق في هذه أعباء العمل. هذا التشعب بين أجهزة الحاسب المركزية والأنظمة الأساسية الأخرى قد أصبح غير واضح بشكل كبير في السنوات الأخيرة، بدءًا من إدخال نظام z10 لعام 2008، وهو جهاز قائم على نظام رباعي النواة 4.4 معالجات جيجاهرتز مع الأجهزة الفاصلة العائمة . نظراً لاستمرار تطور تقنية المعالج الرئيسي، خاصةً مع طرح طرازي IBM LinuxONE و IBM z13 في عام 2015.
بدأت IBM في الترويج للأجهزة والأنظمة الرئيسية والإطارات كأنها منصات مثالية لتشغيل التحليلات في الوقت الفعلي وغيرها من المهام المكثفة حسابياً التي لم تقم بها الإطارات الرئيسية تاريخياً لتعمل بشكل جيد. باعت IBM خط إنتاج خادم X86 إلى Lenovo في عام 2014.
لا توفر الإطارات الرئيسية رسومات أو محولات صوت، كما أنها غير مناسبة لتحرير الوسائط الرقمية أو التصميم بمساعدة الحاسب (CAD) باستثناء ربما في أدوار الدعم (مثل تخزين المحتوى، وقوائم جرد الأجزاء، وإدارة البيانات الوصفية، وخدمات الأمن، وما إلى ذلك)

## الدعم

مثل جميع إصدارات Linux الأخرى، يخضع نظام Linux on Z لترخيص برنامج GPL المجاني. تتوفر شفرة المصدر الكاملة لنظام Linux on Z من العديد من الأطراف على أساس مجاني ومتساوي، والدعم المعماري جزء من جهد Linux kernel الرئيسي. تقوم IBM بتخصيص العديد من مبرمجيها لجهد المجتمع، لكن IBM ليست هي المشارك الوحيد بأي حال من الأحوال.
على الرغم من عدم وجود أي عوائق أمام تشغيل أي توزيع Linux على Z على نظام IBM z ، فإن IBM تقوم بشكل دوري وروتيني باختبار ثلاثة توزيعات خاصة لنظام Linux على Z: Red Hat ، SUSE ، ، وبدءًا من عام 2015، Ubuntu Linux من Canonical . تشمل توزيعات Linux الأخرى البارزة على توزيع Debian و Fedora و Slackware و CentOS وGentoo.
تتوفر كل حزمة برامج مجانية أو مفتوحة المصدر متوفرة لنظام Linux بشكل عام لنظام Linux على Z ، بما في ذلك Apache HTTP Server وSamba software و JBoss وPostgreSQL وMySQL وPHP ولغة برمجة Python ونظام Concurrent Versions System (CVS) ومجموعة GNU Compiler Collection (GCC)، LLVM ، وPerl ، Rust ، وغيرها الكثير.
تقدم Red Hat و SUSE دعماً رئيسياً لتوزيعاتهما التي تعمل بنظام Linux على Z. في عام 2015، أعلنت Canonical عن خطط لتقديم دعم رسمي لتوزيعها الذي يبدأ في أوائل عام 2016. كما تقدم IBM Global Services عقود دعم، بما في ذلك تغطية 24 × 7. بعض تطبيقات برامج Linux القياسية متاحة بسهولة مسبقاً، بما في ذلك حزم برامج المشاريع ذات المصدر المفتوح الشائعة مثل WebSphere و DB2 وقواعد بيانات وتطبيقات Oracle و SAP R / 3 وSAP ERP وو Java Developer's Kit (JDK)، على سبيل المثال لا الحصر.

## موارد المطورين

توفر IBM موارد للمطورين الذين يرغبون في استهداف Linux لـ z:
* Linux Test Drive ، برنامج مجاني يمنح Linux واحداً على جهاز ظاهري IBM Z لمدة 30 يوماً.
* تطبيق IBM Systems Application Advantage لنظام التشغيل Linux Chiphopper ، وهو برنامج مطور لمساعدة المطورين على كتابة ونشر برامج Linux عبر الأنظمة الأساسية.
* نظام تطوير المجتمع لنظام Linux على برنامج IBM Z (CDSL)، وهو نظام أساسي يوفر للمطورين ذوي المصادر المفتوحة منصة للانتقال إلى Linux على System z.
* Linux Development Program ، برنامج دعم مطور موسع قائم على الرسوم.
Linux on Z يدعم Unicode وASCII تماماً مثل أي توزيع Linux آخر — فهو ليس نظام تشغيل يستند إلى EBCDIC. ومع ذلك، للراحة، Linux قادر على قراءة معلمات kernel في EBCDIC. (z) / VM يستفيد من هذه القدرة ايضاً.
يعد نقل تطبيقات Linux إلى Linux على Z واضحاً إلى حد ما. تشمل المشكلات المحتملة endianness (Linux on Z هو endian كبير) والاعتماد على المكتبات غير المحمولة خاصةً إذا لم يكن كود المصدر متاحاً. يمكن بسهولة ترجمة البرامج إلى ثنائيات العمارة / z على أنظمة Linux غير المركزية.

### المحاكيات

يوجد على الأقل ثلاثة برامج محاكاة من نوع IBM Z المركزية.
* FLEX-ES من البرامج الأساسية هو خيار معروض تجارياً.
* يدعم محاكي Hercules مفتوح المصدر Linux على IBM Z (ويمكن تشغيله حتى على Linux على System z نفسه).
* في عام 2010، قدمت IBM مطور Rational Developer لـ System z Unit Test Feature (تسمى الآن Rational Development and Test Environment for z ، أو أحياناً RDTz كاختصار) مما يوفر بيئة تنفيذ مقيدة الاستخدام يمكن تشغيلها على أجهزة X86. تقصر شروط ترخيص IBM استخدام RDTz على بعض مهام تطوير التطبيقات، وليس بما في ذلك التجميع النهائي قبل الإنتاج أو اختبار ما قبل الإنتاج (مثل اختبار الإجهاد). يتضمن RDTz z / OS (مع برنامج وسيط مشترك) ومتوافق أيضاً مع Linux على Z.

## إنظر أيضاً

* مقارنة توزيعات لينكس