اجرای نسخه کامل لینوکس در کامپیوتر مک M1 امکانپذیر شد
چندی پیش، اپل کامپیوترهای مک مجهز به پردازندهی مبتنی بر آرم (ARM) را رونمایی و عرضه کرد. در حقیقت غول دنیای فناوری در یک ضربالاجل دوساله قصد دارد تمامی کامپیوترهای خود را به پردازندهی جدید مجهز کند. در این میان، توسعهدهندگان شخص ثالث میکوشند راهحلهایی برای اجرای سایر سیستمعاملها در سختافزار جدید اپل ارائه دهند. در اوایل ماه گذشته، تعدادی از توسعهدهندگان، ویندوز ۱۰ و توزیع لینوکس فدورا را به شکل مجازی در مکهای مجهز به پردازنده M1 بوت کردند؛ اما بزرگترین پیشرفت در این زمینه را میتوان به دستاورد تیم کورلیوم نسبت داد؛ شرکتی که متخصص در مجازیسازی دستگاههای مبتنی بر معماری آرم محسوب میشود. به گزارش اپلاینسایدر، این تیم موفق شده است لینوکس را در کامپیوترهای مک کاملا قابل استفاده کند.
کورلیوم با توجه به اجرای کامل لینوکس در کامپیوترهای مک M1، با انتشار بیانیهای فرایند انتقال سیستمعامل را به تفصیل شرح داده است. آنها از زمان عرضهی آیفون ۶ در سال ۲۰۱۴، در حال بررسی پردازندههای سفارشی اپل بودهاند. این شرکت در اوایل سال ۲۰۲۰ از برخی از آسیبپذیریها و تحقیقات قبلی، بهمنظور ساخت یک درگاه هسته برای پردازندهی A10 بهره گرفته است. کوپرتینوییها پس از عرضهی کامپیوترهای مک مجهز به پردازندهی M1 در نوامبر ۲۰۲۰ (آبان ۱۳۹۹)، با ارائهی بهروزرسانی سیستمعامل، امکان نصب هستههای سفارشی را برای کاربران فراهم کردند. گویا به دنبال اضافه شدن این توانایی، کورلیوم بهسرعت کار روی یک درگاه مبتنی بر لینوکس را آغاز کرده است.
کورلیوم میگوید که اجزای زیادی از تراشهی M1 با پردازندههای سری A اپل مشترک است؛ اما اپل همچنان از استانداردهای متفاوت با سایر سازندگان پردازندههای آرم استفاده میکند که ظاهرا چالشهای مضاعفی برای تیم کورلیوم به همراه داشته است. برای مثال، گفته میشود پردازندههای سری A و M با استفاده از روش سنتی بوت نمیشوند و اپل بوتلودر فرمت فایل Mach-O را در فرمت IMG4 اجرا میکند. با افزایش هستههای پردازنده، این مسئله پیچیدهتر میشود؛ زیرا آنها از آدرسهای مشخصشده به وسیلهی یک رجیستر ورودی و خروجی با نقشهبرداری از حافظه (MMIO) تهیه میشوند و پس از این فرایند هستهها شروع به کار میکنند. افزون بر این، اپل از کنترلکنندهی سفارشی بهره میگیرد که طراحی کاملا متفاوتی با استانداردهای GIC آرم دارد.
در سیستم مذکور، وقفههای تایمر به FIQ هدایت میشود که خارج از استانداردهای کنونی است و سیستم قدیمی ۳۲ بیتی آرم را منعکس میکند. کورلیوم میگوید برای ارتباط پردازندههای مختلف با یکدیگر باید مجموعهای از وقفههای بین پردازنده (IPI) ایجاد کرد. این شرکت ادعا میکند که تجربه برخورد با پشتیبانی FIQ دارد و برای اکثر رویکردهای غیراستاندارد اپل آماده بوده است. در مرحلهی آخر، کورلیوم یک پیشلودر را بهعنوان پکیج لینوکس به سیستم اضافه کرده و همین امر منجر به راهاندازی سیستمعامل لینوکس در پردازندهی M1 شده است.
در گزارش آمده است که کورلیوم کابل رابط کامپیوترهای مک مجهز به پردازنده M1 در دسترس نداشته است و مجبور بوده مسیر ورودی دیگری پیدا کند. از بین سه گزینهی بلوتوث، درگاه USB میزبان (USB xHCI) در استاندارد PCIe، آنها USB میزبان را برگزیدهاند و مجبور بودند با تراشه در پروتکل I2C ارتباط برقرار کنند؛ بنابراین پس از اتصال USB مناسب، میتوان صفحهکلید، ماوس و درایو فلش را به هم متصل کرد و به لطف آن، امکان اجرای توزیع معمول لینوکس دسکتاپ فراهم میشود.
نظرات