4.5.2 Διαχείριση διεργασιών από γραφικό περιβάλλον (GUI)
4.5.2 Διαχείριση διεργασιών από γραφικό περιβάλλον (GUI)
Η διαχείριση διεργασιών από το γραφικό περιβάλλον του Linux γίνεται με το εργαλείο Παρακολούθηση συστήματος το οποίο προσφέρει πολλές επιπλέον δυνατότητες. Στις παραγράφους αυτούς θα χρησιμοποιηθούν παραδείγματα από το γραφικό περιβάλλον του Ubuntu MATE.
|
Την παρακολούθηση συστήματος μπορούμε να την «ανοίξουμε» με πολλούς τρόπους. 1ον με τον συνδυασμό πλήκτρων Ctrl+Shift+Esc 2ον πληκτρολογώντας σε ένα τερματικό την εντολή mate-system-monitor 3ον από το Μενού -> Εργαλεία συστήματος -> Παρακολούθηση συστήματος |
Εικόνα 4.5.5 - Ενεργοποίηση παρακολούθησης συστήματος
Η Παρακολούθηση Συστήματος εμφανίζει το παράθυρο της εικόνας 4.4.6. Στο οποίο εμφανίζονται οι πόροι σου συστήματος και η χρήση τους.
Εικόνα 4.5.6 - Η χρήση πόρων του συστήματος
Για να δούμε τις τρέχουσες διεργασίες θα πρέπει να επιλέξουμε την καρτέλα Διεργασίες.
Εικόνα 4.5.7 - Διεργασίες
Αν θέλουμε να τερματίσουμε μια διεργασία απλά την επιλέγουμε με κλικ και στη συνέχεια κλικ στο πλήκτρο {Enter].
Εικόνα 4.5.8 - Διαγραφή μιας διεργασίας
|
Τερματικά Κάθε διεργασία συνδέεται με κάποιο τερματικό (TTY) το οποίο εμφανίζεται όταν εκτελούμε την εντολή ps. Αν στη θέση του ονόματος του τερματικού εμφανίζεται ένα ερωτηματικό "?" σημαίνει ότι η διεργασία αυτή δεν χρειάζεται τερματικό. Οι διεργασίες αυτές εκτελούν κρίσιμες λειτουργίες του συστήματος και δεν πρέπει να τις διακόπτουμε. Στο φλοιό υπάρχουν επιπλέον άλλα πέντε τερματικά αλλά η αξιοποίησή τους ξεφεύγει από τους σκοπούς του βιβλίου. Καταστάσεις διεργασιών Μια διεργασία από τη στιγμή της δημιουργίας της μέχρι τον τερματισμό της μπορεί να βρεθεί σε μια από τις ακόλουθες τρείς καταστάσεις Κατάσταση εκτέλεσης (Running): Η διεργασία χρησιμοποιεί τον επεξεργαστή (CPU) και εκτελείται. Σε συστήματα με έναν επεξεργαστή, κάθε χρονική στιγμή μόνο μία διεργασία μπορεί να είναι σε κατάσταση εκτέλεσης. Κατάσταση ετοιμότητας (Ready): Η διεργασία είναι έτοιμη να χρησιμοποιήσει τον επεξεργαστή και να εκτελεστεί. Κατάσταση κλειδώματος (Blocked): Η διεργασία περιμένει την ολοκλήρωση κάποια άλλης διαδικασίας για να συνεχίσει την εκτέλεσή της. Για παράδειγμα μια διεργασία θέλει αν γράψει κάτι στον δίσκο αλλά μια άλλη διεργασία απασχολεί τον δίσκο. Κατάσταση ζόμπι (zombie): Η διεργασία έχει "πεθάνει" αλλά δεν έχει ολοκληρωθεί ο "θάνατός" της.
Ορφανά και Ζόμπι Είδαμε ότι όλες οι εργασίες (εκτός της αρχικής) είναι "παιδιά" (children) κάποιας άλλης γονικής (parent) διεργασίας. Αυτό προκαλεί δύο "περίεργες" καταστάσεις όταν μια διεργασία τερματίζεται (πεθαίνει). Όταν μια διεργασία τερματίζεται ενημερώνει τον γονέα της. Η διεργασία γονέας ελέγχει το λόγο τερματισμού και δίνει τη συγκατάθεσή της σε αυτόν. Τι γίνεται όμως όταν η διεργασία γονέας έχει "πεθάνει" νωρίτερα από τη διεργασία παιδί και φυσικά δεν μπορεί να δώσει τη συγκατάθεση της;. Στην περίπτωση αυτή η διεργασία παιδί ονομάζεται ορφανή και τη συγκατάθεση για τον τερματισμός την αναλαμβάνει η αρχική διεργασία init. Επίσης τι γίνεται όταν η διεργασία παιδί "πεθάνει" χωρίς τη συγκατάθεση της διεργασίας γονέα; Στην περίπτωση αυτή η διεργασία μετατρέπεται σε "ζόμπι" (zombie) εμφανίζεται στη λίστα διεργασιών και τον τερματισμό της αναλαμβάνει πάλι η αρχική διεργασία. Παρατηρούμε ότι στην εικόνα 4.5.3 που δείχνει την εκτέλεση της εντολής top, εμφανίζεται η κατάσταση κάθε διεργασίας στη στήλη S (Status) Τα γράμματα που υπάρχουν σε αυτή τη στήλη έχουν την παρακάτω σημασία R : Η διεργασία εκτελείται κανονικά (Running) S : Η διεργασία είναι σ κατάσταση αναμονής (Sleeping) T : Η διεργασία έχει σταματήσει (Stopped) Z : Η διεργασία είναι σε κατάσταση zombie. D : Η διαδικασία δεν τερματίζεται χρειάζεται επανεκκίνηση συστήματος. |
Υλοποιήστε τη δραστηριότητα 4.5.1