مایکروسافت فناوری جدیدی برای تبدیل نرمافزارهای x86 به ARM معرفی کرد
مایکروسافت این هفته از فناوری ARM64EC رونمایی کرد. این ویژگی در ویندوز ۱۱ به توسعهدهندگان اجازه میدهد تا بدون بازنویسی کامل کد، تنها قسمتهایی از نرمافزارهای x86 خود را برای دستگاههای مبتنی بر ARM بهینهسازی کنند.
حتما تابهحال متوجه شدهاید که بسیاری از نرمافزارها در ویندوز برای اجرای صحیح به نصب پلاگین، API، فریمورک، کتابخوانه (Library) یا نرمافزارهای دیگری احتیاج دارند. برای مثال بسیاری از بازیها برای نصب به نسخهی خاصی از مجموعه API-های دایرکت ایکس و برخی نرمافزارها به دات نت فریمورک نیاز دارند. به این پیشنیازها وابستگی (Dependancy) میگویند.
تا پیش از این نرمافزارهایی که از وابستگیهایی استفاده میکردند که تنها نسخهی x86 آنها در دسترس است، نمیتوانستند نسخهی ARM داشته باشند؛ مگر اینکه توسعهدهنده کد نرمافزار خود و وابستگیها را از نو کاملا برای ARM بازنویسی میکرد.
مایکروسافت دراینباره میگوید:
بهصورت سنتی، ساختن نسخهی ARM یک اپ بهمعنی ازنو کامپایل کردن تمام آن اپ بود. نتیجهی این کار اپلیکیشنی بومی است که از تمام قدرت دستگاه مجهز به معماری ARM استفاده میکند و تجربهای عالی برای مصرفکننده بهارمغان میآورد؛ ولی از منظر دولوپرها، پورتکردن اپ برای آرم کار سختی است؛ چراکه تمام باینریها باید از نو ساخته شوند.
مایکروسافت در پستی بلاگی دربارهی این محدودیت و اینکه چرا برخی نرمافزارها تا قبل از معرفی ARM64EC، بهراحتی روی دستگاههای ویندوزی مبتنی بر ARM اجرا نمیشدند، به تفصیل توضیح داده است.
ARM64EC برخلاف روشهای فعلی، به توسعهدهنده اجازه میدهد تا بخشهایی از نرمافزار را برای عملکرد بهتر در دستگاههای ARM تغییر دهد. هر بخش از نرمافزار که با ARM64EC کامپایل شده باشد، عملکرد و سرعتی درحد نرمافزارهای بومی (Native) پلتفرم آرم خواهد داشت و باقی بخشهای نرمافزار که از کدهای x86 استفاده میکنند ازطریق شبیهسازی اجرا میشوند.
توسعهدهندگان با استفاده از ARM64EC میتوانند ابتدا بخشهای مهم نرمافزارهای خود را برای عملکرد بهتر روی ARM تغییر دهند و سپس با مرور زمان و آمدن نسخهی ARM وابستگیها، سایر بخشهای نرمافزار خود را نیز به ARM تبدیل کنند.
مایکروسافت برای اجرای بهتر نرمافزارهای ۶۴ بیتی روی دستگاههای ARM، تمامی باینریهای موجود در ویندوز ۱۱ را با استفاده از ARM64EC بازسازی کرده و تیم آفیس مایکروسافت نیز درحال توسعه نسخهی ۶۴ بیتی آفیس برای دستگاههای ARM باکمک ARM64EC است.
توسعهدهندگان میتوانند برای استفاده از ARM64EC، آخرین نسخه از Windows Insider SDK و Visual Stadio Preview را از سایت مایکروسافت دانلود و برای اطلاع از عملکرد آن، این سند را مطالعه کنند. مایکروسافت تضمین کرده که در آینده اطلاعات بیشتری از ARM64EC و زمان عرضهی عمومی آن ارائهدهد.