Salam əziz oxucular, bu gün sizə Linux-da proseslərin idarə edilməsi haqında danışacağıq.Linux proses idarəetməsi sistemin mərkəzində duran əsas mövzulardan biridir. Proseslər Linux sistemində işləyən hər bir proqram və ya komanda deməkdir. Proseslərin idarə edilməsi əməliyyat sisteminin əsas funksiyalarından biridir, çünki proseslərin effektiv şəkildə idarə olunması sistem resurslarının düzgün bölüşdürülməsini təmin edir.
Bu gün baxaq görək axı bu proses nədir. Qeyd olunduğu kimi proses əməliyyat sistemində işləyən bir proqramın dinamik nümunəsidir. Linuxda əsaslı əməliyyat sistemlərində proseslər iki növə bölünür:
Parent Process (Valideyn prosesi): Yeni prosesləri yaradan proses və Child Process (Uşaq prosesi): Valideyn prosesi tərəfindən yaradılan proses.
Qeyd olunduğu kimi hər bir proses bir unikal Proses ID-sinə (PID) malikdir.
ps Komandası
ps (process status) Linux sistemində aktiv proseslər haqqında məlumat təqdim edir. Bu komanda ilə siz proseslərin ID-lərini, CPU və yaddaş istifadəsini, proseslərin başlanğıc vaxtını və digər detalları əldə edə bilərsiniz.Əsas istifadə komandası ps: Hal-hazırda cari terminalda işləyən prosesləri göstərir.ps aux komandası isə Sistemdə işləyən bütün prosesləri göstərir (ən geniş yayılmış format).a: Bütün istifadəçilərin proseslərini,u: Proseslər haqqında detallı məlumat (CPU və RAM istifadəsi kimi).göstər x: Terminaldan asılı olmayaraq bütün prosesləri göstər.ps -ef: komandası isə Proseslərin tam siyahısını göstərir
Nümunə koda abxa bilərik
ps aux | grep apache
Bu komanda sistemdə apache ilə bağlı işləyən prosesləri tapır.
kill Komandası
kill prosesi sonlandırmaq üçün istifadə olunur. Bu komanda bir prosesə müəyyən siqnal göndərir.Əsasən istifadə olunan kill [signal] PID Müəyyən edilmiş siqnalı prosesə göndərir. PID Prosesin ID nömrəsi. Əgər signal optiondan istifadə ediliərək Göndəriləcək siqnalın növü (əgər siqnal göstərilmirsə, standart olaraq SIGTERM (15) siqnalı göndərilir). Əsasən siginallar aşağıdakı cədvəldəki kimidir.
SIGTERM (15): Prosesi ləğv etmək üçün istifadə edilir (nəzakətli dayandırma). SIGKILL (9): Prosesi dərhal dayandırır (məcburi). SIGHUP (1): Prosesin konfiqurasiyasını yenidən yükləyir.
Nümunə komanda kimi
kill 1234
Nümunədə göstərilən kimi komanda 1234 proses ID-si olan prosesi dayandırır.
Nümunə komanda kimi
kill -9 5678
Bu komanda 5678 ID-li prosesi məcburi dayandırır.
nice və renice Komandaları
nice komandası prosesi müəyyən bir prioritet səviyyəsi ilə başlatmaq üçün istifadə olunur. Prioritetlər -20 (ən yüksək prioritet) ilə 19 (ən aşağı prioritet) arasında dəyişir. Qeyd edilən renice isə artıq işləyən prosesin prioritetini dəyişmək üçün istifadə olunur.Əsas istifadə olunan nice -n [value] command Prosesi müəyyən bir prioritetlə işə salır. Burda qeyd olunan value Prioritet dərəcəsi (mənfi dəyərlər daha yüksək prioritet deməkdir, lakin mənfi dəyər üçün root hüquqları lazımdır). Bu optionda isə renice [value] -p [PID] Müəyyən edilmiş prosesin prioritetini dəyişir.
Nümunə komanda kimi
nice -n 10 ./my_script.sh
Bu komanda my_script.sh skriptini prioriteti 10 olan proses kimi işə salır.
renice -5 -p 1234
Bu komanda isə 1234 proses ID-li prosesin prioritetini -5 olaraq dəyişir (yüksək prioritet).
Komanda Proses barədə məlumat veriri ps Sistemdəki proseslər haqqında məlumat göstərir. kill Müəyyən prosesləri dayandırmaq üçün istifadə olunur. nice Prosesləri müəyyən prioritetlə işə salır. renice Artıq işləyən prosesin prioritetini dəyişir.
Bu vasitələr sistem idarəetməsində vacib rol oynayır və Linux administratorları üçün güclü alətlərdir.