اینتل در حال توسعه یک معماری سفتافزار جدید به نام Universal Scalable Firmware (USF) است که با هدف سادهسازی توسعه همه اجزای پشته نرمافزار میانافزار برای دستههای مختلف دستگاهها، از سرورها گرفته تا سیستمهای روی تراشه (SoC) است. USF لایههایی از انتزاع را فراهم میکند که به شما امکان میدهد منطق اولیهسازی سختافزار سطح پایین را از اجزای پلتفرم مسئول پیکربندی، بهروزرسانیهای میانافزار، امنیت و راهاندازی سیستمعامل جدا کنید. پیش نویس مشخصات و پیاده سازی عناصر معمولی معماری USF در GitHub ارسال شده است.
USF یک ساختار ماژولار دارد که به راهحلهای خاصی وابسته نیست و امکان استفاده از پروژههای مختلف موجود که مراحل اولیهسازی سختافزار و راهاندازی را اجرا میکنند، مانند پشته TianoCore EDK2 UEFI، میانافزار Slim Bootloader، بوتلودر U-Boot و پلتفرم CoreBoot. رابط UEFI، لایه LinuxBoot (برای بارگذاری مستقیم هسته لینوکس)، VaultBoot (راهاندازی تأیید شده) و Hypervisor ACRN میتوانند به عنوان محیطهای payload مورد استفاده برای جستجوی بوت لودر و انتقال کنترل به سیستم عامل استفاده شوند. رابط های معمولی برای سیستم عامل هایی مانند ACPI، UEFI، Kexec و Multi-boot ارائه شده است.
USF یک لایه پشتیبان سخت افزاری مجزا (FSP، بسته پشتیبانی سفتافزار) ارائه میکند که با یک لایه هماهنگسازی پلتفرم جهانی و قابل تنظیم (POL، Platform Orchestration Layer) از طریق یک API مشترک تعامل دارد. FSP عملیاتی مانند تنظیم مجدد CPU، مقداردهی اولیه سخت افزار، کار با SMM (حالت مدیریت سیستم)، احراز هویت و تأیید در سطح SoC را خلاصه می کند. لایه ارکستراسیون ایجاد رابط های ACPI را ساده می کند، از کتابخانه های بوت لودر عمومی پشتیبانی می کند، به شما امکان می دهد از زبان Rust برای ایجاد اجزای سیستم عامل امن استفاده کنید، و توانایی تعریف پیکربندی با استفاده از زبان نشانه گذاری YAML را فراهم می کند. سطح POL همچنین گواهی، احراز هویت و نصب امن بهروزرسانیها را کنترل میکند.
انتظار می رود که معماری جدید اجازه دهد:
- با استفاده مجدد از کد اجزای استاندارد آماده، یک معماری ماژولار که به بوت لودرهای خاص مرتبط نیست و توانایی استفاده از یک API جهانی برای پیکربندی ماژول ها، پیچیدگی و هزینه توسعه سیستم عامل برای دستگاه های جدید را کاهش دهید.
- کیفیت و امنیت سیستم عامل را از طریق استفاده از ماژول های قابل تایید برای تعامل با تجهیزات و زیرساخت ایمن تر برای احراز هویت و تأیید سیستم عامل افزایش دهید.
- بسته به وظایفی که در حال حل شدن هستند، از لودرها و اجزای بارگیری مختلف استفاده کنید.
- سرعت بخشیدن به پیشرفت فن آوری های جدید و کوتاه کردن چرخه توسعه - توسعه دهندگان می توانند تنها بر روی افزودن قابلیت های خاص تمرکز کنند، در غیر این صورت از اجزای آماده و اثبات شده استفاده می کنند.
- توسعه سفتافزار مقیاس برای معماریهای محاسباتی مختلف (XPU)، برای مثال، از جمله، علاوه بر CPU، یک شتابدهنده گرافیکی گسسته یکپارچه (dPGU) و دستگاههای شبکه قابل برنامهریزی برای تسریع عملیات شبکه در مراکز داده که از عملکرد سیستمهای ابری پشتیبانی میکنند. IPU، واحد پردازش زیرساخت).
منبع: opennet.ru