Reaaliaikaisten käyttöjärjestelmien ajanhallinta
Nieminen, Joni (2024)
Nieminen, Joni
2024
Tieto- ja sähkötekniikan kandidaattiohjelma - Bachelor's Programme in Computing and Electrical Engineering
Informaatioteknologian ja viestinnän tiedekunta - Faculty of Information Technology and Communication Sciences
This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Hyväksymispäivämäärä
2024-06-11
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tuni-202406067000
https://urn.fi/URN:NBN:fi:tuni-202406067000
Tiivistelmä
Tämän työn tarkoituksena on tutustua käyttöjärjestelmien ajan hallintaan ja aikataulutuksen toteuttamiseen. Erityisesti tarkastellaan reaaliaikaisten käyttöjärjestelmien toteutusta. Tutkimuskysymyksinä ovat ”Miten käyttöjärjestelmä aikatauluttaa laitteiston laskentaresursseja?” ja ”Mitä eroja eri reaaliaikaisten käyttöjärjestelmien ajan hallinnan toteutuksilla on?”. Työssä käytetään eri käyttöjärjestelmien omia dokumentaatioita selvittämään, miten niiden toiminta on toteutettu. Lisäksi käytetään muita kirjallisuuslähteitä yleisen tiedon hankkimiseen.
Reaaliaikaiset käyttöjärjestelmät voidaan mieltää yleiskäyttöisten käyttöjärjestelmien laajentumina, joissa järjestelmän suorituskyky ei ole optimoinnin kohteena. Sen sijaan järjestelmän ennakoitavuus ja määräaikojen tarkkuus ovat optimoitavia ominaisuuksia. Reaaliaikaiset käyttöjärjestelmät eivät siis välttämättä ole nopeampia kuin yleiskäyttöiset käyttöjärjestelmät.
Työstä käy ilmi, että käyttöjärjestelmän tuottama laitteiston aikatauluttaminen voidaan tehdä monella eri tavalla. Työssä tutkitut kolme reaaliaikaista käyttöjärjestelmää: μC/OS-III, Eclipse ThreadX sekä freeRTOS käyttävät kuitenkin kaikki prioriteettiin pohjautuvaa etuoikeutettua aikataulutusta. Kaikkien kolmen aikataulutus on siis suurelta osin sama. Eclipse ThreadX mahdollistaa myös etuoikeuskynnyksen käyttämisen, mitä muut käyttöjärjestelmät eivät tue. Etuoikeuskynnyksellä tarkoitetaan prosessin kykyä olla tulematta ohitetuksi.
Reaaliaikaiset käyttöjärjestelmät voidaan mieltää yleiskäyttöisten käyttöjärjestelmien laajentumina, joissa järjestelmän suorituskyky ei ole optimoinnin kohteena. Sen sijaan järjestelmän ennakoitavuus ja määräaikojen tarkkuus ovat optimoitavia ominaisuuksia. Reaaliaikaiset käyttöjärjestelmät eivät siis välttämättä ole nopeampia kuin yleiskäyttöiset käyttöjärjestelmät.
Työstä käy ilmi, että käyttöjärjestelmän tuottama laitteiston aikatauluttaminen voidaan tehdä monella eri tavalla. Työssä tutkitut kolme reaaliaikaista käyttöjärjestelmää: μC/OS-III, Eclipse ThreadX sekä freeRTOS käyttävät kuitenkin kaikki prioriteettiin pohjautuvaa etuoikeutettua aikataulutusta. Kaikkien kolmen aikataulutus on siis suurelta osin sama. Eclipse ThreadX mahdollistaa myös etuoikeuskynnyksen käyttämisen, mitä muut käyttöjärjestelmät eivät tue. Etuoikeuskynnyksellä tarkoitetaan prosessin kykyä olla tulematta ohitetuksi.
Kokoelmat
- Kandidaatintutkielmat [8918]