Todo esto depende de lo que se entiende por "configuración del BIOS".
En el firmware de la máquina PC/AT, PC tradicional, la "configuración del BIOS" se guarda en la memoria RAM no volátil asociada con el chip del reloj en tiempo real. Hay casi no estandarización en cuanto a lo que representan los bytes individuales de NVRAM (aunque hay un par de convenciones comunes) y sus significados varían de proveedor de firmware a proveedor de firmware, y de la versión de firmware a la versión de firmware. Las herramientas para manipular la RTC NVRAM incluyen el dispositivo Linux y FreeBSD /dev/nvram
.
Pero esta no es la única RAM no volátil en una PC moderna. La "ROM del BIOS" también es, en realidad, RAM no volátil. (No se puede simplemente escribir en una operación normal. Uno tiene que realizar encantamientos mágicos para habilitar ciclos de escritura. Pero no es memoria de solo lectura.) Posterior firmware de PC usa mucho más grande (potencialmente hasta 16MiB en comparación con 256 bytes) RAM no volátil para el almacenamiento de configuraciones. Los datos de gestión del sistema, como los datos de configuración ampliada del sistema y el infame grupo DMI, se almacenan allí. Las herramientas para manipular estos datos incluyen la utilidad Linux dmidecode
que usa /dev/mem
.
En una PC moderna con firmware EFI, la NVRAM "BIOS" es generalmente donde se almacenan las variables de entorno de firmware EFI. Estos pueden ser manipulados por herramientas como uefivars
, que a su vez rely upon the /sys/firmware/efi
filesystem (que efectivamente, aunque de forma indirecta, exports the kernel-mode EFI API for variables al modo de aplicación). Las variables EFI son las "configuraciones" de los firmwares de EFI modernos, que controlan una variedad de cosas, desde lo que está en el menú de EFI Boot Manager (c.f. la utilidad efibootmgr
) hasta los dispositivos que constituyen la consola del sistema.