The Intel BIOS Implementation Test Suite (BITS) provides a bootable pre-OS
environment for testing BIOSes and in particular their initialization of Intel
processors, hardware, and technologies. BITS can verify your BIOS against many
Intel recommendations. In addition, BITS includes Intel's official reference
code as provided to BIOS, which you can use to override your BIOS's hardware
initialization with a known-good configuration, and then boot an OS.

You might want to use BITS if:

You're a system or BIOS developer, and you want to validate that your system
meets Intel's recommendations.

You're an OS or application developer building on technologies provided by
Intel platforms, and you want to check if your system (or one of your user's
systems) has configured those technologies correctly.

You're an advanced user or developer, and you want to check your BIOS to see
if it configures Intel hardware correctly, and if not, to make a stronger
case to your BIOS vendor to get it fixed.

You need to poke hardware in a low-level way, and you need a pre-OS
environment to work in to avoid OS interference.

BITS functionality fits in three broad categories:

Validate: run test suites to verify recommendations

Configure: override BIOS using Intel reference code

Explore: experimental tools and information gathering

BITS consists of a modified GRUB2 bootloader, with many additional commands to
probe and manipulate hardware configuration, as well as scripts using these
commands to test and reconfigure hardware.

BITS supports scripting via Python, and includes Python APIs to access various
low-level functionality of the hardware platform, including ACPI, CPU and
chipset registers, PCI, and PCI Express. You can write scripts to explore and
test platform functionality, using the full power of Python in 32-bit ring 0,
without an OS in the way, and without recompiling BITS or writing custom C
code. See our Python scripting guide for more information.

The current version of BITS focuses primarily on CPU configuration and power
management. BITS supplies general tests and functionality for all Intel x86
platforms, as well as additional specific support for Intel® processors based
on the microarchitecture code name Nehalem and newer, which includes Intel Core
i7, i5, and i3 desktop and mobile processors, and corresponding Intel Xeon
server processors.