Egenskaper och funktioner
rt-kernel® är ett litet, pålitligt och kostnadseffektivt realtids- operativsystem för små inbyggda system.
Genom innovativ schemaläggning stödjer vi både tidsstyrda realtidsfunktioner och eventstyrda funktioner. De två kan också kombineras i samma system.
Realtid och schemaläggning
rt-kernel® är ett multitrådat operativsystem, vilket tillåter en applikation att exekvera flera parallella programflöden. Dessa schemaläggs enligt en preemptiv och prioritetsbaserad algoritm. Den tråd som har högst prioritet och är redo att köra, får köra. Detta ger ofta mycket bra systemegenskaper samtidigt som systemet är ganska enkelt och flexibelt att utveckla och underhålla.
För mer tidskritiska applikationer tillhandahålls även tidsstyrning där varje tråd garanteras få köra vid en viss tidpunkt. Detta ger ett system med ännu hårdare realtidsegenskaper, som klarar de flesta krävande scenarion som t.ex. motorstyrningssystem.
De två principerna kan kombineras i samma system där applikationens olika trådar klassas i tidskritiska och mindre tidskritiska. För att säkerställa att de hårda tidsgränserna hålls, ges de tidskritiska trådarna högre prioritet än andra trådar och t.o.m. högre prioritet än vissa avbrott.
Avbrott
I rt-kernel® finns stöd för prioriterade avbrott, där avbrott kan nästlas så att ett högre prioriterat avbrott alltid avbryter ett lägre prioriterat. När ett avbrott inträffar anropar rt-kernel® den avbrottsrutin som bestämts av användaren.
Eventstyrning och synkronisering
rt-kernel® tillhandahåller ett flertal standardmekanismer för synkronisering och kommunikation mellan olika trådar så som:
- Semaforer
- Mutexar
- Brevlådor
- Signaler
Felhantering
Vid alla fel anropar rt-kernel en felrutin, som bestämts av användaren. Denna lösning ger oftast ett mer robust och kontrollerat systembeteende vid fel jämfört med den traditionella lösningen där funktioner returnerar felkoder.
Resurssnålhet
När man bygger en applikation länkas endast de delar av koden med som man verkligen använder. Detta tillsammans med att rt-kernel® skrivits med ett minimalistiskt förhållningssätt gör att slutprodukten blir mycket resurssnål, både vad gäller minnes- och processorkrav. rt-kernel® kan vara så liten som 6 kB i minsta konfiguration och en enkel hel applikation kan göras så liten som 10 kB.
Dess modesta krav på minne och effektiva exekvering gör rt-kernel® extra lämpligt för System-on-Chip-lösningar där både minne och I/O är inbyggda i samma krets.
