Systemy operacyjne
TEMAT: Środowisko Linux – Procesy w systemie Unix cz. II
Celem ćwiczenia będzie zapoznanie się z podstawowymi informacjami dotyczącymi procesów
w systemie Unix. System ten pozwala na wykonywanie wiele procesów jednocześnie, jest to jednak
pozorne, gdyż w danym momencie wykonuje się tylko jeden co pare milisekund. Wszystkie procesy
posiadają swojego rodzica, z których się wywodzą, po za jednym wyjątkiem, procesem init
uruchamianym wraz ze startem systemu. Posiadają one swoje numery identyfikacyjne oraz numery
swoich przodków.
1. URUCHAMIANIE PROCESÓW
Aby uruchomić zadanie wystarczy defacto wpisać nazwę odpowiedniego programu w
terminalu lub polecenia. Istnieje możliwość uruchomienia zadania po wyznaczonym czasie, który
musi upłynąć oraz także o odpowiedniej dacie. Służą nam do tego polecenia At, Batch, Nohup.
Zbadamy zasadę działania oraz możliwości polecenia At. Polecenie to pozwala uruchomić
zadanie o odpowiedniej godzinie i dacie. Poniżej znajduje się przykład uruchomienia polecenia
poznanego wcześniej do sprawdzania plików i folderów w bieżącym katalogu. Wynik zostanie
zapisany do pliku. Aby zakończyć polecenie wciskamy kombinacje CTRL+D. Jak przedstawia
poniższy przykład polecenie wykonało się dopiero po upływie zadanego czasu.
Kontrolę nad oczekującymi zadaniami mamy przy pomocy dwóch parametrów do polecenie
at. Parametry te :
at -l lista zadań oczekujących na wykonanie
at -d <numer_zadania> usunięcie zadania z listy oczekujących
Rafał Polak 12k2
Laboratorium Komputerowe nr.9
Generated by Foxit PDF Creator © Foxit Software
http://www.foxitsoftware.com For evaluation only.
Lista oczekujących zadań składa się z unikatowego numeru zadania, przewidywanej daty
wykonania zadania oraz właściciela zlecenia.
Polecenie Batch działa na identycznej zasadzie jak at, poza jednym małym wyjątkiem
priorytetu wykonania zadania. Polecenie batch wykona zadanie o danej porze tylko wtedy gdy
pozwala na to poziom obciążenia systemu.
Na potrzeby sprawdzenia działania polecenia Nohup tworzymy skrypt wypisujący na ekran
bierzącą datę systemową w nieskończonej pętli co 15 sekund. Wywołujemy go poleceniem nohup w
tle.
Nohup ./s1 &
Wyniki działania skryptu zostają zapisywane do pliku nohup.out .Plik ten co 15 sekund się
aktualizuje i zwiększa swój rozmiar, natomiast proces jest typu running. Aby go przerwać należy go
zawiesić lub zabić poleceniem KILL.
2. URUCHAMIANIE PROCESÓW za pomocą CRON
Program dostępny dla każdego użytkownika systemu, służący do edycji pliku
konfiguracyjnego przydzielonych zadań. Dzięki programowi crontab możemy dodawać nowe zadania
automatycznie i system będzie wiedział, jak często i o jakiej porze je wykonywać.
Generated by Foxit PDF Creator © Foxit Software
http://www.foxitsoftware.com For evaluation only.
Powyżej została pokazana edycja pliku konfiguracyjnego crontab, w którym dopisane zostały
nowe zadania. Pięć pól oznaczone przed poleceniem, są to odpowiednio: minuty, godziny, dni,
miesiące i lata w których odpowiedni proces ma zostać wykonany. Po zapisaniu pliku zostaną dodane
nowe zadania do kolejki.
3. ZABIJANIE
Podczas gdy proces lub zadanie ma nałożone blokady zabijania procesu, należy użyć
polecenia SIGKILL w celu unicestwienia zadania
Generated by Foxit PDF Creator © Foxit Software
http://www.foxitsoftware.com For evaluation only.