rtos test, AGH WIMIR AiR, Semestr 6, SCRz
[ Pobierz całość w formacie PDF ]
//-->SYSTEMY CZASU RZECZYWISTEGO 2010/2011 1. Systemy wbudowane: czym są i z czego się składają Są to sterowniki wbudowane w urządzenia, którymi sterują. Systemy wbudowane są zwykle systemami czasu rzeczywistego. Składa się ze sprzętu i oprogramowania. 2. Przykłady komercyjnych systemów operacyjnych czasu rzeczywistego Solaris, LynxOS, VxWorks, Windows CE, QNX Neutrino 3. Standardy stosowane w dziedzinie systemów czasu rzeczywistego POSIX 1003.1 4. Czym jest QNX6 Neutrino? System operacyjny czasu rzeczywistego zaliczany do klasy Unix, oparty na mikrojądrze 5. System wbudowany -‐ def. System wbudowany jest to system komputerowy będący częścią większego systemu i wykonujący istotną część jego funkcji. 6. Charakterystyka systemu rozwoju oprogramowania w systemach czasu rzeczywistego Nie wiem czy dokładnie o to chodzi. System tworzenia oprogramowania: Jest to program, pakiet pozwalający tworzyć aplikację która będzie wykonywana w komputerze docelowym. Obejmuje on takie narzędzia jak: edytor, kompilator, linker, biblioteki, debugger, symulatory, narzędzia do tworzenia dokumentacji. 7. Architektura komputerów przeznaczonych do zastosowań wbudowanych -‐ wymagana odporność na pracę w trudnych warunkach otoczenia (wibracje, zapylenie, wilgoć), dopuszczalny jest szeroki zakres temperatur otoczenia. -‐ przeznaczone są do pracy ciągłej -‐brak elementów ruchomych (dyski obrotowe, wentylatory, napędy dyskietek), wymagana trwałość, łatwość serwisowania. -‐ oprogramowanie umieszczone w pamięci półprzewodnikowej -‐flash, EPROM. -‐ stosowane wsparcie sprzętowe dla osiągania niezawodnej pracy np. budzik (watchdog), poszerzona diagnostyka, pamięć ECC 8. Standardy dotyczące komputerów przeznaczonych do systemów sterujących i wbudowanych 1VME, Compact PCI i PC104 9. watchdog -‐ urządzenie zabezpieczające Budzik jest urządzeniem zabezpieczającym przed skutkami zatrzymania wykonywania programów, które może nastąpić przy awarii sprzętu lub błędzie programowym. 10. Co może zrobić „budzik” występujący w komputerach przeznaczonych do systemów wbudowanych? Operacje, które można na nim wykonywać to: aktywacja, odświeżanie i zatrzymanie. Gdy w zadanym czasie nie zostanie wykonana operacją odświeżania, to budzik przeprowadzi restart sprzętowy komputera. 11. System czasu rzeczywistego -‐ def. Jest to system komputerowy, w którym obliczenia prowadzone równolegle z przebiegiem zewnętrznego procesu mają na celu nadzorowanie, sterowanie lub terminowe reagowanie na zachodzące w tym procesie zdarzenia. 12. Ograniczenia czasowe w systemach czasu rzeczywistego Rygorystyczne ograniczenie czasowe to takie ograniczenie, które zawsze musi być spełnione. Jeśli choć raz zostało przekroczone, to uważa się, że nie zostało spełnione. Łagodne ograniczenie czasowe to takie ograniczenie czasowe, które czasami może być przekroczone. 13. Przekroczenie ograniczenia czasowego Ograniczenie rygorystyczne: Jeśli choć raz zostało przekroczone, to uważa się, że nie zostało spełnione. 14. Atrybuty wiarygodności systemu RT Atrybuty: dostępność, niezawodność, bezpieczeństwo, naprawialność, integralność i ochrona 15. Sytuację, w której system operacyjny pozwala na efektywne wykorzystywanie mocy obliczeniowej procesorów poprzez udostępnienie ich dla wielu użytkowników, procesów i wątków 16. Komunikacja pomiędzy programami aplikacyjnymi a systemem operacyjnym Komunikacja pomiędzy programami aplikacyjnymi a systemem operacyjnym odbywa się poprzez wywołania systemowe (ang. system calls). Wywołanie systemowe jest 2sposobem zlecania systemowi wykonania usług. Ma ono najczęściej postać funkcji lub procedury, w której znaczenie parametrów i ich typy są dokładnie zdefiniowane i opisane. 17. Rozszerzenia standardu POSIX obejmujące wątki standard POSIX 1003.1c. -‐ wątki Rozszerzenie wprowadza możliwość wykonywania wielu wątków w ramach jednego procesu. Definiuje atrybuty wątków, szeregowanie wątków, muteksy i zmienne warunkowe. 18. System QNX Neutrino – typ systemu Jest systemem z mikrojądrem. 19. Mikrojądro Mikrojądro nie jest procesem. Jest ono modułem programowym, który stwarza ramy, w których procesy mogą istnieć. Zapewnia też podstawowe funkcje związane z obsługą przerwań, komunikacją międzyprocesową, szeregowaniem wątków i ich synchronizacją. 20. Zalety systemów o architekturze mikrojądra nad systemami monolitycznymi 1. Niezależne szeregowanie procesów systemowych – obsługa urządzeń wejścia-‐wyjścia odbywa się przez oddzielne, mające swój priorytet procesy, które podlegają zwykłemu szeregowaniu. 2. Modularność – drugą zaletą jest wyższy stopień modularności systemu, co prowadzi do zwiększenia jego niezawodności. Niezawodność wzrasta, gdy system może być podzielony na oddzielnie rozwijane, uruchamiane i testowane procesy. 3. Wzajemna izolacja procesów – każdy z procesów systemowych jest wykonywany w oddzielnie chronionym segmencie przestrzeni adresowej. Awaria jednego z procesów nie powoduje awarii innego procesu. 4. Możliwość dynamicznego uruchamiania procesów systemowych – procesy systemowe są zwykłymi procesami. Tak więc procesy systemowe mogą być uruchamiane i zatrzymywane bez potrzeby restartowania systemu. 21. Przesłanie komunikatu pomiędzy procesami Przesłanie komunikatu pomiędzy procesami jest przesłaniem pomiędzy nimi pewnej liczby bajtów według ustalonego protokołu. Przesłanie komunikatu jest operacją atomową. 22. Mechanizmy komunikacji międzyprocesowej zawartych w mikrojądrze systemu QNX Neutrino 1. Komunikaty i impulsy – (ang. messages, pulses) 2. Sygnały – (ang. signals) 3. Zegary – (ang. clocks) 34. Czasomierze – (ang. timers) 5. Procedury obsługi przerwań – (ang. interrupt handlers) 6. Semafory – (ang. semaphores) 7. Blokady wzajemnego wykluczania – muteksy (ang. mutual exclusion lock ) 8. Zmienne warunkowe (ang. conditional variables) 9. Bariery (ang. barriers) 23. Administrator zasobu Administrator zasobu jest procesem serwerowym, który akceptuje komunikaty od innych procesów. W QNX6 Neutrino zapewnia dostęp do urządzeń wejścia-‐wyjścia. 24. „procnto” Powiązanie pomiędzy ścieżką dostępu a administratorem zasobu jest utrzymywane przez administrator procesów procnto. 25. Systemów plików w systemie QNX6 Neutrino 1. Systemy plików mogą być startowane i zatrzymywane dynamicznie w trakcie pracy systemu. 2. Równocześnie może współistnieć wiele systemów plików. 3. System plików wykonywany na jednym węźle może być w przezroczysty sposób dostępny z innego węzła. bezpośredni system plików, system plików RAM, system plików QNX4, system plików DOS, system plików CD-‐ROM, system plików FFS3, sieciowy system plików NFS, sieciowy system plików CIFS, system plików Ext2, wirtualny system plików 26.„QNet” Jest to wewnętrzny protokół przekazywania komunikatów dla systemu Neutrino. Jest fundamentem tego systemu. Umożliwia jednolitą metodę dostępu do zasobów tak lokalnych, jak i zdalnych. Qnet zapewnia transmisję komunikatów poprzez sieć przez co inne metody (komunikacji międzyprocesowej IPC), także mogą być stosowane w środowisku sieciowym. 27. Środowisko tworzenia aplikacji dla QNX6 Neutrino Momentics Development Suite 28. Pliki specjalne w QNX6 Neutrino p Plik specjalny FIFO (ang. FIFO) Bufor cykliczny w4c b n Specjalny plik znakowy (ang. Charakter Device) Specjalny plik blokowy (ang. Block Device) Nazwany plik specjalny Urządzenie z dostporty równoległeUrządzenie z dostNa przykład blok 29. Symboliczne oznaczenie praw wykonania pliku Symboliczne oznaczenia praw dostępu do pliku są następujące: r – Prawo odczytu (ang. read) w – Prawo zapisu (ang. write) x – Prawo wykonania (ang. execute) 30. Polecenie do listowania zawartości katalogu ls [-‐l] [nazwa] gdzie: l – listowanie w „długim” formacie, wyświetlane są atrybuty pliku, nazwa – nazwa katalogu lub pliku. 31. Wykonanie polecenia „mkdir abc” będzie skutkować: Nowy katalog tworzy się poleceniem mkdir. Polecenie to ma postać: mkdir nazwa_katalogu Stworzenie katalogu o nazwie „abc” 32. Listowanie zawartości pliku tekstowego: Zawartość pliku tekstowego listuje się za pomocą poleceń: more nazwa_pliku less nazwa_pliku cat nazwa_pliku Można do tego celu użyć też innych narzędzi, np. edytora vi, edytora ped lub edy-‐ tora wbudowanego w program Midnight Commander. 33. Polecenie „hogs” Informacja o wykorzystaniu procesora przez hogs procesy 34. Kompilując program z poziomu edytora w systemie QNX6 Neutrino, używamy polecenia: Gdy tak jest, to program kompilujemy, pisząc: 5 [ Pobierz całość w formacie PDF ] |