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

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

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

Transcript

1 Λειτουργίες (Μικρο)Πυρήνας υλοποίηση διεργασιών εξυπηρέτηση διακοπών και παγίδων υλοποίηση μηχανισμών συγχρονισμού και επικοινωνίας διανομή των διεργασιών στην ΚΜΕ Χαρακτηριστικά δεν είναι επανεισαγόμενος (τα προγράμματα του πυρήνα δε μοιράζονται σε περισσότερες από μία διεργασίες) λειτουργία σε κατάσταση συστήματος (προνομιούχο κατάσταση) με απαγόρευση διακοπών

2 Ενεργοποιείται όταν (Μικρο)Πυρήνας συμβεί μία (εξωτερική) διακοπή μία διεργασία προκαλέσει (εσωτερικά) μία παγίδα μία διεργασία εκτελέσει μία κλήση του συστήματος (πρωτογενή κλήση του πυρήνα) Αποτελείται από το σύστημα αντιμετώπισης των διακοπών το σύστημα αντιμετώπισης των παγίδων και των κλήσεων του επόπτη το διανομέα

3 Ιεραρχική οργάνωση δένδρου Οργάνωση διεργασιών οικογενειακό δένδρο (family tree) ή δένδρο δημιουργίας (creation tree) ή ομάδα διεργασιών ενός χρήστη (process group) διεργασία γονέας (parent process) διεργασίες παιδιά (children processes) - αδελφοί (brothers) -πρόγονοι (ancestors) - απόγονοι (descendants) Μία διεργασία που αναλαμβάνει ένα έργο δημιουργεί διεργασίες παιδιά κ.ο.κ. Οι διεργασίες παιδιά εκτελούν μέρη του έργου (κατα)μερισμός εργασίας (division of labour)

4 Οργάνωση διεργασιών ρίζα (root) δένδρου ή διερμηνευτής εντολών (command interpreter) ή φλοιός (shell) δημιουργεί διεργασίες-παιδιά για την εκτέλεση κάθε εντολής που πληκτρολογεί ο χρήστης, οι διεργασίες-παιδιά δημιουργούν διεργασίες-εγγόνια κ.ο.κ. μέχρις ότου να εκτελεστεί πλήρως το έργο οι διεργασίες πρόγονοι ελέγχουν συνήθως τους απογόνους τους

5 Πλεονεκτήματα ιεραρχικής οργάνωσης Οργάνωση διεργασιών απλούστευση μηχανισμών επικοινωνίας επικοινωνία μέσω κλάδων οικογενειακού δένδρου έλεγχος καταχώρισης πόρων οι διεργασίες παιδιά αποκτούν πόρους που τους παρέχουν οι διεργασίες-γονείς οι διεργασίες-γονείς προγραμματίζουν χρονικά τα παιδιά τους λογιστικοί λόγοι σχετικά ελεύθερη επικοινωνία ανεξάρτητος χρονοπρογραμματισμός

6 Εικόνα Διεργασιών περιοχή (τμήμα) κώδικα αποθήκευση επανεισαγόμενου κώδικα (εντολών) διεργασίας (μπορεί να μοιραστεί σε περισσότερες από μία διεργασίες) μόνο διαβάζεται και εκτελείται μέγεθος σταθερό και γνωστό μετά τη μεταγλώττιση και/ή σύνδεση του συστήματος

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

8 ελεύθερη περιοχή Εικόνα Διεργασιών η περιοχή στοίβας αυξάνεται προς μία κατεύθυνση η περιοχή σωρού ξεκινά από το άλλο άκρο της μνήμης που έχει καταχωρηθεί για τη διεργασία και αυξάνεται προς την αντίθετη κατεύθυνση η διεργασία υπερβαίνει τη διαθέσιμη μνήμη της όταν τα όρια των δύο αυτών περιοχών συναντηθούν

9 Εικόνα πολλών διεργασιών στη μνήμη περιοχές επανεισαγόμενου κώδικα διεργασιών περιοχές στοίβας κάθε διεργασία έχει τη δική της (ιδιωτική) στοίβα όταν οι περιοχές στοίβας των απογόνων μιας διεργασίας καταχωρούνται από την περιοχή της δικής της στοίβας τότε η στοίβα του γονέα ονομάζεται στοίβα κάκτου (cactus stack)

10 περιοχή σωρού Εικόνα πολλών διεργασιών στη μνήμη κάθε διεργασία πρέπει να προσπελάζει μόνο τις δικές της δυναμικές δομές αμοιβαίος αποκλεισμός προσπέλασης του σωρού ελεύθερη περιοχή ο μηδενισμός της δεν είναι απαραίτητα σφάλμα το σύστημα μπορεί να αναστείλει μια διεργασία μέχρις ότου μία άλλη να ελευθερώσει μία από τις περιοχές που τις έχουν καταχωρηθεί

11 Καταστάσεις διεργασιών (Γενικά) Μία διεργασία μπορεί να είναι σε μια από τις παρακάτω τρεις καταστάσεις: εκτελούμενη (running) από την ΚΜΕ ή τρέχουσα (current) έτοιμη (ready) να εκτελεστεί από την ΚΜΕ εμποδισμένη (blocked) περιμένοντας να συμβεί ένα γεγονός 1 εκτελούμενη ή τρέχουσα 3 εμποδισμένη 2 4 έτοιμη

12 Τέσσερις μεταστάσεις (transitions): Καταστάσεις διεργασιών (Γενικά) 1. η διεργασία έχει τελειώσει την εκτέλεσή της ή εμποδίζεται να προχωρήσει περιμένοντας να συμβεί ένα γεγονός 2. η διεργασία εξάντλησε το κβάντο χρόνου της 3. ο διανομέας επιλέγει την διεργασία και την (ξανά) διανέμει 4. η διεργασία απελευθερώνεται (συμβαίνει το γεγονός) Μια εκτελούμενη ή έτοιμη διεργασία ονομάζεται απελευθερωμένη (unblocked). Σύνολο διεργασιών = {απελευθερωμένων } + {εμποδισμένων} = ({εκτελούμενων} + {ετοίμων}) + {εμποδισμένων} {εκτελούμενων} <= πλήθος επεξεργαστών

13 Καταστάσεις διεργασιών (Λεπτομερέστερα) Mία διεργασία μπορεί επίσης να είναι ενεργός (active) ή ανενεργός (inactive), δηλαδή να έχει ανασταλεί (suspended). Εκτός των παραπάνω μεταστάσεων, μια ενεργός εκτελούμενη διεργασία μπορεί να μεταβεί η ίδια στις καταστάσεις ενεργός έτοιμη ή ενεργός εμποδισμένη μια ενεργός έτοιμη ή εμποδισμένη διεργασία μπορεί, εκτός των άλλων, να μεταβεί στις αντίστοιχες ανενεργές καταστάσεις, και αντίστροφα, από το γονέα της ή από το σύστημα. Τέλος μια (ενεργός ή ανενεργός) εμποδισμένη διεργασία μπορεί να καταλήξει στην κατάσταση του αδιεξόδου

14 Γενικά: Καταστάσεις διεργασιών εμποδισμένη κατάσταση: η ίδια η διεργασία έφερε τον εαυτό της στην κατάσταση αυτή περιμένει ένα μήνυμα ή ένα γεγονός κατάσταση έχει ανασταλεί: το σύστημα, o χρήστης στον οποίο ανήκει η διεργασία ή μια άλλη διεργασία ανάγκασε τη διεργασία να βρεθεί σ' αυτή την κατάσταση, π.χ. διαλογική εκσφαλμάτωση ^C από το χρήστη λόγοι διαχείρισης μνήμης

15 Καταστάσεις διεργασιών Εκτελέσιμη (runable) Απελευθερωμένη (unblocked) Εκτελούμενη (running) ή Τρέχουσα (current) Έτοιμη (ready) Ενεργός (active) Μη εκτελέσιμη (unrunable) Εμποδισμένη (blocked) Έχει ανασταλεί έτοιμη (suspended ready) Έχει ανασταλεί εμποδισμένη (suspended blocked) Έχει ανασταλεί (suspended)

16 Ιστορία/κύκλος ζωής (life history/cycle) διεργασίας μια διεργασία-γονέας (απ)αιτεί από το σύστημα τη δημιουργία μιας διεργασίας-παιδιού όσο δημιουργείται η διεργασία παιδί αυτή βρίσκεται στην εμποδισμένη κατάσταση (περιμένοντας τη δημιουργία της) μόλις δημιουργηθεί γίνεται έτοιμη και ειδοποιείται ο γονέας της όταν ολοκληρωθεί η εκτέλεση της βρίσκεται στην εμποδισμένη κατάσταση (περιμένοντας τη διαγραφή της από το σύστημα) και ειδοποιείται ο γονέας της

17 Δημιουργία διεργασιών Ιστορία/κύκλος ζωής διεργασίας Αρχικοποίηση συστήματος Αίτηση χρήστη για τη δημιουργία νέας διεργασίας Αίτηση διεργασίας-γονέα για τη δημιουργία διεργασίας-παιδιού με χρήση μιας κλήσης του συστήματος Κατανομή πόρων μεταξύ διεργασιών Διεργασία-γονέας και διεργασία παιδί μοιράζονται τους ίδιους πόρους η διεργασία-παιδί χρησιμοποιεί ένα υποσύνολο των πόρων της διεργασίας-γονέα διεργασία-γονέας και διεργασία-παιδί χρησιμοποιούν ανεξάρτητα μεταξύ τους διαφορετικούς πόρους

18 Εκτέλεση διεργασιών Ιστορία/κύκλος ζωής διεργασίας Διεργασία-γονέας και διεργασία-παιδί εκτελούνται (ψευδο)ταυτόχρονα Η διεργασία-γονέας μπορεί να περιμένει μέχρι ότου τελειώσει η εκτέλεση της η διεργασίαπαιδιού Διαγραφή διεργασιών Κανονική έξοδος (εθελοντική) Η διεργασία εκτελεί την τελευταία εντολή της ή αποτυγχάνει λόγω σφάλματος του προγράμματός της Οι πόροι της διεργασίας επιστρέφονται στο γονέα της ή στο σύστημα

19 Ιστορία/κύκλος ζωής διεργασίας Το σύστημα ή μια διεργασία-γονέας "σκοτώνει" μια διεργασία παιδί της (μη εθελοντική έξοδος) όταν: Η διεργασία-παιδί έχει υπερβεί τους πόρους που της παραχωρήθηκαν Ο χρήστης αποφασίσει τη διακοπή της (CTRL/C) Συμβεί ένα καταστροφικό σφάλμα του συστήματος

20 Περιβάλλον διεργασιών η εκτέλεση μιας διεργασίας από την ΚΜΕ μπορεί να διακόπτεται και να συνεχίζεται αργότερα. Αυτό επιτυγχάνεται με το να αποταμιεύονται οι απαραίτητες πληροφορίες για τη συνέχιση της εκτέλεσής της Οι πληροφορίες που είναι απαραίτητες για την εκτέλεση μιας διεργασίας αποτελούν το πτητικό περιβάλλον (volatile environment) ή την ομάδα συμφραζομένων (context block) της διεργασίας και περιέχει τα εξής: κατάσταση προγράμματος (program state) μετρητής προγράμματος άλλοι καταχωρητές πληροφορίες μνήμης καταχωρητές βάσης, ορίου ή συσχέτισης περιεχόμενα πίνακα τμημάτων και/ή σελίδων

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

22 Αποθήκευση ομάδας συμφραζομένων Μόνιμα στην κύρια μνήμη Μεγάλη μνήμη Λίγες διεργασίες Μικρός χρόνος μεταγωγής Γενικά: περιβάλλοντα λίγων διεργασιών Στο δίσκο Κύριο τμήμα (master segment) ή τμήμα κατάστασης διεργασίας (Task State Segment-TSS, στους 80x86) Φόρτωση στην κύρια μνήμη πριν αρχίσει η εκτέλεση της διεργασίας Χρόνος μεταγωγής συμφραζομένων Χρόνος επιβάρυνσης Εξαρτώμενος από την υποστήριξη του υλισμικού

23 Περιγραφητής διεργασίας (Process descriptor) ή Ομάδα Ελέγχου Διεργασίας (Process Control Block, PCB) Περιλαμβάνει: το περιβάλλον το ίδιο αν είναι αποθηκευμένο στην κύρια μνήμη τη διεύθυνση του κύριου τμήματος αν αυτό φορτώνεται από τη βοηθητική μνήμη την ταυτότητα της διεργασίας την κατάστασή της πληροφορίες συγχρονισμού και επικοινωνίας χώρο διευθύνσεων (κώδικα και δεδομένων) κ.ά.

24 Περιγραφητής Διεργασίας ή Ομάδα Ελέγχου της Διεργασίας

25 Πίνακας Περιγραφητών Διεργασιών (Process Descriptor Table, PDT) περιλαμβάνει τους περιγραφητές όλων των διεργασιών που βρίσκονται στο σύστημα οργανώνεται σα μία γραμμική λίστα μίας ή δύο κατευθύνσεων ή σαν ένας πίνακας περιλαμβάνει τις παρακάτω ουρές: ουρά της ΚΜΕ (processor queue) ή λίστα ετοίμων διεργασιών (ready list) δηλαδή τις εκτελέσιμες διεργασίες (εκτελούμενες και έτοιμες)

26 Πίνακας Περιγραφητών Διεργασιών Ένα υποσύνολο της λίστας αυτής ονομάζεται λίστα καταλλήλων (eligible list) ή λίστα του διανομέα (dispatcher list), δηλαδή τις διεργασίες που μπορεί να διανεμηθούν (εκτελεστούν) στο τρέχον χρονικό μεσοδιάστημα διάφορες ουρές αναμονής των εμποδισμένων και/ή αναστελλόμενων διεργασιών ανάλογα με το λόγο εμποδισμού ή αναστολής τους

27 Ταυτότητες διεργασιών H ταυτότητα/αναγνωριστικό (process identifier, pid) μιας διεργασίας πρέπει να είναι μοναδική Εφόσον οι διεργασίες δημιουργούνται και διαγράφονται δυναμικά, δεν αρκεί ο δείκτης της θέσης του περιγραφητή μιας διεργασίας για τον προσδιορισμό της Το σύστημα δίνει ένα νέο αριθμό διεργασίας (process number) στην κάθε νέα διεργασία που δημιουργείται Έτσι η ταυτότητα μιας διεργασίας μπορεί να είναι το ζεύγος (δείκτης περιγραφητή, αριθμός διεργασίας)

28 Επικοινωνία διεργασιών με ανταλλαγή μηνυμάτων Για να επικοινωνήσουν δύο διεργασίες απαιτείται ένα κανάλι επικοινωνίας (communication channel) δηλαδή ένας ενταμιευτής ή μία ουρά μηνυμάτων Έτσι η χωρητικότητα ενός καναλιού επικοινωνίας μπορεί να οριστεί ως το πλήθος των μηνυμάτων που μπορούν να παραμείνουν σ αυτό, ή ως το μέγεθος ενταμιευτή, ή ως το μήκος της ουράς των μηνυμάτων που συνδέεται με το κανάλι Διακρίνουμε δύο είδη επικοινωνίας: την άμεση (direct) και την έμμεση (indirect) επικοινωνία

29 Άμεση επικοινωνία διεργασιών Μεταξύ κάθε ζεύγους διεργασιών που επικοινωνούν ορίζεται ένα κανάλι επικοινωνίας Κάθε κανάλι σχετίζεται με δύο διεργασίες μόνο Κάθε ζεύγος διεργασιών συνδέεται μ ένα μόνο κανάλι Η επικοινωνία μεταξύ των διεργασιών αυτών μπορεί να είναι μίας κατεύθυνσης (unidirectional) ή δύο κατευθύνσεων (bidirectional) Το κάθε κανάλι ορίζεται αυτόματα από το σύστημα

30 Άμεση επικοινωνία διεργασιών Συμμετρική (symmetric) αναφορά ο αποστολέας αναφέρεται ονομαστικά στον παραλήπτη send_message (P, μήνυμα) ο παραλήπτης αναφέρεται ονομαστικά στον αποστολέα receive_message (Q, μήνυμα); όπου P, Q αναγνωριστικά/ταυτότητες παραλήπτη/αποστολέα Ασύμμετρη (asymmetric) αναφορά ο αποστολέας αναφέρεται ονομαστικά στον παραλήπτη send_message (P, μήνυμα); ο παραλήπτης δέχεται μήνυμα από οποιοδήποτε αποστολέα receive_message (pid, μήνυμα); όπου P αναγνωριστικό/ταυτότητα παραλήπτη και pid παίρνει ως τιμή την ταυτότητα του αποστολέα

31 Άμεση επικοινωνία διεργασιών Μειονεκτήματα άμεσης επικοινωνίας η αλλαγή της ταυτότητας μιας διεργασίας συνεπάγεται την αλλαγή όλων των αναφορών προς τη διεργασία αυτή είναι αδύνατη η ξεχωριστή μετάφραση των προγραμμάτων των διεργασιών και στα κατανεμημένα συστήματα είναι άγνωστες ταυτότητες διεργασιών που εκτελούνται στους άλλους (απομακρυσμένους) υπολογιστές

32 Έμμεση επικοινωνία διεργασιών με γραμματοκιβώ\-τια (mailboxes) ή ενταμιευτές (ουρές) μηνυμάτων Τοποθετούνται και παραλαμβάνονται μηνύματα Χρειάζεται το αναγνωριστικό/ταυτότητα κάθε γραμματοκιβωτίου Μια διεργασία μπορεί να επικοινωνεί με μία άλλη διεργασία μέσω διαφορετικών γραμματοκιβωτίων Δύο διεργασίες μπορούν να επικοινωνήσουν μόνο αν μοιράζονται τουλάχιστον ένα γραμματοκιβώτιο send_message (M, μήνυμα); receive_message (Μ, μήνυμα); όπου Μ είναι το αναγνωριστικό/ταυτότητα ενός γραμματοκιβωτίου

33 Έμμεση επικοινωνία διεργασιών Κανάλι επικοινωνίας Μεταξύ κάθε ζεύγους διεργασιών που επικοινωνούν ορίζεται ένα κανάλι επικοινωνίας μόνο αν αυτές μοιράζονται ένα γραμματοκιβώτιο ένα κανάλι επικοινωνίας μπορεί να σχετίζεται με περισσότερες από δύο διεργασίες Μεταξύ κάθε ζεύγους διεργασιών μπορεί να υπάρχουν διάφορα κανάλια (το καθένα αντιστοιχεί σ ένα γραμματοκιβώτιο) Η επικοινωνία μεταξύ των διεργασιών αυτών μπορεί να είναι μίας κατεύθυνσης ή δύο κατευθύνσεων

34 Έμμεση επικοινωνία διεργασιών Όταν ο ιδιοκτήτης του γραμματοκιβωτίου είναι η διεργασία τότε αυτό είναι συνδεδεμένο με αυτή έχει οριστεί ως μέρος της μόνο η διεργασία μπορεί να παραλάβει μηνύματα από αυτό το γραμματοκιβώτιο οι υπόλοιπες διεργασίες μπορούν μόνο να στείλουν σ' αυτό το γραμματοκιβώτιο (εφόσον γνωρίζουν την ταυτότητά του) ΠΡΟΒΛΗΜΑΤΑ Όταν η διεργασία παύσει να υπάρχει, το γραμματοκιβώτιο παύει επίσης να υπάρχει Αν μια άλλη διεργασία στείλει μήνυμα σ' ένα γραμματοκιβώτιο που δεν υπάρχει πρέπει να ειδοποιηθεί γι' αυτό

35 Έμμεση επικοινωνία διεργασιών Όταν ο ιδιοκτήτης του γραμματοκιβωτίου είναι το Λ.Σ. (π.χ. UNIX) το γραμματοκιβώτιο είναι ανεξάρτητο από τις διεργασίες δεν είναι συνδεμένο με καμία συγκεκριμένη διεργασία Παρέχονται στις διεργασίες κλήσεις του συστήματος για να: Συνδεθούν με ένα γραμματοκιβώτιο Αποσυνδεθούν από ένα γραμματοκιβώτιο

36 Έμμεση επικοινωνία διεργασιών ΠΡΟΒΛΗΜΑΤΑ Τερματισμός αποστολέα, προτού στείλει ένα μήνυμα που περιμένει κάποιος παραλήπτης (ο παραλήπτης θα παραμείνει για πάντα εμποδισμένος) Τερματισμός παραλήπτη, προτού παραλάβει τα μηνύματα που του έχει στείλει κάποιος αποστολέας (αν ο αποστολέας χρειάζεται απάντηση, τότε θα παραμείνει για πάντα εμποδισμένος) ΛΥΣΕΙΣ Τερματισμός (από το Λ.Σ.) του παραλήπτη/αποστολέα Eιδοποιήση (από το Λ.Σ.) του αποστολέα/παραλήπτη ότι ο παραλήπτης/αποστολέας έχει παύσει να υπάρχει

37 Έμμεση επικοινωνία διεργασιών ΠΡΟΒΛΗΜΑΤΑ+ Αποκομιδή απορριμμάτων (garbage collection), δηλαδή συλλογή και διαγραφή (από το Λ.Σ.) των μηνυμάτων που δεν έχουν καταναλωθεί Απώλεια μηνύματος/των Συστήματα ενός επεξεργαστή (μεταβίβαση μηνυμάτων μέσω κοινής μνήμης) Απώλεια μηνύματος/των συνεπάγεται την αποτυχία ολόκληρου του συστήματος Κατανεμημένα συστήματα-δίκτυα (μεταβίβαση μηνυμάτων μέσω γραμμών επικοινωνίας) Πρωτόκολλα ανοχής σφαλμάτων

38 Διαχείριση χρονομέτρου Ένα χρονόμετρο είναι ένα κύκλωμα που παράγει περιοδικές διακοπές/παλμούς και χρησιμοποιείται από το Λ.Σ. για: Να διατηρεί την ώρα (της ημέρας) Να απαγορεύει την χρήση της ΚΜΕ παραπάνω από ένα συγκεκριμένο τεμάχιο (κβάντο) χρόνου Να διατηρεί ξυπνητήρια (ALARMs) για τις διεργασίες που έχουν ζητήσει να αφυπνιστούν μια ορισμένη ώρα Να εξυπηρετεί την ιχνηλάτηση (tracing) της εκτέλεσης διεργασιών από προγράμματα παρακολούθησης (monitoring programs) Λογιστικούς σκοπούς Μέτρηση των χρόνων χρήσης των πόρων Χρέωση των διεργασιών Συλλογή στατιστικών στοιχείων

39 Διαχείριση χρονομέτρου Από ειδικό διαχειριστή χρονομέτρου αύξηση του χρόνου επιβάρυνσης του συστήματος οι παραπάνω λειτουργίες εκτελούνται πολλές φορές ανά δευτερόλεπτο Από τον πυρήνα διαδικασία αντιμετώπισης διακοπών χρονομέτρου πολύ γρήγορη

40 Διατήρηση ώρας Διαχείριση χρονομέτρου σε μια μεταβλητή τύπου longint (32 bits) αυξάνεται κατά 1 σε κάθε παλμό του χρονομέτρου ώρα εκφράζεται σε αριθμό διακοπών από 1/1/1970 (e.g. UNIX) Πρόβλημα: υπερχείλιση μεταβλητής Λύσεις ώρα εκφράζεται σε διακοπές από την τελευταία εκκίνηση (bootstrap) του συστήματος χρήση μεταβλητής μήκους 64 bits χρήση μεταβλητής μήκους 32 bits, αλλά η ώρα να εκφράζεται σε δευτερόλεπτα αντί διακοπές χρονομέτρου 2 32 δευτερόλεπτα > 136 χρόνια ανάγκη χρήσης μιας δεύτερης μεταβλητής που αυξάνεται κατά 1 σε κάθε διακοπή χρονομέτρου

41 Διαχείριση χρονομέτρου (Κατα)μερισμός ΚΜΕ μεταξύ διεργασιών η εκτέλεση της τρέχουσας διεργασίας διακόπτεται όταν έχει παρέλθει ένα τεμάχιο (κβάντο) χρόνου μεταβλητή-μετρητής (counter) μετρητής παίρνει αρχική τιμή από το διανομέα προκαλείται διακοπή για κάθε παλμό του χρονομέτρου σε κάθε παλμό χρονομέτρου ο μετρητής ελαττώνεται κατά 1 όταν πάρει την τιμή 0, τότε σημαίνεται μια άλλη διακοπή και η τρέχουσα διεργασία αφαιρείται από την κεφαλή της ουράς του διανομέα και εισάγεται σε άλλο σημείο της ουράς αυτής (προτεραιότητες) ο διανομέας διανέμει μια άλλη εκτελέσιμη διεργασία

42 Ξυπνητήρια Διαχείριση χρονομέτρου Το Λ.Σ. αφυπνίζει μια διεργασία όταν περάσει ένα ορισμένο χρονικό διάστημα μεσοχρόνιος χρονοπρογραμματιστής time-outs (εκπνοές χρόνου) διαχειριστής δίσκου αποστολέας μηνύματος διεργασίες χρήστη Μια μεταβλητή στο περιβάλλον κάθε διεργασίας που ελαττώνεται κατά 1 σε κάθε διακοπή του χρονομέτρου

43 Ξυπνητήρια Διαχείριση χρονομέτρου Αναζήτησή από το Λ.Σ. της τιμής της στους περιγραφητές όλων των διεργασιών θα προκαλούσε πολύ μεγάλη χρονική επιβάρυνση. Έτσι χρησιμοποιείται συνήθως μια Λίστα αφύπνισης Ταξινομημένη σε αύξουσα σειρά χρόνων αφύπνισης Περιεχόμενα κάθε κόμβου της λίστας: διαφορά του χρόνου αφύπνισης (σε παλμούς χρονομέτρου) από το χρόνο του προηγούμενου κόμβου ταυτότητα της διεργασίας Χρησιμοποιείται μια μεταβλητή-μετρητής που παίρνει ως τιμή το χρόνο αφύπνισης της διεργασίας που βρίσκεται στην κεφαλή της λίστας

44 Ξυπνητήρια Διαχείριση χρονομέτρου Ο μετρητής ελαττώνεται κατά 1 σε κάθε παλμό του χρονομέτρου Όταν πάρει την τιμή 0 τότε Η κεφαλή της λίστας και όλες οι διεργασίες που έχουν ίσους χρόνους με αυτήν αφυπνίζονται και αφαιρούνται από τη λίστα Ο μετρητής παίρνει ως τιμή το χρόνο αφύπνισης της διεργασίας που βρίσκεται στη νέα κεφαλή της λίστας κ.ο.κ.

45 Διαχείριση χρονομέτρου Ιχνηλάτηση - παρακολούθηση εκτέλεσης διεργασιών Εντοπισμός σημείων της διεργασίας (χρήστη ή συστήματος) που ξοδεύουν περισσότερο χρόνο εκτέλεσης Ιστόγραμμα των τιμών που παίρνει ο μετρητής του προγράμματος της διεργασίας Ειδικό πεδίο στο περιβάλλον της διεργασίας που προσδιορίζει αν η διεργασία παρακολουθείται Σε κάθε παλμό του χρονομέτρου το σύστημα αποθηκεύει την τιμή του μετρητή του προγράμματος της διεργασίας (μείον το μήκος της τελευταίας εντολής που εκτελέστηκε)

46 Λογιστική χρέωση Διαχείριση χρονομέτρου Χρόνος εκτέλεσης διεργασίας διατηρείται σ ένα πεδίο/μεταβλητή στο περιβάλλον της Σε κάθε διακοπή του χρονομέτρου αυξάνεται η τιμή της κατά 1 Έτσι η διεργασία χρεώνεται για ΟΛΕΣ τις διακοπές που εξυπηρετούνται κατά την εκτέλεσή της (όσο αυτή είναι τρέχουσα) Άδικη χρέωση: ο χρόνος εξυπηρέτησης διακοπών πρέπει να χρεώνεται στις διεργασίες που αφορούν στις διακοπές αυτές πολλές διακοπές δεν αφορούν στις διεργασίες χρηστών αλλά στις διεργασίες του συστήματος

47 Ενεργοποίηση/αφύπνιση διεργασιών Αφύπνιση με χρήση σηματοφορέων (π.χ. μεσοχρόνιος χρονοπρογραμματιστής) Σε κάθε διεργασία αντιστοιχείται ένας ιδιωτικός (private) σηματοφoρέας "ενεργοποίηση" (activation) Η διεργασία μπορεί να εκτελέσει την εντολή wait(activation) Ο πυρήνας ή ακριβέστερα μια διαδικασία εξυπηρέτησης μιας παγίδας ή μιας διακοπής μπορεί να εκτελέσει την εντολή signal(activation) ΑΛΛΑ η διεργασία μπορεί να αφυπνίζεται είτε όπως παραπάνω είτε λαμβάνοντας ένα μήνυμα από κάποιον αποστολέα. Έτσι χρειάζεται μια γενικότερη της receive_message(p, m) διαδικασία, η receive_event(p, m)

48 Ενεργοποίηση/αφύπνιση διεργασιών Όταν μια διεργασία καλεί τη receive_event Αν ο σηματοφορέας activation έχει την τιμή 1, τότε η διεργασία συνεχίζει την εκτέλεση της Ειδάλλως (αν ο σηματοφορέας activation έχει την τιμή 0, τότε η διεργασία καλεί τη receive_message Αν δεν υπάρχει μήνυμα για να παραλάβει η διεργασία τότε εμποδίζεται περιμένοντας για γεγονός (waiting for event), δηλαδή είτε για ενεργοποίηση είτε για μήνυμα Πλεονέκτημα Ομοιογενείς μηχανισμοί επικοινωνίας μεταξύ διεργασιών μεταξύ τους διεργασιών και διαδικασιών εξυπηρέτησης διακοπών και παγίδων

49 Επιστροφή από τις διαδικασίες εξυπηρέτησης διακοπών και παγίδων Μια παγίδα ή μια διακοπή οδηγεί στην εκτέλεση μιας διαδικασίας εξυπηρέτησής της Η εκτέλεση μιας τέτοιας διαδικασίας μπορεί να αφυπνίσει μια διεργασία με μεγαλύτερη προτεραιότητα από την εκτελούμενη Η ΚΜΕ πρέπει να δοθεί στη διεργασία που έχει την μεγαλύτερη προτεραιότητα Ο διανομέας είναι το απόσπασμα του προγράμματος που καταχωρεί την ΚΜΕ ΑΡΑ οι διαδικασίες των διακοπών και των παγίδων πρέπει να επιστρέφουν στο διανομέα

50 Επιστροφή από τις διαδικασίες εξυπηρέτησης διακοπών και παγίδων Σε πολλά συστήματα αυτό γίνεται αυτόματα από το υλισμικό με χρήση ενός ειδικού δυφίου που ονομάζεται σημαία παγίδας κατάστασης χρήστη (user mode trap) μια διαδικασία εξυπηρέτησης παγίδας ή διακοπής που αφυπνίζει μια διεργασία φορτώνει τη σημαία της παγίδας κατάστασης του χρήστη με την τιμή true (1) η διαδικασία εξυπηρέτησης επιχειρεί να επιστρέψει στην κατάσταση του χρήστη εκτελώντας μια εντολή eret αν η σημαία παγίδα κατάστασης χρήστη είναι ίση με 1, τότε δημιουργείται μια νέα παγίδα που μεταφέρει τον έλεγχο στο διανομέα

51 Υλοποίηση σηματοφορέων Οι υπολογιστές δε διαθέτουν εντολές που να επεξεργάζονται γενικούς σηματοφορείς Οι γενικοί σηματοφορείς μπορούν ν αντικατασταθούν από δυαδικούς σηματοφορείς και μη αρνητικούς μετρητές, αλλά Οι περισσότεροι υπολογιστές δεν διαθέτουν ούτε εντολές που να επεξεργάζονται δυαδικούς σηματοφορείς Έτσι, σε συστήματα ενός επεξεργαστή η υλοποίηση των wait(s) και signal(s) επιτυγχάνεται με απαγόρευση των διακοπών

52 Υλοποίηση σηματοφορέων wait(s) di lw $t1,s bne $t1,$0,l κατάσταση τρέχουσας διεργασίας γίνεται εμποδισμένη; αφαίρεσε τον περιγραφητή της διεργασίας από την ουρά του διανομέα; πρόσθεσέ τον στο σύνολο (ή στο τέλος της ουράς) των διεργασιών που είναι εμποδισμένες πάνω στον S; L: sw $0,S eret

53 Υλοποίηση σηματοφορέων signal(s) di if (υπάρχουν εμποδισμένες διεργασίες στο σύνολο (ουρά) { αφαίρεσε τον περιγραφητή μιας διεργασίας (της διεργασίας που βρίσκεται στην κεφαλή της ουράς του S) από το σύνολο (την ουρά) των εμποδισμένων πάνω στον S; κατάσταση διεργασίας = έτοιμη; πρόσθεσέ τον περιγραφητή της διεργασίας στην ουρά του διανομέα; } else { li $t1,1 sw $t1,s } eret του S)

54 Υλοποίηση σηματοφορέων Οι παραπάνω υλοποιήσεις πρέπει είναι όσο το δυνατό ταχύτερες χρόνος εκτέλεσης διαδικασιών υλοποίησης < χρόνου κρίσης των περιφερειακών συσκευών διακοπές της ΚΜΕ (π.χ. διακοπή ρεύματος, σφάλματα ισοτιμίας μνήμης) πρέπει να επιτρέπονται αν συμβούν δεν εξασφαλίζεται ο αμοιβαίος αποκλεισμός ο αμοιβαίος αποκλεισμός δεν μπορεί να εξασφαλιστεί με άπειρες ανακυκλώσεις, γιατί τότε η (μία) ΚΜΕ θα δεσμευόταν για πάντα

55 Χρονοπρογραμματισμός ΚΜΕ Διανομέας (Dispatcher) Διανομέας βραχυχρόνιος χρονοπρογραμματιστής της ΚΜΕ εκτελείται πολύ συχνά (Οms), γι αυτό πρέπει να είναι απλούστατος (πολύ γρήγορος) παίρνει την πρώτη διεργασία από την ουρά του και την διανέμει στην ΚΜΕ

56 Διαχειριστής διεργασιών (βλ. Κεφ. 9) μεσοχρόνιος χρονοπρογραμματιστής της ΚΜΕ εκτελείται πολύ αραιότερα (Οsec) προετοιμάζει την ουρά του διανομέα καθορίζει τις προτεραιότητες των διεργασιών ταξινομεί τους περιγραφητές των διεργασιών ανάλογα με την προτεραιότητά τους στη λίστα ετοίμων διεργασιών καθορίζει το βαθμό του πολυπρογραμματισμού, δηλαδή πόσες από αυτές τις διεργασίες στη λίστα των ετοίμων μπορεί να διανεμηθούν μέχρι την επόμενη ενεργοποίησή του (μεσοδιάστημα χρόνου) οι διεργασίες αυτές αποτελούν την ουρά του διανομέα ή το σύνολο καταλλήλων (eligible set) διεργασιών, δηλαδή το σύνολο των διεργασιών που μπορούν να διανεμηθούν στο επόμενο μεσοδιάστημα

57 Διανομέας Κριτήρια σχεδιασμού ελαχιστοποίηση χρόνου επιβάρυνσης που απαιτείται για τη διανομή των διεργασιών (μεταγωγή των συμφραζομένων τους) γρήγορη αντίδραση στις μεταβολές κατάστασης (εκτέλεση της πιο κρίσιμης διεργασίας αντικρουόμενα κριτήρια Κατηγορίες διεργασιών περιορισμένες από την ΚΜΕ (CPU bound processes) (a) απαιτήσεις ΚΜΕ >> απαιτήσεις Ε/Ε περιορισμένες από Ε/Ε (Ι/Ο bound processes) (b) απαιτήσεις Ε/Ε >> απαιτήσεις ΚΜΕ

58 Κατηγορίες διεργασιών Διανομέας

59 ΔΥΟ ΑΚΡΑΙΟΙ ΑΛΓΟΡΙΘΜΟΙ Διανομέας Μη διακοπτόμενη διανομή (non-preemptive dispatching) Μια διεργασία χρησιμοποιεί την ΚΜΕ μέχρις ότου εμποδιστεί Αν ελευθερωθεί μια διεργασία με μεγαλύτερη προτεραιότητα τότε αυτή περιμένει μέχρι να απελευθερωθεί η ΚΜΕ Μικρός χρόνος επιβάρυνσης (μεταγωγή συμφραζομένων) Αργή αντίδραση στις αλλαγές κατάστασης διεργασιών Καλή ρυθμαπόδοση για τις περιορισμένες από την ΚΜΕ διεργασίες Καλή επιλογή μόνο αν οι διεργασίες ελευθερώνουν πολύ γρήγορα την ΚΜΕ (π.χ. διεργασίες συστήματος)

60 Διακοπτόμενη διανομή (preemptive dispatching) Διανομέας Μια διεργασία χρησιμοποιεί την ΚΜΕ, μέχρις ότου να ελευθερωθεί μία πιο κρίσιμη διεργασία Αν ελευθερωθεί μια διεργασία με μεγαλύτερη προτεραιότητα αυτή αποκτά αμέσως την ΚΜΕ Μεγαλύτερος χρόνος επιβάρυνσης Γρήγορη απόκριση στις διεργασίες που έχουν μεγάλη προτεραιότητα Πιθανότητα μονοπώλησης της ΚΜΕ από περιορισμένες από την ΚΜΕ διεργασίες με μεγάλη προτεραιότητα η αντικατάσταση μιας διεργασίας από μια άλλη της ίδιας περίπου προτεραιότητας ίσως δεν αξίζει τον κόπο

61 Διανομέας ΣΥΜΒΙΒΑΣΜΟΣ ανάμεσα στους δύο προηγούμενους αλγόριθμους Τεμαχισμός χρόνου (time-slicing) Μια διεργασία χρησιμοποιεί την ΚΜΕ για ένα ορισμένο τεμάχιο χρόνου (time slice), γνωστό και ως κβάντο χρόνου (quantum time) τεμάχιο χρόνου είναι το μέγιστο χρονικό διάστημα που μια διεργασία μπορεί να χρησιμοποιήσει την ΚΜΕ Διανέμονται μόνο οι κατάλληλες διεργασίες βαθμός πολυπρογραμματισμού αποφυγή αλωνίσματος μνήμης

62 Μετά την διανομή επιτρέπονται οι διακοπές Διανομέας Η ουρά του διανομέα μπορεί να είναι οργανωμένη σε διαφορετικές ουρές από το διαχειριστή ΚΜΕ ανάλογα με προτεραιότητα απαιτήσεις πόρων χρόνο αναμονής Αυτό δεν επηρεάζει τον παραπάνω αλγόριθμο του διανομέα

63 Διανομέας Αλγόριθμος διανομέα (επιστροφή μετά από διακοπή η παγίδα) 0. Αν δεν υπάρχει κατάλληλη διεργασία (όλες οι διεργασίες ή είναι εμποδισμένες ή έχουν ανασταλεί ή και τα δύο), τότε Επίτρεψε τις διακοπές Περίμενε (δηλαδή εκτέλεσε την εντολή while(true); ή εκτέλεσε μια μηδενική ή μια διεργασία αναμονής, που κάνει αυτή τη δουλειά)

64 Διανομέας Αλγόριθμος διανομέα (επιστροφή μετά από διακοπή η παγίδα) 1. Αν η εκτελέσιμη διεργασία με τη μεγαλύτερη προτεραιότητα είναι η τρέχουσα (αυτή δηλαδή που διακόπηκε ή που δημιούργησε την παγίδα), τότε 2. Επανάλαβε την εκτέλεσή της Επίστρεψε τον έλεγχο στην τιμή της λέξης κατάστασης του προγράμματος που είχε αποθηκευθεί Επίτρεψε τις διακοπές

65 Διανομέας 3. Αν η εκτελέσιμη διεργασία με τη μεγαλύτερη προτεραιότητα δεν είναι η τρέχουσα, τότε 3.1. Εκτέλεσε τη μεταγωγή των συμφραζομένων αποταμίευσε το περιβάλλον της τρέχουσας διεργασίας επανάφερε το περιβάλλον της πιο κρίσιμης διεργασίας 3.2. Κάνε την πιο κρίσιμη διεργασία τρέχουσα και επανάλαβε την εκτέλεσή της Επίστρεψε τον έλεγχο στην τιμή της λέξης κατάστασης προγράμματος που επαναφέρθηκε Επίτρεψε διακοπές

66 Ιεραρχική οργάνωση δένδρου διεργασία init Διεργασίες στο σύστημα UNIX ρίζα του δένδρου όλες οι διεργασίες χρηστών είναι απόγονοί της βρίσκεται στο ευρετήριο /etc κι έχει pid=1 διαβάζει το αρχείο /etc/ttys (terminals) δημιουργεί διεργασίες getty για κάθε terminal αποκοιμιέται

67 διεργασία getty Διεργασίες στο σύστημα UNIX περιμένει να διαβάσει το όνομα ενός χρήστη δημιουργεί μια διεργασία login μεταβιβάζει το όνομα του χρήστη στη διεργασία login διεργασία login περιμένει να διαβάσει το σύνθημα χρήστη το κρυπτογραφεί (encrypts it) το συγκρίνει με την αντίστοιχη κρυπτογραφημένη συμβολοσειρά του αρχείου /etc/passwd αν η σύγκριση πετύχει, δημιουργεί μια διεργασία φλοιό (π.χ. csh)

68 διεργασία login Διεργασίες στο σύστημα UNIX δίνει στο φλοιό αυτό: το αναγνωριστικό uid του χρήστη (αρχείο /etc/passwd) το αναγνωριστικό της πρώτης ομάδας gid του χρήστη (αρχείο /etc/group) διεργασία φλοιός διερμηνευτής εντολών η ρίζα όλων των διεργασία του χρήστη

69 Διεργασίες στο σύστημα UNIX Πίνακας περιγραφητών Διεργασιών (Process Table) σταθερού μεγέθους ορίζεται κατά τη σύνδεση (linking) του συστήματος η λίστα ετοίμων είναι μία γραμμική λίστα δύο διευθύνσεων και διαμένει μόνιμα στην κύρια μνήμη ο περιγραφητής διεργασίας ονομάζεται δομή διεργασίας (process structure) και περιέχει: δείκτες προς τα τμήματα της διεργασίας Τμήμα κώδικα = Τμήμα κειμένου (text segment) Τμήμα δεδομένων χρήστη Περιβάλλον = Τμήμα δεδομένων συστήματος

70 Εικόνα διεργασίας (process image) στο UNIX

71 Τμήμα κειμένου μπορεί μόνο να εκτελεστεί (execute only) Διεργασίες στο σύστημα UNIX Πίνακας περιγραφητών τμημάτων Κειμένων (Text Table) σταθερού μήκους ορίζεται κατά τη σύνδεση του συστήματος διαμένει μόνιμα στην κύρια μνήμη

72 Διεργασίες στο σύστημα UNIX Περιγραφητής (επανεισαγόμενου) τμήματος κειμένου διεργασίας ονομάζεται Δομή Κειμένου (Text Structure) και περιέχει: διεύθυνση του πίνακα σελίδων του τμήματος στη βοηθητική μνήμη διεύθυνση του τμήματος στην κύρια μνήμη (αν είναι φορτωμένο) πλήθος των διεργασιών που μοιράζονται το τμήμα αν πλήθος = 0, τότε η μνήμη και το αντίστοιχο στοιχείο του πίνακα των τμημάτων ελευθερώνονται δείκτη της κεφαλής της λίστας των διεργασιών που μοιράζονται το τμήμα αυτό

73 Τμήμα δεδομένων χρήστη Διεργασίες στο σύστημα UNIX ανταλλάξιμο τμήμα μπορεί να διαβαστεί και να μετατραπεί (read/write) Τμήμα σωρού αυξάνεται προς τα κάτω αποθηκεύει τα δεδομένα του σωρού Τμήμα στοίβας αρχίζει στην τελευταία διεύθυνση του εικονικού χώρου διευθύνσεων αυξάνεται προς τα πάνω αποθηκεύει τα δεδομένα της στοίβας

74 Διεργασίες στο σύστημα UNIX Τμήμα δεδομένων του συστήματος (Περιβάλλον) ανταλλάξιμο τμήμα προστατευόμενο τμήμα η διεργασία δεν μπορεί ν αναφερθεί σ αυτό όταν εκτελείται στην κατάσταση χρήστη δομή χρήστη (user structure) = περιβάλλον και περιέχει: περιεχόμενα των καταχωρητών περιγραφητές των ανοικτών αρχείων δεδομένα λογιστικής φύσεως κ.λπ. στοίβα για τη φάση συστήματος διεργασίας χρησιμοποιείται από μια διεργασία του συστήματος που κλήθηκε από τη διεργασία χρήστη

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

Λειτουργικά Συστήματα (Λ/Σ) Λειτουργικά Συστήματα (Λ/Σ) Βασικές Έννοιες Λειτουργικών Συστημάτων Βασίλης Σακκάς 13/11/2013 1 ΒασικέςΈννοιεςΛ/Σ Η επικοινωνία μεταξύ Λ/Σ και των προγραμμάτων του χρήστη γίνεται μέσω του συνόλου των «εκτεταμένων

Διαβάστε περισσότερα

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

Λειτουργικά Συστήματα. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα Λειτουργικά Συστήματα Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα Στέργιος Παλαμάς, Υλικό Μαθήματος «Λειτουργικά Συστήματα», 2015-2016 Κεφάλαιο 4: Διεργασίες Πρόγραμμα Πρόγραμμα 1 Πρόγραμμα

Διαβάστε περισσότερα

1. Εισαγωγή. Λειτουργικά Συστήματα Η/Υ. Διεργασίες. Ορισμός ΚΕΦΑΛΑΙΟ 3 - ΔΙΕΡΓΑΣΙΕΣ. Κεφάλαιο 3 «Διεργασίες»

1. Εισαγωγή. Λειτουργικά Συστήματα Η/Υ. Διεργασίες. Ορισμός ΚΕΦΑΛΑΙΟ 3 - ΔΙΕΡΓΑΣΙΕΣ. Κεφάλαιο 3 «Διεργασίες» 1. Εισαγωγή Λειτουργικά Συστήματα Η/Υ Κεφάλαιο 3 «Διεργασίες» Διδάσκων: Δ Λιαροκάπης Διαφάνειες: Π. Χατζηδούκας Η έννοια της διεργασίας (process) είναι θεμελιώδης για την κατανόηση του τρόπου με τον οποίο

Διαβάστε περισσότερα

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

Διεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1 Διεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1 lalis@inf.uth.gr Ο κώδικας δεν εκτελείται «μόνος του» Ο εκτελέσιμος κώδικας αποθηκεύεται σε ένα αρχείο Το αρχείο είναι μια «παθητική» οντότητα

Διαβάστε περισσότερα

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

Λειτουργικά Συστήματα (διαχείριση επεξεργαστή, μνήμης και Ε/Ε) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2015-16 Λειτουργικά Συστήματα (διαχείριση επεξεργαστή, και Ε/Ε) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Τι είναι

Διαβάστε περισσότερα

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

Τι είναι ένα λειτουργικό σύστημα (ΛΣ); Μια άλλη απεικόνιση. Το Λειτουργικό Σύστημα ως μέρος του υπολογιστή Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2014-15 Λειτουργικά Συστήματα (διαχείριση επεξεργαστή, και Ε/Ε) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Τι είναι

Διαβάστε περισσότερα

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

Κεφάλαιο 3. Διδακτικοί Στόχοι Κεφάλαιο 3 Σε ένα υπολογιστικό σύστημα η Κεντρική Μονάδα Επεξεργασίας (ΚΜΕ) εκτελεί τις εντολές που βρίσκονται στην κύρια μνήμη του. Οι εντολές αυτές ανήκουν σε προγράμματα τα οποία, όταν εκτελούνται,

Διαβάστε περισσότερα

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

Διεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1 Διεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1 lalis@inf.uth.gr Πρόγραμμα και εκτέλεση προγράμματος Ο εκτελέσιμος κώδικας αποθηκεύεται σε ένα αρχείο Το αρχείο είναι μια «παθητική» οντότητα

Διαβάστε περισσότερα

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

Μάθημα 3 ο ΔΙΕΡΓΑΣΙΕΣ (PROCESSES) Μάθημα 3 ο ΔΙΕΡΓΑΣΙΕΣ (PROCESSES) Εισαγωγή H κεντρική μονάδα επεξεργασίας (ΚΜΕ) και η κύρια μνήμη αποτελούν τα βασικά δομικά στοιχεία ενός υπολογιστικού συστήματος. Η πρώτη εκτελεί εντολές χειρισμού δεδομένων

Διαβάστε περισσότερα

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

ΚΕΦΑΛΑΙΟ 3: Λειτουργικά Συστήµατα ΚΕΦΑΛΑΙΟ 3: Λειτουργικά Συστήµατα 3.1 Η εξέλιξη των λειτουργικών συστηµάτων 3.2 Αρχιτεκτονική λειτουργικών συστηµάτων 3.3 Συντονισµός των δραστηριοτήτων του υπολογιστή 3.4 Χειρισµός ανταγωνισµού µεταξύ

Διαβάστε περισσότερα

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

Ενότητα 2 (Κεφάλαιο 3) Περιγραφή και Έλεγχος Διεργασιών. Περιεχόμενα. Ανάγκη ύπαρξης διεργασιών 1 ΕΠΛ222: Λειτουργικά Συστήματα (μετάφραση στα ελληνικά των διαφανειών του βιβλίου Operating Systems: Internals and Design Principles, 8/E, William Stallings) Ενότητα 2 (Κεφάλαιο 3) Περιγραφή και Έλεγχος

Διαβάστε περισσότερα

Μάθημα 7 ο. Αλγόριθμοι Χρονοδρομολόγησης

Μάθημα 7 ο. Αλγόριθμοι Χρονοδρομολόγησης Μάθημα 7 ο Αλγόριθμοι Χρονοδρομολόγησης Σκοπός του μαθήματος Στην ενότητα αυτή θα εξηγήσουμε το ρόλο και την αξιολόγηση των αλγορίθμων χρονοδρομολόγησης, και θα παρουσιάσουμε τους κυριότερους. Θα μάθουμε:

Διαβάστε περισσότερα

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

Τμήμα Οικιακής Οικονομίας και Οικολογίας. Οργάνωση Υπολογιστών Οργάνωση Υπολογιστών Υπολογιστικό Σύστημα Λειτουργικό Σύστημα Αποτελεί τη διασύνδεση μεταξύ του υλικού ενός υπολογιστή και του χρήστη (προγραμμάτων ή ανθρώπων). Είναι ένα πρόγραμμα (ή ένα σύνολο προγραμμάτων)

Διαβάστε περισσότερα

ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Μάθημα: ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Διδάσκoντες: Καθ. Κ. Λαμπρινουδάκης (clam@unipi.gr) Δρ. Α. Γαλάνη (agalani@unipi.gr) 1 Συμβαίνει συχνά πολλές διεργασίες να ανταγωνίζονται για τον έλεγχο

Διαβάστε περισσότερα

Διεργασίες (Processes)

Διεργασίες (Processes) Διεργασία (process) ή καθήκον (task) Διεργασίες (Processes) στοιχειώδης οντότητα/δραστηριότητα υπολογισμού (processing entity/activity) εκτέλεση ενός προγράμματος ένα (κύριο) νήμα (thread)/ρεύμα ελέγχου/εκτέλεσης

Διαβάστε περισσότερα

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

Κεφάλαιο 4 Διεργασίες Β Τάξη ΕΠΑΛ Κεφάλαιο 4 Διεργασίες Β Τάξη ΕΠΑΛ Καθ. Παπαδάκη Αν. Λειτουργικά Συστήματα 1 Περιγραφή Διεργασίας Στους υπολογιστές που έχουν μια μόνο ΚΜΕ, σε κάθε χρονική στιγμή μπορεί να εκτελείται μια μόνο εντολή γλώσσας

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Λιβανός Γιώργος Εξάμηνο 2017Β Λιβανός Γιώργος Εξάμηνο 2017Β Το Λ.Σ. είναι υπεύθυνο για την κατανομή των πόρων του συστήματος (επεξεργαστές, μνήμη, αποθηκευτικά μέσα και συσκευές εισόδου/εξόδου) στα διάφορα ανταγωνιζόμενα προγράμματα

Διαβάστε περισσότερα

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

Λειτουργικά Συστήματα 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Λειτουργικά Συστήματα Ενότητα 3 : Διεργασίες Δημήτριος Λιαροκάπης 2 Ανοιχτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ηπείρου Τμήμα Μηχανικών Πληροφορικής

Διαβάστε περισσότερα

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

Ανάλυση Επιδόσεων Συστημάτων Πραγματικού Χρόνου ΣΥΣΤΗΜΑΤΑ ΠΡΑΓΜΑΤΙΚΟΥ ΧΡΟΝΟΥ Μάθημα Επιλογής Ανάλυση Επιδόσεων Συστημάτων Πραγματικού Χρόνου Δρ. Γεώργιος Κεραμίδας e-mail: gkeramidas@teimes.gr 1 Διεργασίες: Κατάσταση Εκτέλεσης (3-σταδίων) Κατάσταση

Διαβάστε περισσότερα

Περιγραφή και Έλεγχος ιεργασιών

Περιγραφή και Έλεγχος ιεργασιών Περιγραφή και Έλεγχος ιεργασιών Περίληψη ιεργασίες Πολυπρογραµµατισµός Καταστάσεις ιεργασιών Περιγραφή διεργασιών στο ΛΣ Έλεγχος διεργασιών Το ΛΣ Linux 1 ιεργασία (process) ιεργασία είναι κάθε πρόγραµµα

Διαβάστε περισσότερα

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

Λειτουργικά συστήματα πραγματικού χρόνου Λειτουργικά συστήματα πραγματικού χρόνου Τι είναι λειτουργικό σύστημα πραγματικού χρόνου; Λειτουργικό Σύστημα Πραγματικού Χρόνου (ΛΣΠΧ) είναι ένα λειτουργικό σύστημα που προορίζεται για εφαρμογές πραγματικού

Διαβάστε περισσότερα

Μάθημα 7: Αλγόριθμοι Χρονοδρομολόγησης

Μάθημα 7: Αλγόριθμοι Χρονοδρομολόγησης Μάθημα 7: Αλγόριθμοι Χρονοδρομολόγησης 7.1 Ορισμός Στόχοι Αλγόριθμο χρονοδρομολόγησης (scheduling algorithm) ονομάζουμε την μεθοδολογία την οποία χρησιμοποιεί ο κάθε χρονοδρομολογητής (βραχυχρόνιος, μεσοχρόνιος

Διαβάστε περισσότερα

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ II. Υφαντόπουλος Νικόλαος Υποψήφιος Διδάκτορας Contact:

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ II. Υφαντόπουλος Νικόλαος Υποψήφιος Διδάκτορας Contact: ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ II Υφαντόπουλος Νικόλαος Υποψήφιος Διδάκτορας Contact: nifantop@unipi.gr Περιεχόμενα ενότητας Διεργασίες Κλήσεις δημιουργίας και τερματισμού διεργασιών Επικοινωνία διεργασιών μέσω

Διαβάστε περισσότερα

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

Λιβανός Γιώργος Εξάμηνο 2017Β Λιβανός Γιώργος Εξάμηνο 2017Β Υπολογιστικό σύστημα Υλικό (hardware) Λογισμικό (Software) Ολοκληρωμένα κυκλώματα, δίσκοι, οθόνη, κλπ. Λογισμικό συστήματος Προγράμματα εφαρμογών Χρειάζονται ένα συντονιστή!!!

Διαβάστε περισσότερα

Εργαστήριο Λειτουργικών Συστημάτων - Αλγόριθμοι Χρονοπρογραμματισμού. Εργαστηριακή Άσκηση

Εργαστήριο Λειτουργικών Συστημάτων - Αλγόριθμοι Χρονοπρογραμματισμού. Εργαστηριακή Άσκηση Εργαστηριακή Άσκηση Οι Αλγόριθμοι Χρονοπρογραμματισμού First Come First Serve (FCFS), Shortest Job First (SJF), Round Robin (RR), Priority Weighted (PRI) Επιμέλεια: Βασίλης Τσακανίκας Περιεχόμενα Αλγόριθμοι

Διαβάστε περισσότερα

Ενότητα 3 - Θέματα Εφαρμοσμένης Επιστήμης Υπολογιστών. Κοντογιάννης Βασίλειος ΠΕ19

Ενότητα 3 - Θέματα Εφαρμοσμένης Επιστήμης Υπολογιστών. Κοντογιάννης Βασίλειος ΠΕ19 Ενότητα 3 - Θέματα Εφαρμοσμένης Επιστήμης Υπολογιστών 3.1.1 Λογισμικό και Υπολογιστικό Σύστημα Τι είναι το υλικό ενός υπολογιστικού συστήματος; Το σύνολο των ηλεκτρονικών και μηχανικών μερών του που έχουν

Διαβάστε περισσότερα

ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι Μάθημα: Λειτουργικά Συστήματα Ι ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Διδάσκων: Καθ. Κ. Λαμπρινουδάκης clam@unipi.gr 1 Χρονοδρομολογητής ή χρονοπρογραμματιστής (scheduler) είναι το τμήμα του Λ.Σ.

Διαβάστε περισσότερα

Κεφάλαιο 3: Λειτουργικά Συστήματα

Κεφάλαιο 3: Λειτουργικά Συστήματα Κεφάλαιο 3: Λειτουργικά Συστήματα (από το βιβλίο του Brookshear) B Μέρος Συντονισμός Δραστηριοτήτων Υπολογιστή Εισαγωγή Σήμερα θα περιγράψουμε πως ένα λειτουργικό σύστημα συντονίζει την εκτέλεση Λογισμικού

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

ΑΔΙΕΞΟΔΑ (Deadlocks) Παράδειγμα 1 Θανάσιμο αγκάλιασμα (deadly embrace)

ΑΔΙΕΞΟΔΑ (Deadlocks) Παράδειγμα 1 Θανάσιμο αγκάλιασμα (deadly embrace) Παράδειγμα 1 Ένα σύστημα με έναν εκτυπωτή και ένα σαρωτή εγγράφων Δύο διεργασίες Ρ1 και Ρ2 Η Ρ1 δεσμεύει τον εκτυπωτή Η Ρ2 δεσμεύει το σαρωτή Η Ρ1 ζητά το σαρωτή και εμποδίζεται Η Ρ2 ζητά τον εκτυπωτή

Διαβάστε περισσότερα

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

ΤρόποςΑξιολόγησης: α) Εργαστήρια (Προαιρετικάµε 20% - 35% βαρύτητα µόνοθετικά) β) Τελική Γραπτή Εξέταση ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ - UNIX Ύλη του Μαθήµατος Μάθηµα: Λειτουργικά Συστήµατα ΙΙ UNIX Βιβλίο Μαθήµατος: α) Tanenbaum, A.:ΣύγχροναΛειτουργικάΣυστήµατα, 2ηΈκδοση, Εκδόσεις Κλειδάριθµος. β) Wrightson, K.,

Διαβάστε περισσότερα

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

Λειτουργικά Συστήματα (Λ/Σ) Λειτουργικά Συστήματα (Λ/Σ) Διαχείριση Κεντρικής Μονάδας Επεξεργασίας (CPU) Βασίλης Σακκάς 4/12/2013 1 Xρονοδρομολόγηση Διεργασιών 1 Η χρονοδρομολόγηση σε ένα Λ/Σ αποφασίζει ποια διεργασία θα χρησιμοποιεί

Διαβάστε περισσότερα

Λύβας Χρήστος Αρχική επιµέλεια Πιτροπάκης Νικόλαος και Υφαντόπουλος Νικόλαος

Λύβας Χρήστος Αρχική επιµέλεια Πιτροπάκης Νικόλαος και Υφαντόπουλος Νικόλαος ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ IΙ Λύβας Χρήστος chrislibas@ssl-unipi.gr Αρχική επιµέλεια Πιτροπάκης Νικόλαος και Υφαντόπουλος Νικόλαος >_ ΔΙΕΡΓΑΣΙΕΣ +- Με τον όρο διεργασία στο UNIX εννοούμε τη δυναμικη πράξη της

Διαβάστε περισσότερα

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ - UNIX. Συστήματα Αρχείων. Διδάσκoντες: Καθ. Κ. Λαμπρινουδάκης Δρ. Α. Γαλάνη

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ - UNIX. Συστήματα Αρχείων. Διδάσκoντες: Καθ. Κ. Λαμπρινουδάκης Δρ. Α. Γαλάνη ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ - UNIX Μάθημα: Λειτουργικά Συστήματα Συστήματα Αρχείων Διδάσκoντες: Καθ. Κ. Λαμπρινουδάκης (clam@unipi.gr) Δρ. Α. Γαλάνη (agalani@unipi.gr) Λειτουργικά Συστήματα 1 Αρχεία με Χαρτογράφηση

Διαβάστε περισσότερα

ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι Μάθημα: Λειτουργικά Συστήματα Ι ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Διδάσκων: Επ. Καθ. Κ. Λαμπρινουδάκης clam@unipi.gr 1 Χρονοδρομολογητής ή χρονοπρογραμματιστής (scheduler) είναι το τμήμα του

Διαβάστε περισσότερα

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

Εισαγωγή στα Λειτουργικά συστήματα Ι. Καθηγητής Κώστας Αναγνωστόπουλος Εισαγωγή στα Λειτουργικά συστήματα Ι Καθηγητής Κώστας Αναγνωστόπουλος Τι είναι Λειτουργικό Σύστημα Ένα πρόγραμμα ή συλλογή προγραμμάτων που ελέγχει και διαχειρίζεται το υλικό μιας υπολογιστικής μηχανής

Διαβάστε περισσότερα

Κεφάλαιο 3.1: Λειτουργικά Συστήματα. Επιστήμη ΗΥ Κεφ. 3.1 Καραμαούνας Πολύκαρπος

Κεφάλαιο 3.1: Λειτουργικά Συστήματα. Επιστήμη ΗΥ Κεφ. 3.1 Καραμαούνας Πολύκαρπος Κεφάλαιο 3.1: Λειτουργικά Συστήματα 1 3.1.1 Λογισμικό και Υπολογιστικό Σύστημα Ένα σύγχρονο υπολογιστικό σύστημα αποτελείται από: το υλικό: τα ηλεκτρονικά μέρη του υπολογιστή και το λογισμικό: το σύνολο

Διαβάστε περισσότερα

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

Εισαγωγικά & Βασικές Έννοιες Εισαγωγικά & Βασικές Έννοιες ΙΙΙ 1 lalis@inf.uth.gr Γιατί πολλές διεργασίες/νήματα; Επίπεδο εφαρμογής Καλύτερη δόμηση κώδικα Αποφυγή μπλοκαρίσματος / περιοδικών ελέγχων Φυσική έκφραση παραλληλισμού Επίπεδο

Διαβάστε περισσότερα

Κεφάλαιο 3: Λειτουργικά Συστήµατα

Κεφάλαιο 3: Λειτουργικά Συστήµατα Κεφάλαιο 3: Λειτουργικά Συστήµατα B Μέρος Συντονισµός Δραστηριοτήτων Υπολογιστή Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Εισαγωγή Σήµερα θα περιγράψουµε πως ένα λειτουργικό

Διαβάστε περισσότερα

Λειτουργικά Συστήματα Πραγματικού Χρόνου

Λειτουργικά Συστήματα Πραγματικού Χρόνου Λειτουργικά Συστήματα Πραγματικού Χρόνου 2006-07 Λειτουργικά Συστήματα Πραγματικού Χρόνου Βασικές Έννοιες Μ.Στεφανιδάκης Το μάθημα ΛΣ Πραγματικού Χρόνου Θεωρητικό υπόβαθρο Αρχές Προγραμματισμού Παραδείγματα

Διαβάστε περισσότερα

Μάθημα 4 ο. Κρίσιμα Τμήματα και Αμοιβαίος Αποκλεισμός

Μάθημα 4 ο. Κρίσιμα Τμήματα και Αμοιβαίος Αποκλεισμός Μάθημα 4 ο Κρίσιμα Τμήματα και Αμοιβαίος Αποκλεισμός Εισαγωγή Σκοπός του μαθήματος αυτού είναι να εξηγήσει την έννοια του κρίσιμου τμήματος σε μία διεργασία και να δείξει τη λύση για ένα απλό πρόβλημα

Διαβάστε περισσότερα

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

Λειτουργικά Συστήματα Η/Υ Λειτουργικά Συστήματα Η/Υ Κεφάλαιο 9 «Δρομολόγηση Διεργασιών» Διδάσκων: Δ, Λιαροκάπης Διαφάνειες: Π. Χατζηδούκας 1 Δρομολόγηση σε σύστημα ενός επεξεργαστή 1. Εισαγωγή 2. Κριτήρια αποτίμησης της απόδοσης

Διαβάστε περισσότερα

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

Λειτουργικά Συστήματα (Λ/Σ) Λειτουργικά Συστήματα (Λ/Σ) Δομή Λειτουργικών Συστημάτων Βασίλης Σακκάς 20/11/2013 1 Δομή ενός Λ/Σ -1 Μονολιθικά συστήματα (monolithic systems) Λειτουργικά συστήματα με ανυπαρξία δομής: "η μεγάλη ακαταστασία"

Διαβάστε περισσότερα

Το μάθημα. Λειτουργικά Συστήματα Πραγματικού Χρόνου Βασικές Έννοιες 6. Ενσωματωμένα Συστήματα (embedded systems) Παραδείγματα

Το μάθημα. Λειτουργικά Συστήματα Πραγματικού Χρόνου Βασικές Έννοιες 6. Ενσωματωμένα Συστήματα (embedded systems) Παραδείγματα Λειτουργικά Συστήματα Πραγματικού Χρόνου 2006-07 Λειτουργικά Συστήματα Πραγματικού Χρόνου Βασικές Έννοιες Το μάθημα ΛΣ Πραγματικού Χρόνου Θεωρητικό υπόβαθρο Αρχές Προγραμματισμού Παραδείγματα ΛΣ Εργασίες

Διαβάστε περισσότερα

Αµοιβαίοςαποκλεισµός. Κατανεµηµένα Συστήµατα 03-1

Αµοιβαίοςαποκλεισµός. Κατανεµηµένα Συστήµατα 03-1 Αµοιβαίοςαποκλεισµός Εισαγωγή Συγκεντρωτική προσέγγιση Κατανεµηµένη προσέγγιση Αλγόριθµος Lamport Αλγόριθµος Ricart-Agrawala Προσέγγιση µεταβίβασης σκυτάλης Αλγόριθµος LeLann Αλγόριθµος Raymond Αλγόριθµος

Διαβάστε περισσότερα

Μάθημα 8: Επικοινωνία Συσκευών με τον Επεξεργαστή

Μάθημα 8: Επικοινωνία Συσκευών με τον Επεξεργαστή Μάθημα 8: Επικοινωνία Συσκευών με τον Επεξεργαστή 8.1 Τακτική σάρωση (Polling) Ας υποθέσουμε ότι έχουμε ένα πληκτρολόγιο συνδεδεμένο σε ένα υπολογιστικό σύστημα. Το πληκτρολόγιο είναι μια μονάδα εισόδου.

Διαβάστε περισσότερα

Χρονοδρομολογητής Κυκλικής Επαναφοράς

Χρονοδρομολογητής Κυκλικής Επαναφοράς Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχ. και Μηχανικών Υπολογιστών Εργαστήριο Υπολογιστικών Συστημάτων 4 η Εργαστηριακή Άσκηση: Χρονοδρομολογητής Κυκλικής Επαναφοράς Λειτουργικά Συστήματα Υπολογιστών

Διαβάστε περισσότερα

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

ΛΟΓΙΣΜΙΚΟ (software) ΛΟΓΙΣΜΙΚΟ (software) Το Λογισµικό του Ηλεκτρονικού Υπολογιστή Περιεχόµενα Ορισµός Λογισµικού Κατηγορίες Λογισµικό Συστήµατος Λογισµικό Εφαρµογών Το λογισµικό είναι: Το λογισµικό Το σύνολο των προγραµµάτων

Διαβάστε περισσότερα

Μάθημα 3.8 Τεχνικές μεταφοράς δεδομένων Λειτουργία τακτικής σάρωσης (Polling) Λειτουργία Διακοπών DMA (Direct Memory Access)

Μάθημα 3.8 Τεχνικές μεταφοράς δεδομένων Λειτουργία τακτικής σάρωσης (Polling) Λειτουργία Διακοπών DMA (Direct Memory Access) Μάθημα 3.8 Τεχνικές μεταφοράς δεδομένων Λειτουργία τακτικής σάρωσης (Polling) Λειτουργία Διακοπών DMA (Direct Memory Access) Μελετώντας το μάθημα θα μπορείς να ξέρεις τη λειτουργία του Polling να ξέρεις

Διαβάστε περισσότερα

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

2. Σκοποί και Λειτουργίες των ΛΣ. Λειτουργικά Συστήματα Η/Υ. Περίληψη. Ι. Προστασία Υλικού ΚΕΦΑΛΑΙΟ 2 - ΕΞΕΛΙΞΗ ΚΑΙ ΣΚΟΠΟΙ ΛΣ 2. Σκοποί και Λειτουργίες των ΛΣ Λειτουργικά Συστήματα Η/Υ I. Προστασία του υλικού II. Επικοινωνία με τον χρήστη III. Διαχείριση, αξιοποίηση και έλεγχος πόρων IV. Ικανότητα και ευκολία εξέλιξης Κεφάλαιο

Διαβάστε περισσότερα

1. ΑΡΧΕΣ ΛΕΙΤΟΥΡΓΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ

1. ΑΡΧΕΣ ΛΕΙΤΟΥΡΓΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ 12 Σχεδιασμός Ανάπτυξη Λειτουργία Π.Σ. 1. ΑΡΧΕΣ ΛΕΙΤΟΥΡΓΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ 1.1 Δυνατότητες Λειτουργικών Συστημάτων 1.1.1 Εισαγωγή Ο όρος Λειτουργικό Σύστημα (Operating System), εκφράζει το σύνολο των προγραμμάτων

Διαβάστε περισσότερα

Αμοιβαίος αποκλεισμός

Αμοιβαίος αποκλεισμός Αμοιβαίος αποκλεισμός 1. Εισαγωγή 2. Κρίσιμα τμήματα (Critical Sections) 3. Υλοποίηση του αμοιβαίου αποκλεισμού I. Προσεγγίσεις λογισμικού II. Υποστήριξη εκ μέρους του υλικού III. Σηματοφορείς 4. Κλασσικά

Διαβάστε περισσότερα

Λειτουργικά συστήµατα. Λογισμικό Συστήματος 1

Λειτουργικά συστήµατα. Λογισμικό Συστήματος 1 Λειτουργικά συστήµατα Λογισμικό Συστήματος 1 Figure 3.1 Batch processing 0-2 Λογισμικό Συστήματος Figure 3.2 Interactive processing 0-3 Λογισμικό Συστήματος Figure 3.3 Software classification 0-4 Λογισμικό

Διαβάστε περισσότερα

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

ιεργασίες και Επεξεργαστές στα Κατανεµηµένων Συστηµάτων ιεργασίες και Επεξεργαστές στα Κατανεµηµένων Συστηµάτων Μαρία Ι. Ανδρέου ΗΜΥ417, ΗΜΥ 663 Κατανεµηµένα Συστήµατα Χειµερινό Εξάµηνο 2006-2007 Τµήµα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Πανεπιστήµιο

Διαβάστε περισσότερα

Λειτουργικά Συστήματα Πραγματικού Χρόνου

Λειτουργικά Συστήματα Πραγματικού Χρόνου Λειτουργικά Συστήματα Πραγματικού Χρόνου 2006-07 Λειτουργικά Συστήματα Πραγματικού Χρόνου Η χρήση του χρόνου Μ.Στεφανιδάκης Συστήματα πραγματικού χρόνου: ελεγκτής και ελεγχόμενο σύστημα real-time system

Διαβάστε περισσότερα

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

Κατανεμημένα Συστήματα Κατανεμημένα Συστήματα Σημειώσεις εργαστηρίου Lab#7 - Διεργασίες, Nήματα, Πολυνημάτωση στη Python Νεβράντζας Βάιος-Γερμανός Λάρισα, Φεβρουάριος 2013 Lab#7 - Διεργασιές, Νη ματα, Πολυνημα τωση στη Python,

Διαβάστε περισσότερα

Μάθημα 6 ο. Χρονοδρομολόγηση (Scheduling)

Μάθημα 6 ο. Χρονοδρομολόγηση (Scheduling) Μάθημα 6 ο Χρονοδρομολόγηση (Scheduling) Σκοπός του μαθήματος Στην ενότητα αυτή θα εξηγήσουμε το ρόλο και τη λειτουργία της χρονοδρομολόγησης σε ένα Λειτουργικό Σύστημα. Θα μάθουμε: Να ορίζουμε τι είναι

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Εργαστήριο ΔΙΕΡΓΑΣΙΕΣ - ΔΙΑΧΕΙΡΙΣΗ

Εργαστήριο ΔΙΕΡΓΑΣΙΕΣ - ΔΙΑΧΕΙΡΙΣΗ Εργαστήριο ΔΙΕΡΓΑΣΙΕΣ - ΔΙΑΧΕΙΡΙΣΗ Εισαγωγή Σκοπός τόσο αυτού του εργαστηρίου, όσο και των εργαστηρίων που ακολουθούν, είναι να γνωρίσουμε τους τρόπους δημιουργίας και διαχείρισης των διεργασιών (processes)

Διαβάστε περισσότερα

Σκελετός Παρουσίασης

Σκελετός Παρουσίασης Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άδεια χρήσης άλλου τύπου, αυτή πρέπει να αναφέρεται ρητώς. Σκελετός

Διαβάστε περισσότερα

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

Λειτουργικά Συστήματα Λειτουργικά Συστήματα Κλειώ Σγουροπούλου Λειτουργικό Σύστημα Ένα πρόγραμμα που διαχειρίζεται τους πόρους ενός υπολογιστικού συστήματος και ενεργεί ως μεσάζων μεταξύ του χρήστη και των πόρων αυτών user

Διαβάστε περισσότερα

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ. Χρονοπρογραμματισμός Εργαστηριακές Ασκήσεις

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ. Χρονοπρογραμματισμός Εργαστηριακές Ασκήσεις ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Χρονοπρογραμματισμός Εργαστηριακές Ασκήσεις Υλικό από: Κ Διαμαντάρας, Λειτουργικά Συστήματα, Τμήμα Πληροφορικής ΤΕΙΘ Σύνθεση Κ.Γ. Μαργαρίτης, Τμήμα Εφαρμοσμένης Πληροφορικής, Πανεπιστήμιο

Διαβάστε περισσότερα

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

Κεφάλαιο 4: Λογισμικό Συστήματος Κεφάλαιο 4: Λογισμικό Συστήματος Ερωτήσεις 1. Να αναφέρετε συνοπτικά τις κατηγορίες στις οποίες διακρίνεται το λογισμικό συστήματος. Σε ποια ευρύτερη κατηγορία εντάσσεται αυτό; Το λογισμικό συστήματος

Διαβάστε περισσότερα

Εικονική Μνήμη (1/2)

Εικονική Μνήμη (1/2) Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχ. και Μηχανικών Υπολογιστών Εργαστήριο Υπολογιστικών Συστημάτων Εικονική Μνήμη (1/2) Λειτουργικά Συστήματα Υπολογιστών 7ο Εξάμηνο, 2016-2017 Εικονική Μνήμη

Διαβάστε περισσότερα

Υποστήριξη Λ.Σ. ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική

Υποστήριξη Λ.Σ. ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική Υποστήριξη Λ.Σ. ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική Επικοινωνία με περιφερειακά Αρτηρία εισόδου-εξόδου, διευθύνσεις, εγγραφές αναγνώσεις Διαδικασία εξόδου έλεγχος κατάστασης περιφερειακού περίμενε

Διαβάστε περισσότερα

Ένα αφαιρετικό πραγματικού χρόνου μοντέλο λειτουργικού συστήματος για MPSoC

Ένα αφαιρετικό πραγματικού χρόνου μοντέλο λειτουργικού συστήματος για MPSoC Ένα αφαιρετικό πραγματικού χρόνου μοντέλο λειτουργικού συστήματος για MPSoC Αρχιτεκτονική Πλατφόρμας Μπορεί να μοντελοποιηθεί σαν ένα σύνολο από διασυνδεδεμένα κομμάτια: 1. Στοιχεία επεξεργασίας (processing

Διαβάστε περισσότερα

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

Λειτουργικά Συστήματα ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Λειτουργικά Συστήματα Ενότητα 2β: Αθηνά Βακάλη Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

Διαβάστε περισσότερα

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

Εισαγωγή στα Λειτουργικά Συστήματα Εισαγωγή στα Λειτουργικά Συστήματα Ενότητα 3: Διεργασίες Ι Γεώργιος Φ. Φραγκούλης Τμήμα Ηλεκτρολόγων Μηχανικών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για

Διαβάστε περισσότερα

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

Λειτουργικά Συστήματα (ΗΥ321) Λειτουργικά Συστήματα (ΗΥ321) Διάλεξη 2: Διεργασίες και Νήματα Διαδικαστικά 2 Γραφτήκατε στη λίστα; Σχηματίστε ομάδες (για το project)! Στο προηγούμενο επεισόδιο 3 Τι είναι λειτουργικό; Γενιές ΛΣ Βασικές

Διαβάστε περισσότερα

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

Εισαγωγικά & Βασικές Έννοιες Εισαγωγικά & Βασικές Έννοιες ΙΙΙ 1 lalis@inf.uth.gr Γιατί πολλές διεργασίες/νήματα; Επίπεδο εφαρμογής Καλύτερη δόμηση κώδικα Αποφυγή μπλοκαρίσματος / περιοδικών ελέγχων Φυσική έκφραση παραλληλισμού Επίπεδο

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

ΔΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ. Λειτουργικά Συστήματα Ι. Διδάσκων: Καθ. Κ. Λαμπρινουδάκης ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι Μάθημα: Λειτουργικά Συστήματα Ι ΔΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ Διδάσκων: Καθ. Κ. Λαμπρινουδάκης clam@unipi.gr 1 ΕΙΣΑΓΩΓΗ Μνήμη : Πόρος ζωτικής σημασίας του οποίου η διαχείριση απαιτεί ιδιαίτερη

Διαβάστε περισσότερα

Λειτουργικά Συστήματα Ι. Καθηγήτρια Παπαδάκη Αναστασία

Λειτουργικά Συστήματα Ι. Καθηγήτρια Παπαδάκη Αναστασία Λειτουργικά Συστήματα Ι Καθηγήτρια Παπαδάκη Αναστασία 2013 1 Ηλεκτρονικός Υπολογιστής αποτελείται: 1. Από Υλικό Hardware (CPUs, RAM, Δίσκοι), & 2. Λογισμικό - Software Και μπορεί να εκτελέσει διάφορες

Διαβάστε περισσότερα

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

Τμήμα Λογιστικής. Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. Μάθημα 8. 1 Στέργιος Παλαμάς ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας Τμήμα Λογιστικής Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές Μάθημα 8 Κεντρική Μονάδα Επεξεργασίας και Μνήμη 1 Αρχιτεκτονική του Ηλεκτρονικού Υπολογιστή Μονάδες Εισόδου Κεντρική

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Λειτουργικά Συστήματα 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Λειτουργικά Συστήματα Ενότητα 2 : Σκοποί ΛΣ Δημήτριος Λιαροκάπης 2 Ανοιχτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ηπείρου Τμήμα Μηχανικών Πληροφορικής

Διαβάστε περισσότερα

Εργαστηριακή Άσκηση. Τμήμα Μηχανικών Πληροφορικής ΤΕ

Εργαστηριακή Άσκηση. Τμήμα Μηχανικών Πληροφορικής ΤΕ Εργαστηριακή Άσκηση Εργαστήριο Λειτουργικών Συστημάτων Οι First Come First Serve (FCFS), Shortest Job First (SJF), Round Robin (RR), Priority Weighted (PRI) Β. Τσακανίκας Β. Ταμπακάς Τμήμα Μηχανικών Πληροφορικής

Διαβάστε περισσότερα

Υλισμικό Διαχείρισης Μνήμης (Memory Management Hardware)

Υλισμικό Διαχείρισης Μνήμης (Memory Management Hardware) Υλισμικό Διαχείρισης Μνήμης (Memory Management Hardware) Ιστορική αναδρομή Πρώτοι υπολογιστές μικρή χωρητικότητα μνήμης (κόστος) διαίρεση προγραμμάτων σε τμήματα επικάλυψης (overlay segments) που χωρούσαν

Διαβάστε περισσότερα

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

Εισαγωγή στην Πληροφορική Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Αγρονόµων Τοπογράφων Μηχανικών Εισαγωγή στην Πληροφορική Αστροφυσικός Αναπλ. Καθηγητής ΕΜΠ romylos@survey.ntua.gr Λειτουργικά συστήµατα, διεργασίες και δροµολόγηση Σύνδεση

Διαβάστε περισσότερα

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

Εισαγωγή στην Πληροφορική Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Εισαγωγή στην Πληροφορική Ενότητα 8: Λειτουργικά Συστήματα Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται διαφορετικά

Διαβάστε περισσότερα

ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ (Τμήματα Υπολογιστή) ΕΚΠΑΙΔΕΥΤΗΣ:ΠΟΖΟΥΚΙΔΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ ΤΜΗΜΑΤΑ ΗΛΕΚΤΡΟΝΙΚΟΥ ΥΠΟΛΟΓΙΣΤΗ Κάθε ηλεκτρονικός υπολογιστής αποτελείται

Διαβάστε περισσότερα

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

Λειτουργικά Συστήματα (Λ/Σ) Λειτουργικά Συστήματα (Λ/Σ) Διαχείριση Μνήμης Βασίλης Σακκάς 6/12/2013 1 Διαχείριση Μνήμης 1 Το τμήμα του Λ/Σ που διαχειρίζεται τη μνήμη λέγεται Διαχειριστής Μνήμης (Memory manager). Καθήκον του είναι

Διαβάστε περισσότερα

Λειτουργικά Συστήματα Κεφάλαιο 2 Οργάνωση Συστήματος Αρχείων 2.1 Διαχείριση Αρχείων και Σύστημα Αρχείων(File System)

Λειτουργικά Συστήματα Κεφάλαιο 2 Οργάνωση Συστήματος Αρχείων 2.1 Διαχείριση Αρχείων και Σύστημα Αρχείων(File System) 2.1.1 Εισαγωγή στη διαχείριση αρχείων Οι Η/Υ αποθηκεύουν τα δεδομένα και τα επεξεργάζονται. Εφαρμογή Προγράμματος C:\Documents and Settings\user\Τα έγγραφά μου\leitourgika.doc Λ.Σ. File System Γι αυτό

Διαβάστε περισσότερα

Πανεπιστήµιο Θεσσαλίας

Πανεπιστήµιο Θεσσαλίας Πανεπιστήµιο Θεσσαλίας Τµήµα Πληροφορικής Ενότητα 8η: Συσκευές Ε/Ε - Αρτηρίες Άσκηση 1: Υπολογίστε το µέσο χρόνο ανάγνωσης ενός τµήµατος των 512 bytes σε µια µονάδα σκληρού δίσκου µε ταχύτητα περιστροφής

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ. Παρέχει µια διεπαφή (interface) ανάµεσα στο υλισµικό και στα προγράµµατα εφαρµογών/χρηστών.

ΕΙΣΑΓΩΓΗ. Παρέχει µια διεπαφή (interface) ανάµεσα στο υλισµικό και στα προγράµµατα εφαρµογών/χρηστών. ΕΙΣΑΓΩΓΗ Υλισµικό (Hardware) Επεξεργαστής-ΚΜΕ (Processor, CPU): εκτέλεση εντολών Μνήµη (Memory): προσωρινή αποθήκευση πληροφοριών Μονάδες ε/ε (I/O devices): Μονάδες δίσκων: Μόνιµη αποθήκευση πληροφοριών

Διαβάστε περισσότερα

Υλοποίηση ενός προγραμματιστικού κελύφους εργασίας

Υλοποίηση ενός προγραμματιστικού κελύφους εργασίας Τ.Ε.Ι ΗΠΕΙΡΟΥ ΣΧΟΛΗ ΔΙΟΙΚΗΣΗΣ & ΟΙΚΟΝΟΜΙΑΣ ΤΜΗΜΑ ΤΗΛΕΠΛΗΡΟΦΟΡΙΚΗΣ & ΔΙΟΙΚΗΣΗΣ Υλοποίηση ενός προγραμματιστικού κελύφους εργασίας Πτυχιακή εργασία του φοιτητή Γιαννακίδη Αποστόλη Επιβλέπων καθηγητής Τσούλος

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Παράλληλη Επεξεργασία

Παράλληλη Επεξεργασία Παράλληλη Επεξεργασία Φροντιστήριο: Εισαγωγή στα Πολυεπεξεργαστικά Συστήματα Διερασίες και Νήματα σε Πολυεπεξεργαστικά Συστήματα Εργαστήριο Πληροφοριακών Συστημάτων Υψηλής Επίδοσης Parallel and Distributed

Διαβάστε περισσότερα

Λειτουργικά Συστήματα Ι. Κεφάλαιο 1 Βασικές Έννοιες Λειτουργικών Συστημάτων

Λειτουργικά Συστήματα Ι. Κεφάλαιο 1 Βασικές Έννοιες Λειτουργικών Συστημάτων Λειτουργικά Συστήματα Ι Κεφάλαιο 1 Βασικές Έννοιες Λειτουργικών Συστημάτων Δομή Η/Υ Ο Η/Υ αποτελείται από δυο βασικά στοιχεία: Υλικό (το ηλεκτρονικό-μηχανικό μέρος πχ συσκευές, πλακέτες κλπ) Λογισμικό

Διαβάστε περισσότερα

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

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Μάθηµα 1 Ο ρόλος του ΛΣ Υλικό Υπολογιστικό σύστηµα Λειτουργικό σύστηµα Λογισµικό Προγράµµατα εφαρµογής Στόχοι του ΛΣ Χρήστες ιευκόλυνση των χρηστών ιευκόλυνση

Διαβάστε περισσότερα

Γενική οργάνωση υπολογιστή «ΑΒΑΚΑ»

Γενική οργάνωση υπολογιστή «ΑΒΑΚΑ» Περιεχόμενα Γενική οργάνωση υπολογιστή «ΑΒΑΚΑ»... 2 Καταχωρητές... 3 Αριθμητική-λογική μονάδα... 3 Μονάδα μνήμης... 4 Μονάδα Εισόδου - Εξόδου... 5 Μονάδα ελέγχου... 5 Ρεπερτόριο Εντολών «ΑΒΑΚΑ»... 6 Φάση

Διαβάστε περισσότερα

Μηχανισμοί Προστασίας (Protection Mechanisms)

Μηχανισμοί Προστασίας (Protection Mechanisms) Μηχανισμοί Προστασίας (Protection Mechanisms) κάθε διεργασία που εκτελείται σ ένα λειτουργικό σύστημα πρέπει να προστατευτεί από τις ενέργειες των άλλων διεργασιών που συνυπάρχουν με αυτήν οι τεχνικές

Διαβάστε περισσότερα

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

Λειτουργικά Συστήματα. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα Λειτουργικά Συστήματα Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα Στέργιος Παλαμάς, Υλικό Μαθήματος «Λειτουργικά Συστήματα», 2015-2016 Κεφάλαιο 1: Βασικές Έννοιες Λειτουργικών Συστημάτων

Διαβάστε περισσότερα

Θοδωρής Ανδρόνικος Τμήμα Πληροφορικής, Ιόνιο Πανεπιστήμιο

Θοδωρής Ανδρόνικος Τμήμα Πληροφορικής, Ιόνιο Πανεπιστήμιο Θοδωρής Ανδρόνικος Τμήμα Πληροφορικής, Ιόνιο Πανεπιστήμιο Για το μάθημα «Διαχείριση Λειτουργικών Συστημάτων» του ακαδημαϊκού έτους 2015 2016, το προτεινόμενο σύγγραμμα είναι το: Operating Systems: Internals

Διαβάστε περισσότερα

Σκοπός Μαθήματος. Λειτουργικά Συστήματα Η/Υ. Γενικές Πληροφορίες. Στόχοι Μαθήματος ΚΕΦΑΛΑΙΟ 1 - ΕΙΣΑΓΩΓΗ. Θεωρία: Εργαστήριο: Κεφάλαιο 1 «Εισαγωγή»

Σκοπός Μαθήματος. Λειτουργικά Συστήματα Η/Υ. Γενικές Πληροφορίες. Στόχοι Μαθήματος ΚΕΦΑΛΑΙΟ 1 - ΕΙΣΑΓΩΓΗ. Θεωρία: Εργαστήριο: Κεφάλαιο 1 «Εισαγωγή» Σκοπός Μαθήματος Λειτουργικά Συστήματα Η/Υ Θεωρία: Βασικές έννοιες των λειτουργικών συστημάτων Βασικές αρχές σχεδιασμού τους Κεφάλαιο 1 «Εισαγωγή» Εργαστήριο: Πρακτική εξάσκηση στη χρήση των λειτουργικών

Διαβάστε περισσότερα

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

Λειτουργικά Συστήματα Η/Υ Λειτουργικά Συστήματα Η/Υ Κεφάλαιο 7 «Διαχείριση Μνήμης» Διδάσκων: Δ. Λιαροκάπης Διαφάνειες: Π. Χατζηδούκας 1 Κύρια Μνήμη 1. Εισαγωγή 2. Βασική διαχείριση μνήμης 3. Μνήμη και πολυπρογραμματισμός 4. Τμηματοποίηση

Διαβάστε περισσότερα

Υλισµικό διαχείρισης µνήµης (Memory management hardware)

Υλισµικό διαχείρισης µνήµης (Memory management hardware) Ιστορική αναδροµή Πρώτοι υπολογιστές µικρή χωρητικότητα µνήµης (κόστος) διαίρεση προγραµµάτων σε τµήµατα επικάλυψης (overlay segments) που χωρούσαν στην µνήµη (επικάλυψη µνήµης) Κάθε τµήµα επικάλυψης Φορτωνόταν,

Διαβάστε περισσότερα

Δρομολόγηση σε σύστημα ενός επεξεργαστή

Δρομολόγηση σε σύστημα ενός επεξεργαστή Δρομολόγηση σε σύστημα ενός επεξεργαστή 1. Εισαγωγή 2. Κριτήρια αποτίμησης της απόδοσης 3. Κριτήρια βελτιστοποίησης 4. Τύποι δρομολόγησης του επεξεργαστή 5. Ο κύκλος καταιγισμού CPU-I/O 6. Πολιτικές δρομολόγησης

Διαβάστε περισσότερα