Logowanie
 Instalacja RTAI czyli linuksa czasu rzeczywistego
Poradnik z cyklu dla programistów. Wykonywanie zadań w czasie rzeczywistym nie jest łatwe . Niestety system operacyjny robi swoje przekazując sterowanie do wielu procesów na nim uruchomionych skutecznie zwalniając inne procesy. Co zrobić, aby zatem dokładnie zmierzyć czas wykonania jakiejś operacji ? Potrzeba pomiarów w czasie rzeczywistym. A to nie jest łatwe na zwykłym systemie . W tym miejscu przydaje się Linux z jądrem czasu rzeczywistego z wykorzystaniem projektu RTAI.

W tym przypadku wszystko polega na tym, że jądro otrzymuje najniższy z możliwych priorytetów, zaś nasze zadanie staje się najważniejsze .

Jest kilka ciekawych projektów związanych z czasem rzeczywistym. Pierwszym jest RTLinux, jednak niestety został on dość dawno zawieszony . Innym rozwiązaniem jest RTAI.

W poradniku tym pokażę jak zainstalować Linuksa czasu rzeczywistego, co wbrew pozorom nie jest łatwe, a zgodne wykonywanie poleceń z instrukcją dawaną przez autorów kończy się fiaskiem.

Cały proces zostanie zademonstrowany na RTAI 3.8 oraz najnowszej dystrybucji Slackware.

Proces instalacji RTAI Linux:


1. Zainstaluj Linuksa

Instalacja całego systemu jest prosta, jednak zwróć uwagę, że chcesz mieć system RT (Real Time), więc nie instaluj śmieci. Zainstaluj tylko samo jądro, programy do konsoli (przyda się np MC), biblioteki. Nie instaluj źródeł jądra, są zbędne oraz Xów. Jako główny system plików wybierz EXT3.

2. Ściągnij jądro Linux 2.6.32.2. To najnowsze jądro w pełni zgodne z RTAI. Jądro to znajdziesz na serwerze kernel.org

Jądro wypakuj do folderu /usr/src/linux

To ważne, gdyż instalator RTAIa tam będzie go szukał.

3. Ściągnij RTAI 3.8 i wypakuj go do /usr/src/rtai/

4. Z katalogu /usr/src/rtai/base/arch/x86/ bierzemy patcha dla naszego jądra i kopiujemy go do folderu /usr/src/

Dla ułatwienia zmień mu nazwę na patch

5. Wchodzimy do /usr/src/linux/ i tam wywołujemy polecenie

patch -p1 < ../patch

W tym momencie nasze jądro zostanie zmodyfikowane do używania go w trybie RT.

6. Wykonujemy make menuconfig

Włączamy obsługę USB, systemu plików EXT3 i inne potrzebne nam opcje. Ważne aby także wybrać odpowiedni procesor. Liczbę rdzeni można zostawić domyślnie na 8 chyba, że mamy więcej.

Zapisz konfigurację .config

5. W zapisanym .config zmienić trzeba ręcznie kilka opcji CONFIG_SPARSE_IRQ=n
CONFIG_EXT3_FS=y
CONFIG_EXT3_FS_XATTR=y
CONFIG_EXT3_FS_POSIX_ACL=y
CONFIG_EXT3_FS_SECURITY=y


Ustaw te zmienne, gdyż inaczej jądro się nie skompiluje lub też nie będzie się chciało uruchomić.

Na razie jądro pozostaw takie jakie jest.

6. Przejdź do folderu z RTAI czyli /usr/src/rtai/

Co najważniejsze to ustaw prawa dostępu na 777 poleceniem chmod

7. Niestety makefile posiada błąd w składni przez co nie uruchomi się on do końca. Trzeba go edytować.

W linijce mniej więcej o numerze 133 znajdziesz all %::
Zmień to na all ::

8. Teraz można już swobodnie wykonać polecenie
make menuconfig

W opcjach ustaw dokładną liczbę posiadanych rdzeni procesora.

9. Wykonaj kolejno komendy make i make install
W tym momencie RTAI już się zainstaluje. Czas zatem wrócić do instalacji jądra.

10. Przejdź do folderu /usr/src/linux/

11. Wykonaj kolejno polecenia:
make dep
make clean
make bzImage
make modules
make modules_install
cp arch/i386/boot/bzImage /boot/rtlinuz


Dzięki temu stworzysz nowe jądro, które następnie umieścisz w folderze rozruchowym. Teraz pozostało dodać opcje uruchamiania systemu w trybie RT

12. Otwórz /etc/lilo.conf i na samym końcu edytuj bootowanie dodając startowanie nowego jądra. Zwróć uwagę co miało podane normalne jądro w pozycji root, musisz dodać tak samo. W moim przypadku dodałem następujące pozycje:

image = boot/rtlinuz
label=RTAILinux
root = dev/sda2
read-only



Po zapisaniu zostaje już tylko stworzenie nowego punktu ładowania, a więc w konsoli wydaj polecenie lilo

W tym momencie powinno wszystko zostać zakończone, wystarczy komenda reboot aby na nowo włączyć komputer i sprawdzić czy RTAI działa. Jeśli nie ruszy, uruchom system na zwykłym jądrze. Jeśli nie dałeś sobie rady napisz na naszym FORUM.

Jeśli jednak działa wszystko, czas na test. Wpisz

cd /usr/realtime/modules
sudo insmod rtai_hal.ko
sudo insmod rtai_lxrt.ko


I już wszystko będzie jasne. Nie możesz mieć oczywiście żadnych błędów.

A więc miłego użytkowania i pozdrawiam.

Wszelkie prawa zastrzeżone

 Reklama

 Komentarze
Brak dodanych komentarzy. Może czas dodać swój?
 Dodaj komentarz
Dla wszystkich komentarzy wymagana jest ich akceptacja przez moderatora.

Nick:



AntyBOT (dla niezalogowanych): Napisz słowo hotfix wielkimi literami

/articles.php?article_id=371

 Artykuły
Polecany artykuł


Jak walczyć z pobieraczkiem? Jak odstąpić od umowy? O tym w artykule.
 Ostatnie komentarze
gryPrzez: Maciak Plock [dnia: Apr 03, 2020]
wynik jest wysoko w google, przy...
gryPrzez: MAMBA [dnia: Mar 24, 2020]
Warning: Only 61104 of 61105 MBy...
gryPrzez: Random32 [dnia: Mar 18, 2020]
Witam, u mnie na polskim Window...
gryPrzez: muffintodebil [dnia: Mar 04, 2020]
aha gosicu to niezly jestes zaaw...
gryPrzez: Maciek [dnia: Feb 20, 2020]
2 karty 512 kupione na allegro: ...
gryPrzez: xd [dnia: Feb 05, 2020]
zrobiłem sposób Vin/7 na dziesią...
gryPrzez: gtremik [dnia: Jan 25, 2020]
Dzięki seba86mu :) Działa
gryPrzez: Mirek [dnia: Jan 22, 2020]
A jest rozwiązanie dla Windowsa 10?
 Gry
Polecany artykuł


Quake

Klasyk FPS w wersji flash.
 Programy
Polecany artykuł


Tapin Radio Darmowa aplikacja służąca do słuchania i nagrywania radia internetowego
 Recenzje
Polecana recenzja


Sleeping Dogs
Policjant pod przykrywką rozpracowuje Triadę.
 Facebook