RTAI

RTAI ang. real time application interface – interfejs dla aplikacji czasu rzeczywistego. Jest to pakiet modułów do jądra Linuksa umożliwiający tworzenie aplikacji zdolnych do pracy w reżimie ograniczeniach czasowych. Nie jest to jednak system operacyjny czasu rzeczywistego taki jak VxWorks i QNX. Linux był projektowany z myślą o pracy na serwerach i bazach danych, a wobec takich maszyn są inne oczekiwania. Jednak moduły RTAI ładowane do jądra Linuksa udostępniają kilka cech typowych dla systemów czasu rzeczywistego. Na przykład pełną wywłaszczalność aplikacji, czyli każda aplikacja może zostać przerwana przez inną, o wyższym priorytecie. Tak więc RTAI to rodzaj nakładki na Linuksa, która zmienia sposób obsługi przerwań i schedulera oraz udostępnia kilka innych cech typowych dla systemów RTOS takich jak kolejki fifo, semafory, sygnały, komunikaty. Pozwala to na wykorzystanie Linuksa do zastosowań militarnych, przemysłowych, laboratoryjnych. Przykładowo w projekcie LinuxCNC.org wykorzystuje się Linuksa do sterowania maszynami CNC.

Zasada działania

Jego zasada działania polega na stworzeniu nowego schedulera, w którym pierwszeństwo do zasobów procesora mają procesy czasu rzeczywistego, a standardowe procesy Linuksa są wykonywane z wykorzystaniem wolnych zasobów procesora. Taka budowa oznacza, że niewiele zmian zostało wprowadzonych do zasadniczego jądra Linuksa. Dzięki temu można korzystać zarówno z typowych aplikacji linuksowych, jak na przykład pakiety biurowe, przeglądarka internetowa, a mając tak naprawdę system czasu rzeczywistego. Aby wprowadzić taką funkcjonalność Linux w swoim funkcjonowaniu opiera się na HAL (ang. Hardware Abstraction Layer).

Autorzy

RTAI jest pisana przez społeczność open-source, finansowana przez Wydział Inżynierii Aeronautyki Politechniki w Mediolanie (DIAPM), a kluczową osobą projektu jest Paolo Mantegazza. W styczniu 2003 projekt RTAI połączył siły z projektem Xenomai[1], który także udostępnia możliwości czasu rzeczywistego w oparciu o tradycyjne jądro Linuksa.

Wspierane architektury

  • x86 (razem lub bez FPU i TSC)
  • x86-64
  • PowerPC
  • ARM (StrongARM, ARM7: clps711x-family, Cirrus Logic EP7xxx, CS89712, PXA25x)
  • m68k (wspiera zarówno MMU i NOMMU)

Projekty opierające się na RTAI

Podobne systemy

Omawiając systemy czasu rzeczywistego oparte na Linuksie należy wspomnieć o RT-Linux. Był to pierwszy pakiet łat (ang. patch) do jądra Linuksa udostępniający możliwości systemu czasu rzeczywistego. Projekt był prowadzony przez Victora Yodaiken i Michaela Barabanova na Instytucie Górnictwa i Techniki w Nowym Meksyku. Victor Yodaiken, profesor tego instytutu, utworzył następnie firmę FSMLabs, która próbowała komercyjnie wykorzystać RT-Linuksa, jednak ostatecznie firma została przejęta przez Wind River Systems, co ostatecznie przyczyniło się do zamknięcia projektu RT-Linuksa.

Przypisy

Linki zewnętrzne

Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.
Kembali kehalaman sebelumnya