Ця стаття написана на операційній системі з відкритим кодом, але не на комп’ютері з відкритим кодом — BIOS не є відкритим кодом, і навіть якщо він підтримується проектом coreboot (раніше LinuxBIOS), для завантаження потрібна низка двійкових блоків. На старовинну архітектуру стало однією плямою менше, оскільки coreboot тепер може ініціалізувати DRAM на SOC Intel Bay Trail. [Mate Kukri] у статті, представленій на конференції програмного забезпечення з відкритим кодом.
Безсумнівно, Bay Trail не є найсучаснішим апаратним забезпеченням — на даний момент системам на основі плати вже більше десяти років, і вони використовувалися лише в мобільних додатках низького класу, таких як Chromebook. З іншого боку, coreboot існує на Chromebook принаймні стільки часу. Встановити DRAM складно, тому що у вас немає пам’яті для роботи. Як правило, ви робили це шляхом виклику одного з багатьох власних «бінарних крапель», які надавалися разом із будь-якою документацією виробника. Зворотне проектування, яке вимагає серйозного набору шин, виконується програмним забезпеченням за допомогою налагоджувача SerialICE та емулятора ЦП Unicorn Engine. Давайте поговоримо про цю техніку та про те, як її можна застосовувати ширше, замість того, щоб заглиблюватися в бур’яни, як змусити DRAM працювати в старому SOC. У якийсь момент все має бути заархівовано на веб-сайті OFSC, щоб ті з нас, хто особисто не бере участі, могли бачити, що відбувається. [Mate] – і всі інші виступаючі – треба було сказати.
Оскільки coreboot є відкритим вихідним кодом, ви можете зробити з ним набагато більше, ніж пропрієтарна мікропрограма UEFI – наприклад, ви можете взагалі не завантажувати оперативну пам’ять і працювати повністю з кешу ЦП. Ви також можете – звичайно – грати в DOOM. Якщо ви хочете позбутися двійкових блоків, вам знадобиться знайти апаратне забезпечення, яке підтримується більш жорстким дистрибутивом основного завантаження Libreboot, який не приймає жодних двійкових блоків. Що стосується Libreboot, то встановити його сьогодні легше, ніж знайти потрібне обладнання.