Avoimen lähdekoodin reaaliaikaiset käyttöjärjestelmät

avoin
Julkaisu on tekijänoikeussäännösten alainen. Teosta voi lukea ja tulostaa henkilökohtaista käyttöä varten. Käyttö kaupallisiin tarkoituksiin on kielletty.
Lataukset1

Verkkojulkaisu

DOI

Tiivistelmä

Droonit ja IoT-laitteet ovat sulautettuja järjestelmiä, jotka toimivat usein reaaliaikaisilla käyttöjärjestelmillä. Ne on varustettu rajallisella laitteistolla, jossa laskentateho, muistikapasiteetti ja virtalähde ovat rajatut. Avoimen lähdekoodin reaaliaikaiset käyttöjärjestelmät ovat nopeuttaneet näiden järjestelmien kehitystä. Avoimen lähdekoodin kehityspaketti tarjoaa kehittäjille valmiit työkalut ja kirjastot, mutta edellyttää lisenssien yhteensopivuutta niiden hyödyntämiseksi. Tässä kirjallisuuskatsauksessa tarkastellaan avoimen lähdekoodin reaaliaikaisia käyttöjärjestelmiä resurssirajoitteisille sulautetuille järjestelmille. Tutkielmassa perehdytään reaaliaikaisten ja yleiskäyttöisten käyttöjärjestelmien välisiin eroihin, arkkitehtuurillisia ratkaisuja rajallisen laitteiston tuomiin haasteisiin sekä avoimen lähdekoodin ohjelmistojen lisensoinnin rooliin ja vaikutukseen projektin kehityksessä. Tutkielman tarkastelu painottuu droonikontekstin ja lennonohjausjärjestelmien ympärille. Tutkielmassa löydetään reaaliaikaisen ja yleiskäyttöisen käyttöjärjestelmän välille yksiselitteiset erot, mutta pehmeän ja kovan reaaliaikaisuuden käyttöjärjestelmien välinen raja määritellään kirjallisuudessa häilyvämmin. Tutkielma esittää neljä arkkitehtuurista ratkaisua rajallisen laitteiston haasteille: ChibiOS:n pienikokoisen ytimen, Zephyrin modulaarisen arkkitehtuurin, yhdistetyn reaaliaikaisen käyttöjärjestelmän sekä micro-ROS:n avulla mikrokontrollerien tehokkaan käyttämisen. Tuloksista selviää, ettei rajallisen laitteiston asettamia haasteita voida ratkaista vain yhdellä tavalla, vaan ratkaisun tulee olla räätälöity käyttötarkoitusta ajatellen. Lisenssin valinta vaikuttaa koko projektin elinkaareen ja lisenssien yhteensopimattomuus asettaa lisähaasteita.

item.page.okmtext