ثنائي عالمي

| انتقال أجهزة Mac إلى معالجات Intel |
|---|
|
تنسيق الثنائي العالمي هو تنسيق للملفات القابلة للتنفيذ التي تعمل بشكل أصلي إما على أجهزة Mac المستندة إلى PowerPC أو x86 أو على أجهزة Mac المستندة إلى Intel 64 أو ARM64 . نشأ التنسيق على NeXTStep باسم " ثنائيات متعددة الهندسة المعمارية "، والمفهوم معروف بشكل عام باسم ثنائي سمين ، كما هو موضح في Power Macintosh .
مع إصدار نظام التشغيل Mac OS X Snow Leopard ، وقبل ذلك، منذ الانتقال إلى معماريات 64 بت بشكل عام، استخدم بعض ناشري البرامج مثل Mozilla [1] مصطلح "عالمي" للإشارة إلى ملف ثنائي ضخم يتضمن إصدارات لكل من أنظمة i386 (32 بت من Intel) وx86_64. تُستخدم نفس الآلية المستخدمة للاختيار بين إصدارات PowerPC أو Intel لتطبيق ما أيضًا للاختيار بين إصدارات 32 بت أو 64 بت من معماريات PowerPC أو Intel.
ومع ذلك، استمرت شركة Apple في طلب التوافق الأصلي مع كل من PowerPC وIntel من أجل منح ناشري البرامج التابعين لجهات خارجية الإذن باستخدام العلامات التجارية لشركة Apple المتعلقة بالثنائيات العالمية. [2] لا تحدد شركة Apple ما إذا كان يجب على ناشري البرامج التابعين لجهات خارجية (أو ينبغي لهم) تجميع إصدارات منفصلة لجميع البنيات.
تم تقديم الثنائيات العالمية في نظام التشغيل Mac OS في مؤتمر مطوري Apple Worldwide لعام 2005 كوسيلة لتسهيل الانتقال من بنية PowerPC الحالية إلى الأنظمة القائمة على معالجات Intel، والتي بدأت في الشحن في عام 2006. تتضمن الثنائيات العالمية عادةً كل من إصدارات PowerPC و x86 من تطبيق مُجمَّع. يكتشف نظام التشغيل الثنائي العالمي من خلال رأسه، وينفذ القسم المناسب للبنية المستخدمة. يسمح هذا للتطبيق بالعمل بشكل أصلي على أي بنية مدعومة، دون أي تأثير سلبي على الأداء يتجاوز زيادة مساحة التخزين التي يشغلها الثنائي الأكبر.
بدءًا من Mac OS X Snow Leopard، يتم دعم أجهزة Mac التي تعتمد على Intel فقط، لذا فإن البرامج التي تعتمد بشكل خاص على القدرات الموجودة فقط في Mac OS X 10.6 أو الأحدث ستعمل فقط على أجهزة Mac التي تعتمد على Intel وبالتالي لا تتطلب ثنائيات Intel/PPC fat. بالإضافة إلى ذلك، بدءًا من OS X Lion ، يتم دعم أجهزة Mac التي تعمل بنظام Intel 64 بت فقط، لذا فإن البرامج التي تعتمد بشكل خاص على الميزات الجديدة في OS X 10.7 أو الأحدث ستعمل فقط على معالجات 64 بت وبالتالي لا تتطلب ثنائيات Fat 32 بت/64 بت. [3] [4] لن تكون الثنائيات Fat ضرورية إلا للبرامج المصممة لتكون متوافقة مع الإصدارات الأقدم من Mac OS X التي تعمل على أجهزة قديمة.
تم تقديم تنسيق Universal 2 الثنائي الجديد في مؤتمر المطورين العالميين لعام 2020. [5] يسمح Universal 2 للتطبيقات بالعمل على أجهزة كمبيوتر Macintosh المستندة إلى Intel x86-64 وأجهزة كمبيوتر ARM64 ، لتمكين الانتقال إلى Apple silicon .
تحفيز
هناك حلان بديلان عامان. الأول هو ببساطة توفير ملفين ثنائيين منفصلين، أحدهما مُجمَّع لهندسة x86 والآخر لهندسة PowerPC. ومع ذلك، قد يكون هذا مربكًا لمستخدمي البرامج غير المألوفين بالفرق بين الاثنين، على الرغم من أنه يمكن علاج الارتباك من خلال التوثيق المحسّن، أو استخدام أقراص مضغوطة هجينة . البديل الآخر هو الاعتماد على محاكاة هندسة واحدة بواسطة نظام يعمل بالهندسة الأخرى. يؤدي هذا النهج إلى انخفاض الأداء، ويُنظر إليه عمومًا على أنه حل مؤقت يُستخدم فقط حتى تتوفر ثنائيات عالمية أو ثنائيات مُجمَّعة خصيصًا كما هو الحال مع Rosetta .
الملفات الثنائية الشاملة أكبر من الملفات الثنائية أحادية المنصة، وذلك لأنه يجب تخزين نسخ متعددة من الكود المجمّع. ومع ذلك، نظرًا لأن بعض الموارد غير القابلة للتنفيذ مشتركة بين البنيتين، فإن حجم الملف الثنائي الشامل الناتج يمكن أن يكون، وعادة ما يكون كذلك، أصغر من الحجم المجمع لملفين ثنائيين فرديين. كما أنها لا تتطلب ذاكرة وصول عشوائي إضافية لأن نسخة واحدة فقط من هاتين النسختين يتم تحميلها للتنفيذ.
تاريخ
نشأ مفهوم الثنائي الشامل مع " الثنائيات متعددة البنيات " في NeXTSTEP ، الأساس المعماري الرئيسي لنظام التشغيل Mac OS X. يدعم NeXTSTEP الثنائيات الشاملة بحيث يمكن تشغيل صورة قابلة للتنفيذ على بنيات متعددة، بما في ذلك m68k من Motorola و x86 من Intel و SPARC من Sun Microsystems و PA-RISC من Hewlett-Packard . يستخدم NeXTSTEP وmacOS أرشيف Mach-O كتنسيق ثنائي أساسي للثنائي الشامل.
استخدمت شركة Apple سابقًا تقنية مماثلة أثناء الانتقال من معالجات 68k إلى PowerPC في منتصف التسعينيات. تُسمى هذه الملفات القابلة للتنفيذ ثنائية المنصة بالثنائيات الضخمة ، في إشارة إلى حجم ملفاتها الأكبر.
يدعم برنامج Xcode 2.1 من شركة Apple إنشاء هذه الملفات، وهي ميزة جديدة في هذا الإصدار. قد يتطلب التطبيق البسيط الذي تم تطويره مع وضع استقلال المعالج في الاعتبار تغييرات قليلة جدًا لتجميعه كثنائي عالمي، ولكن التطبيق المعقد المصمم للاستفادة من الميزات الخاصة بالهندسة المعمارية قد يتطلب تعديلات كبيرة. قد تتطلب التطبيقات التي تم إنشاؤها في الأصل باستخدام أدوات تطوير أخرى تعديلات إضافية. وقد تم تقديم هذه الأسباب للتأخير بين تقديم أجهزة كمبيوتر Macintosh التي تعمل بمعالجات Intel وتوافر تطبيقات الجهات الخارجية بتنسيق ثنائي عالمي. إن تسليم شركة Apple لأجهزة الكمبيوتر التي تعمل بمعالجات Intel قبل عدة أشهر من الجدول الزمني المعلن عنه مسبقًا هو عامل آخر في هذه الفجوة.
يأخذ برنامج Xcode 2.4 من Apple مفهوم الثنائيات العالمية إلى أبعد من ذلك، من خلال السماح بإنشاء ثنائيات بأربعة معماريات (32 بت و64 بت لكل من Intel وPowerPC)، وبالتالي السماح لملف قابل للتنفيذ واحد بالاستفادة الكاملة من قدرات وحدة المعالجة المركزية لأي جهاز Mac OS X.
التطبيقات العالمية
لقد قدم العديد من مطوري البرامج تحديثات ثنائية عالمية لمنتجاتهم منذ مؤتمر WWDC لعام 2005. واعتبارًا من ديسمبر 2008، أدرج موقع Apple على الويب أكثر من 7500 تطبيق عالمي. [6]
في 16 أبريل 2007، أعلنت شركة Adobe Systems عن إصدار Adobe Creative Suite 3 ، وهو الإصدار الأول من مجموعة التطبيقات بتنسيق Universal Binary. [7]
من عام 2006 إلى عام 2010، تم نقل العديد من تطبيقات Mac OS X إلى تنسيق Universal Binary، بما في ذلك QuarkXPress و Final Cut Studio من Apple و Adobe Creative Suite و Microsoft Office 2008 و Shockwave Player بالإصدار 11 - بعد ذلك الوقت، تم إنشاء معظمها تطبيقات Intel فقط. ستعمل برامج PowerPC غير Universal 32 بت على أجهزة Mac من Intel التي تعمل بنظام Mac OS X 10.4 و10.5 و10.6 (في معظم الحالات)، ولكن بأداء غير مثالي، حيث يجب ترجمتها أثناء التنقل بواسطة Rosetta ؛ لن تعمل على Mac OS X 10.7 Lion والإصدارات الأحدث حيث لم يعد Rosetta جزءًا من نظام التشغيل.
اي او اس
استخدمت شركة Apple نفس تنسيق الملفات الثنائية مثل الملفات الثنائية الشاملة لتطبيقات iOS افتراضيًا في مناسبات متعددة من التعايش المعماري: حوالي عام 2010 أثناء انتقال armv6-armv7-armv7s وحوالي عام 2016 أثناء انتقال armv7-arm64. يقوم متجر التطبيقات تلقائيًا بتخفيف الملفات الثنائية. لم يتم اشتقاق أي أسماء تجارية لهذه الممارسة، حيث إنها من شأن المطور فقط. [8]
يونيفرسال 2
| Mac transition to Apple silicon |
|---|
في 22 يونيو 2020، أعلنت شركة Apple عن انتقال دائم لمدة عامين من معالجات Intel x86-64 إلى Apple silicon المستندة إلى ARM64 بدءًا من macOS Big Sur في أواخر عام 2020. [9] للمساعدة في هذا الانتقال، تم تقديم ثنائي عالمي 2 جديد لتمكين تشغيل التطبيقات إما على معالجات تستند إلى x86-64 أو معالجات تستند إلى ARM64. [5]
أدوات
الأداة الرئيسية للتعامل مع (إنشاء أو تقسيم) الثنائيات العالمية هي lipoالأمر الموجود في Xcode . يمكن fileللأمر الموجود على macOS والعديد من الأنظمة الأخرى المشابهة لـ Unix تحديد الثنائيات العالمية Mach-O والإبلاغ عن دعم الهندسة المعمارية. [10] يوفر System Profiler في Snow Leopard هذه المعلومات في علامة التبويب التطبيقات .
انظر أيضا
- هندسة آبل-إنتل
- انتقال أجهزة Mac إلى معالجات Intel
- انتقال Mac إلى Apple silicon
- الدهون الثنائية
- روزيتا (برنامج)
- إكس سليمر
مراجع
- ^ "Firefox 4 for Mac OS X: Under the Hood". 10 نوفمبر 2010. تم الاسترجاع في 3 مارس 2017 .
- ^ "شعار Mac OS X العالمي: إرشادات ترخيص شعار Mac OS X العالمي" (PDF) . Apple Inc. يونيو 2007. تم الاسترجاع في 18 أكتوبر 2013 .
- ^ "Mac OS X: الأسئلة الشائعة حول نواة 64 بت". Apple Inc. 4 أكتوبر 2012. تم الاسترجاع في 18 أكتوبر 2013 .
- ^ "هل يعمل Mac OS X 10.7 "Lion" على أجهزة Mac ذات EFI 32 بت؟ كيف تتم مقارنة أداء Mac OS X 10.7 "Lion" بأداء Mac OS X 10.6 "Snow Leopard" في الاختبارات "الواقعية"؟ @ EveryMac.com". everymac.com . Kyle Media . تم الاسترجاع في 6 أكتوبر 2017 .
- ^ ab Axon, Samuel (22 يونيو 2020). "هذه هي خريطة طريق Apple لنقل أجهزة Mac الأولى بعيدًا عن Intel". Ars Technica . تم الاسترجاع في 23 يونيو 2020 .
- ^ "دليل منتجات ماكنتوش: التطبيقات الشاملة". Apple Computer . تم الاسترجاع في 22 ديسمبر 2008 .
- ^ "Adobe Ships Creative Suite 3". Adobe Systems . 16 أبريل 2007. مؤرشف من الأصل في 8 يوليو 2012. تم الاسترجاع في 18 أكتوبر 2013 .
- ^ "lipo - ملفات ثنائية الدهون في iOS والتخفيف". Stack Overflow .
- ^ Amadeo, Ron (22 يونيو 2020). "Apple announces macOS 11, "Big Sur," with an emphasis on design". Ars Technica . تم الاسترجاع في 23 يونيو 2020 .
- ^ stany (6 سبتمبر 2005). "Mac OS X: Trimming fat from Mach-O fat files". theconsultant.net . تم الاسترجاع في 18 أكتوبر 2013 .
روابط خارجية
- مركز موارد انتقال مطوري Apple
- إرشادات برمجة نظام Apple الثنائي العالمي
- مقدمة عن نظام Apple Universal Binary
