El software embebido es una programación especializada en un chip o en el firmware de un dispositivo embebido para controlar sus funciones.
Los fabricantes de hardware utilizan el software embebido para controlar las funciones de varios dispositivos y sistemas de hardware. El software embebido controla las funciones de los dispositivos del mismo modo que el sistema operativo de un ordenador controla el funcionamiento de las aplicaciones de software. Casi todos los dispositivos pueden contener software integrado, desde los más sencillos, como las tostadoras y las bombillas, hasta los complejos sistemas de seguimiento de los misiles.
El software integrado se utiliza para controlar las funciones limitadas y establecidas de los dispositivos de hardware y, por lo general, no necesita entrada; los usuarios no suelen trabajar con él directamente. Sus funciones se activan mediante controles externos, ya sean acciones externas del propio dispositivo o entradas remotas. El dispositivo puede tener enlaces de comunicación con otros dispositivos para su funcionamiento o en caso de que el dispositivo necesite ser ajustado, calibrado o diagnosticado. También es a través de estas conexiones que alguien podría intentar hackear el sistema embebido.
El software embebido varía en complejidad tanto como los dispositivos que se utilizan para controlar. Aunque el término se utiliza a menudo indistintamente con el de firmware, el software embebido es a menudo el único código informático que se ejecuta en una pieza de hardware, mientras que el firmware, por el contrario, entrega el control a un sistema operativo que a su vez lanza y controla los programas.