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