El primer término BIOS apareció en el sistema operativo CP/M, y describe la parte de CP/M que se ejecutaba durante el arranque y que iba unida directamente al hardware (las máquinas de CP/M usualmente tenían un simple cargador arrancable en la ROM, y nada más). La mayoría de las versiones de MS-DOS tienen un archivo llamado "IBMBIO.COM" o "IO.SYS" que es análogo al CP/M BIOS.
El sistema operativo CP/M (Control Program/Monitor) es un sistema operativo desarrollado por Gary Kildall para el microprocesador Intel 8080 (los Intel 8085 y Zilog Z80 pueden ejecutar directamente el código del 8080, aunque lo normal es que se entregara el código recompilado para el microprocesador de la máquina). Se trata del sistema operativo más popular entre las computadoras personales en los años 1970. Aunque fue modificado para ejecutarse en un IBM PC, el hecho que IBM eligiera MS-DOS, al fracasar las negociaciones con Digital Research, hizo que el uso de CP/M disminuyera hasta hacerlo desaparecer.
En los primeros diseños del PC, la ROM BIOS ocupaba solo 40 KB. En esa época, el rango de direcciones de memoria que podía manejarse era 00000-FFFFFh (un máximo de 1.048.576 Bytes = 1 MB). El sistema operativo tenía un peso de 640 KB del DOS (en realidad 655.360 Bytes), que en la época parecían más que suficientes para los programas y el propio Sistema Operativo. Tenga en cuenta que el IBM-PC original carecía de disco duro; un disquete de 5 1/4" de 160 KB (que podía contener un máximo de 64 ficheros!!), era opcional.
En los primeros sistemas operativos para PC (como el DOS), el BIOS todavía permanecía activo tras el arranque y funcionamiento del sistema operativo. El acceso a dispositivos como la disquetera y el disco duro se hacían a través del BIOS. Sin embargo, los sistemas operativos SO más modernos realizan estas tareas por sí mismos, sin necesidad de llamadas a las rutinas del BIOS. El aumento de complejidad de los periféricos, junto con la insaciable demanda de velocidad, ha motivado que empiece a invertirse la tendencia. Cada vez más, el Sistema Operativo rehace los punteros situados por el BIOS en la tabla de vectores de interrupción IDT (2.4) para que señalen a sus propias rutinas. Por ejemplo, las controladoras gráficas actuales utilizan modos de operación impensables en las primitivas adaptadoras gráficas de color CGA, y los servicios de control utilizan rutinas específicas, de 32 o 64 bits, que explotan las nuevas posibilidades de los dispositivos. En este sentido, los servicios BIOS nativos solo son utilizados cuando se necesita compatibilidad hacia atrás. Por ejemplo, si arrancamos un equipo Pentium con un disquete DOS por razones de mantenimiento o diagnóstico. En este caso, algunas de las características más avanzadas del sistema, como la controladora gráfica serán utilizadas en forma muy rudimentaria, mientras que otras, como los puertos USB, infrarrojos, firewire, etc. no serán accesibles. La razón es que tales "Servicios" sencillamente no existen en la BIOS tradicional.