ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΔΙΕΡΓΑΣΙΩΝ

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Λειτουργικό Σύστημα (Operating System) 1o μέρος
Advertisements

Δομές Δεδομένων και Αλγόριθμοι
Εφαρμογές Υπολογιστών Ά Λυκείου Κεφ. 4 Λογισμικό Συστήματος
Λειτουργικά Συστήματα
Η επιστήμη των υπολογιστών
Λειτουργικά Συστήματα
1 Α. Βαφειάδης Αναβάθμισης Προγράμματος Σπουδών Τμήματος Πληροφορικής Τ.Ε.Ι Θεσσαλονίκης Μάθημα Προηγμένες Αρχιτεκτονικές Υπολογιστών Κεφαλαίο Πρώτο Αρχιτεκτονική.
Λειτουργικό Σύστημα 2ο μέρος.
Κεφάλαιο 1ο: ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΤΩΝ ΛΕΙΤΟΥΡΓΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ
Ζητήματα Σελιδοποίησης
Λογισμικο συστηματοσ Κεφάλαιο 4ο
Επικοινωνία μεταξύ Διεργασιών και Σύνδρομες Διεργασίες
Χρονοπρογραμματισμός Διεργασιών (Process Scheduling)
Εναλλαγή εκρήξεων ΚΜΕ και Ε/Ε μιας διεργασίας
Νήματα Οι διεργασίες έχουν τα παρακάτω συστατικά:
ΠΑΡΑΔΟΣΕΙΣ ΜΑΘΗΜΑΤΟΣ «ΔΙΚΤΥΑ ΕΛΕΓΧΟΥ» ΟΚΤΩΒΡΙΟΣ 2004.
Τι είναι διεργασία Ένα πρόγραμμα σε εκτέλεση Η διεργασία περιλαμβάνει:
Χρονοδρομολόγηση CPU Βασικές Αρχές Κριτήρια Χρονοδρομολόγησης
Σχεδίαση αλγορίθμων (2ο μέρος)
ΒΡΟΧΟΙ ΜΑΘΗΜΑ 5. ΒΡΟΧΟΙΒΡΟΧΟΙ Ο Βρόχος (loop) αποτελείται από προτάσεις επανάληψης. Οι προτάσεις επανάληψης είναι οι προτάσεις που επαναλαμβάνουν ένα.
Διαχείριση μνήμης Υπόβαθρο Εναλλαγή Συνεχής κατανομή Σελιδοποίηση
ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ
ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ 2: ΘΕΜΑΤΑ ΘΕΩΡΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ Η/Υ
Ενότητα Α.4. Δομημένος Προγραμματισμός
Επικοινωνία μεταξύ Διεργασιών και Σύνδρομες Διεργασίες Interprocess Communication and Concurrent Processes.
Αλγόριθμοι 2.1.1,
Για τη διεκπεραίωση ενός προβλήματος πρέπει να ακολουθηθεί η εξής διαδικασία:  να γραφεί ο αλγόριθμος να συνταχθεί το πρόγραμμα σε γλώσσα υψηλού επιπέδου.
ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ 2: ΘΕΜΑΤΑ ΘΕΩΡΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ Η/Υ
Η Δομή Επανάληψης οι 3 Δομές Επανάληψης ή αλλιώς οι τρεις σωματοφύλακες… Η παρουσίαση της εντολής Μέχρις_ότου είναι από την εισήγηση των κ. Σ. Δουκάκη.
Μικροεπεξεργαστές Λειτουργία - Εξέλιξη
ΚΕΦΑΛΑΙΟ Τι είναι αλγόριθμος
Εφαρμογές Υπολογιστών Ά Λυκείου Κεφ. 4 Λογισμικό Συστήματος
1 Α. Βαφειάδης Αναβάθμισης Προγράμματος Σπουδών Τμήματος Πληροφορικής Τ.Ε.Ι Θεσσαλονίκης Μάθημα Προηγμένες Αρχιτεκτονικές Υπολογιστών Κεφαλαίο Πρώτο Αρχιτεκτονική.
Διεργασίες.
ΚΕΦΑΛΑΙΟ Το αλφάβητο της ΓΛΩΣΣΑΣ
Μέγιστη ροή TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Συνάρτηση χωρητικότητας Κατευθυνόμενο γράφημα.
ΕΝΟΤΗΤΑ 2 – Κεφάλαιο 5: Γνωριμία με το Λογισμικό
Κωνσταντίνος Αντωνής © 2014Διαδικτυακός και Ταυτόχρονος Προγραμματισμός Ομοιόμορφη Αποδοτική Διαχείριση του Ταυτοχρονισμού των Εξυπηρετητών 1.
Χρονοδρομολόγηση CPU Βασικές Αρχές Κριτήρια Χρονοδρομολόγησης
Λειτουργικά Συστήματα
ΜΕΓΑΛΟΣ ΥΠΟΛΟΓΙΣΤΗΣ ! ΕΚΠΑΙΔΕΥΤΗΡΙΑ ΚΑΝΤΑ ΕΚΠΑΙΔΕΥΤΗΡΙΑ ΚΑΝΤΑ ΙΝΑ ΜΑΚΡΑΚΗ ΙΝΑ ΜΑΚΡΑΚΗ ΣΧΟΛΙΚΟ ΕΤΟΣ
1 Λειτουργικά Συστήματα Ενότητα 13 : Δρομολόγηση Διεργασιών 3/3 Δημήτριος Λιαροκάπης Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου.
1 Λειτουργικά Συστήματα Ενότητα 11 : Δρομολόγηση Διεργασιών 1/3 Δημήτριος Λιαροκάπης Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου.
Διαχείριση Πόρων (1/10) Εισαγωγή στην Πληροφορκή 1 Στα πρώτα χρόνια των υπολογιστών, όπου μόνο ένα πρόγραμμα είχε τη δυνατότητα να βρίσκεται στην κύρια.
Λειτουργικά Συστήματα
ΤΕΧΝΙΚΑ ΘΕΜΑΤΑ ΠΩΛΗΣΕΩΝ & ΠΡΟΔΙΑΓΡΑΦΕΣ ΥΛΙΚΟΥ ΚΑΙ ΛΟΓΙΣΜΙΚΟΥ Β΄ ΕΠΑΛ ΚεφΑλαιο 2: ΠροδιαγραφΕΣ ΥλικοΥ Η/Υ 2.7 Επεξεργαστές.
Δομή Επιλογής Χρησιμοποιείται σε προβλήματα όπου χρειάζεται να ληφθούν κάποιες αποφάσεις με βάση κάποια δεδομένα κριτήρια. Περιλαμβάνει τον έλεγχο κάποιας.
Χειρισμός Χρόνου και Μεθοδολογίες Προσομοίωσης
Κατανεμημένα Συστήματα
Λειτουργικά Συστήματα
Μέγιστη ροή Κατευθυνόμενο γράφημα 12 Συνάρτηση χωρητικότητας
Χρονοπρογραμματισμός CPU - SCHEDULING
Διδάσκων: Δρ. Τσίντζα Παναγιώτα
Λειτουργικά Συστήματα και Ασφάλεια Πληροφοριακών Συστημάτων ΔΙΕΡΓΑΣΙΕΣ
ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ «ΓΙΑ» Για μτ από ατ μέχρι ττ [με_βήμα β] εντολές Τέλος_επανάληψης : περιοχή εντολών μτ : η μεταβλητή της.
Εισαγωγή στα Λειτουργικά Συστήματα (ΛΣ) Operating Systems (OS)
Ομοιόμορφη Αποδοτική Διαχείριση του Ταυτοχρονισμού των Εξυπηρετητών
Κεφάλαιο 7: Διαδικτύωση-Internet Μάθημα 7.9: Δρομολόγηση
ΑΣ ΑΝΑΚΑΛΥΨΟΥΜΕ ΤΟ SCRATCH
ΤΕΙ Ηρακλείου Τμήμα Εφαρμοσμένης Πληροφορικής και Πολυμέσων
ΑΛΓΟΡΙΘΜΟΣ.
ENOTHTA 2. ΘΕΜΑΤΑ ΘΕΩΡΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΚΕΦΑΛΑΙΟ 2
H/Y Υλικό Λογισμικό Συστήματος Εφαρμογών. H/Y Υλικό Λογισμικό Συστήματος Εφαρμογών.
ΔΙΕΡΓΑΣΙΕΣ.
Ο ΜΙΚΡΟΕΠΕΞΕΡΓΑΣΤΗΣ MIPS R10000
οι 3 Δομές Επανάληψης ή αλλιώς οι τρεις σωματοφύλακες…
Ιεραρχική σχεδίαση Καθορίζονται οι βασικές λειτουργίες σε ανώτερο επίπεδο και στη συνέχεια γίνεται διάσπαση σε όλο και μικρότερες λειτουργίες μέχρι το.
ΣΥΓΧΡΟΝΑ ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Τρίτη Έκδοση ANDREW S
Από τη Δομή Ακολουθίας στις Δομές Επανάληψης
Χρονοπρογραμματισμός CPU - SCHEDULING
Μεταγράφημα παρουσίασης:

ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΔΙΕΡΓΑΣΙΩΝ

Χρονοπρογραμματισμός CPU - SCHEDULING Όταν περισσότερες, της μίας, διεργασίες είναι εκτελέσιμες, τότε πρέπει να αποφασίσει το λειτουργικό σύστημα ποια θα εκτελεστεί πρώτη (χρονοπρογραμματιστής). Αλγόριθμος χρονοπρογραμματισμού -> περίπλοκος στα συστήματα πολλών χρηστών και διαμοιρασμού χρόνου.

“Καλός” αλγόριθμος χρονοπρογραμματισμού - Στόχοι Δικαιοσύνη: κάθε διεργασία λαμβάνει δίκαιο ποσοστό χρήσης της CPU Αποδοτικότητα: CPU απασχολημένη για το 100% του χρόνου Χρόνος απόκρισης: ελαχιστοποιημένος για interactive users Κύκλος διεκπεραίωσης: ελαχιστοποιημένος Ρυθμός απόδοσης: διεκπεραιωμένες εργασίες/ μονάδα χρόνου Συνήθως, δεν μπορούν να ικανοποιηθούν όλα αυτά ταυτόχρονα

Κάθε διεργασία είναι μοναδική και απρόβλεπτη. Clock: περιοδικά προκαλεί διακοπή για να διασφαλιστεί ότι καμία διεργασία δεν εκτελείται για πολύ χρόνο. Σε κάθε διακοπή του ρολογιού, εκτελείται ο πυρήνας του OS και αποφασίζει αν η τρέχουσα εκτελούμενη διεργασία θα συνεχίσει, ή έχει ήδη χρησιμοποιήσει την CPU για αρκετό χρόνο και θα πρέπει να ανασταλεί η εκτέλεσή της (χρονοπρογραμματισμός προεκχώρησης). Εκτέλεσης μέχρι τέλους

Χρονοπρογραμματισμός εξυπηρέτησης εκ Περιτροπής Εκχωρείται σε κάθε διεργασία κβάντο χρόνου μέσα στα όρια του οποίου επιτρέπεται η εκτέλεσή της Εύκολα υλοποιήσιμος -> ο χρονοπρογραμματιστής διατηρεί λίστα εκτελέσιμων διεργασιών Μέγεθος του κβάντο χρόνου. Το μικρό κβάντο χρόνου προκαλεί πολλές εναλλαγές διεργασιών και μειώνει την αποδοτικότητα της CPU, Μεγάλο quantum  μεγάλος χρόνος απόκρισης για interactive χρήστες

Χρονοπρογραμματισμός προτεραιοτήτων Όλα τα process δεν έχουν την ίδια σπουδαιότητα Λαμβάνει υπόψη και εξωτερικούς παράγοντες στην χρονοδρομολόγηση  σε κάθε διεργασία ανατίθεται μια προτεραιότητα και εκτελείται η διεργασία με την υψηλότερη προτεραιότητα. Σε κάθε διακοπή ρολογιού  ο χρονοπρογραμματιστής μειώνει την προτεραιότητα της τρέχουσας διεργασίας που εκτελείται. Οι προτεραιότητες μπορούν να ανατεθούν στις διεργασίες στατικά ή δυναμικά. Σε πολλά συστήματα υπάρχουν αρκετά I/O-bound jobs. Αυτά πρέπει να ‘χουν μεγαλύτερη προτεραιότητα! Eτσι, θα πάρουν το CPU και πολύ σύντομα θα ζητήσουν I/O. Τότε το I/O process και τ' άλλα process που εκτελούν υπολογισμούς τρέχουν παράλληλα.  Αυτός ο παραλληλισμός μειώνει τον μέσο χρόνο απόκρισης και αυξάνει το throughput του συστήματος. Με το πέρασμα του χρόνου οι προτεραιότητες πρέπει να αλλάζουν. Αλλιώς μερικά processes δεν θα τρέξουν ποτέ

Πολλαπλές ουρές Πολλοί αλγόριθμοι χρησιμοποιήθηκαν για τον καταμερισμό διεργασιών σε κλάσεις προτεραιοτήτων Όταν μια διεργασία που περιμένει είσοδο από το τερματικό, αφυπνίζεται, εισάγεται στην ανώτερη κλάση προτεραιοτήτων. Όταν μια διεργασία που αναμένει μπλοκ δίσκου, γίνει έτοιμη εισάγεται στην δεύτερη. Όταν εκτελείται ακόμη, όταν τελείωσε το κβάντο του χρόνου της, αρχικά τοποθετείται στην τρίτη κλάση προτεραιοτήτων. Αν, όμως, κάτι τέτοιο επαναληφθεί πολλές φορές, χωρίς να ανασταλεί για είσοδο/ έξοδο, τότε οδηγείται στην τελευταία ουρά (μεγάλο κβάντο χρόνου). Ευνοούνται οι διαλογικοί χρήστες.

Η συντομότερη εργασία πρώτα Ενδείκνυται για εργασίες δέσμης  οι χρόνοι εκτέλεσής τους είναι προκαταβολικά γνωστοί. Όταν εξίσου σημαντικές εργασίες αναμένουν να ξεκινήσουν στην ουρά εισόδου, ο χρονοπρογραμματιστής χρησιμοποιεί πρώτα τη συντομότερη εργασία.

Η Μικρότερη Δουλειά Πρώτη σε Αλληλεπιδραστικά Περιβάλλοντα Μιας και το SJF ελαχιστοποιεί το χρόνο απόκρισης είναι επιθυμητό να το χρησιμοποιήσουμε και για αλληλεπιδραστικά συστήματα. Οι διαλογικές διεργασίες συνήθως ακολουθούν την εξής δομή εκτέλεσης: περιμένουν εντολή και την εκτελούν, εν συνεχεία περιμένουν την επόμενη εντολή και την εκτελούν, κοκ. Αν θεωρήσουμε την εκτέλεση κάθε εντολής σαν ξεχωριστή εργασία, τότε μπορούμε να ελαχιστοποιήσουμε τον συνολικό χρόνο απόκρισης, εκτελώντας την συντομότερη εργασία πρώτα. Το πρόβλημα είναι να εξακριβώσουμε ποια από τις εκτελέσιμες εργασίες είναι η συντομότερη κάθε φορά.