Az Intel a Universal Scalable Firmware (USF) új architektúráját fejleszti, amely a firmware szoftvereszek minden komponensének fejlesztését hivatott egyszerűsíteni különböző eszközkategóriák számára, a szerverektől a rendszeren belüli (SoC) megoldásokig. Az USF absztrakciós szinteket biztosít, amelyek lehetővé teszik a hardware alacsony szintű inicializáló logika leválasztását a firmware frissítésért, biztonsági megoldásokért és az operációs rendszer indításáért felelős platform komponensektől. Az USF architektúra típusú elemeinek kezdeti specifikációja és megvalósítása elérhető a GitHubon.
Az USF moduláris felépítése nem kötődik konkrét megoldásokhoz, és lehetővé teszi különböző meglévő projektek használatát a hardware inicializálás és indítás folyamatainak megvalósításához, mint például az UEFI TianoCore EDK2 stack, a minimalista Slim Bootloader firmware, az U-Boot indító és a CoreBoot platform. A betöltő és az operációs rendszer irányítását átadó payload környezetek, mint az UEFI interfész, a LinuxBoot réteg (a Linux kernel közvetlen indításához), a VaultBoot (ellenőrzött indítás) és az ACRN hypervisor alkalmazhatók. Az operációs rendszerek számára szabványos interfészek állnak rendelkezésre, mint az ACPI, UEFI, Kexec és Multi-boot.
Az USF külön réteget biztosít a hardware támogatás (FSP, Firmware Support Package) számára, amely egy közös API-n keresztül kommunikál az univerzális és testreszabható platform orchestration rétegével (POL, Platform Orchestration Layer). Az FSP absztrahálja azokat a műveleteket, mint a CPU visszaállítása, a hardware inicializálása, SMM (System Management Mode) kezelés, hitelesítés és ellenőrzés SoC szinten. Az orchestration réteg megkönnyíti az ACPI interfészek létrehozását, támogatja a betöltők szabványos könyvtárait, lehetővé teszi a Rust nyelv használatát a védett firmware komponensek létrehozásához, és lehetővé teszi a konfiguráció megadását YAML jelölőnyelven. A POL szinten hitelesítés, azonosítás és a frissítések biztonságos telepítésének megszervezése is megtörténik.

A várakozások szerint az új architektúra lehetővé teszi:
- Csökkentse az új eszközök firmware-einek fejlesztésének bonyolultságát és költségeit, a kész, szabványos összetevők, a konkrét bootloaderektől független moduláris architektúra és az univerzális API lehetőségeinek újbóli felhasználásával a modulok konfigurálásához.
- Fokozza a firmware-ek minőségét és biztonságát, a hardverrel való interakciót lehetővé tevő ellenőrizhető modulok alkalmazásával és egy biztonságosabb infrastruktúra biztosításával a firmware-ek hitelesítéséhez és ellenőrzéséhez.
- Használjon különféle bootloadereket és payload összetevőket, a megoldandó feladatoktól függően.
- Gyorsítsa fel az új technológiák bevezetését és csökkentse a fejlesztési ciklust — a fejlesztők csak a specifikus funkciók hozzáadására összpontosíthatnak, míg a többit a tesztelt kész összetevők felhasználásával oldják meg.
- Skálázza a firmware-fejlesztést különböző vegyes számítási architektúrákhoz (XPU), például olyan rendszerekhez, amelyek a CPU mellett dedikált grafikus gyorsítót (dPGU) és programozható hálózati eszközöket is tartalmaznak, hogy felgyorsítsák a hálózati műveletek végrehajtását az adatközpontokban, amelyek felhőalapú rendszerek működését biztosítják (IPU, Infrastructure Processing Unit).
Forrás: opennet.ru
