Wstep do systemów wielozadaniowych laboratorium 04 --

Transkrypt

Wstep do systemów wielozadaniowych laboratorium 04 --
Procesy
Wstęp do systemów wielozadaniowych
laboratorium 04 — Procesy
Jarosław Piersa
Wydział Matematyki i Informatyki, Uniwersytet Mikołaja Kopernika
2013-10-17
J. Piersa
WSWZ 2013/2014 Laboratorium 04
Procesy
Czym jest proces?
Praca z procesami
Co to jest proces?
ps
ps -l -u login
może pomóc:
ps -u login | grep nazwaProcesu
top
top
J. Piersa
WSWZ 2013/2014 Laboratorium 04
Procesy
Czym jest proces?
Praca z procesami
Ćwiczenie
wylistuj swoje procesy
J. Piersa
WSWZ 2013/2014 Laboratorium 04
Procesy
Czym jest proces?
Praca z procesami
Ćwiczenie
UWAGA: zadania obciążające maszyny wysdziałowe należy
uruchamiać na lokalnych komputerach!
napisz program w C, którego wykonanie chwilę zajmie (przykład
będzie podany na tablicy)
skompiluj i uruchom, sprawdź listy procesów
poczekaj aż się zakończy, sprawdź listy procesów ponownie
J. Piersa
WSWZ 2013/2014 Laboratorium 04
Procesy
Czym jest proces?
Praca z procesami
Jak zakończyć proces?
poczekać aż sam się zakończy
interrupt (ctrl+c)
wysłać sygnał (kill)
man kill
kill -n idProcesu
J. Piersa
WSWZ 2013/2014 Laboratorium 04
Procesy
Czym jest proces?
Praca z procesami
Ćwiczenie
zmodyfikuj program w C aby wypisywał na ekran kolejne liczby
bez końca
skompiluj i uruchom, sprawdź listy procesów
przerwij proces za pomocą ctrl+c lub polecenia kill
J. Piersa
WSWZ 2013/2014 Laboratorium 04
Procesy
Czym jest proces?
Praca z procesami
Priorytet procesu
zmiana priorytetu
renice nowyPriorytet idProcesu
priorytet < 0 — wysoki (wymaga uprawnień roota)
priorytet = 0 — normalny
priorytet > 0 — niski
J. Piersa
WSWZ 2013/2014 Laboratorium 04
Procesy
Czym jest proces?
Praca z procesami
Ćwiczenie
uruchom kilka instancji procesu wypisującego kolejne liczby
jednej z nich zmień priorytet na +10
monitoruj postęp programów, czy któryś z nich zwalnia?
J. Piersa
WSWZ 2013/2014 Laboratorium 04
Procesy
Czym jest proces?
Praca z procesami
Po co to wszystko?
Sytuacja alarmowa: na maszynie zdalnej zawiesiła się sesja!
Możemy czekać na restart serwera... albo po sobie posprzątać
sami.
Otwórz nowy terminal na maszynę zdalną
za pomocą komendy ps zlokalizuj zawieszony proces (hint: bash,
tcsh, sh, csh, itp.)
ubij go sygnałem SIG KILL lub SIG TERM
lista sygnałów dostępna pod
kill -l
J. Piersa
WSWZ 2013/2014 Laboratorium 04
Procesy
Czym jest proces?
Praca z procesami
Ćwiczenie
zaloguj się na maszynę zdalną, uruchom jakiś dziwny program
zaloguj się drugi raz, zlokalizuj proces drugiej sesji i go zakończ
J. Piersa
WSWZ 2013/2014 Laboratorium 04
Procesy
Czym jest proces?
Praca z procesami
Ćwiczenie
wciśnij ctrl+z aby chwilowo zatrzymać proces
wylistuj aktualne zadania
jobs
przenieś proces na pierwszy plan fg
fg nazwaZadania
uruchom jakiś proces w tle poprzez dodanie na końcy polecenia
znaku & np. klienta poczty
pine &
wylistuj aktualne zadania
przenieś pine’a na pierwszy plan
J. Piersa
WSWZ 2013/2014 Laboratorium 04
Procesy
Czym jest proces?
Praca z procesami
Po dzisiejszych zajęciach powinienem umieć
wylistować swoje procesy, uruchamiać je w tle, modyfikować ich
priorytet, wstrzymywać działania i, jeżeli zajdzie taka
konieczność, zakończyć ich niekontrolowane działanie
J. Piersa
WSWZ 2013/2014 Laboratorium 04