UEFI wzbudziło wiele kontrowersji, ale to się podoba czy nie, staje się jedyną opcją, jeśli chodzi o ogólnie dostępne płyty główne do komputerów stacjonarnych. Od pewnego czasu unikam mobo UEFI, ale teraz stało się to dość trudne, ponieważ dostawcy mobo dostarczają produkty UEFI z więcej funkcji niż BIOS (tj. Wsparcie dla większej ilości pamięci RAM). Mając to na uwadze, chcę mieć pewność, że w przyszłości będzie przynajmniej opcja wyboru oprogramowania typu open source, a jeśli nie będzie, mogę znieść mniej funkcji, ale więcej swobody.
TianoCore to implementacja interfejsów UEFI typu open source firmy Intel, a Wikipedia ma o tym do powiedzenia :
W TianoCore brakuje wyspecjalizowanych sterowników inicjujących funkcje mikroukładu, które zamiast tego są dostarczane przez Coreboot, z których TianoCore jest jedną z wielu opcji ładunku. Rozwój Coreboot wymaga współpracy producentów chipsetów w celu dostarczenia specyfikacji potrzebnych do opracowania sterowników inicjalizacyjnych.
Moje pytanie brzmi: czy te sterowniki dostarczone przez coreboot nadal wymagają jakiegoś binarnego obiektu blob od dostawców chipsetu? Ponadto, Ronald G. Minnich ma do powiedzenia na temat EFI:
Dostęp do adresów we / wy IDE lub niektórych adresów pamięci można uwięzić w kodzie EFI i potencjalnie zbadać, zmodyfikować lub przerwać. Wielu uważa to za próbę zbudowania „DRM BIOS”.
Czy w konfiguracji coreboot TianoCore + części mogą potencjalnie zrobić to oprogramowanie typu open source lub oprogramowanie binarne dostarczone przez dostawcę sprzętu?
źródło
Możliwe jest połączenie Coreboot (wczesna inicjalizacja sprzętowa) i TianoCore (zapewnienie interfejsu API UEFI) z pełną implementacją oprogramowania układowego UEFI. Jednak wciąż jest w fazie rozwoju. Nie będzie to również „kanoniczny” UEFI, ponieważ zewnętrzną warstwą będzie coreboot.
Jedno podejście oparte na Duet można znaleźć na stronie http://notabs.org/coreboot/duet-payload/ - uruchamia się nieco na prawdziwym sprzęcie.
Kolejna próba (ujawnienie: mój projekt), która próbuje ponownie wykorzystać więcej Tiano i pozostać bliżej architektury UEFI, jest na github: https://github.com/pgeorgi/edk2/ . Ten nie widział jeszcze wielu testów na prawdziwym sprzęcie, tylko Qemu.
Zasadniczo może również działać, aby pobrać kod coreboot i zrobić z nich pakiety tianocore, więc wygląda i działa jak UEFI pod każdym względem (nie tylko te widoczne dla użytkownika i systemu operacyjnego). Oczywiście programiści Coreboot nie są tym bardzo zainteresowani.
źródło
Inicjalizacja chipsetu i taki inny, bardzo niski poziom specyficzny dla sprzętu kod zawsze były w większości zamknięte. BIOS / UEFI nie zmienia faktu, że szczegóły dotyczące inicjalizacji kontrolera pamięci itp. Są rzadko ujawniane przez sprzedawców płyt.
Aby mieć prawdziwą płytę typu open source, musisz poszukać sprzętu typu open source, jakiegoś dostawcy, który ujawnia wszystkie specyfikacje każdego elementu sprzętowego na płycie głównej. Co najmniej trudno to znaleźć.
źródło