Sisseehitatud süsteem (inglise keeles embedded system) on arvuti, mis on ehitatud ühe või mõne väga spetsiifilise ülesande täitmiseks ning mida ei ole mõeldud samamoodi ümber kujundama kui üldotstarbelist arvutit. Mõiste „sisseehitatud” viitab sellele, et seade on osa suuremast süsteemist ja tavaliselt ei näe välja nagu traditsiooniline arvuti: sageli puuduvad klaviatuur, monitor või hiir. Siiski sisaldab see, nagu iga arvuti, protsessort, tarkvarat, sisendeid ja väljundeid ning sageli liideseid sensorite ja aktuaatoritega.
Peamised omadused
- Pühendatud funktsioon – sisseehitatud süsteem on optimeeritud konkreetse probleemi lahendamiseks, mitte mitme erineva ülesande samaaegseks täitmiseks.
- Ajapiirangud (reaalaeglus) – paljud sisseehitatud süsteemid peavad reageerima kindla ajaga; seda nimetatakse reaalajas arvutamiseks. Näiteks videopildis viibimine või lennuki juhtsüsteemide reageerimiskiirus on kriitilised.
- Piiratud ressursid – mälu, salvestusruumi, protsessori võimsuse ja energiatarve piirangud on tavalised, mistõttu kasutatakse tihti mikroprotsessoreid või mikrokontrollereid ning optimeeritud koodi (nt C/C++).
- Töökindlus ja turvalisus – palju süsteeme on ohutusega seotud (autod, lennundus, meditsiin), seega nõutakse kõrget töökindlust, testimist ja vahel sertifitseerimist.
- Pika elutsükkel ja hooldatavus – seadmed võivad töötada aastaid ilma riistvara muutuseta; tarkvarauuendused (nt OTA) ja turvaparandused on olulised.
- Riist- ja tarkvara kooskõlastus – sageli toimub disainis riistvara ja tarkvara tihe kooskõlastamine (hardware–software co-design). Mõned süsteemid töötavad otse riistvaral (bare-metal), teised kasutavad reaalajas operatsioonisüsteemi (RTOS).
Näited ja rakendused
Igapäevaselt kohtame sisseehitatud süsteeme paljudes seadmetes. Näiteks lifti sisseehitatud kontroller annab mootorile käsu liikuda etteantud korrustele vastavalt nuppude vajutamisele ja turvareeglitele. Dekooder on sisseehitatud satelliittelevisiooni digiboksi (STB), mis loeb antennisignaali ja teisendab selle telerile arusaadavaks pildiks ja heliks. Kui selline digiboks ei suudaks hoida reaalajas nõudeid, ilmneks televisioonipildis häireid.
Sisseehitatud süsteemid juhivad ka väiksemaid seadmeid, nagu MP3-mängija või digikaamera, ning suuremaid infrastruktuuri elemente, näiteks valgusfoore, lennukeid või tehase koosteliine. Samuti on need tavalised ka turvasüsteemides (näiteks hotellide kaardilugejad ukse lukustamiseks), kodumasinates, meditsiiniseadmetes ja autosüsteemides (mootorijuhtimine, abisüsteemid).
Arendus ja turvalisus
Sisseehitatud süsteemide arendus hõlmab riist- ja tarkvaradisaini, testimist reaalsetes tingimustes ning tihti riistvaral põhinevat silumist. Levinud programmeerimiskeeled on C ja C++; kaasaegsemates lahendustes kasutatakse ka Rusti ja kõrgema taseme keeli teatud komponentide jaoks. Turvalisus on eriti oluline, sest paljud seadmed ühenduvad võrkudega (IoT) — seetõttu peab arvestama autentimise, andmete krüpteerimise ja uuenduste turvalise haldamisega.
Kokkuvõttes on sisseehitatud süsteemid kõikjal ja nende peamine tunnus on eesmärgipärasus: nad on loodud täitma konkreetset funktsiooni usaldusväärselt, kiirelt ja ressursitõhusalt.



