Grupa 12K2
Rafał Linca 2.XII.2009
Ćwiczenie Laboratoryjne 8
Sprawozdanie
1.
Wstęp
Celem laboratorium było przedstawienie zagadnień związanych z procesami
związanymi z systemem Unix oraz podstawowych działań na nich.
2. Przebieg
Do uzyskiwania wszystkich informacji dotyc
zących uruchomionych procesów
w systemach GNU/Linux służy polecenie ps. Które posiada prócz tego zbiór opcji
pomagających wyciąganiu informacji na temat procesów.
$ ps –ef
Gdzie:
–ef oznacza wyświetlenie wszystkich procesów uruchomionych w systemie.
Opis kolumn w wyniku polecenia ps -ef
UID -
nazwa użytkownika (właściciela procesu)
PID - numer identyfikacyjny procesu
PPID - numer PID rodzica danego procesu
C -
miara obciążenia procesora
STIME -
czas rozpoczęcia działania procesu
TTY - nazwa terminala zw
iązanego z procesem
TIME - czas wykorzystania procesora
CMD -
komenda, która wywołała proces
O
bok procesu ważnym pojęciem jest zadanie - job. Zadanie należy traktować
jako proces który został uruchomiony z terminala. Przykładem może być
uruchomienie edyto
ra tekstowego, np. vim, które powoduje wywołanie nowego
zadania pochodnego od naszego terminala.
Aby usypiać zadania które chcemy na jakiś czas zaniechać korzystamy z
kombinacji Ctrl+Z. W celu uzyskania informacji o terminalach które są uśpione a są
powiązane z procesem aktywnym należy użyć polecenia jobs .
Aby przenieść jakiś proces na niższy proces (background) używa się
polecenia
bg %numer_zadania.
Naszym poleceniem na tym laboratorium
było uruchomienie procesu, a
następnie uśpienie go. Następnie znaleźliśmy listę wszystkich procesów uśpionych i
wyłączyliśmy ten wcześniej uśpiony.
Kolejnym zada
niem było utworzenie skryptu działającego w tle:
(date; Steep 60; date ) > data&
Następnie sprawdziliśmy efekty:
cat data
W ostatniej części laboratorium zajęliśmy się zabijaniem procesów:
Poleceniem służącym do zatrzymania i „zabicia” procesu jest kill.
kill –STOP %PID
Aby zabić całkowicie proces należy skorzystać z komendy:
kill -9 %nr_zadania
W praktyce kill -9
stosuje się jedynie w sytuacja awaryjnych.
Każdy proces ma, oprócz własnego numeru PID, numer PPID – PID procesu rodzica,
przez który został wywołany. W systemach GNU/Linux zakończenie działania danego
procesu powoduje zakończenie działania wszystkich jego procesów potomnych.
3. Wnioski:
Linux oferuje
użytkownikom i administratorom kompleksową obsługę
zarządzania procesami. Jest to bardzo przydatna funkcja usprawniająca pracę na
systemach Unixowych.