Tekniska slutsatser
- PREEMPT_RT ensamt överskred jittergränsen på en millisekund på båda enheterna.
- PREEMPT_RT med SCHED_FIFO prioritet 80 klarade fyra stationära körningar.
- Resultatet gäller en avgränsad 10 ms-pilot och är inget generellt realtids- eller säkerhetsgodkännande.
Jitter är en fördelning, inte ett adjektiv
Att kalla Linux deterministiskt utan period, last, varaktighet och maxvärde hjälper inte ett tekniskt beslut. Frågan är om det observerade värsta fallet ryms i maskinens tidsbudget.[3][4][5]
PREEMPT_RT gör fler kärnvägar avbrytbara. SCHED_FIFO ändrar prioriteten mellan körklara uppgifter. De behandlar olika orsaker till samma timingproblem.[2][3]
Bestäm acceptanskraven före testet
En 10 ms-körning godkändes bara med högst 1 ms jitter, noll missade cykler och överskridanden, högst 20 ms ögonblicksbildsålder och högst 1 ms publicering.[1]
Konfigurationen som klarade testet
PREEMPT_RT med SCHED_FIFO prioritet 80 klarade kraven på båda styrenheterna. Maximalt jitter låg mellan 0,063612 och 0,094448 ms utan missade cykler, överskridanden eller minnesökning.[1]
| Styrenhet | Last | Max jitter | Bildålder | Publicering | Missad / överrun |
|---|---|---|---|---|---|
| A | Nej | 0,085877 ms | 1,982421 ms | 0,096610 ms | 0 / 0 |
| B | Nej | 0,063612 ms | 9,277714 ms | 0,064073 ms | 0 / 0 |
| A | Ja | 0,094448 ms | 3,851881 ms | 0,081295 ms | 0 / 0 |
| B | Ja | 0,067025 ms | 9,068315 ms | 0,079147 ms | 0 / 0 |
De underkända körningarna förklarar resultatet
Standard- eller trimmad konfiguration gav 2,258783–3,662989 ms. PREEMPT_RT utan FIFO förbättrade läget men missade fortfarande gränsen med 1,014743 och 1,340064 ms.[1][2][3]
- Mät hela schemaläggningen, inte bara kärnan.
- Håll nätverk, loggning och blockerande I/O utanför den cykliska tråden.
- Arkivera underkända körningar tillsammans med de bästa.
Vad detta bevisar och inte bevisar
Resultatet stödjer fortsatt 10 ms-pilotarbete. Det bevisar inte slutligt godkännande, fysisk I/O-timing, långtidsbeteende, korrekta värden eller safety-lämplighet.[1]
Kvar finns kallstart under last, 100 ms-profiler, servicekonkurrens på samma kärna, backendens färskhet och validering från ände till ände.[1]
Nästa test ska försöka knäcka resultatet
- Kallstarta när alla laster börjar samtidigt.
- Kör service och runtime på samma kärna.
- Kör länge nog för temperatur och loggrotation.
- Mät fysisk I/O utöver mjukvarutidsstämplar.
- Publicera rådata, konfiguration och misslyckanden.
Vanliga frågor
Garanterar PREEMPT_RT deterministisk styrning?
Nej. Hårdvara, drivrutiner, prioriteringar, last och applikation avgör fortfarande det mätta resultatet.
Varför SCHED_FIFO?
Det låter styrtråden med högre prioritet avbryta normala uppgifter, när arbetet är begränsat och övervakat.
Är detta ett produktionsgodkännande?
Nej. Det är fyra stationära pilotkörningar på två enheter med öppet redovisade luckor.
Källor och standarder
- MCR Demo 1 steady-state 10 ms timing evidenceBootCtrl, 26 July 2026
- PREEMPT_RT theory of operationLinux kernel documentation
- sched(7): overview of CPU schedulingLinux man-pages project
- clock_nanosleep(2): high-resolution process sleepLinux man-pages project
- Cyclictest documentationLinux Foundation Real-Time Linux project
BootCtrl Engineering granskade senast de tekniska påståendena och källänkarna den 26 juli 2026. Produktpåståenden kontrolleras mot aktuella implementationsrepon; arbete på färdplanen presenteras inte som lanserad funktionalitet.



