1. LinuxFEST 11.10.2008
GNU/Linux
Procesy
Autor: Michal Sedl叩k
Email: michal6103 [at] gmail [dot] com
2. Prezent叩cia je zalo転en叩 na
The LBook:
An Introductory Guide to Linux Basics
http://linuxbasics.org/course/book/index
Vizu叩lna t辿ma prezent叩cie je odvoden叩
t辿my vytvorenej:
Sakari Koivunen and Henrik Omma
Released under the LGPL license.
11.10.2008 2/35
3. Obsah
V邸eobecne o procesoch
Typy, atrib炭ty, 転ivotn箪 cyklus
Spr叩va procesov
Pl叩novanie procesov
Sleep, at, cron, crontab
11.10.2008 3/35
4. Program - Proces
Program je pas鱈vny zhluk in邸trukci鱈 v
strojovo zrozumite直nej forme
ELF - Executable and Linking Format
Jeden program m担転e sp炭邸泥a泥 viac procesov
11.10.2008 4/35
5. Proces - Vl叩kno
Proces je vo v邸eobecnosti in邸tancia programu
Obraz strojov辿ho k坦du (code)
Naalokovan叩 pam辰泥 (heap, stack)
Tabu直ka zdrojov (file deskriptory)
Bezpenostn辿 atrib炭ty (EUID, RUID, EGUI...)
Stav procesoru (obsah registrov + PC, SP...)
Vl叩kno je postupnos泥 in邸trukci鱈
Zdie直a pam辰泥 procesu
Program Counter, Stack Pointer, Data registers
11.10.2008 5/35
6. Proces - Vl叩kno
Ka転d箪 proces obsahuje jedno, alebo viac
vl叩kien
Ka転d辿 vl叩kno patr鱈 niektor辿mu procesu
11.10.2008 6/35
9. Interakt鱈vne procesy
Inicializovan辿 a ovl叩dan辿 cez termin叩l
Popredie
Norm叩lne spustenie procesu
Proces pripojen箪 k termin叩lu
Termin叩l posiela pr鱈kazy procesu
Pozadie
Spustenie so znakom & za pr鱈kazom: xterm &
Proces sa po inicializ叩ci鱈 odpoj鱈 od termin叩lu
michal@michal足desktop:~$xterm&
[1]29611
michal@michal足desktop:~$jobs
[1]+Runningxterm&
michal@michal足desktop:~$
11.10.2008 9/35
10. Pr叩ca s interakt鱈vnymi
procesmi
prikaz Spust鱈 pr鱈kaz v popred鱈
prikaz& Spust鱈 pr鱈kaz na pozad鱈 a uvoln鱈 termin叩l
jobs Zobraz鱈 procesy be転iace na pozad鱈
Ctrl+Z Pozastavenie procesu SIGSTOP (suspend)
Ctrl+C Preru邸enie programu v popred鱈 SIGINT
bg Reaktiv叩cia pozastaven辿ho procesu
fg Vyvolanie programu do popredia
kill ukonenie procesu
11.10.2008 10/35
11. Automatick辿 procesy
Nie s炭 pripojen辿 k termin叩lu
Sp炭邸泥an辿 na z叩klade FIFO pr鱈stupu
at
Spustenie procesu v konkr辿tnom ase
batch
Spustenie procesu ak je za泥a転enie syst辿mu n鱈zke
11.10.2008 11/35
12. Daemon
Vo v邸eobecnosti inicializovan辿 pri 邸tarte
Procesy spusten辿 nepretr転ite
Serverov辿 aplik叩cie (client-server)
Napr. httpd(Apache), inetd, ftpd
11.10.2008 12/35
13. Atrib炭ty procesov
Process ID (PID)
Parent Proces ID (PPID)
Nice
Terminal (TTY)
UID
Real User Id (RUID)
Effective User Id (EUID)
GID
Real Group Id (RGID)
Effective Group Id (EGID)
11.10.2008 13/35
20. Vytvorenie procesu
Fork
Vytvorenie k坦pie procesu
Zistenie PID (Die泥a泥u sa PID zd叩 by泥 0)
Vykonanie algoritmu na z叩klade PID
Nov箪 proces be転鱈 v rovnakom prostred鱈
Nastavenie I/O, environment variables,...
Exec
Nahradenie procesu zavolan箪m procesom
PID sa nemen鱈
Nahrad鱈 sa stack, heap, data
11.10.2008 20/35
21. 禽辿馨看稼庄
D辿mon m叩 ako PPID 1 (init)
Rodiia d辿monizuj炭 svoje deti, aby deti
pre転ili po ich smrti
永姻鱈一鉛温糸 - Window manager
Dok叩転eme zmeni泥 WM bez re邸tartu n鱈m
spusten箪ch programov
11.10.2008 21/35
22. Ukonenie procesu a zombie
Pri norm叩lnom ukonen鱈 vracia proces
rodiovi exit status
Zombie rodi neprebral sign叩l o
ukonen鱈 procesu
Exit status je 鱈slo
Uvo直nenie zdrojov
Zabitie svojich zombie det鱈
11.10.2008 22/35
26. load
Po鱈ta v叩転en箪 priemer procesov v stave:
Running - be転iace
Runnable akaj炭ce na CPU
Uninterruptible sleep akaj炭ce na I/O
1, 5, 15 min炭t
175% v poslednej min炭te
V priemere akalo 0,75 procesu
michal@ubuntu:~$uptime
19:51:48up1:24,4users,loadaverage:1.75,0.86,0.54
11.10.2008 26/35
27. o m担転e ovplyvni泥 u転鱈vate直?
Nesp炭邸泥a泥 ni o nie je potrebn辿
Ve直a premenn箪ch prostredia
Dlh辿 cesty na vyh直ad叩vanie spustite直n箪ch
s炭borov
Addony do window managerov atp.
Zbyton辿 slu転by (bluetooth, cupsd)
Pou転i泥 programy s men邸ou z叩泥a転ou
locate namiesto find
11.10.2008 27/35
28. 永姻鱈一鉛温糸
michal@ubuntu:~$timelocate*bash*>output
real 0m0.526s
user 0m0.428s
sys 0m0.024s
michal@ubuntu:~$timefind/足name*bash*>output
real 1m11.150s
user 0m1.152s
sys 0m3.424s
11.10.2008 28/35
29. Bute mil箪 k in箪m procesom
Upravi泥 prioritu programom
nice
renice
Default 0
Kladn辿 hodnoty
Z叩porn辿 hodnoty iba root
Index叩cia beagle, trackerd
Nie je dobr箪 n叩pad zni転ova泥 prioritu
interakt鱈vnej aplik叩ci鱈
11.10.2008 29/35