CoreBoot 4.17 төслийн хувилбар хэвлэгдсэн бөгөөд үүний хүрээнд хувийн програм хангамж болон BIOS-ийн үнэгүй хувилбарыг боловсруулж байна. Төслийн кодыг GPLv2 лицензийн дагуу түгээдэг. Шинэ хувилбарыг бүтээхэд 150 хөгжүүлэгчид оролцож, 1300 гаруй өөрчлөлтийг бэлтгэсэн.
Үндсэн өөрчлөлтүүд:
- 2022-аас 29264 хүртэлх CoreBoot хувилбаруудад илэрч, AP (Application Processor) бүхий системд SMM (Системийн Удирдлагын горим) түвшинд илүү чухал ач холбогдолтой кодыг ажиллуулах боломжийг олгосон (CVE-4.13-4.16) эмзэг байдлыг зассан. Ring -2) нь гипервизорын горим ба тэг хамгаалалтын цагирагтай харьцуулахад бүх санах ойд хязгааргүй хандах боломжтой. Асуудал нь smm_module_loader модулийн SMI зохицуулагч руу буруу залгаснаас үүдэлтэй.
- 12 эх хавтангийн дэмжлэгийг нэмсэн бөгөөд үүнээс 5-ыг нь Chrome OS төхөөрөмж эсвэл Google серверт ашигладаг. Google-н бус самбаруудын дунд:
- Clevo L140MU / L141MU / L142MU
- Dell Precision T1650
- HP Z220 CMT ажлын станц
- Star Labs LabTop Mk III (i7-8550u), LabTop Mk IV (i3-10110U, i7-10710U), Lite Mk III (N5000) болон Lite Mk IV (N5030).
- Google Deltan болон Deltaur эх хавтангийн дэмжлэгийг хассан.
- Coreboot-оос DOOM тоглоом ажиллуулах боломжийг олгодог шинэ coreDOOM ачааллыг нэмсэн. Төсөл нь libpayload руу шилжүүлсэн doomgeneric кодыг ашигладаг. Гаралтад Coreboot-ийн шугаман фреймбуферийг ашигладаг бөгөөд тоглоомын хөрөнгө бүхий WAD файлуудыг CBFS-ээс ачаалдаг.
- SeaBIOS 1.16.0 болон iPXE 2022.1-ийн шинэчлэгдсэн ачааны бүрэлдэхүүн хэсгүүд.
- SeaGRUB горимыг (SeaBIOS дээр GRUB2) нэмсэн бөгөөд энэ нь GRUB2-д SeaBIOS-ээс өгсөн буцаан дуудлагыг ашиглах, тухайлбал GRUB2-ийн ачааллаас хандах боломжгүй тоног төхөөрөмжид хандах боломжийг олгодог.
- SMM (Системийн удирдлагын горим) түвшинд код гүйцэтгэх боломжийг олгодог SinkHole халдлагын эсрэг хамгаалалт нэмэгдсэн.
- Гуравдагч талын хэрэгслүүдийг дуудах шаардлагагүйгээр ассемблер файлуудаас статик санах ойн хуудасны хүснэгт үүсгэх боломжтой болсон.
- DEBUG_SMI-г ашиглах үед SMI зохицуулагчаас CBMEMC консол руу дибаг хийх мэдээллийг бичихийг зөвшөөрсөн.
- CBMEM эхлүүлэх зохицуулагчийн системийг өөрчилсөн бөгөөд үе шаттай холбогдсон *_CBMEM_INIT_HOOK зохицуулагчийн оронд CBMEM_CREATION_HOOK (cbmem үүсгэх эхний шатанд ашигладаг) болон CBMEM_READY_HOOK (cbmem аль хэдийн үүсгэгдсэн аль ч үе шатанд ашиглагддаг) хоёр зохицуулагчийг санал болгож байна.
- Тоон гарын үсгээр BIOS-ийн бүрэн бүтэн байдлыг баталгаажуулахын тулд PSP (Платформын аюулгүй байдлын процессор) идэвхжүүлсэн PSB (Platform Secure Boot)-ийн дэмжлэгийг нэмсэн.
- FSP (FSP Debug Handler)-аас дамжуулсан дибаг хийх өгөгдөл зохицуулагчийн өөрийн хэрэгжилтийг нэмсэн.
- TPM (Итгэмжлэгдсэн платформ модуль) регистрээс шууд унших, бичихэд зориулагдсан үйлдвэрлэгчийн тусгай TIS (TPM интерфейсийн тодорхойлолт) функцийг нэмсэн - tis_vendor_read() болон tis_vendor_write().
- Дибаг хийх регистрээр дамжуулан хоосон заагчийн хаягийг таслан зогсоох дэмжлэг нэмэгдсэн.
- Янз бүрийн үйлдвэрлэгчдийн мэдрэгчтэй самбар эсвэл мэдрэгчтэй дэлгэцээр тоноглогдсон самбартай ажиллахад хялбар болгох үүднээс i2c төхөөрөмжийн илрүүлэлтийг хэрэгжүүлсэн.
- Хөдөлгөөний янз бүрийн үе шатанд хэр их цаг зарцуулдгийг тодорхой харуулсан FlameGraph график үүсгэхэд тохиромжтой форматаар цагийн өгөгдлийг хэмнэх боломжийг нэмсэн.
- cbmem хэрэгсэлд хэрэглэгчийн зайнаас cbmem "цаг хугацааны тамга" хүснэгтэд цаг нэмэх сонголтыг нэмсэн бөгөөд энэ нь CoreBoot-ийн дараа гүйцэтгэсэн үе шатуудад cbmem-д үйл явдлыг тусгах боломжтой болгодог.
Нэмж дурдахад бид OSFF (Нээлттэй эхийн програм хангамжийн сан)-аас Intel-д илгээсэн нээлттэй захидлыг тэмдэглэж, програм хангамжийг дэмжих багцуудыг (FSP, Firmware Support Package) илүү модульчлагдсан болгож, Intel SoC-ийг эхлүүлэхтэй холбоотой баримт бичгийг нийтэлж эхлэхийг санал болгож байна. FSP код дутагдалтай байгаа нь нээлттэй програм хангамж үүсгэхэд ихээхэн хүндрэл учруулж, Intel-ийн техник хангамж дээрх Coreboot, U-Boot болон LinuxBoot төслүүдийн ахиц дэвшилд саад болж байна. Өмнө нь ижил төстэй санаачилга амжилттай болж, Intel олон нийтийн хүсэлтээр PSE (Programmable Services Engine) програм хангамжийн кодыг нээсэн.
Эх сурвалж: opennet.ru