Skip navigation

Software & Bios

1 Post authored by: brian_ami

The Tech Report recently reviewed a Gigabyte motherboard using a "Hybrid EFI" BIOS. It's true that this Gigabyte implementation isn't UEFIfrom the ground up, which makes it different from most UEFI implementations in the market. I think we need to take a look at the Gigabyte Hybrid EFI implementation and understand exactly what it does.


Gigabyte's "Hybrid EFI Technology" is pretty simple ... stick a UEFI layer on top of the existing legacy BIOS so users get support for 2TB+ hard drives and booting to UEFI-enabled operating systems. Since it's a layer on top of legacy BIOS, Gigabyte advertises that the "Hybrid EFI" layer could be applied to older motherboards for easier compatibility with large hard drives.


So Gigabyte gets to add support for large hard drives without replacing legacy BIOS on several motherboards, which The Tech Reportreviewer considers a "novel solution."  Now for the big question ... if this was such a good idea, why isn't every other BIOS provider and motherboard manufacturer using the "Hybrid EFI" approach?


The answer: they did, but they moved on.


Back in the early 2000's when EFI, the predecessor to UEFI, first made the scene the specification only covered the OS-to-firmware interface. Translation: the spec didn't care how the firmware worked "under the hood" as long as it produced the runtime interfaces per the EFI specification. The initial focus was supporting EFI as a runtime interface and bootloader.


So most of us BIOS guys did what Gigabyte does with "Hybrid EFI," build an EFI-over-BIOS bootloader and duct tape it into the flash ROM. Ok, there was no actual tape involved, but it wasn't the cleanest solution in the world. But back in 2002 it made a great demo for my Intel Developer Forum presentations, running the EFI Shell with network access and pre-OS diagnostics on an Intel Pentium III processor.


I know, it doesn't sound cool *now* ... but trust me, that's pretty cool for old school (yes, 2002 is "old school" in tech years).


In the current TianoCore implementation this is known as the Developer's UEFI Emulation (DUET)environment, a tool to help app & driver developers that don't have access to native UEFI platforms. You get the UEFI shell and ability to run UEFI pre-boot programs, but you also get some baggage from an implementation that only solves part of the problem. It's less relevant now that UEFI is shipping all over the Intel ecosystem.


When Intel started research into what would become EFI & UEFI, the Software Solutions Group (SSG) was trying to solve two problems. First, replace an aging set of OS-to-firmware interfaces built around 16-bit 8086 assumptions ... stuff like INT 13h storage interfaces and the INT 19h OS loader. Second was the same set of 16-bit 8086 assumptions applied to the underlying BIOS infrastructure. These were both handicaps for a company moving to 64-bit architectures.


The "Hybrid EFI" solution solves the first problem effectively, if you ignore the thunk layers in between 16-bit BIOS calls and x64 UEFI. However, it doesn't address the underlying firmware structure. This is important as the industry considers new UEFI features for Secure Boot, Driver Signing and IPV6 Networking. These features can't be properly developed using the legacy BIOS structure and be applied universally across multiple architectures. This is why you see embedded developers like Radisys and Kontron creating long term solutions using native UEFI implementations like Aptio.


Does this mean Gigabyte is behind other manufacturers in implementing UEFI? Absolutely not.


Gigabyte uses the "Hybrid EFI" solution on some products to fix an immediate consumer problem ... make new 3TB+ drives work with today's motherboards. There are other companies who used this hybrid approach on older products, but they are moving away from "UEFI over legacy" as products mature. In the long run companies like Gigabyte will migrate products to native UEFI firmware, catching up with companies who started their firmware transition much earlier. You can already see this on Gigabyte products using the Intel Q67 Express Chipset.


So, as my mother would say when referring to that horrible haircut I had in high school, it's just a phase they're going through


Brian Richardson
Senior Technical Marketing Engineer
American Megatrends, Inc.


American Megatrends, Inc. (AMI) is an Affiliate member of the Intel® Embedded Alliance.


Got a question about BIOS? … then it’s time to Ask a BIOS Guy! Find Brian on Twitter (@askabiosguy) or leave your question in the comments. Your BIOS question may be featured in an upcoming ‘Ask a BIOS Guy’ article.