Przewodnik po instalacji QNX 6.5

Transkrypt

Przewodnik po instalacji QNX 6.5
Q N X ® S O F T WA R E D E V E L O P M E N T P L AT F O R M v 6 . 5
10 kroków
do Pañstwa
pierwszego
programu w QNX
© 2010 QNX Software Systems GmbH & Co. KG, firma nale¿¹ca
do koncernu Research In Motion Limited. Wszelkie prawa
zastrze¿one. QNX, Momentics, Neutrino, Aviage, Photon i Photon
microGUI s¹ znakami towarowymi nale¿¹cymi do firmy QNX
Software Systems GmbH & Co. KG, stanowi¹ zastrze¿one znaki
towarowe lub s¹ u¿ywane w niektórych systemach prawnych
i s¹ licencjonowane przez firmê QNX Software Systems Co.
Wszelkie pozosta³e znaki towarowe stanowi¹ w³asnoœæ
odpowiednich podmiotów.
1
Wymagania
2
2
Instalacja QNX SDP na platformie rozwoju oprogramowania
5
3
Instalacja RTOS QNX Neutrino na platformie docelowej
6
4
Wspó³dzia³anie sieciowe z QNX Neutrino
9
5
Tworzenie projektu
12
6
Komunikacja z QNX Neutrino
15
7
Kompilacja i linkowanie
17
8
Przygotowanie do uruchomienia
20
9
Uruchomienie i debugowanie
22
10
Program w systemie QNX Neutrino
26
1
Wymagania
W celu opracowania programów pracuj¹cych pod kontrol¹ systemu operacyjnego twardego
czasu rzeczywistego, bêd¹ Pañstwo potrzebowali przede wszystkim QNX Software
Development Platform (SDP). W sk³ad platformy SDP wchodzi pakiet QNX Momentics
Tool Suite, czyli wszystkie elementy niezbêdne do rozwoju i nastêpnie uruchomienia
oprogramowania pod QNX Neutrino, tj. kompilator, linker, biblioteki i inne komponenty
systemu operacyjnego, zbudowane dla wszystkich architektur wspieranych przez QNX
Neutrino. Pos³uguj¹c siê platform¹ SDP w œrodowisku Windows i Linux mamy do dyspozycji
zintegrowane œrodowisko programistyczne IDE na bazie projektu Eclipse
Mo¿emy zainstalowaæ platformê SDP wprost w systemie QNX Neutrino RTOS otrzymuj¹c
konfiguracjê rozwoju oprogramowania, tzw. self-hosted lub zainstalowaæ SDP w jednym
z systemów: Windows 7, Windows Vista, Windows 2000, Windows XP lub Linux a nastêpnie
instalujemy system operacyjny QNX na platformie docelowej:
Kana³ komunikacyjny
Platforma rozwoju
oprogramowania
2 QNX Software Systems
Platforma docelowa
Na platformie rozwoju oprogramowania uruchamiamy QNX Momentics Tool Suite; na
platformie docelowej uruchamiamy QNX Neutrino RTOS wraz z opracowanym
oprogramowaniem:
QNX Momentics
IDE 4,5
IDE
QNX Momentics Tool Suite
QNX Neutrino RTOS
Platforma docelowa
Jeœli nie posiadaj¹ Pañstwo p³yty DVD z zestawem programistycznym QNX Momentics,
mog¹ Pañstwo pobraæ jego obraz ISO z adresu:
http://www.qnx.com/products/evaluation
Je¿eli chcecie Pañstwo rozwijaæ oprogramowanie tylko dla architektury x86, nale¿y pobraæ
pakiet (znacznie mniejszy) QNX SDP jedynie dla platformy x86.
Oprócz œrodowiska programistycznego, bêd¹ Pañstwo potrzebowali platformê docelow¹,
na której bêdzie pracowaæ RTOS QNX Neutrino i wszystkie opracowane przez Pañstwa
programy.
QNX Software Systems 3
Istnieje kilka sposobów rozpoczêcia pracy z QNX Neutrino RTOS:
Wykorzystanie innego PC, którym mo¿e byæ nawet starszy komputer. Twardy dysk
powinien posiadaæ partycjê z co najmniej 300 MB wolnej przestrzeni (przy instalacji
ze wszystkimi sk³adnikami) do 3 GB (przy instalacji œrodowiska opracowania na
bazie QNX Neutrino dla wszystkich wspieranych procesorów). Jeœli na innej partycji
dysku zainstalowany jest system operacyjny Windows, nie zostanie ona naruszona.
Mog¹ Pañstwo tak¿e za³adowaæ QNX Neutrino bezpoœrednio z p³yty CD lub DVD,
jeœli na twardym dysku nie ma wystarczaj¹cej iloœci wolnego miejsca.
Uruchomienie QNX Neutrino na platformie referencyjnej (np. na bazie procesorów
PPC, ARM, MIPS lub SH). W tym przypadku bêd¹ Pañstwo potrzebowali
odpowiedniego pakietu wsparcia dla p³yt procesorowych (BSP). W dokumentacji
technicznej pakietu BSP opisano, w jaki sposób zainstalowaæ QNX Neutrino w
odpowiednim systemie docelowym. Wiêcej informacji mo¿na znaleŸæ na naszej
stronie Foundry27: http://community.qnx.com
Instalacja i uruchomienie QNX Neutrino RTOS jako maszyny wirtualnej w sesji
VMware. Pomimo i¿ VMware jest ³atwym sposobem ¿eby wypróbowaæ system
operacyjny, powinniœmy zauwa¿yæ, ¿e maszyny wirtualne nie wspieraj¹ twardego
czasu rzeczywistego.
Poniewa¿ QNX Neutrino ma jednakow¹ architekturê i sposób pracy dla wszystkich platform,
w niniejszym przewodniku opisujemy jedynie wariant uwzglêdniaj¹cy rozwój oprogramowania
w œrodowisku Windows oraz wykorzystanie x86 PC jako platformy docelowej.
4 QNX Software Systems
2
Instalacja QNX SDP na platformie
rozwoju oprogramowania
Pakiet programistyczny QNX Momentics zawiera wszelkie niezbêdne elementy do tworzenia
programów pod RTOS QNX Neutrino, w tym zaawansowane zintegrowane œrodowisko
programowania (IDE), kompilator, kompozytor, biblioteki i inne komponenty QNX Neutrino,
skompilowane dla wszystkich wspieranych architektur procesorowych.
Prosimy uruchomiæ Windows 7, Windows Vista, 2000 lub XP i w³o¿yæ p³ytê DVD QNX
Software Development Platform.Jeœli proces instalacji nie rozpocz¹³ siê
automatycznie, nale¿y uruchomiæ bezpoœrednio z p³yty DVD aplikacjê
qnxsdp-6.5.0-nnnnnnnnnnnn-win32.exe (gdzie nnnnnnnnnnnn jest numerem kompilacji).
Wiêcej informacji znajdziemy w przewodniku Installation Guide.
Program instalacyjny poprosi o podanie klucza licencyjnego. Klucz licencyjny powinni
Pañstwo otrzymaæ w formie elektronicznej, po pobraniu obrazu ISO pakietu QNX SDP ze
strony internetowej firmy QNX. W innych przypadkach powinni Pañstwo otrzymaæ klucz
przy zakupie pakietu programistycznego QNX SDP.
Po zakoñczeniu procesu instalacji na pulpicie Windows pojawi siê ikonka œrodowiska
roboczego QNX Momentics:
QNX Momentics
IDE 4,5
QNX Software Systems 5
3
Instalacja RTOS QNX Neutrino
na platformie docelowej
Instalacja na komputerze PC: Prosimy w³o¿yæ p³ytê DVD QNX Neutrino QNX
Software Development Platform QNX Neutrino RTOS Host lub Installation and
BOOT CD (x86 Targets) do stacji dysków na drugim komputerze i uruchomiæ j¹
bezpoœrednio z niego. Jeœli nie posiadaj¹ Pañstwo tego dysku, mog¹ Pañstwo
pobraæ jego obraz ISO z adresu: http://www.qnx.com/products/evaluation
Na tym etapie zaproponowany zostanie Pañstwu wybór: uruchomiæ system operacyjny
z p³yty (przydatny przy pocz¹tkowych testach) lub zainstalowaæ QNX Neutrino na
dysku twardym. Nale¿y wybraæ opcjê instalacji na dysku twardym i kierowaæ siê
wskazówkami wyœwietlanymi na ekranie. Wiêcej informacji znajdziemy w przewodniku
Installation Guide.
Instalacja na maszynie wirtualnej: Instalacyjny dysk DVD zawiera obraz dla maszyny
VMware który jest kompatybilny z VMware Workstation 7 lub Player 3. Jeœli nie
posiadacie Pañstwo instalacyjnego dysku DVD, obraz maszyny wirtualnej mo¿na
pobraæ z adresu: http://www.qnx.com/products/evaluation/eval-target.html Mo¿liwe
jest tak¿e uruchomienie maszyny wirtualnej bezpoœrednio z instalacyjnego obrazu
ISO QNX Neutrino: w tym celu w œrodowisku VMware przechodzimy do zak³adki
ustawieñ CD/DVD i wybieramy Use an ISO image i nastêpnie wskazujemy odpowiedni
obraz ISO, restartujemy maszynê wirtualn¹ i instalujemy QNX Neutrino.
6 QNX Software Systems
Po restarcie system automatycznie wykryje urz¹dzenia. Po wyborze odpowiedniego trybu
graficznego mog¹ Pañstwo wejœæ do systemu z prawami administratora („root”) bez has³a.
Prosimy zauwa¿yæ adres IP komputera po prawej stronie ekranu; bêdziemy go potrzebowaæ
podczas dalszej pracy.
Mamy przed sob¹ prekonfigurowany, w pe³ni funkcjonalny system operacyjny czasu
rzeczywistego NQX Neutrino zawieraj¹cy œrodowisko graficzne QNX Photon® microGUI®.
(Oczywiœcie, jeœli jest taka koniecznoœæ, mog¹ Pañstwo uruchomiæ QNX Neutrino bez
œrodowiska graficznego.)
Po prawej stronie ekranu zobacz¹ Pañstwo panel z ikonami, przy pomocy których bêd¹
Pañstwo mogli, na przyk³ad, otworzyæ okno terminala poleceñ, klikaj¹c w ikonkê Terminal
w grupie Utilities. Za pomoc¹ polecenia: pidin | less mo¿emy sprawdziæ listê procesów
aktualnie uruchomionych w systemie.
QNX Software Systems 7
Ka¿dy z procesów jest opcjonalny, tzn. podczas pracy mog¹ Pañstwo je usuwaæ, aby
uwolniæ zasoby lub dodawaæ inne procesy, aby poszerzyæ zakres mo¿liwoœci funkcjonalnych
systemu (odnosi siê to tak¿e do grafiki, w³aœciwoœci sieciowych i urz¹dzeñ audio).
Wpisujemy q ¿eby opuœciæ polecenie less.
Dziêki utworzonej w ten sposób instalacji, mog¹ Pañstwo z ³atwoœci¹ zapoznaæ siê z
wszystkimi mo¿liwoœciami i funkcjami QNX Neutrino RTOS – a wszystko to bez koniecznoœci
tworzenia i konfiguracji obrazu uruchomieniowego!
Wiele funkcji systemowych wci¹¿ spe³nia wymagania twardego
czasu rzeczywistego: QNX Neutrino self-hosted.
8 QNX Software Systems
4
Wspó³dzia³anie sieciowe z QNX Neutrino
Pod³¹czmy teraz komputer z QNX Neutrino (system docelowy) do sieci. Pañstwa komputer
ze œrodowiskiem roboczym powinien byæ pod³¹czony do tej samej sieci. Nastêpnie serwer
DCHP automatycznie przydzieli adres IP komputerowi z QNX Neutrino. Aby okreœliæ ten
adres, nale¿y skorzystaæ z polecenia ifconfig, opisanego w podrêczniku Utilities Reference.
Oprócz tego mog¹ Pañstwo skorzystaæ z narzêdzia do konfiguracji sieci, które wchodzi
w sk³ad QNX Neutrino. Mo¿na je znaleŸæ w zak³adce Configure w panelu ikonek w prawej
czêœci ekranu lub w menu Launch.
W zak³adce Devices mog¹ Pañstwo wybraæ sposób przypisania: poprzez serwer DHCP
lub rêcznie. W zak³adce Network nale¿y wprowadziæ adres IP bramki i serwera DNS.
QNX Software Systems 9
Za pomoc¹ polecenia ping <adres ip> mog¹ Pañstwo sprawdziæ po³¹czenie miêdzy
komputerem ze œrodowiskiem roboczym (komputer narzêdziowy) a systemem z QNX
Neutrino (komputer docelowy).
Takie samo sprawdzenie mo¿emy wykonaæ na komputerze docelowym, wykorzystuj¹c
adres IP komputera ze œrodowiskiem roboczym. W tym celu w okienku cmd wpisujemy
polecenie ipconfig w celu okreœlenia adresu IP a nastêpnie wykorzystujemy ten adres na
komputerze docelowym:
10 QNX Software Systems
Uwaga: Je¿eli na komputerze ze œrodowiskiem roboczym uruchomiona jest zapora ogniowa,
polecenie ping wywo³ane na komputerze docelowym mo¿e nie powieœæ. Pod Windows
XP, powinniœmy w³¹czyæ opcjê Allow incoming echo request w ustawieniach ICMP; w
tym celu wybieramy Panel Sterowania z menu Start a nastêpnie Centrum Zabezpieczeñ
i zak³adkê Zaawansowane.
Jeœli sieæ nie dzia³a, mo¿e to oznaczaæ, ¿e u¿ywaj¹ Pañstwo niekompatybilnej karty
sieciowej. Pe³na lista kompatybilnego sprzêtu zamieszczona jest pod adresem:
http://www.qnx.com/developers/hardware_support. W przypadku pytañ dotycz¹cych
wspieranego sprzêtu, prosimy zwracaæ siê do firmy SWD Software Sp. z o.o.
Rada: Pe³na instalacja QNX Neutrino korzysta z automatycznego wykrywania urz¹dzeñ
w celu uruchomienia odpowiednich sterowników. Za pomoc¹ polecenia enum-devices –n
mog¹ Pañstwo dowiedzieæ siê, jakie urz¹dzenia zosta³y znalezione i, odpowiednio, jakie
sterowniki zosta³y uruchomione podczas startu systemu.
QNX Software Systems 11
5
Tworzenie projektu
Prosimy uruchomiæ IDE QNX Momentics na platformie narzêdziowej. Po pierwszym
uruchomieniu bêdziemy zapytani o nasze œrodowisko robocze czyli workspace. Jest to
katalog w którym przechowywane s¹ nasze projekty i inne pliki. Nastêpnie wyœwietlone
zostanie okno powitania. Je¿eli jesteœmy gotowi do pracy, klikamy na ikonê Workbench:
Teraz mo¿emy utworzyæ projekt typu QNX C. W menu File wybieramy
New -> QNX C Project:
W otwartym oknie dialogowym podajemy nazwê projektu. Upewniamy siê, ¿e pole Generale
default file jest zaznaczone, natomiast pole Add Project to working Se jest odznaczone
a nastêpenie wybieramy Next. Teraz musimy wybraæ architekturê CPU dla naszych binariów.
W tym celu przechodzimy do zak³adki Build Variants. Dla platformy docelowej jak¹ ma
byæ nasz PC, wybieramy architekturê x86.
12 QNX Software Systems
W przypadku projektów dla innych procesorów, wybieramy odpowiedni typ CPU: PPC,
SH, ARM lub MIPS. Musimy tak¿e zdecydowaæ siê na formê wynikowych binariów czyli
wersja ostateczna, tzw. release lub wersja robocza, tzw. debug; w dalszej pracy bêdziemy
wykorzystywaæ obie wersjê wiêc zaznaczamy oba warianty budowania.
Klikamy przycisk Finish i projekt z gotow¹ struktur¹ kompilacji, okreœlon¹ przez Makfile
jest gotowy do pracy. Utworzony projekt zawiera ma³y program (“Welcome to the QNX
Momentics IDE”), który mo¿emy znaleŸæ w automatycznie wygenerowany kodzie Ÿród³owym.
QNX Software Systems 13
Zintegrowane œrodowisko programistyczne IDE, prze³¹czy nas teraz do perspektywy C/C++,
zawieraj¹cej narzêdzia takie jak nawigator, edytor oraz inne u¿yteczne widoki (Views)
czyli obszary zawieraj¹ce informacje istotne w trakcie pracy z kodem Ÿród³owym:
Projekt typu QNX C zawieraj¹cy predefiniowan¹ strukturê Makefile
14 QNX Software Systems
6
Komunikacja z QNX Neutrino
System docelowy powinien odpowiadaæ na zapytania œrodowiska roboczego. Aby to
osi¹gn¹æ, nale¿y uruchomiæ program qconn. Na komputerze z QNX Neutrino mo¿na tego
dokonaæ poprzez okno terminala:
W celu uzyskania dostêpu do systemu docelowego z IDE, konieczne jest utworzenie
projektu docelowego („Target Project”). W tym celu nale¿y uruchomiæ „System Information
Perspective”: w menu Window wybieramy Open Perspective -> QNX System Information.
W pustym widoku Target Navigator klikamy prawym przyciskiem myszy i wybieramy New
QNX Target z menu kontekstowego.
Teraz wprowadzamy nazwê systemu docelowego, a tak¿e jego adres IP w odpowiednim
polu.
QNX Software Systems 15
Okno dialogowe konfiguracji
platformy docelowej
Wciskamy przycisk Finish i nastêpnie wybieramy
nasz¹ platformê docelow¹ w widoku Target
Navigator. Zobaczymy w ten sposób listê
wszystkich procesów dzia³aj¹cych w systemie
QNX Neutrino RTOS. Widoki (zak³adki
umieszczone w górnej czêœci okna) dostarczaj¹
nam wiele innych u¿ytecznych informacji. Pozosta³e
widoki mo¿na znaleŸæ w menu Window, w sekcji
Tutaj widzimy co siê dzieje wewn¹trz naszego systemu QNX Neutrino RTOS
16 QNX Software Systems
7
Kompilacja i linkowanie
Wrócimy teraz do persperktywy C/C++ przy pomocy
klikniêcia myszk¹ w ikonkê „C”, umieszczon¹ po prawej
stronie paska narzêdziowego.
Przed rozpoczêciem kompilacji mog¹ Pañstwo wybraæ sposób jej przeprowadzenia: z
informacj¹ debug lub bez niej. Aby to zrobiæ, nale¿y klikn¹æ prawym przyciskiem myszki
w nazwê projektu w widoku C/C++ Project i wybraæ Properties. Wybieramy QNX C/C++
Projects a nastêpnie zak³adkê Build Variants, a potem rozwin¹æ element x86, klikaj¹c
myszk¹ znak plusa obok niego. Upewniamy siê, ¿e oba warianty, debug i release s¹
zaznaczone i wciskamy przycisk OK; IDE zaproponuje przebudowanie projektu.
W czasie tworzenia projektu „QNX C Project” automatycznie zosta³a wygenerowana
struktura katalogów z plikiem Makefiles. Teraz, aby utworzyæ plik binarny, nale¿y klikn¹æ
prawym przyciskiem myszki w nazwê projektu i wybraæ Build Project. Wówczas zostanie
uruchomiony kompilator i linker.
Efekt pracy kompilatora zobacz¹ Pañstwo w widoku Console okna C-Build, wszystkie
powstaj¹ce w procesie kompilacji b³êdy (nie powinniœmy zauwa¿yæ ¿adnych b³êdów, w
nastêpnym przyk³adzie dodaliœmy jeden b³¹d celem demonstracji). W przypadku wyst¹pienia
b³êdów w czasie kompilacji mo¿emy skorzystaæ z bardziej u¿ytecznego widoku Problems,
prezentuj¹cego wydruki kompilatora w czytelniejszej, usystematyzowanej formie.
QNX Software Systems 17
Po zakoñczeniu kompilacji pliki binarne pojawi¹ siê w katalogu Binaries. W rzeczywistoœci
s¹ one przechowywane w katalogu architektury procesorowej – w podkatalogu „o” (pliki
obiektowe) i „o-g” (-g oznacza opcjê kompilacji z informacjami debug). Odpowiednie pliki
Makefiles tworzone s¹ automatycznie.
18 QNX Software Systems
Biblioteka libc.so, zawieraj¹ca wiele podstawowych funkcji, domyœlnie dynamicznie
komponuje siê z plikiem binarnym. Jeœli chc¹ Pañstwo póŸniej dodaæ inne biblioteki, mog¹
to Pañstwo zrobiæ, przechodz¹c do rozdzia³u Project->Properties. Nastêpnie nale¿y
klikn¹æ na zak³adce Linker i wybraæ Extra Libraries z listy Category:
Na przyk³ad, w celu dodania biblioteki libm.so, wystarczy wprowadziæ symbol m bez prefiksu
lib i bez sufiksu .so. Kompozytor dokona kompozycji biblioteki.
Wciskamy przycisk OK i linker do³¹czy odpowiedni¹ bibliotekê podczas budowania projektu.
QNX Software Systems 19
8
Przygotowanie do uruchomienia
Aby uruchomiæ i debugowaæ nowy program w systemie docelowym, nale¿y utworzyæ
konfiguracjê startow¹ („Launch Configuration”). Sk³ada siê ona z wielu opcji, które okreœlaj¹
warunki uruchomienia programu (argumenty linii poleceñ, zmienne œrodowiskowe itd.).
Wszystkie te ustawienia wystarczy wprowadziæ tylko raz, potem mo¿na ju¿ z nich korzystaæ
wielokrotnie.
W celu utworzenia konfiguracji startowej, z rozwijanego menu obok ikony „pluskwy” na
pasku narzêdziowym wybieramy Debug Configurations...:
Otworzy siê okno dialogowe, w którym mog¹ w nim Pañstwo uruchomiæ ju¿ istniej¹ce
konfiguracje startowe, zmieniaæ je lub tworzyæ nowe. W lewym panelu okna nale¿y wybraæ
typ konfiguracji startowej: C/C++ QNX QConn (IP). Typ ten przeznaczony jest do sieciowego
(miêdzyplatformowego) opracowania (QNX Neutrino wykorzystywany jest w systemie
docelowym) poprzez narzêdzie qconn. Nastêpnie klikn¹æ myszk¹ przycisk New launch
configuration:
20 QNX Software Systems
Nastêpnie mog¹ Pañstwo skorzystaæ z szerokiego wachlarza ustawieñ, zwi¹zanych z
uruchomieniem realizowanego modu³u. Domyœlnie u¿ytkownik powinien wprowadziæ dane
tylko w zak³adce Main; ustawienia w pozosta³ych zak³adkach, jeœli zajdzie taka koniecznoœæ,
mo¿na wprowadziæ póŸniej.
Wcisn¹æ przycisk Serach Project, obok C/C++ Application i wybraæ plik binarny. Jeœli
zosta³ on skompilowany z informacjami debug, jego nazwa bêdzie zawiera³a sufiks _g.
Jeœli natomiast zosta³ skompilowany w sposób standardowy (bez informacji debug), nazwa
nie bêdzie zawiera³a tego sufiksu. W zwi¹zku z tym, ¿e w kolejnym kroku bêdziemy
uruchamiali Debugger, prosimy wybraæ opcjê kompilacji z informacj¹ debug.
Upewniamy siê, ¿e platforma docelowa jest dostêpna w polu Target Options, a nastêpnie
klikamy przycisk Apply. Zakoñczy to tworzenie konfiguracji startowej:
QNX Software Systems 21
9
Uruchomienie i debugowanie
Prosimy nie opuszczaæ okna „Launch Configuration”. W³aœnie utworzyli Pañstwo konfiguracjê
uruchomienia programu, który mog¹ Pañstwo teraz uruchomiæ w debugerze. W tym celu
nale¿y wcisn¹æ przycisk Debug.
Nastêpnie IDE prze³¹czy siê na perspektywê „Debug Perspective” i przetransferuje program
z komputera roboczego na system docelowy QNX Neutrino poprzez sieæ, a potem uruchomi
program w debugerze. Mog¹ Pañstwo zaobserwowaæ, jak debuger zatrzymuje siê na
pierwszej linii programu. W panelu „Debug” pojawia siê opis procesu, ³¹cznie z odwo³aniami.
Sterowanie debugerem odbywa siê przy pomocy przycisków w g³ównym panelu „Debug
View”.
22 QNX Software Systems
Interakcja z programem uruchomionym lub debugowanym z poziomu IDE odbywa siê
poprzez widok console.
Przy pomocy przycisku Step Over mo¿na przejœæ do kolejnej linii kodu.
Podczas debugowania pojawia siê po prawej stronie panel „Variables” z wartoœciami
zmiennych. Przycisk Step Into s³u¿y do przejœcia debugera do kodu funkcji (oczywiœcie
przycisk ten dzia³a, jeœli maj¹ Pañstwo dostêp do kodu Ÿród³owego danej funkcji).
Aby wstawiæ punkt wstrzymania, nale¿y umieœciæ kursor myszki nad lewym brzegiem
panelu z kodem Ÿród³owym, wcisn¹æ prawy przycisk myszki i wybraæ opcjê Toggle
Breakpoint z menu kontekstowego. Punkt wstrzymania oznaczany jest symbolem
szpilki/agrafki, któr¹ mo¿na ustawiæ lub zdj¹æ w procesie pisania kodu.
QNX Software Systems 23
Kiedy wykonanie programu osi¹ga punkt wstrzymania, zostaje on wstrzymany w debugerze,
a Pañstwo maj¹ mo¿liwoœæ, przyk³adowo, dokonaæ przegl¹du stanu zmiennych. Jeœli
wciœniêty zostanie przycisk Resume, wykonanie programu zostaje wznowione, dopóki nie
dojdzie do kolejnego punktu wstrzymania. Aby zakoñczyæ wykonanie programu, mo¿na
u¿yæ przycisku Terminate. Po zakoñczeniu pracy programu prosimy wcisn¹æ przycisk
Remove All Terminated Launches, aby zakoñczyæ pracê debuggera i usun¹æ plik binarny,
który zosta³ skopiowany do systemu docelowego.
Remove
All Terminated
Launches
Resume
Terminated
Uwaga: Debugger utrzymuje otwarte pliki projektu podczas uruchomienia programu.
Musimy zakoñczyæ sesjê debuggera przed ponownym budowaniem projektu w przeciwnym
przypadku budowanie zakoñczy siê niepowodzeniem.
Aby uruchomiæ plik binarny bez debugowania, wybieramy Run Configurations... z menu
rozwijanego obok ikony Run.:
24 QNX Software Systems
Nastêpnie mog¹ Pañstwo skorzystaæ z konfiguracji startowej (któr¹ utworzyli Pañstwo
wczeœniej), aby uruchomiæ program. Mo¿emy tak¿e przetransferowaæ rêcznie nasz plik
wykonawczy wykorzystuj¹c do tego celu perspektywê File System Navigator (Window
> Show View) i uruchomiæ go z poziomu terminala na platformie docelowej. Oprócz tego
mog¹ Pañstwo zamontowaæ wspó³dzielony dysk sieciowy (czyt. dokumentacja narzêdzia
fs-cifs).
QNX Software Systems 25
10
Program w systemie QNX Neutrino
Aby otrzymaæ swój pierwszy program w QNX, nale¿y dokonaæ zmian i wprowadziæ
uzupe³nienia do w³aœnie utworzonego kodu Ÿród³owego. Prosimy spróbowaæ wykorzystaæ
niektóre z przyk³adowych programów i przenieœæ z nich kod Ÿród³owy do Pañstwa projektu.
Mo¿liwe, ¿e teraz bêd¹ Pañstwo potrzebowali dok³adniejszych informacji, np. jak tworzyæ
w¹tki, w jaki sposób pracuje mechanizm wymiany komunikatów, jakie metody synchronizacji
procesów mo¿na wykorzystaæ, jak realizowany jest proces wprowadzania/wyprowadzania
danych, jak stworzyæ administratora zasobów. Prosimy siê nie martwiæ, wszystko wygl¹da
tak samo (lub prawie tak samo) jak w tym przewodniku!
Zintegrowane œrodowisko programistyczne IDE zawiera szereg przewodników które bêd¹
pomocne w pierwszych krokach. Wybieramy Help -> Welcome na pasku narzêdziowym
IDE i nastêpnie klikamy ikonê Tutorials:
System pomocy IDE zawiera dokumentacjê systemu operacyjnego QNX wraz
z informacjami o platformie Eclipse. W menu Help wybieramy Help Contents:
26 QNX Software Systems
Broszura „Welcome to the QNX Software Development Platform” wska¿e Pañstwu, gdzie
szukaæ potrzebnych informacji. Zalecamy zapoznanie siê z „Przewodnikiem po architekturze
systemowej QNX Neutrino” („QNX Neutrino System Architecture Guide”), „Przewodnikiem
u¿ytkownika zintegrowanego œrodowiska programistycznego (IDE)” („IDE User’s Guide”)
i z „Przewodnikiem programisty QNX Neutrino” („QNX Neutrino Programmer’s Guide”).
W oknie Help wybieramy:
A Roadmap to the QNX Software Development Platform w celu uzyskania
informacji o pakiecie QNX Momentics i systemie operacyjnym QNX Neutrino RTOS.
IDE User’s Guide w celu uzyskania informacji o œrodowisku IDE
Dokumentacja znajduje siê tak¿e w systemie operacyjnym QNX Neutrino: w panelu ikonek
z prawej strony ekranu wystarczy klikn¹æ Help. Dostêpna jest tak¿e dokumentacja w
postaci wydrukowanej. Mog¹ byæ Pañstwo tak¿e zainteresowani produktami QNX Aviage,
które pomagaj¹ szybko tworzyæ konsumenckie produkty audio, video i grafiki.
QNX Software Systems 27
Œrodowisko IDE zawiera szereg przyk³adów kodu Ÿród³owego, ilustruj¹cych tworzenie
w¹tków, zastosowanie mechanizmu mutex [wzajemnego wykluczania], wymianê komunikatów
i inne aspekty wspó³pracy miêdzy zadaniami, a tak¿e szablon administratora zasobów.
Wystarczy wybraæ Help -> Welcome a nastêpnie ikonkê Samples:
Przyk³ady opatrzone s¹ dok³adnym komentarzem. Aby otrzymaæ informacje o którejœ
funkcji, nale¿y skorzystaæ z informacji zamieszczonej w QNX Neutrino RTOS Library
Reference.
28 QNX Software Systems
Podczas pracy z QNX Software Development Platform 6.5 mog¹ pojawiæ siê u Pañstwa
pytania. Aby uzyskaæ odpowiedŸ na nie, prosimy o kontakt z firm¹ SWD Software, oficjalnym
dystrybutorem QNX (telefon: 058 764 60 57; poczta elektroniczna: [email protected]
). Zawsze jesteœmy gotowi Pañstwu pomóc, poniewa¿ Pañstwa sukces jest gwarancj¹
naszego sukcesu!
SWD Software Sp. z o.o.
www.swdsoft.pl
QNX Software Systems
www.qnx.com
QNX Software Systems 29

Podobne dokumenty