1.Konwencje przyj te w instrukcji 2.Şwiczenie
Transkrypt
1.Konwencje przyj te w instrukcji 2.Şwiczenie
! " # $ % &% ' 1 ! "# , % ! 3% % '()!* ! - *. /0 1.*/2 !3 ' !6 ! & + - - '()! ! % % + 45 & - % ! 45 % Czcionka o stałej szeroko ci Nazwy programów, polece , katalogów, wyniki działania wydawanych polece . Czcionka o stałej szeroko ci pogrubiona Podaje tekst, który nale y dosłownie przepisa . W przypadku plików istotniejsze fragmenty. ródłowych wyró nia Czcionka o stałej szeroko ci kursyw Tekst komentarza w przykładowych sesjach przy terminalu. Czcionka o stałej szeroko ci kursyw pogrubiona Wyró nia istotniejsze fragmenty wyników działania wydawanych polece . #!7 a. Upewni si , e system PVM został prawidłowo zainstalowany w katalogu domowym u ytkownika (patrz instrukcja do wiczenia nr 1). opracowali: dr in . Artur Gramacki, dr in . Jarosław Gramacki Parallel Virtual Machine (PVM) 1 b. Uruchomi konsol PVM wydaj c polecenie pvm. Powinni my uzyska zach ty systemu PVM, jak poni ej: na ekranie znak $ pvm pvm> Konsola PVM uruchamiana jest z pomoc skryptu ~/$PVM_ROOT/lib/pvm. Skrypt ten z kolei wykonuje program ~/$PVM_ROOT/lib/$PVM_ARCH/pvm a ten z kolei uruchamia tzw. demona PVM, czyli program ~/$PVM_ROOT/lib/$PVM_ARCH/pvmd3. Nale y zapozna si z zawarto ci tych skryptów. c. Wyda polecenie help. Powinna pojawi si lista dost pnych komend mo liwych do wydania z poziomu konsoli PVM. Wydaj c z kolei polecenie help nazwa_polecenia otrzymamy krótk pomoc o składni danego polecenia (np. to jakie s wymagane parametry danego polecenia). Przykładowo dla polecenia add otrzymamy: pvm> help add help add add Add hosts to virtual machine Syntax: add hostname ... pvm> Warto równie zapozna si w tym miejscu z dost pn dokumentacj systemow (plecenia: man pvm, man pvm_intro, man pvmd3). d. Sprawdzi u ywan wersj programu PVM wydaj c polecenie version, czyli: pvm> version version 3.4.4 e. Wy wietli identyfikator bie cej konsoli PVM wydaj c polecenie id, czyli: pvm> id id t40001 pvm> f. Wydaj c polecenie quit opu ci konsol PVM (uwaga: opuszczamy konsol PVM, jednak maszyna wirtualna ci gle pozostaje wł czona. Jak mo na si o tym przekona ?) pvm> quit quit Console: exit handler called pvmd still running. $ g. Wydaj c polecenie ps zaobserwowa jakie programy s w danej chwili uruchomione. Zwróci uwag na to, czy jest uruchomiony demon PVM (program o nazwie pvmd3). $ ps PID 360 406 411 $ TTY pts/0 pts/0 pts/0 TIME 00:00:00 00:00:00 00:00:00 CMD bash pvmd3 ps h. Ponownie wyda polecenie pvm. Poniewa demon pvmd3 nadal pozostaje uruchomiony, otrzymujemy informuj cy nas o tym komunikat: $ pvm pvmd already running. opracowali: dr in . Artur Gramacki, dr in . Jarosław Gramacki Parallel Virtual Machine (PVM) 2 pvm> i. Przej do katalogu /tmp i wyda polecenie ls –l. Powinni my odnale tam pliki pvmd.xxxx oraz pvml.xxxx, gdzie xxxx jest numerem id u ytkownika w systemie LINUX. Numer id bie cego u ytkownika mo na uzyska wydaj c polecenie id, czyli: $ id uid=1000(agramack) gid=1002(iiestaff) groups=1002(iiestaff) $ j. Zawarto przykładowego pliku pvml.xxxx jest nast puj ca: [t80040000] 02/19 18:07:09 delos (192.168.21.75:1032) LINUX 3.4.4 [t80040000] 02/19 18:07:09 ready Wed Feb 19 18:07:09 2003 Plik ten pełni rol tzw. logu systemowego, gdzie zapisywane s ró ne informacje na temat pracy systemu PVM. k. Aby zamkn system PVM nale y wyda polecenie halt (opuszczenie konsoli z jednoczesnym wył czeniem maszyny wirtualnej PVM): pvm> halt halt Terminated $ l. Po wydaniu polecenia ps stwierdzamy, e demon pvmd3 został zako czony: $ ps PID TTY 360 pts/0 550 pts/0 $ TIME CMD 00:00:00 bash 00:00:00 ps m. Ponownie przechodzimy do katalogu /tmp i stwierdzamy brak wspomnianego wcze niej pliku pvmd.xxxx. Natomiast w pliku pvml.xxx pojawiły si dodatkowe wpisy wiadcz ce o zako czeniu pracy systemu: [t80040000] [t80040000] [t80040000] [t80040000] [t80040000] 02/19 02/19 02/19 02/19 02/19 18:07:09 18:07:09 18:09:31 18:09:31 18:09:31 delos (192.168.21.75:1032) LINUX 3.4.4 ready Wed Feb 19 18:07:09 2003 dm_halt() from (delos), halting... work() pvmd halting pvmbailout(0) n. Demon systemu PVM mo na równie uruchomi wydaj c bezpo rednio z linii polece komend pvmd3. Nie jest to jednak zalecane rozwi zanie, gdy w ten sposób „tracimy” jedn sesj w systemie LINUX (sesja w tym momencie „wisi”). $ pvmd3 /tmp/pvmtmp000814.0 $ Wisz c sesj mo emy co prawda odblokowa (kombinacja klawiszy Ctrl-C), jednak powoduje to automatyczne zako czenie pracy demona pvmd3 (czyli nie o to nam chodziło!). Uwaga: poni szy tekst nale y traktowa jako przypomnienie / uzupełnienie podstawowych wiadomo ci na temat wielozadaniowo ci w systemie UNIX. Nie dotyczy on stricte systemu PVM. Po naci ni ciu z kolei kombinacji klawiszy Ctrl-Z przenosimy uruchomiony proces do tzw. tła (ang. background). Jednak wówczas zadanie to zastyga w tle (ma status Stopped) i aby móc z niego skorzysta nale y je „obudzi ” poleceniem bg (zatrzymanemu zadaniu mówimy po opracowali: dr in . Artur Gramacki, dr in . Jarosław Gramacki Parallel Virtual Machine (PVM) 3 prostu, e ma rozpocz prac w tle). Je eli polecenie bg wydamy bez adnych parametrów oznacza to, e „budzimy” bie ce zadanie (to oznaczone znakiem + po wydaniu polecenia jobs). Je eli natomiast wydamy komend bg %1 oznacza to, e chcemy „obudzi ” zadanie o numerze 1. Zadanie mo na równie przenie z tła na tzw. pierwszy plan (ang. foreground) poleceniem fg (polecenie mo emy wyda bez adnych parametrów lub z parametrami – podobnie jak powy ej w poleceniu bg). Demona mo emy równie uruchomi w taki sposób, aby od razu uruchomił si w tle (polecenie pvmd3 & - uwaga na spacj pomi dzy pvmd3 a znakiem &). Powy sze uwagi obrazuje przykładowa sesja (komentarze zaznaczono pismem pogrubionym i oczywi cie nie pojawiaj si one na ekranie): Sprawdzamy jakie mamy w $ ps PID TTY TIME 222 pts/0 00:00:01 1000 pts/0 00:00:00 $ danym momencie uruchomione procesy. CMD bash ps $ pvmd3 /tmp/pvmtmp001001.0 $ W tym momencie naci ni to Ctrl-Z. Program pvmd3 „zastyga” i przechodzi do tła (ang. background). tym status Stopped. [1]+ Stopped pvmd3 „Budzimy” zastygły bie $ bg [1]+ pvmd3 & Upewniamy si , $ jobs [1]+ Running Poleceniem ps Jednym z nich $ ps PID TTY 222 pts/0 1001 pts/0 1002 pts/0 $ wiadczy o cy proces. e proces rzeczywi cie obudził si i działa. pvmd3 & sprawdzamy jakie mamy w danym momencie uruchomione procesy. jest pvmd3. TIME 00:00:01 00:00:00 00:00:00 CMD bash pvmd3 ps Uruchamiamy konsol PVM. Otrzymany komunikat potwierdza nam, pvmd3 ci gle pracuje. $ pvm pvmd already running. pvm> quit quit e demon Console: exit handler called pvmd still running. R cznie „zabijamy” demon pvmd3. $ kill -9 1001 Potwierdzamy, $ ps e demona ju nie ma – bo został przecie opracowali: dr in . Artur Gramacki, dr in . Jarosław Gramacki Parallel Virtual Machine (PVM) „zabity”. 4 PID TTY 222 pts/0 1004 pts/0 [1]+ Killed TIME CMD 00:00:01 bash 00:00:00 ps pvmd3 Próbujemy ponownie uruchomi demona pvmd3. Nie udaje si !!! $ pvmd3 [pvmd pid1027] 02/19 20:11:14 mksocs() /tmp/pvmd.1000 exists. already running? [pvmd pid1027] 02/19 20:11:14 pvmbailout(0) pvmd Nie mogli my uruchomi demona, gdy w katalogu /tmp pozostały pliki po poprzednich eksperymentach. Nale y je wi c usun r cznie. $ ls -l /tmp/ -rw------1 agramack iiestaff 19 Feb 19 19:59 pvmd.1000 -rw------1 agramack iiestaff 124 Feb 19 19:59 pvml.1000 srwxr-xr-x 1 agramack iiestaff 0 Feb 19 19:59 pvmtmp001001.0 Usuwamy wi c pliki. $ rm /tmp/pvm* Teraz znów mo emy uruchomi demona. Tym razem uruchamiamy go z parametrem &, czyli od razy przenosimy do tła. $ pvmd3 & [1] 1029 [1]+ Stopped pvmd3 Na koniec „budzimy” demona i ponownie mo emy rozpocz pocz tku! $ bg [1]+ pvmd3 & wszystko od Uwaga: w przypadku problemów z uruchamianiem / zatrzymywaniem demona pvmd3 nale y spróbowa r cznie usun wszelkie procesy pvmd3 oraz pvm oraz r cznie usun wszystkie pliki blokuj ce, czyli: $ $ $ kill -9 pvm kill -9 pvmd3 rm -f /tmp/pvm* Literatura 1. Index for PVM3 Library: http://www.netlib.org/pvm3/index.html 2. PVM List of Frequently Asked Questions: http://www.netlib.org/pvm3/faq_html/faq.html 3. PVM: Parallel Virtual Machine A Users' Guide and Tutorial for Networked Parallel Computing: http://www.netlib.org/pvm3/book/pvm-book.html 4. The postscript file for the book ``PVM A Users' Guide , and Tutorial for Networked Parallel Computing''. http://www.netlib.org/pvm3/book/ 5. The users' guide for PVM version 3.3: http://www.netlib.org/pvm3/ug.ps opracowali: dr in . Artur Gramacki, dr in . Jarosław Gramacki Parallel Virtual Machine (PVM) 5