Νήµατα. ιεργασίες και νήµατα Υλοποίηση νηµάτων Ελαφριές διεργασίες Αξιοποίηση νηµάτων. Κατανεµηµένα Συστήµατα 10-1

Σχετικά έγγραφα
Κινητά και Διάχυτα Συστήματα. Ενότητα # 3: Νήματα και ταυτοχρονισμός Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Κατανεμημένα Συστήματα: Θεωρία και Προγραμματισμός. Ενότητα # 8: Ταυτοχρονισμός και νήματα Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Ε-85: Ειδικά Θέµατα Λογισµικού

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ

Καρακασίδης Αλέξανδρος Καστίδου Γεωργία Παπαφώτη Μαρία Πέτσιος Κων/νος Στέφανος Σαλτέας Καλογεράς Παναγιώτης. Threads in Java ΝΗΜΑΤΑ ΣΤΗ JAVA

Εισαγωγή. Κατανεµηµένα Συστήµατα 01-1

3.1 Λειτουργικό Σύστηµα. Λειτουργικό Σύστηµα (2) ΚΕΦΑΛΑΙΟ 3: Λειτουργικά Συστήµατα. Ο υπολογιστής σαν σκέτο hardware έχει περιορισµένη χρησιµότητα

Κατανεµηµένασυστήµατα αρχείων

Διεργασίες και Νήματα (2/2)

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ

Νήµαταστην Java. Συγχρονισµός νηµάτων Επικοινωνία νηµάτων Εκτελέσιµα αντικείµενα Νήµατα δαίµονες Οµάδες νηµάτων. Κατανεµηµένα Συστήµατα 11-1

ιεργασίες και Επεξεργαστές στα Κατανεµηµένων Συστηµάτων

ιεργασίες και νήµατα Προγραµµατισµός ΙΙΙ 1 lalis@inf.uth.gr

Λειτουργικά Συστήματα (Λ/Σ)

Η Υλοποίηση της Επικοινωνίας. Κατανεµηµένα Συστήµατα

Κεφάλαιο 4 Διεργασίες Β Τάξη ΕΠΑΛ

ΤρόποςΑξιολόγησης: α) Εργαστήρια (Προαιρετικάµε 20% - 35% βαρύτητα µόνοθετικά) β) Τελική Γραπτή Εξέταση

Αποµακρυσµένη κλήση διαδικασιών

Λειτουργικά συστήματα πραγματικού χρόνου

Τεχνολογικά Επιτεύγµατα. Πλεονεκτήµατα. Ορισµός Κατανεµηµένου Συστήµατος. Μειονεκτήµατα. E-03: Λειτουργικά Συστήµατα ΙΙ 6. Εαρινό Εξάµηνο

Κεφάλαιο 3. Διδακτικοί Στόχοι

Πολυπύρηνοι επεξεργαστές Multicore processors

Οργάνωση επεξεργαστών και διεργασιών

ΛΟΓΙΣΜΙΚΟ (software)

Λειτουργικά Συστήματα (ΗΥ321)

Ορισµός Νήµα (thread) είναι µια ακολουθιακή ροή ελέγχου (δηλ. κάτι που έχει αρχή, ακολουθία εντολών και τέλος) σ ένα

Συγχρονισµός: Αδιέξοδο & Παρατεταµένη Στέρηση

Κατανεµηµένα Αντικείµενα 16-1

Ο βασικός παράγοντας είναι ο χρόνος αξιοποίησης του επεξεργαστή Ελάχιστος αριθµός πράξεων και όχι µακρόχρονες αιτήσεις Ε/Ε

Κατανεμημένα Συστήματα: Θεωρία και Προγραμματισμός. Ενότητα # 1: Εισαγωγή Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Επιτεύγµατα των Λ.Σ.

Κατανεμημένα Συστήματα: Θεωρία και Προγραμματισμός. Ενότητα # 6: Κατανομή φόρτου Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Κατανεμημένα Συστήματα

Κινητά και Διάχυτα Συστήματα. Ενότητα # 10: Κατανομή φόρτου Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Παράλληλη Επεξεργασία Κεφάλαιο 1 Γιατί Παράλληλος Προγραμματισμός;

Λειτουργικά Συστήματα Η/Υ

Περιεχόµενα ΠΡΟΛΟΓΟΣ 23

ροµολόγηση Επεξεργαστή

Η ΕΣΩΤΕΡΙΚΗ ΕΠΙΘΕΩΡΗΣΗ ΣΑΝ ΚΙΝΗΤΗΡΙΟΣ ΥΝΑΜΗ ΑΠΟΤΕΛΕΣΜΑΤΙΚΟΤΗΤΑΣ ΕΝΟΣ ΣΥΣΤΗΜΑΤΟΣ ΠΟΙΟΤΗΤΑΣ ISO 9001

Εισαγωγή. E-03: Λειτουργικά Συστήµατα ΙΙ 6. Εαρινό Εξάµηνο Κατανεµηµένα συστήµατα αρχείων. Μέρη κατανεµηµένου συστήµατος αρχείων

Λειτουργικά Συστήματα. Ενότητα # 2: Διεργασίες και Νήματα Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Εισαγωγή. Τεχνολογία Πολυµέσων 01-1

Εικονική Μνήµη. Κεφάλαιο 8. Dr. Garmpis Aristogiannis - EPDO TEI Messolonghi

Κατανεμημένα Συστήματα

Εφαρμογές των πολυμέσων

Λειτουργικά Συστήματα (Λ/Σ)

Σύστηµα Java RMI. Κατανεµηµένα Συστήµατα 17-1

Μάθημα 3 ο ΔΙΕΡΓΑΣΙΕΣ (PROCESSES)

Διεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1

ΚΕΦΑΛΑΙΟ 3: Λειτουργικά Συστήµατα

Ανάλυση Επιδόσεων Συστημάτων Πραγματικού Χρόνου

ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2

Λειτουργικά Συστήματα. Ενότητα # 2: Διεργασίες και Νήματα Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Λειτουργικά Συστήματα

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΕΙΣΑΓΩΓΗ

Πληροφορίες. E-03: Λειτουργικά Συστήµατα ΙΙ 6. Εαρινό Εξάµηνο Εισαγωγή. Στόχοι Κατανεµηµένων Συστηµάτων. ιαφάνεια

Τμήμα Οικιακής Οικονομίας και Οικολογίας. Οργάνωση Υπολογιστών

ΠΛΕ- 027 Μικροεπεξεργαστές 11ο μάθημα: Είσοδος- Εξοδος (Ε/Ε)

CRM. Σηµειώσεις για το σεµινάριο Αθανάσιος Ν. Σταµούλης. Customer Relationship Management

Λειτουργικά Συστήματα (διαχείριση επεξεργαστή, μνήμης και Ε/Ε)

Ενότητα 2 (Κεφάλαιο 3) Περιγραφή και Έλεγχος Διεργασιών. Περιεχόμενα. Ανάγκη ύπαρξης διεργασιών 1

Τι είναι ένα λειτουργικό σύστημα (ΛΣ); Μια άλλη απεικόνιση. Το Λειτουργικό Σύστημα ως μέρος του υπολογιστή

«ροµολόγηση ιεργασιών (2/2): Οργάνωση Επεξεργαστών και ιεργασιών (β)»

Ι.Ε.Κ. Χαϊδαρίου ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ. Σημειώσεις Θεωρίας

Κινητά και Διάχυτα Συστήματα. Ενότητα # 4: Απομακρυσμένα αντικείμενα Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Νήµατα. Πολύ σηµαντικό

Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420)

Σελίδα 1 από 11. Απαντήσεις στο φυλλάδιο 57 Ερώτηση: 1 η : Οι ακροδέκτες αυτοί χρησιµοποιούνται για:

Ασφάλεια στο ιαδίκτυο. Ασφάλεια στο διαδίκτυο. Λόγοι αύξησης περιστατικών. Επιθέσεις µέσω ηλεκτρονικού ταχυδροµείου. Πρώτο µείζον πρόβληµα: 1988

Λιβανός Γιώργος Εξάμηνο 2017Β

Κύριες Υπηρεσίες ενός ΛΣ

Πνευµατικά ικαιώµατα

Οργάνωση Η/Υ. Γιώργος ηµητρίου. Μάθηµα 12 ο. Πανεπιστήµιο Θεσσαλίας - Τµήµα ΜηχανικώνΗ/Υ, Τηλεπικοινωνιών και ικτύων

(Μικρο)Πυρήνας. Λειτουργίες


Εισαγωγή στην Πληροφορική

Περιεχόμενα ΠΡΟΛΟΓΟΣ 25 1 ΕΙΣΑΓΩΓΗ 31

Λειτουργικά Συστήματα. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα

Περιεχόµενα. Μέρος I Βασικά στοιχεία των Microsoft Windows XP Professional. Ευχαριστίες Εισαγωγή... 19

13.2 Παράλληλος Προγραµµατισµός Γλωσσάρι, Σελ. 1

Κατηγορίες Νηµάτων. Νήµατα Επιπέδου Πυρήνα. Νήµατα Επιπέδου Χρήστη. «Νήµατα Επιπέδου Χρήστη» Ε-85: Ειδικά Θέµατα Λογισµικού

2. Σκοποί και Λειτουργίες των ΛΣ. Λειτουργικά Συστήματα Η/Υ. Περίληψη. Ι. Προστασία Υλικού ΚΕΦΑΛΑΙΟ 2 - ΕΞΕΛΙΞΗ ΚΑΙ ΣΚΟΠΟΙ ΛΣ

Συνεχής ροή πολυµέσων

Οργάνωση ενός σύγχρονου Υπολογιστικού Συστήματος ή Ηλεκτρονικού Υπολογιστή (Η/Υ) Τα σύγχρονα συστήματα Η/Υ έχουν την παρακάτω οργάνωση:

Εισαγωγή στην Πληροφορική

Λειτουργικά Συστήματα. Ενότητα # 1: Εισαγωγή Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Κεφάλαιο 4: Λογισμικό Συστήματος

Λειτουργικά. Τεχνολογικό Εκπαιδευτικό Ίδρυμα Δυτικής Μακεδονίας Σιώζιος Κων/νος - Πληροφορική Ι

Επεξεργασία πραγµατικού χρόνου Κατάτµηση της µνήµης

Ανάλυση επιδόσεων συστημάτων πραγματικού χρόνου

Κατανεμημένα Συστήματα με Java. Ενότητα # 16: Κατανεμημένα συστήματα αντικειμένων Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Τεχνολογία Πολυμέσων. Ενότητα # 2: Εφαρμογές πολυμέσων Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Εισαγωγή στην Πληροφορική Προγραμματισμός-Λειτουργικά

Εισαγωγή στα Λειτουργικά συστήματα Ι. Καθηγητής Κώστας Αναγνωστόπουλος

Εισαγωγή. Εποπτικός Έλεγχος Βιοµηχανικών ιεργασιών. Στόχος συστήµατος διαχείρισης ελέγχου

Εισαγωγικά & Βασικές Έννοιες

Τμήμα Λογιστικής. Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. Μάθημα 8. 1 Στέργιος Παλαμάς

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι. Λειτουργικά Συστήματα Ι ΔΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ. Επ. Καθ. Κ. Λαμπρινουδάκης

Συγχρονισµός πολυµέσων

Γεωγραφικά Συστήµατα Πληροφοριών και Αρχές Τηλεπισκόπησης

Transcript:

Νήµατα ιεργασίες και νήµατα Υλοποίηση νηµάτων Ελαφριές διεργασίες Αξιοποίηση νηµάτων Κατανεµηµένα Συστήµατα 10-1

ιεργασίεςκαι νήµατα ιεργασία 1 Μνήµη ιεργασία 2 Μνήµη ιεργασία 3 Μνήµη Λειτουργικό Σύστηµα ιεργασία: ένα εκτελούµενο πρόγραµµα Κώδικας + κατάσταση Καταχωρητές και µνήµη Κάθε διεργασία εκτελείται στο δικό της εικονικό επεξεργαστή Ψευδοταυτόχρονη ή παράλληλη εκτέλεση των διεργασιών Αποµόνωση διεργασιών για λόγους ασφάλειας Υψηλό κόστος δηµιουργίας και µεταγωγής συµφραζοµένων Αλλαγή χώρου διευθύνσεων και περιβάλλοντος Κατανεµηµένα Συστήµατα 10-2

ιεργασίεςκαι νήµατα Νήµα 3 Μνήµη Λειτουργικό Σύστηµα Νήµα: µια ροή ελέγχου σε µια διεργασία Επιτρέπονται πολλά νήµατα ανά διεργασία Όλα τα νήµατα µοιράζονται τον ίδιο χώρο διευθύνσεων Χωριστή στοίβα, καταχωρητές, µετρητής προγράµµατος Κοινά αρχεία και περιβάλλον διεργασίας Ψευδοταυτόχρονη εκτέλεση νηµάτων σε έναν επεξεργαστή Παράλληλη εκτέλεση σε πολυεπεξεργαστές Κατανεµηµένα Συστήµατα 10-3

ιεργασίεςκαι νήµατα Γιατί νήµατα; Κοινός χώρος διευθύνσεων στην ίδια διεργασία εν υπάρχει µηχανισµός προστασίας Συνεργασία νηµάτων µέσω κοινής µνήµης Χαµηλό κόστος µεταγωγής συµφραζοµένων νηµάτων Μόνο οι καταχωρητές αλλάζουν, όχι η εικονική µνήµη Χρήσεις νηµάτων Παράλληλη εκτέλεση πολλών βηµάτων Χωριστά νήµατα για κλήσεις εισόδου/εξόδου Ταυτόχρονη επικοινωνία µε χρήστη και επεξεργασία Αξιοποίηση εγγενούς παραλληλισµού εφαρµογής Χρήση όλων των διαθέσιµων επεξεργαστών Γρήγορη επικοινωνία µέσω κοινής µνήµης Κατανεµηµένα Συστήµατα 10-4

Υλοποίησηνηµάτων ιεργασία 1 ιεργασία n Πακέτο νηµάτων Πακέτο νηµάτων Λειτουργικό Σύστηµα Πακέτο νηµάτων ηµιουργία και καταστροφή νηµάτων ιαχείριση συνθηκών (conditions) Πακέτα νηµάτων επιπέδου χρήστη Οικονοµική υλοποίηση λειτουργιών και µεταγωγής Ο εµποδισµός ισχύει για ολόκληρη τη διεργασία Όλα τα νήµατα εµποδίζονται µαζί Κατανεµηµένα Συστήµατα 10-5

Υλοποίησηνηµάτων ιεργασία 1 ιεργασία n Πακέτο νηµάτων Λειτουργικό Σύστηµα Πακέτα νηµάτων επιπέδου πυρήνα Ακριβή υλοποίηση λειτουργιών και µεταγωγής συµφραζοµένων Ο εµποδισµός ισχύει µόνο για το νήµα Επίπεδο χρήστη ή επίπεδο πυρήνα; Ορισµένα λειτουργικά συστήµατα υποστηρίζουν νήµατα Η Java υποστηρίζει νήµατα σε όλα τα συστήµατα Κατανεµηµένα Συστήµατα 10-6

Ελαφριέςδιεργασίες ιεργασία 1 ιεργασία n Πακέτο νηµάτων Πακέτο νηµάτων Ελαφριά διεργασία Ελαφριά διεργασία Ελαφριά διεργασία Λειτουργικό Σύστηµα Ελαφριές διεργασίες: υβριδική λύση Βασική υποστήριξη νηµάτων από πυρήνα Πακέτο νηµάτων επιπέδου χρήστη Κατανεµηµένα Συστήµατα 10-7

Επίπεδο πυρήνα Ελαφριέςδιεργασίες Πολλές ελαφριές διεργασίες σε µία κανονική (Κατά)µερισµός του ενιαίου χώρου διευθύνσεων Επίπεδο χρήστη ηµιουργία, διαγραφή και συγχρονισµός νηµάτων Κάθε νήµα εκτελείται από κάποια διαθέσιµη ελαφριά διεργασία Η συσχέτιση µεταξύ τους δεν είναι µόνιµη Μεταγωγή συµφραζοµένων: επίπεδο χρήστη Κλήση χρονοπρογραµµατιστή επιπέδου χρήστη Εκτέλεση νήµατος µε απλή κλήση διαδικασίας Εµποδισµός νήµατος πάνω σε συνθήκη Ανάθεση νέου νήµατος από το χρονοπρογραµµατιστή Η ελαφριά διεργασία δεν εµποδίζεται Κατανεµηµένα Συστήµατα 10-8

Ελαφριέςδιεργασίες Μεταγωγή συµφραζοµένων: επίπεδο πυρήνα Κλήση πυρήνα που προκαλεί εµποδισµό Ο πυρήνας µπορεί να δώσει τον έλεγχο σε άλλη διεργασία ε χρειάζεται κάποια ειδική µεταχείριση Αρκετές ελαφριές διεργασίες για αύξηση παραλληλισµού Ιδιότητες ελαφριών διεργασιών Οι ελαφριές διεργασίες δε συνδέονται µόνιµα µε ένα νήµα Ο χρονοπρογραµµατιστής τους αναθέτει νήµατα δυναµικά Ο εµποδισµός πάνω σε συνθήκες γίνεται σε επίπεδο χρήστη Πλεονεκτήµατα ελαφριών διεργασιών Όλες οι λειτουργίες νηµάτων γίνονται σε επίπεδο χρήστη Ο πυρήνας παρεµβαίνει µόνο για να εξυπηρετήσει τις κλήσεις του Ο χρονοπρογραµµατιστής µπορεί να αλλάξει Κατανεµηµένα Συστήµατα 10-9

Αξιοποίησηνηµάτων Αξιοποίηση στους πελάτες Απόκρυψη καθυστερήσεων του δικτύου Παράδειγµα: φυλλοµετρητήςιστοσελίδων Εµφάνιση κειµένου προς ανάγνωση Πολλά νήµατα µεταφοράς εικόνων Αξιοποίηση στους εξυπηρετητές ιαχείριση πολλών πελατών Αξιοποίηση πολλών επεξεργαστών Παράδειγµα: εξυπηρετητής αρχείων Πολλά νήµατα για εξυπηρέτηση αιτήσεων Ένα νήµα για διανοµή αιτήσεων Κάθε νήµα λειτουργεί και εµποδίζεται αυτόνοµα (Κατά)µερισµός κρυφής µνήµης ενταµιευτών Κατανεµηµένα Συστήµατα 10-10

Αξιοποίησηνηµάτων ιεργασία ιεργασία Εργάτης 1 ιανοµέας Εργάτης 2 Εργάτης n Εργάτης 1 Εργάτης 2 Εργάτης n Μοντέλο διανοµέα/εργατών: εξυπηρετητής αρχείων Όλα τα νήµατα-εργάτες είναι παρόµοια Εξυπηρέτηση αιτήσεων από οποιοδήποτε νήµα Μοντέλο σωλήνωσης: εκτέλεση εργασίας σε στάδια Κάθε νήµα είναι διαφορετικό Ιδανικά, όλα τα νήµατα απαιτούν τον ίδιο περίπου χρόνο Κατανεµηµένα Συστήµατα 10-11