Sulautettu järjestelmä
Sulautettu järjestelmä (engl. embedded system) on tiettyyn tarkoitukseen tehty laite tai laitteisto, jota ohjaa tietokone. Sille on tyypillistä, että käyttäjän ei tarvitse olla tietoinen laitteen sisällä olevasta tietokoneesta, vaikka voikin sen olemassaolon helposti päätellä. Suomenkielisen termin sulautettu järjestelmä otti käyttöön 1980-luvun alussa Lauri Gröhn Telenokialla työskennellessään.[1]
Tyypillisesti sulautetun järjestelmän ohjelmisto ja laitteisto on suunniteltu juuri kyseistä tarkoitusta varten. Joissain (harvinaisissa) tapauksissa ne on suunniteltu yhtä aikaa yhteisillä välineillä, jolloin voidaan puhua yhteissuunnittelusta (engl. codesign). Monet sulautetut järjestelmät ovat suhteellisen pieniä, ja ne on toteutettu mikrokontrollerien avulla. Lisäksi järjestelmät voivat olla mobiileja (matkapuhelimet, GPS-laitteet) ja akkukäyttöisiä, mikä asettaa tiukkoja vaatimuksia energian kulutukselle. Toisaalta suurimmat sulautetut järjestelmät voivat sisältää useita hyvin tehokkaita tietokoneita (puhelinkeskukset, lentokoneiden avioniikkajärjestelmät).
Perinteisesti sulautetut järjestelmät ovat olleet suljettuja, eli niin sanottu kolmas osapuoli ei ole voinut tarjota niihin ohjelmiaan. Joissakin uudemmissa järjestelmissä on mahdollistettu tällaisten sovelluksien lisääminen järjestelmään (esimerkiksi joissain matkapuhelinmalleissa ja tallentavissa digitv-sovittimissa). Myös avoimen lähdekoodin käyttö on nopeasti yleistymässä sulautettujen järjestelmien kehityksessä. Esimerkiksi osa matkapuhelinten käyttöjärjestelmistä perustuu avoimeen lähdekoodiin (Symbian, Android).
Sulautetuilla järjestelmillä toteutetaan nykyään paljon sellaisia järjestelmiä, jotka aiemmin toteutettiin elektroniikan erilliskomponenteilla ja ASIC-piireillä. Sulautettuja järjestelmiä on runsaasti automaation eri sovelluksissa (venttiilit, anturit, ohjausjärjestelmät), autoissa (moottorin ohjaus, lukkiutumattomat jarrut, luistonesto, ajotietokone), viihde-elektroniikassa (televisio, CD- ja DVD-soittimet), ja kodinkoneissa (mikroaaltouuni, astian- ja pyykinpesukone). Osa järjestelmistä on sellaisia, joita ei aiemmin ole voitu järkevästi edes toteuttaa (matkapuhelin, GPS-paikannin, pankkiautomaatti).
Historiallisesti sulautetut järjestelmät ovat olleet hyvin pieniä ja ovat toimineet ilman käyttöjärjestelmää: näiden tehtävänä on ollut vain muutaman sensorin seuranta. Esineiden internet -laitteissa kommunikointi (langallinen tai langaton) muiden järjestelmien kanssa on merkittävämmässä osassa ja vaatii enemmän ohjelmistotukea.[2] Sulautetussa järjestelmässä laitteen koko ohjelmisto voidaan luokitella firmwareksi mukaan lukien sen käyttöjärjestelmä, mutta joissakin kevyissä sulautetuissa järjestelmissä ei ole käyttöjärjestelmää, vaan laite suorittaa firmwarea suoraan.[3]
Sulautettujen järjestelmien ohjelmointiin käytetään usein C-kieltä ja myös C++ ja assembly ovat käytössä.[4] C-kieli on lähellä laitteistoa, mutta ei ole niin laitekohtaista kuin assembly.[5]
Katso myös
Lähteet
- HETKY, ATK-toiminnan tuottavuuden lisääminen Lauri Gröhn / Telenokia Oy (1.12.1983), haettu 9.6.2008
- Linux Takes Lead in IoT Market Keeping 80% Market Share businesskorea.co.kr. 4.7.2017. Viitattu 2.7.2021. (englanniksi)
- Stringham, Gary: Hardware/Firmware Interface Design, s. 6. Newnes, 2010. ISBN 978-1-85617-605-7. (englanniksi)
- Michael Barr: Real men program in C embedded.com. 1.8.2009. Viitattu 25.10.2021. (englanniksi)
- Introduction to Embedded Firmware Development predictabledesigns.com. 22.12.2021. Viitattu 12.12.2022. (englanniksi)