Linux a czas rzeczywisty
Wprowadzenie do systemów RT:

RTLinux:

KURT Linux:

Slajdy:

Przykłady systemów czasu rzeczywistego

POSIX 1003.1b

W 1993 roku zostało opracowane rozszerzenie POSIX 1003.1b dotyczące systemów czasu rzeczywistego. Jest ono dosyć powszechnie implementowane (nie zawsze jednak do końca) w wielu systemach operacyjnych np.: Windows NT, Linux . Standard ten wprowadza miedzy innymi:

  • Zegary (ang. Timery) z obsługą sygnałów POSIX
  • przynajmniej 32 priorytety procesów uwzględniane w trakcie ich szeregowania, z możliwością wywłaszczania procesów o niższym priorytecie
  • sygnały czasu rzeczywistego, posiadające różne priorytety
  • różne mechanizmy synchronizacyjne: semafory, kolejki komunikatów i segmenty pamięci dzielonej
  • funkcje blokujące usuwanie stron z pamięci (związane z mechanizmem pamięci wirtualnej)

Zgodność systemu z tym standardem gwarantuje poprawne wykonywanie zadań czasu rzeczywistego o charakterze miękkim.


Jest jednym z najlepszych twardych systemów czasu rzeczywistego. System składa się z mikrojądra, w którym zaimplementowane jest jedynie:

  • szeregowanie procesów
  • komunikacja międzyprocesowa
  • obsługa przerwań
  • niskopoziomowa komunikacja sieciowa

Wszystkie inne rzeczy są ładowane jako opcjonalne moduły.

Dzięki temu samo mikrojądro jest bardzo niewielkie (zajmuje około 7KB) i bardzo szybkie. Architektura taka zapewnia ogromną skalowalność, ponieważ można zmniejszyć wielkość samego systemu do około 100KB dzięki temu może być wykorzystany jako system wbudowany, ale można go również wykorzystywać do obsługi potężnego, w pełni funkcjonalnego środowiska wielokomputerowego.

System jest zgodny z POSIX 1003.1b (posiada stosowne certyfikaty).


Lynx po łacinie ryś. Jest to uniksowy twardy system czasu rzeczywistego zgodny z posiksem.

Podobnie jak w przypadku QNX również tu została zastosowana architektura miktojądra. Podobnie również wygląda sytuacja jeśli chodzi o skalowalność systemu. Może być on używany jako niewielki system wbudowany, oraz jako potężne narzędzia kontrolujące stacje robocze.

Jądro jest całkowicie wywłaszczane (procesy mogą być zawieszane). Jako ciekawostkę można dodać, że LynxOS jest pierwszą uniksową platformą czasu rzeczywistego, dla której opracowano kompilator wielowątkowego języka programowania Ada.