Embedded software is gespecialiseerde programmering in een chip of op firmware in een embedded apparaat om de functies ervan te besturen.
Hardwaremakers gebruiken embedded software om de functies van verschillende hardwareapparaten en -systemen te besturen. Ingebedde software bestuurt apparaatfuncties op dezelfde manier als het besturingssysteem van een computer de functie van softwaretoepassingen bestuurt. Bijna elk apparaat kan ingesloten software bevatten – van eenvoudige apparaten waarvan u zich niet kunt voorstellen dat ze door een computer worden bestuurd, zoals broodroosters en gloeilampen, tot complexe volgsystemen in raketten.
Ingebedde software wordt gebruikt om de beperkte, vaste functies van hardwareapparaten te besturen en heeft doorgaans geen invoer nodig; gebruikers werken er doorgaans niet rechtstreeks mee. De functies ervan worden geactiveerd door externe besturingselementen, hetzij externe acties van het apparaat zelf of invoer op afstand. Het apparaat kan communicatieverbindingen hebben met andere apparaten voor de functionaliteit of voor het geval het apparaat moet worden afgesteld, gekalibreerd of gediagnosticeerd. Het is ook via deze verbindingen dat iemand zou kunnen proberen embedded systeem te hacken.
Embedded software varieert in complexiteit evenveel als de apparaten die het wordt gebruikt om te controleren. Hoewel de term vaak door elkaar wordt gebruikt met firmware, is ingesloten software vaak de enige computercode die op een stuk hardware draait, terwijl firmware daarentegen de controle overdraagt aan een besturingssysteem dat op zijn beurt programma’s start en bestuurt.