Umumjahon ikkilik - Universal binary

Universal dasturni ko'rsatish uchun ishlatiladigan logotip

The universal ikkilik formati, ichida olma til bilan aytganda, uchun format bajariladigan fayllar bu ikkalasida ham tabiiy ravishda ishlaydi PowerPC yoki Intel - ishlab chiqarilgan IA-32 yoki Intel 64 asoslangan Macintosh kompyuterlar. Format kelib chiqishi Keyingi qadam kabi "Ko'p arxitektura binarlari ", va kontseptsiya odatda a nomi bilan mashhur yog 'ikkilik, ko'rinib turganidek Quvvatli Macintosh.

Ning chiqarilishi bilan Mac OS X Snow Leopard va undan oldin, ko'chib o'tgandan beri 64-bit kabi arxitekturalar, masalan, ba'zi dasturiy ta'minot nashrlari Mozilla[1] i386 (32-bit Intel) va x86_64 tizimlari uchun tuzilmalarni o'z ichiga olgan semiz ikkilikni nazarda tutish uchun "universal" atamasidan foydalanganlar. Ilovaning PowerPC yoki Intel tuzilmalari o'rtasida tanlov qilish uchun ishlatiladigan mexanizm, shuningdek PowerPC yoki Intel arxitekturalarining 32 yoki 64 bitli to'plamlari o'rtasida tanlov qilish uchun ishlatiladi.

Biroq, Apple uchinchi tomon dasturiy ta'minot noshirlariga Apple-ning universal ikkilik bilan bog'liq savdo belgilaridan foydalanishga ruxsat berish uchun PowerPC va Intel bilan mahalliy muvofiqlikni talab qilishni davom ettirdi.[2] Apple bunday uchinchi tomon dasturiy ta'minot noshirlari barcha arxitekturalar uchun alohida tuzilmalarni to'plashi kerakmi yoki yo'qligini aniqlamaydi.

Universal ikkiliklar 2005 yilda Mac OS-ga kiritilgan Apple Worldwide Dasturchilar Konferentsiyasi mavjud PowerPC arxitekturasidan 2006 yilda etkazib berishni boshlagan Intel protsessorlariga asoslangan tizimlarga o'tishni engillashtirish vositasi sifatida. Universal ikkiliklar, odatda PowerPC va x86 kompilyatsiya qilingan dasturning versiyalari. The operatsion tizim sarlavhasi bilan universal ikkilikni aniqlaydi va foydalanilayotgan arxitektura uchun tegishli bo'limni bajaradi. Bu dasturni har qanday qo'llab-quvvatlanadigan arxitekturada tabiiy ravishda ishlashga imkon beradi, bu esa katta hajmdagi ikkilik tomonidan qabul qilinadigan bo'sh joy hajmining oshishiga salbiy ta'sir ko'rsatmaydi.

Mac OS X Snow Leopard-dan boshlab, faqat Intel-ga asoslangan Mac-lar qo'llab-quvvatlanadi, shuning uchun faqat Mac OS X 10.6 yoki undan keyingi versiyalaridagi imkoniyatlarga bog'liq dastur faqat Intel-ga asoslangan Mac-larda ishlaydi va shuning uchun Intel / PPC-ning yog 'ikkiliklarini talab qilmaydi. . Bundan tashqari, bilan boshlanadi OS X Lion, faqat 64-bitli Intel Mac-lari qo'llab-quvvatlanadi, shuning uchun OS X 10.7 yoki undan yangi versiyasidagi yangi xususiyatlarga bog'liq dastur faqat 64-bitli protsessorlarda ishlaydi va shuning uchun 32-bit / 64-bitli yog 'ikkiliklarini talab qilmaydi.[3][4] Yog 'ikkiliklari faqat mo'ljallangan dastur uchun kerak bo'ladi orqaga qarab muvofiqligi ning eski versiyalari bilan Mac OS X eski apparatda ishlash.

Yangi Universal 2 ikkilik format 2020 yilgi Butunjahon ishlab chiquvchilar konferentsiyasida joriy qilingan.[5] Universal 2 ilovalarning ikkalasida ham ishlashiga imkon beradi Intel x86-64 asoslangan va ARM64 asoslangan Macintosh kompyuterlarni yoqish uchun Apple kremniyiga o'tish.

Motivatsiya

Ikkita umumiy muqobil echimlar mavjud. Birinchisi, x86 arxitekturasi va PowerPC arxitekturasi uchun tuzilgan ikkita alohida ikkilik fayllarni taqdim etishdir. Biroq, bu ikkalasi o'rtasidagi farqni bilmagan dasturiy ta'minot foydalanuvchilari uchun chalkashliklarni keltirib chiqarishi mumkin, garchi chalkashliklar hujjatlarni takomillashtirish yoki ulardan foydalanish orqali bartaraf etilishi mumkin gibrid kompakt-disklar. Boshqa alternativa - ishonish taqlid qilish boshqa arxitekturani boshqaradigan tizim tomonidan bitta me'morchilikning. Ushbu yondashuv past ishlashga olib keladi va odatda faqat universal ikkiliklar yoki maxsus tuzilgan ikkilik fayllar mavjud bo'lgunga qadar foydalanish uchun vaqtinchalik echim deb hisoblanadi. Rozetta.

Universal ikkiliklar bitta platformali ikkiliklardan kattaroqdir, chunki kompilyatsiya qilingan kodning bir nechta nusxalari saqlanishi kerak. Biroq, ba'zi bir bajarilmaydigan manbalar ikkita arxitektura tomonidan taqsimlanganligi sababli, natijada paydo bo'ladigan universal ikkilikning hajmi ikkala ikkilikning umumiy sonidan ham kichikroq bo'lishi mumkin. Bundan tashqari, ular ortiqcha narsalarni talab qilmaydi Ram chunki ijro uchun ushbu ikki nusxadan faqat bittasi yuklangan.

Tarix

Umumjahon ikkilik tushunchasi "Ko'p arxitektura binarlari "ichida Keyingi qadam, ning asosiy me'moriy poydevori Mac OS X. NeXTSTEP universal ikkiliklarni qo'llab-quvvatlaydi, shunda bitta bajariladigan rasm bir nechta arxitekturada ishlashi mumkin, shu jumladan Motorola "s m68k, Intel "s x86, Quyosh mikrosistemalari "s SPARC va Hewlett-Packard "s PA-RISC. NeXTSTEP va macOS-dan foydalanish Mach-O arxiv universal ikkilik asosida joylashgan ikkilik format sifatida.

Dan o'tish paytida Apple ilgari shunga o'xshash texnikani qo'llagan 68k 1990-yillarning o'rtalarida PowerPC-ga protsessorlar. Ushbu ikki platformali bajariladigan fayllar deyiladi semiz ikkiliklar, ularning katta hajmiga murojaat qiling.

Olmalar Xkod 2.1 ushbu fayllarni yaratishni qo'llab-quvvatlaydi, ushbu versiyadagi yangi xususiyat. Bilan ishlab chiqilgan oddiy dastur protsessor mustaqilligi universal ikkilik sifatida kompilyatsiya qilish uchun juda ozgina o'zgarishlar talab qilinishi mumkin, ammo arxitekturaga xos xususiyatlardan foydalanish uchun mo'ljallangan murakkab dastur sezilarli darajada o'zgartirishni talab qilishi mumkin. Dastlab boshqa ishlab chiqish vositalari yordamida tuzilgan ilovalar qo'shimcha modifikatsiyani talab qilishi mumkin. Ushbu sabablar Intel-ga asoslangan Macintosh kompyuterlarini joriy qilish va uchinchi tomon dasturlarining universal ikkilik formatdagi mavjudligi o'rtasidagi kechikish uchun berilgan. Apple kompaniyasining Intel asosidagi kompyuterlarini ilgari e'lon qilingan jadvalidan bir necha oy oldin etkazib berishi bu bo'shliqning yana bir omilidir.

Olmalar Xkod 2.4 universal arxitektura kontseptsiyasini yanada kengaytiradi, to'rtta arxitektura ikkiliklarini yaratishga imkon beradi (Intel va PowerPC uchun 32 va 64 bit), shuning uchun bitta bajariladigan faylga har qanday CPU imkoniyatlaridan to'liq foydalanishga imkon beradi. Mac OS X mashina.

Umumjahon dasturlar

Ko'pgina dasturiy ta'minot ishlab chiqaruvchilari 2005 yilgi WWDC dan beri o'z mahsulotlariga universal ikkilik yangilanishlarni taqdim etishdi. 2008 yil dekabr holatiga ko'ra Apple veb-saytida 7500 dan ortiq Universal dasturlari ro'yxati berilgan.[6]

2007 yil 16 aprelda, Adobe tizimlari ning chiqarilishini e'lon qildi Adobe Creative Suite 3, dasturlar to'plamining Universal Binary formatidagi birinchi versiyasi.[7]

2006 yildan 2010 yilgacha ko'plab Mac OS X dasturlari Universal Binary formatiga ko'chirildi, shu jumladan QuarkXPress, Apple kompaniyasining o'zi Final Cut Studio, Adobe Creative Suite, Microsoft Office 2008 va Shockwave Player 11-versiya bilan - shu vaqtdan keyin ko'pchilik faqat Intel dasturlari ishlab chiqarildi. Universal bo'lmagan 32-bitli PowerPC dasturlari Mac OS X 10.4, 10.5 va 10.6 operatsion tizimlarida ishlaydigan Intel Mac-larida ishlaydi (aksariyat hollarda), lekin unchalik maqbul bo'lmagan ishlash bilan, chunki ularni to'g'ridan-to'g'ri tarjima qilish kerak Rozetta; ular Mac OS X 10.7 Lion-da ishlamaydi va keyinchalik Rosetta endi OS tarkibiga kirmaydi.

iOS

Apple Universal Binaries uchun bir xil ikkilik formatidan foydalangan iOS Arxitektura bilan birgalikda yashashning ko'p holatlarida sukut bo'yicha dasturlar: 2010 yil atrofida armv6-armv7-armv7s o'tish davrida va 2016 yilda armv7-arm64 o'tish davrida. The Uskunalar Do'koni avtomatik ravishda ikkiliklarni yupqalashtiradi. Ushbu amaliyot uchun hech qanday savdo nomlari olinmagan, chunki bu faqat ishlab chiquvchini tashvishga soladi.[8]

Universal 2

2020 yil 22-iyunda Apple ikki yillik doimiy o'tishni e'lon qildi Intel x86-64 - asoslangan protsessorlar ARM64 asoslangan Olma kremniy bilan boshlangan macOS Big Sur 2020 yil oxirida.[9] Ushbu o'tishda yordam berish uchun dasturlarning ikkalasida ham ishlashga imkon beradigan yangi Universal 2 ikkilik versiyasi taqdim etildi x86-64 asoslangan protsessorlar yoki ARM64 asosidagi protsessorlar.[5]

Asboblar

Universal ikkiliklarni boshqarish (yaratish yoki ajratish) uchun asosiy vosita bu lipo buyruq topildi Xkod. The fayl macOS va boshqa bir nechta buyruqlar Unixga o'xshash tizimlar Mach-O universal ikkiliklarini aniqlashi va arxitekturani qo'llab-quvvatlashi mumkin.[10] Qor qoploni "s Tizim profillari ushbu ma'lumotni Ilovalar yorliq.

Shuningdek qarang

Adabiyotlar

  1. ^ "Mac OS X uchun Firefox 4: qalpoq ostida". 2010 yil 10-noyabr. Olingan 3 mart, 2017.
  2. ^ "Mac OS X Universal logotipi: Mac OS X Universal logotipi uchun litsenziyalar" (PDF). Apple Inc. 2007 yil iyun. Olingan 18 oktyabr, 2013.
  3. ^ "Mac OS X: tez-tez so'raladigan savollar 64 bitli yadro". Apple Inc. 2012 yil 4 oktyabr. Olingan 18 oktyabr, 2013.
  4. ^ "Mac OS X 10.7" Lion "Mac-larda 32 bitli EFI bilan ishlaydimi? Mac OS X 10.7" Lion "ning ishlashi" real dunyo "sinovlarida Mac OS X 10.6" Snow Leopard "bilan solishtirganda qanday? @ EveryMac.com ". everymac.com. Kayl Media. Olingan 6 oktyabr, 2017.
  5. ^ a b Axon, Samuel (22 iyun, 2020 yil). "Bu Apple-ning birinchi Mac-larini Intel-dan uzoqlashtirish uchun yo'l xaritasi". Ars Technica. Olingan 23 iyun, 2020.
  6. ^ "Macintosh mahsulotlari bo'yicha qo'llanma: universal dasturlar". Apple Computer. Olingan 22 dekabr, 2008.
  7. ^ "Adobe Ships Creative Suite 3". Adobe tizimlari. 16 aprel 2007 yil. Arxivlangan asl nusxasi 2012 yil 8-iyulda. Olingan 18 oktyabr, 2013.
  8. ^ "lipo - iOS yog 'ikkiliklari va yupqalash". Stack overflow.
  9. ^ Amadeo, Ron (2020 yil 22-iyun). "Apple macOS 11," Big Sur "dizaynini ta'kidlagan holda e'lon qiladi". Ars Technica. Olingan 23 iyun, 2020.
  10. ^ stany (2005 yil 6 sentyabr). "Mac OS X: Mach-O yog 'fayllaridan yog'larni kesish". theconsultant.net. Olingan 18 oktyabr, 2013.

Tashqi havolalar