Εισαγωγή στα Λειτουργικά Συστήματα (Λ/Σ) Το UNIX και οι εντολές του Παρουσίαση 2

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

Download "Εισαγωγή στα Λειτουργικά Συστήματα (Λ/Σ) Το UNIX και οι εντολές του Παρουσίαση 2"

Transcript

1 Λειτουργικά Συστήματα & Γλώσσες Προγραμματισμού Εισαγωγή στα Λειτουργικά Συστήματα (Λ/Σ) Το UNIX και οι εντολές του Παρουσίαση 2 1

2 Λειτουργικά Συστήματα & Γλώσσες Προγραμματισμού Διαφάνειες σύμφωνα με τις Πανεπιστημιακές Σημειώσεις του Καθηγητή Κ. Γιαννάκογλου Επιμέλεια: Επικ. Καθηγητής Ν. Πετρόπουλος Παρουσίαση 2 2

3 1. Ορισμός Διεργασίας Περιεχόμενα Παρουσίασης 2 "ΔΙΕΡΓΑΣΙΕΣ" 2. Καταστάσεις Διεργασιών 3. Στόχοι Χρονοπρογραμματισμού & Αλγόριθμοι 4. Περιγραφέας Διεργασίας 5. Σήματα Διακοπών 6. Πυρήνας του Λ/Σ 7. Διαδιεργασιακή Επικοινωνία Ανταγωνισμός 8. Κλήσεις Συστήματος Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 3

4 Ορισμός Διεργασίας (1) Έχουμε πει: Διεργασία (process) ονομάζεται κάθε πρόγραμμα που εκτελείται (ή πιο πρόχειρα "τρέχει") μαζί με κάθε πληροφορία ή / και δεδομένα ή / και πόρους που απαιτούνται για να εκτελεσθεί. # Οι Διεργασίες διαχωρίζονται σε "Διεργασίες Συστήματος" και "Διεργασίες Χρηστών" Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 4

5 Ορισμός Διεργασίας (2) Το Εκτελέσιμο Πρόγραμμα: Εφόσον μια Διεργασία νοείται ως ενότητα που "τρέχει" αποτελούμενη από συνιστώσες Πρέπει να διευκρινισθεί: Η συνιστώσα της "το Εκτελέσιμο Πρόγραμμα" δεν είναι αποτέλεσμα άλλης Διεργασίας αλλά αποτέλεσμα ενεργειών των προγραμματιστών. Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 5

6 Ορισμός Διεργασίας (2) "Εξουσία" επί των Διεργασιών έχουν: 1. Πλήρη εξουσία, το Λ/Σ κυρίως μέσω ειδικού Προγράμματος Συστήματος που ονομάζεται Χρονοπρογραμματιστής (process scheduler ή interrupting clock). 2. Μερική εξουσία, οι χρήστες για Διεργασίες που οι ίδιοι δημιούργησαν 3. Μερική εξουσία, ο υπερχρήστης για Διεργασίες που ο ίδιος δημιούργησε ή για ορισμένες από τις Διεργασίες Συστήματος Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 6

7 Ορισμός Διεργασίας (3) Δένδρο Διεργασιών: Μία Διεργασία μπορεί να δημιουργήσει μία ή περισσότερες άλλες Διεργασίες. Αυτές ονομάζονται Θυγατρικές Διεργασίες (child processes) ενώ η Διεργασία που τις δημιούργησε ονομάζεται Γονική Διεργασία (parent process). Μια Θυγατρική Διεργασία μπορεί να δημιουργήσει και νέες δικές της θυγατρικές, δημιουργώντας ένα δέντρο Διεργασιών. Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 7

8 Ορισμός Διεργασίας (4) Τυπικό δένδρο Διεργασιών σε Σχήμα: Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 8

9 Ορισμός Διεργασίας (5) Η δουλειά του χρονοπρογραμματιστή (Χ/Π): Δεν επιτρέπει να μονοπωλείται η CPU από μία και μοναδική Διεργασία. Ο σκοπός αυτής της ρύθμισης είναι η αντιμετώπιση του "μόνιμου προβλήματος". Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 9

10 Καταστάσεις Διεργασιών (1) Τρεις (3) είναι οι δυνατές καταστάσεις Διεργασίας: 1. Εκτελούμενη (running), όταν εκείνη τη στιγμή αυτή η Διεργασία απασχολεί τη CPU, 2. Προς εκτέλεση (ready), όταν παρότι είναι η ίδια έτοιμη να χρησιμοποιήσει τη CPU, έχει διακοπεί προσωρινά επειδή η CPU διατίθεται για την εκτέλεση άλλων Διεργασιών, και 3. Σε αναστολή (blocked), περιμένοντας κάποιο συμβάν (για παράδειγμα, περιμένοντας να της διατεθούν κάποια δεδομένα τα οποία χρειάζεται ή να δοθεί εντολή από τον χρήστη κλπ) Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 10

11 Καταστάσεις Διεργασιών (2) Επιτρεπόμενες μεταβολές κατάστασης Διεργασίας: Με απόφαση του Χ/Π : 1. Από "εκτελούμενη" σε "προς εκτέλεση" (timer-run-out) 2. Από "προς εκτέλεση" σε "εκτελούμενη" (dispatch) Λόγω εξωτερικού συμβάντος: 3. Από "εκτελούμενη" σε "σε αναστολή" (block) Λόγω του ότι συνέβη το αναμενόμενο εξωτερικό γεγονός: 4. Από "σε αναστολή" σε "προς εκτέλεση" (wakeup) Απαγορεύεται η απευθείας μεταβολή από "σε αναστολή" σε "εκτελούμενη" Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 11

12 Καταστάσεις Διεργασιών (3) Ο χρήστης ή ο υπερχρήστης μπορεί να ζητήσει ΜΟΝΟ ΔΥΟ μεταβολές κατάστασης, την "3" και την "4": 3. Από "εκτελούμενη" σε "σε αναστολή" 4. Από "σε αναστολή" σε "προς εκτέλεση" ΕΠΙΣΗΣ, Ο χρήστης ή ο υπερχρήστης έχει συνήθως KAI ακυρωτική εξουσία: Η οποία συνήθως συνεπάγεται την καταστροφή μιας Διεργασίας (kill, cancel) Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 12

13 Καταστάσεις Διεργασιών (4) Η ακυρωτική εξουσία του υπερχρήστη είναι περιορισμένη: Ο υπερχρήστης συνήθως δεν εξουσιοδοτείται να καταστρέψει μία Διεργασία Συστήματος από την οποία εξαρτάται η καλή λειτουργία του Λ/Σ ΕΠΙΠΛΕΟΝ, Το Λ/Σ έχει και αυτό ακυρωτική εξουσία: Η οποία συνήθως εκτελείται αυτόματα και ο χρήστης δεν την αντιλαμβάνεται (transparent, invisible). Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 13

14 Καταστάσεις Διεργασιών (5) Επιτρεπόμενες μεταβολές κατάστασης Διεργασίας, σχηματικά: Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 14

15 Καταστάσεις Διεργασιών (6) Η καταστροφή Διεργασίας σημαίνει ουσιαστικά την ακύρωση - εξαφάνιση της από τον Η/Υ. Ταυτόχρονα, οι πόροι που χρησιμοποιούσε επιστρέφονται στον Η/Υ και σβήνεται σχεδόν κάθε σχετική πληροφορία. Η καταστροφή Διεργασίας που έχει ήδη δημιουργήσει Θυγατρικές είναι λίγο περισσότερο πολύπλοκη από το συνηθισμένο. Σε ορισμένα Λ/Σ, ή καταστροφή Γονικής εξαφανίζει αυτόματα και κάθε Θυγατρική της. Σε άλλα όμως, οι Θυγατρικές ανεξαρτητοποιούνται από τη Γονική. Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 15

16 Καταστάσεις Διεργασιών (7) Οι "προς εκτέλεση" Διεργασίες καταγράφονται με τη χρονική σειρά που προετοιμάζονται στον Κατάλογο Προς Εκτέλεση Διεργασιών (ready list). Η σειρά καταγραφής συσχετίζεται χαλαρά με τη σειρά προτεραιότητας. Η σειρά προτεραιότητας κανονίζεται τελικά από τον Χ/Π. Οι "σε αναστολή" Διεργασίες καταγράφονται στον Κατάλογο των Σε Αναστολή Διεργασιών (blocked list). Δεν υπάρχει εκεί η έννοια της προτεραιότητας. Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 16

17 Καταστάσεις Διεργασιών (8) ΓΙΑ ΜΟΝΟΕΠΕΞΕΡΓΑΣΤΙΚΑ ΣΥΣΤΗΜΑΤΑ: Μία CPU μπορεί να απασχολείται κάθε στιγμή από μία ΜΟΝΟ Διεργασία (1) 1. Αυτό επιτρέπεται να γίνεται μόνο για χρόνο Δt που ελέγχεται από τον Χ/Π, μετά η CPU ΠΡΕΠΕΙ να ασχοληθεί με άλλη Διεργασία. 2. Αν η Διεργασία ολοκληρωθεί σε χρόνο λιγότερο από τον Δt που της διατέθηκε, τότε η κατάστασή της μεταπίπτει σε "σε αναστολή" ή σε "προς εκτέλεση" ή καταστρέφεται και ο έλεγχος της CPU επιστρέφεται στο Λ/Σ. Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 17

18 Καταστάσεις Διεργασιών (9) Μία CPU μπορεί να απασχολείται κάθε στιγμή από μία ΜΟΝΟ Διεργασία (2) 3. Αν η Διεργασία σταματήσει σε χρόνο λιγότερο από τον Δt που της διατέθηκε, διότι π.χ. ζητά δεδομένα, η κατάστασή της μεταπίπτει σε "σε αναστολή" και ο έλεγχος της CPU επιστρέφεται στο Λ/Σ. 4. Αν η Διεργασία ΔΕΝ ολοκληρωθεί στο χρόνο Δt που της διατέθηκε, τότε ο Χ/Π στέλνει στην CPU ένα σήμα διακοπής (interrupt) και η κατάστασή της μεταπίπτει σε "προς εκτέλεση". Ο έλεγχος της CPU επιστρέφεται στο Λ/Σ. Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 18

19 Καταστάσεις Διεργασιών (10) Μία CPU μπορεί να απασχολείται κάθε στιγμή από μία ΜΟΝΟ Διεργασία (3) 5. Στις περιπτώσεις (2), (3) και (4) το Λ/Σ αναθέτει στην CPU επόμενη Διεργασία που επιλέγεται από το ready list. 6. Τυχόν μη ολοκληρωμένες Διεργασίες που σταμάτησαν να απασχολούν την CPU για κάποιο από τους πιο πάνω λόγους, περιμένουν στο blocked list ή στο ready list ώστε να ξαναέρθει η σειρά τους να απασχολήσουν την CPU. 7. Ο αλγόριθμος χρονοπρογραμματισμού δεν είναι ο μοναδικός. Υπάρχουν και πολλοί άλλοι (ΔΕΙΤΕ ΤΙΣ ΣΗΜΕΙΩΣΕΙΣ ΣΑΣ). Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 19

20 Στόχοι Χρονοπρογραμματισμού & Αλγόριθμοι (1) Η αντιμετώπιση του μόνιμου προβλήματος, περιέχει κύριους αντικρουόμενους στόχους: Την Δικαιοσύνη: να λαμβάνει η κάθε Διεργασία ίσο ποσοστό χρήσης της CPU με όλες τις άλλες και την Αποδοτικότητα: να εξασφαλίζεται, δηλαδή, μέγιστο ποσοστό χρήσης της CPU. και δευτερεύοντες αντικρουόμενους στόχους: Την Ελαχιστοποίηση του χρόνου απόκρισης για τους χρήστες που εργάζονται διαλογικά (interactively) στον Η/Υ και την Ελαχιστοποίηση του χρόνου ολοκλήρωσης των εργασιών όταν χρησιμοποιείται η μέθοδος υποβολής εργασιών κατά δέσμες (batch). Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 20

21 Στόχοι Χρονοπρογραμματισμού & Αλγόριθμοι (2) Δύο είναι οι κλάσεις αλγορίθμων Χ/Π: 1. Κλάση "1": αλγόριθμοι που, από τη στιγμή που ξεκινήσει μια Διεργασία την εκτέλεσή της, δεν επιτρέπουν αυτή να διακοπεί πριν την ολοκλήρωσή της. Ονομάζονται αλγόριθμοι Χ/Π χωρίς προ-εκχώρηση (non-preemptive scheduling algorithms). Η χρήση τους δεν εξυπηρετεί Η/Υ με πολλούς χρήστες που ζητούν ανταγωνιστικά τη χρήση των πόρων. 2. Κλάση "2": αλγόριθμοι με προ-εκχώρηση (preemptive scheduling algorithms) που επιτρέπουν τη συνεχή και ελεγχόμενη εναλλαγή Διεργασιών στη CPU. Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 21

22 Στόχοι Χρονοπρογραμματισμού & Αλγόριθμοι (3) Swapping: Επειδή οι Διεργασίες που είναι "προς εκτέλεση" ή "σε αναστολή" απασχολούν άδικα την Κεντρική Μνήμη, σπαταλώντας χρήσιμο αποθηκευτικό χώρο σε βάρος άλλων εκτελούμενων Διεργασιών, σε πολλά Λ/Σ κρίνεται σκόπιμο να εγκαταλείψουν αυτές προσωρινά την Κεντρική Μνήμη και να μεταφερθούν σε άλλο χώρο μέχρι να έρθει πάλι "η σειρά τους". Η προσωρινή απομάκρυνση από την Κεντρική Μνήμη (swapping) εξασφαλίζει τη διαθεσιμότητα του μεγαλύτερου τμήματος της Κεντρικής Μνήμης για τις εκτελούμενες Διεργασίες και μπορεί να διευκολύνει το έργο του Χ/Π. Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 22

23 Περιγραφέας Διεργασίας (1) Μία Διεργασία σε ένα Λ/Σ γίνεται αντιληπτή από αυτό με τη βοήθεια του Περιγραφέα Διεργασίας (process descriptor, Π/Δ). Ο Π/Δ είναι το σύνολο πληροφοριών που αφορούν μια Διεργασία και μέσω αυτών μπορεί να ελέγχεται αυτή από το Λ/Σ. Ο Π/Δ ονομάζεται αλλιώς και μπλοκ ελέγχου της Διεργασίας (process control block, ή συντομογραφικά PCB). Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 23

24 Περιγραφέας Διεργασίας (2) Οι βασικές πληροφορίες που περιέχει ο Π/Δ είναι: την κατάσταση // πληροφορίες για τη μονοσήμαντη αναγνώριση κάθε Διεργασίας (συνήθως έναν αριθμό) // ένα δείκτη που δείχνει ποια είναι η Γονική Διεργασία // ένα ή περισσότερους δείκτες που καθορίζουν τις Θυγατρικές // την προτεραιότητα που κάθε στιγμή (δυναμικά) δίνεται στη Διεργασία // δείκτες που καθορίζουν το χώρο μνήμης που είναι συνδεδεμένος με τη Διεργασία // δείκτες που καθορίζουν Πόρους συνδεδεμένους με τη Διεργασία // τον επεξεργαστή στον οποίο "τρέχει" η Διεργασία αυτή // την περιοχή καταχώρησης της διεργασίας (register save area). Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 24

25 Περιγραφέας Διεργασίας (3) Η register save area χρειάζεται όταν η CPU, για οποιονδήποτε λόγο ασχολείται με άλλες Διεργασίες, οπότε εκεί αποθηκεύεται κάθε πληροφορία, η οποία θα χρειαστεί όταν η CPU επανέλθει στη Διεργασία αυτή. Ο Π/Δ είναι μια ουσιώδης ποσότητα που συνοδεύει κάθε Διεργασία για το Λ/Σ. Οι πληροφορίες στον Π/Δ πρέπει να χρησιμοποιούνται με μεγάλη ταχύτητα από το Λ/Σ, κάθε φορά που αυτό τις χρειάζεται. Για το λόγο αυτό, αρκετοί Η/Υ περιέχουν ειδικό Υλικό (hardware register), το οποίο πάντα "δείχνει" τον Π/Δ της Διεργασίας. Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 25

26 Σήματα Διακοπών (1) Σε έναν Η/Υ το συμβάν εκείνο το οποίο μπορεί να μεταβάλει τη σειρά με την οποία η CPU εκτελεί ορισμένες εργασίες ονομάζεται Σήμα Διακοπής (interrupt). Τα Σήματα Διακοπών (Σ/Δ) δημιουργούνται από το Υλικό του Η/Υ. Για παράδειγμα, στο Υλικό υπάρχουν χρονομετρητές διαστημάτων (interval timers) που, κυρίως για Η/Υ με πολλούς χρήστες, αποτρέπουν τη μονοπώληση της CPU ή άλλων πόρων από τον ίδιο χρήστη ή την ίδια Διεργασία. Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 26

27 Σήματα Διακοπών (2) Όταν η CPU λάβει ένα Σ/Δ συμβαίνουν, τα εξής : 1. Το Λ/Σ ξαναπαίρνει τον έλεγχο της CPU 2. Το Λ/Σ φροντίζει να αποθηκευτεί η τρέχουσα κατάσταση της διακοπείσας Διεργασίας 3. Το Λ/Σ αναλύει τη διακοπή μέσω Υλικού και Λογισμικού (το σχετικό λογισμικό ονομάζεται υποπρόγραμμα διαχείρισης διακοπών interrupt handler routine), 4. Ανακτάται κάθε πληροφορία σχετικά με την κατάσταση της "επόμενης" Διεργασίας που θα εκτελεστεί στη CPU, και 5. Ξεκινά η εκτέλεση της Διεργασίας αυτής. Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 27

28 Σήματα Διακοπών (3) Η χρήση Σ/Δ για την επανάκτηση του ελέγχου της CPU από το Λ/Σ έχει το πλεονέκτημα του χαμηλού πρόσθετου κόστους (overhead). Η εκτέλεση ενός Σ/Δ στοιχίζει σε χρόνο και πόρους, όμως το κόστος είναι πολύ μικρότερο από αυτό που θα υπήρχε αν η ίδια η CPU έπρεπε διαρκώς να ασχολείται με το αν κάτι "άλλο" συσκευή, χρήστης, λογισμικό κλπ χρειάζεται την "προσοχή" της. Από την άλλη πλευρά, το μειονέκτημα των Η/Υ που η οργάνωσή τους οφείλεται στην τεχνική των Σ/Δ είναι ο κίνδυνος της υπερφόρτωσης (overloading). Υπερφόρτωση μπορεί να συμβεί όταν οι διακοπές φτάνουν τόσο γρήγορα που ο Η/Υ αδυνατεί να τις εξυπηρετήσει. Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 28

29 Σήματα Διακοπών (4) Κατηγορίες Σ/Δ: 1. Σ/Δ κλήσης επόπτη (supervisor call interrupts ή svc) 2. Σ/Δ εισόδου / εξόδου (Ι/Ο interrupts) 3. Εξωτερικά Σ/Δ (external interrupts) 4. Σ/Δ επανεκκίνησης (restart interrupts) 5. Σ/Δ ελέγχου προγράμματος (program check interrupts) 6. Σ/Δ ελέγχου μηχανής (machine check interrupts) Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 29

30 Σήματα Διακοπών (5) 1. Σ/Δ κλήσης επόπτη: Αυτά τα Σ/Δ προκαλούνται από το χρήστη όταν ζητά υπηρεσίες από τον Η/Υ (λ.χ. ζητά εργασίες Ι/Ο ή ίσως περισσότερο αποθηκευτικό χώρο). Στην πραγματικότητα, τα Σ/Δ svc προστατεύουν έναν Η/Υ από τις αδεξιότητες ή τις παράλογες απαιτήσεις χρηστών. Ο κάθε χρήστης, αν θέλει να ζητήσει κάποια υπηρεσία από το Λ/Σ, αυτό το κάνει με ένα Σ/Δ svc. Έτσι, το Λ/Σ είναι κάθε στιγμή ενήμερο των απαιτήσεων και των διαθέσεων των χρηστών και φυσικά μπορεί να αρνηθεί κάποια από αυτά τα Σ/Δ. Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 30

31 Σήματα Διακοπών (6) 2. Σ/Δ Ι/Ο: Είναι τα Σ/Δ που έχουν προέλευση το Υλικό Ι/Ο. Προκαλούνται όταν π.χ. ολοκληρωθεί μια Διεργασία Ι/Ο, όταν δηλαδή μια συσκευή Ι/Ο γίνει πάλι διαθέσιμη. 3. Εξωτερικά Σ/Δ: Είναι τα Σ/Δ που προκαλούνται από διάφορα συμβάντα, συμπεριλαμβανομένων και των Σ/Δ που οφείλονται στο ότι εξέπνευσε το Δt που ο Χ/Π διέθεσε σε μια διεργασία. Στην ίδια κατηγορία ανήκουν και τα Σ/Δ που φθάνουν σε μία CPU από άλλες CPU, σε ένα παράλληλο πολυ-επεξεργαστικό H/Y. Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 31

32 Σήματα Διακοπών (7) 4. Σ/Δ επανεκκίνησης: Όταν ξεκινά ή επανεκκινεί το σύστημα 5. Σ/Δ ελέγχου προγράμματος: Τέτοιο Σ/Δ λ.χ. θα προκαλέσει τη διακοπή ενός Προγράμματος που εκτελείται αν επιχειρηθεί διαίρεση με το μηδέν ή ο υπολογισμός της τετραγωνικής ρίζας αρνητικού αριθμού. 6. Σ/Δ ελέγχου μηχανής: Σ/Δ που προκύπτουν λόγω δυσλειτουργίας Υλικού Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 32

33 Πυρήνας του Λ/Σ (1) Ό,τι συμβαίνει στον Η/Υ σε σχέση με τις Διεργασίες ελέγχεται και υλοποιείται σε ένα τμήμα του Λ/Σ που ονομάζεται Πυρήνας (kernel, core ή nucleus). Ο Πυρήνας συνήθως αποτελεί ένα μικρό μόνο τμήμα του Λογισμικού του Λ/Σ, αλλά είναι εκείνο το τμήμα που χρησιμοποιείται περισσότερο εντατικά από οτιδήποτε άλλο. Για το λόγο αυτό, ο Πυρήνας του Λ/Σ βρίσκεται πάντοτε στον πρωτεύοντα αποθηκευτικό χώρο, στην Κεντρική Μνήμη, ενώ άλλα τμήματα του Λ/Σ είναι πιθανόν να βρίσκονται άλλοτε στον πρωτεύοντα και άλλοτε στο δευτερεύοντα χώρο. Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 33

34 Πυρήνας του Λ/Σ (2) Κατάσταση Πυρήνα (kernel mode): Το Λ/Σ είναι σχεδόν το μοναδικό τμήμα του Λογισμικού, το οποίο "τρέχει" σε κατάσταση Πυρήνα (kernel mode). Σε αυτή την κατάσταση το Λ/Σ έχει πλήρη και απεριόριστη πρόσβαση σε όλο το Υλικό. Μπορεί να εκτελέσει όλες τις εντολές της CPU και να χρησιμοποιήσει όλες τις θέσεις μνήμης. Η κατάσταση Πυρήνα χρησιμοποιείται από τις κυριότερες και απαραίτητες λειτουργίες ενός Λ/Σ. Αστοχίες στην κατάσταση αυτή (kernel crashes) είναι καταστροφικές και σταματούν τον Η/Υ. Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 34

35 Πυρήνας του Λ/Σ (3) Κατάσταση Χρήστη (user mode): Όλο το υπόλοιπο Λογισμικό (και είναι το συντριπτικά περισσότερο), δηλ. πολλά από τα Προγράμματα Συστήματος και τα Προγράμματα Εφαρμογών "τρέχουν" πάντοτε στη λεγόμενη κατάσταση χρήστη (user mode). Σε αυτή τα εκτελούμενα προγράμματα δεν έχουν δικαιώματα άμεσης πρόσβασης στο Υλικό ή στις θέσεις μνήμης αλλά μόνο έμμεση μέσω του Λ/Σ. Η κατάσταση χρήστη προστατεύει τον Η/Υ από τα λάθη ή την κακόβουλη δραστηριότητα ενός χρήστη. Αστοχίες στην κατάσταση χρήστη δεν πρέπει κανονικά να οδηγούν στο σταμάτημα του Η/Υ. Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 35

36 Πυρήνας του Λ/Σ (4) Διαχείριση Σ/Δ (1): Μια από τις πιο σημαντικές εργασίες που αναλαμβάνει ο Πυρήνας είναι η διαχείριση των Σ/Δ γρήγορα και αποδοτικά ώστε να υπάρχουν ικανοποιητικοί χρόνοι απόκρισης για τους διαλογικούς χρήστες. Τη στιγμή που ο Πυρήνας ασχολείται με ένα Σ/Δ αφήνει σε αναμονή όλα τα άλλα Σ/Δ. Ένα από τα επόμενα Σ/Δ θα ενεργοποιηθεί και θα απασχολήσει τον Πυρήνα μόλις αυτός ολοκληρώσει το προηγούμενο. Αν ένα Σ/Δ απασχολεί τον Πυρήνα για σημαντικό χρόνο, είναι ιδιαίτερα άσχημο για τους διαλογικούς χρήστες και δημιουργεί μεγάλους χρόνους απόκρισης. Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 36

37 Πυρήνας του Λ/Σ (5) Διαχείριση Σ/Δ (2): Σε τέτοια περίπτωση, λόγω του μεγάλου αριθμού Σ/Δ που ενδεχόμενα θα συνεχίσουν να φθάνουν, θα μεγάλωνε δραματικά και η λίστα αναμονής Σ/Δ προς εξυπηρέτηση. Για να αποφευχθούν τέτοιες καταστάσεις, ο Πυρήνας κάνει το ελάχιστο δυνατό για κάθε Σ/Δ που φθάνει σε αυτόν και αμέσως μετά την παραπέμπει σε άλλα τμήματα του Λ/Σ. Έτσι, ο Πυρήνας ελευθερώνεται και απασχολείται με την επόμενη διακοπή. Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 37

38 Διαδιεργασιακή Επικοινωνία & Ανταγωνισμός (1) Επιγραμματική παρουσίαση (1): Δύο ή περισσότερες Διεργασίες οι οποίες συνυπάρχουν χρονικά ονομάζονται ταυτόχρονες ή παράλληλες (concurrent). Οι παράλληλες Διεργασίες μπορεί να είναι τελείως ανεξάρτητες ή να είναι ασύγχρονες (asynchronous) και περιοδικά να απαιτούν συγχρονισμό και συνεργασία. Η συνεργασία Διεργασιών μπορεί να γίνει με τη λεγόμενη διαδιεργασιακή επικοινωνία (inter-process communication). Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 38

39 Διαδιεργασιακή Επικοινωνία & Ανταγωνισμός (2) Επιγραμματική παρουσίαση (2): Πολλές φορές δυο ή περισσότερες Διεργασίες χρειάζεται να επικοινωνήσουν διότι έχουν πρόσβαση στις ίδιες θέσεις μνήμης του Η/Υ, π.χ. χρειάζεται να χειριστούν κοινές μεταβλητές (shared variables) που χρησιμοποιούνται, ως δείκτες (flags) ή π.χ. για τη σωρευτική αποθήκευση αποτελεσμάτων κλπ. Αν η χρήση (γράψιμο-διάβασμα) των ίδιων θέσεων μνήμης γίνει ανεξέλεγκτα, τότε μπορούν να συμβούν πολλά προβλήματα και λάθη στη λειτουργία του Η/Υ. Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 39

40 Διαδιεργασιακή Επικοινωνία & Ανταγωνισμός (4) Παράδειγμα Παραγωγού Καταναλωτή (1): Ένα τυπικό πρόβλημα διαδιεργασιακής επικοινωνίας, είναι το πρόβλημα του παραγωγού-καταναλωτή (producer-consumer relationship). Αφορά δύο Διεργασίες, από τις οποίες η πρώτη (ο παραγωγός) παράγει πληροφορία την οποία η δεύτερη (καταναλωτής) χρησιμοποιεί. Για την ανταλλαγή αυτή της πληροφορίας, χρησιμοποιούν ενδιάμεση μνήμη (buffer). Έστω για παράδειγμα ότι η πρώτη Διεργασία - παραγωγός εκτελεί υπολογισμούς και το αποτέλεσμα τους γράφεται στην μεταβλητή numberbuffer, την οποία πρέπει να διαβάσει η δεύτερη Διεργασία καταναλωτής. Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 40

41 Διαδιεργασιακή Επικοινωνία & Ανταγωνισμός (5) Παράδειγμα Παραγωγού Καταναλωτή (2): Όσο οι δυο διεργασίες ακολουθούν μια συντονισμένη χρονική ροή, κατά την οποία ο παραγωγός δίνει τιμή στην κοινή μεταβλητή numberbuffer πριν τη διαβάσει ο καταναλωτής και της ξαναδίνει νέα τιμή αμέσως μετά, η συνεργασία τους είναι απόλυτα αρμονική. Αν όμως λ.χ. ο καταναλωτής ενεργεί ταχύτερα από τον παραγωγό, τότε ενδεχομένως θα διαβάσει και θα τυπώσει πολλαπλές φορές τον ίδιο αριθμό, πράγμα που είναι ανεπιθύμητο. Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 41

42 Διαδιεργασιακή Επικοινωνία & Ανταγωνισμός (6) Παράδειγμα Παραγωγού Καταναλωτή (3): Στην αντίθετη περίπτωση, ένας γρήγορος παραγωγός θα γράφει αρκετές φορές την πληροφορία του στην κοινή μεταβλητή πριν τη διαβάσει ο καταναλωτής. Τότε, μόνο ορισμένες τιμές θα φθάνουν στον καταναλωτή και όλες οι ενδιάμεσες θα χάνονται λόγω της επικαλυπτόμενης εγγραφής (overwriting) στην ίδια μεταβλητή. Το πρόβλημα είναι ένα πρόβλημα Ανταγωνισμού και πρέπει να λυθεί εισάγοντας διαδικασίες ελέγχου για το πότε μπορεί να γραφεί η κοινή μεταβλητή από τον παραγωγό και για το πότε αυτή πρέπει να διαβαστεί από τον καταναλωτή. Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 42

43 Διαδιεργασιακή Επικοινωνία & Ανταγωνισμός (7) Παράδειγμα Παραγωγού Καταναλωτή (4): Τα συγκεκριμένα τμήματα των Διεργασιών του παραγωγού και του καταναλωτή που χρειάζονται κοινές μεταβλητές ή γενικότερα κοινές περιοχές στο χώρο διευθύνσεων της μνήμης λέγονται κρίσιμα τμήματα (critical parts). Αν είχε εξασφαλιστεί ότι δύο ή περισσότερες Διεργασίες δε θα βρεθούν ποτέ ταυτόχρονα στα κρίσιμα τμήματά τους το πρόβλημα Ανταγωνισμού δεν θα υπήρχε. Αυτό βέβαια δεν είναι δυνατό να εξασφαλισθεί και για αυτό δίνονται τέσσερις κανόνες που πρέπει να διέπουν κάθε διαδιεργαστική επικοινωνία. Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 43

44 Διαδιεργασιακή Επικοινωνία & Ανταγωνισμός (8) Τέσσερις κανόνες επικοινωνίας: 1. Δύο Διεργασίες δεν πρέπει να βρίσκονται ταυτόχρονα στα κρίσιμα τμήματα τους όταν επικοινωνούν. 2. Δεν επιτρέπεται ο προγραμματισμός με βάση υποθέσεις σε ότι αφορά την ταχύτητα ή το πλήθος των επεξεργαστών. 3. Διεργασία που δε βρίσκεται σε κρίσιμο τμήμα της δεν επιτρέπεται να αναστείλει άλλες Διεργασίες. 4. Δεν επιτρέπεται η επ αόριστο αναμονή μιας Διεργασίας για να εισέλθει στο κρίσιμο τμήμα της. Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 44

45 Διαδιεργασιακή Επικοινωνία & Ανταγωνισμός (9) Αμοιβαίος αποκλεισμός (mutual exclusion): Πρόκειται για τον αποκλεισμό μιας Διεργασίας από κάποια ενέργεια που ταυτόχρονα εκτελεί μια άλλη Διεργασία. Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 45

46 Κλήσεις Συστήματος & Διεργασίες (1) Η συνεργασία των Προγραμμάτων Εφαρμογών (αυτών δηλαδή των προγραμμάτων με τα οποία αλληλεπιδρά ο χρήστης) με το Λ/Σ σύστημα ενός Η/Υ γίνεται με τις λεγόμενες Κλήσεις Συστήματος (system calls). Παράδειγμα: Ο χρήστης λ.χ. ζητά, με μία εντολή που πληκτρολογεί στο τερματικό του, τη φόρτωση στην Κεντρική Μνήμη και το τρέξιμο ενός προγράμματός του. Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 46

47 Κλήσεις Συστήματος & Διεργασίες (2) Παράδειγμα (συνέχεια): Ένα από τα Προγράμματα Συστήματος, το ονομαζόμενο "Φλοιός" (shell) "διαβάζει" εντολές από το τερματικό και έτσι αντιλαμβάνεται την απαίτηση του χρήστη. Ο Φλοιός τότε δημιουργεί μία Κλήση Συστήματος, μέσω της οποίας ξεκινά μία Διεργασία που τελικά θα τρέξει το πρόγραμμα του χρήστη. Όταν τελειώσει το "τρέξιμο" που ζητήθηκε, δηλαδή η σχετική Διεργασία, τότε δημιουργείται μία άλλη Διεργασία που εκτελεί μία άλλη Κλήση Συστήματος για να τερματίσει την αρχική Διεργασία αλλά και τον εαυτό της. Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 47

48 Κλήσεις Συστήματος & Διεργασίες (3) Οι Κλήσεις Συστήματος σκοπό έχουν να δημιουργούν, να καταστρέφουν και να χρησιμοποιούν οντότητες λογισμικού, όπως είναι οι Διεργασίες και τα Αρχεία. Τυπικές Κλήσεις Συστήματος (Κ/Σ): CREATE // DELETE // ABORT // FORK // JOIN // SUSPEND // CHANGE_PRIORITY // GET_ATTRIBUTES κ.ά. Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 48

49 Κλήσεις Συστήματος & Διεργασίες (4) Κανόνας: Μία Διεργασία πρέπει πάντοτε να δημιουργηθεί από μια άλλη Διεργασία με μία Κ/Σ. 1. Κ/Σ CREATE: Με την κλήση CREATE το Λ/Σ δημιουργεί μια νέα Διεργασία και της δίνει τα βασικά ιδιοχαρακτηριστικά της (attributes) και επιλέγει ένα νέο Περιγραφέα Διεργασίας από τους διαθέσιμους, τον αντιστοιχεί στη νέα Διεργασία και τον ελέγχει στον κατάλογο των "προς εκτέλεση" Διεργασιών ώστε να μπορέσει, με τη σειρά της, να γίνει "εκτελούμενη". Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 49

50 Κλήσεις Συστήματος & Διεργασίες (5) 2. Κ/Σ DELETE: Αλλιώς: DESTROY ή TERMINATE. Με την Κ/Σ DELETE προκαλείται ο συνήθως ομαλός τερματισμός (δηλ. αφού ολοκληρωθεί) μίας Διεργασίας και η απελευθέρωση του Περιγραφέα της για επόμενη διαφορετική χρήση. Η Κ/Σ DELETE συνήθως συνδέεται με τον τερματισμό της εκτέλεσης ενός Προγράμματος. 3. Κ/Σ ABORT: Αλλιώς: KILL. Με την Κ/Σ ABORT προκαλείται ο βίαιος και εξαναγκασμένος τερματισμός μίας Διεργασίας. Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 50

51 Κλήσεις Συστήματος & Διεργασίες (6) 4. Κ/Σ FORK: Με την Κ/Σ FORK προκαλείται τη δημιουργία νέας Διεργασίας με τη διάσπαση μιας αλληλουχίας εντολών σε δυο τμήματα που θα εκτελεστούν ταυτόχρονα. Η νέα Θυγατρική Διεργασία θα εκτελέσει ένα τμήμα των εντολών, την ώρα που οι υπόλοιπες θα εκτελούνται από τη Γονική Διεργασία. 5. Κ/Σ JOIN: Με την Κ/Σ JOIN καταστρέφει τη Θυγατρική Διεργασία που προκλήθηκε από μια προηγούμενη Κ/Σ FORK. Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 51

52 Κλήσεις Συστήματος & Διεργασίες (7) 6. Κ/Σ SUSPEND: Αλλιώς: BLOCK ή SLEEP. Με την Κ/Σ SUSPEND μια Διεργασία τίθεται σε "σε αναστολή". Μια Διεργασία μπορεί να χρησιμοποιήσει την κλήση αυτή για να θέσει σε αναστολή τον εαυτό της ή μια οποιαδήποτε άλλη Διεργασία, αρκεί να έχει αυτό το δικαίωμα (και τη σχετική προτεραιότητα). 7. Κ/Σ CHANGE_PRIORITY: Με αυτήν την Κ/Σ προκαλείται αλλαγή προτεραιότητας σε μια Διεργασία. Η προτεραιότητα μίας Διεργασίας μπορεί να αυξάνεται ή να ελαττώνεται για να διευκολύνεται ο Χ/Π. Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 52

53 Κλήσεις Συστήματος & Διεργασίες (8) 8. Κ/Σ GET_ATTRIBUTES: Γίνεται από το Λ/Σ και είναι μια αίτηση αλλαγής των ιδιοχαρακτηριστικών μίας Διεργασίας, με τροποποίηση μέρους των περιεχομένων του Περιγραφέα. Λειτουργικά Συστήματα και Γλώσσες Προγραμματισμού 53

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

ιεργασίες και νήµατα Προγραµµατισµός ΙΙΙ 1 lalis@inf.uth.gr ιεργασίες και νήµατα Προγραµµατισµός ΙΙΙ 1 lalis@inf.uth.gr Η έννοια της διεργασίας ιεργασία (process) είναι ο µηχανισµός εκτέλεσης ενός προγράµµατος σε ένα λειτουργικό σύστηµα. Η διεργασία είναι µια ενεργή

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

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

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

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

Ένα πρόγραμμα σε εκτέλεση, Μια ασύγχρονη δραστηριότητα,

Ένα πρόγραμμα σε εκτέλεση, Μια ασύγχρονη δραστηριότητα, Διεργασίες 1. Εισαγωγή - ορισμοί 2. Καταστάσεις διεργασίας 3. Διαγράμματα καταστάσεων 4. Μπλοκ ελέγχου διεργασίας PCB 5. Υπηρεσίες Λ.Σ. για διαχείριση διεργασιών 6. Εναλλαγή Πλαισίου (Context Switch) 7.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Λειτουργικά Συστήματα (ΗΥ321) Λειτουργικά Συστήματα (ΗΥ321) Διάλεξη 17: Χειρισμός Εισόδου - Εξόδου Συστήματα Εισόδου / Εξόδου: Το Υλικό Ε/Ε Μεγάλη ποικιλία συσκευών Ε/Ε Και μεγαλώνει Συνηθισμένες έννοιες: Πόρτα Δίαυλος Κοινό μέσο πρόσβασης

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

Λειτουργικά Συστήματα 1.1 Τι είναι Λειτουργικό Σύστημα (Operating System)

Λειτουργικά Συστήματα 1.1 Τι είναι Λειτουργικό Σύστημα (Operating System) Υλικό Hardware Λογισμικό Software... κώδικας ΥΛΙΚΟ Κάθε ηλεκτρονικό, ηλεκτρικό και μηχανικό μέρος του Η/Υ. ΛΟΓΙΣΜΙΚΟ Προγράμματα,δηλαδή οδηγίες γιατοτιπρέπεινακάνειοη/υ. Λειτουργικό Σύστημα Είναι ένα βασικό

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Ενότητα 6 (Κεφάλαιο 9) Χρονοδρομολόγηση

Ενότητα 6 (Κεφάλαιο 9) Χρονοδρομολόγηση ΕΠΛ222: Λειτουργικά Συστήματα (μετάφραση στα ελληνικά των διαφανειών του βιβλίου Operating Systems: Internals and Design Principles, 8/E, William Stallings) Ενότητα 6 (Κεφάλαιο 9) Χρονοδρομολόγηση Οι διαφάνειες

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

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

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

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

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

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

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

Λειτουργικά Συστήματα 7ο εξάμηνο, Ακαδημαϊκή περίοδος

Λειτουργικά Συστήματα 7ο εξάμηνο, Ακαδημαϊκή περίοδος ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ KΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ http://www.cslab.ece.ntua.gr Λειτουργικά

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

Το λειτουργικό σύστημα. Προγραμματισμός II 1

Το λειτουργικό σύστημα. Προγραμματισμός II 1 Το λειτουργικό σύστημα Προγραμματισμός II 1 lalis@inf.uth.gr Συστήματα υπολογιστών Ειδικού σκοπού συστήματα για μια συγκεκριμένη εφαρμογή η εφαρμογή είναι γνωστή εκ των προτέρων περιορισμένοι υπολογιστικοί

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

Ιστορική Αναδρομή Λειτουργικών Συστημάτων (ΛΣ) Εισαγωγή : ο πυρήνας (kernel) / ο φλοιός (shell) Β ΕΠΑΛ

Ιστορική Αναδρομή Λειτουργικών Συστημάτων (ΛΣ) Εισαγωγή : ο πυρήνας (kernel) / ο φλοιός (shell) Β ΕΠΑΛ Ιστορική Αναδρομή Λειτουργικών Συστημάτων (ΛΣ) Εισαγωγή : ο πυρήνας (kernel) / ο φλοιός (shell) Β ΕΠΑΛ http://leitourgika-systhmata-epal-b.ggia.info/ Σύγχρονο Λειτουργικό Σύστημα - ΛΣ Λειτουργικό Σύστημα:

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

Κεφάλαιο 4 Σύνδεση Μικροεπεξεργαστών και Μικροελεγκτών ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ

Κεφάλαιο 4 Σύνδεση Μικροεπεξεργαστών και Μικροελεγκτών ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ Κεφάλαιο 4 Σύνδεση Μικροεπεξεργαστών και Μικροελεγκτών ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ 1. Παρακάτω δίνονται μερικοί από τους ακροδέκτες που συναντάμε στην πλειοψηφία των μικροεπεξεργαστών. Φτιάξτε έναν πίνακα που να

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

Εισαγωγή στα Λειτουργικά Συστήματα (Λ/Σ) Το UNIX και οι εντολές του Παρουσίαση 1

Εισαγωγή στα Λειτουργικά Συστήματα (Λ/Σ) Το UNIX και οι εντολές του Παρουσίαση 1 Λειτουργικά Συστήματα & Γλώσσες Προγραμματισμού Εισαγωγή στα Λειτουργικά Συστήματα (Λ/Σ) Το UNIX και οι εντολές του Παρουσίαση 1 1 Λειτουργικά Συστήματα & Γλώσσες Προγραμματισμού Διαφάνειες σύμφωνα με

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

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

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

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

Κεφάλαιο 4 Λογισμικό συστήματος. Εφαρμογές Πληροφορικής Κεφ.4 Καραμαούνας Πολύκαρπος 1

Κεφάλαιο 4 Λογισμικό συστήματος. Εφαρμογές Πληροφορικής Κεφ.4 Καραμαούνας Πολύκαρπος 1 Κεφάλαιο 4 Λογισμικό συστήματος Καραμαούνας Πολύκαρπος 1 4.1 Λογισμικό συστήματος (application software) Καραμαούνας Πολύκαρπος 2 Λογισμικό εφαρμογών (application software): προγράμματα για την αντιμετώπιση

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

Δίκτυα Επικοινωνιών ΙΙ: Network Programming UDP Sockets, Signals

Δίκτυα Επικοινωνιών ΙΙ: Network Programming UDP Sockets, Signals Δίκτυα Επικοινωνιών ΙΙ: Network Programming UDP Sockets, Signals Δρ. Απόστολος Γκάμας Διδάσκων 407/80 gkamas@uop.gr Δίκτυα Επικοινωνιών ΙΙ Διαφάνεια 1 1 UDP vs TCP Το UDP είναι ένα connectionless, μη αξιόπιστο,

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

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

Επιτεύγµατα των Λ.Σ. Επιτεύγµατα των Λ.Σ. ιεργασίες ιαχείριση Μνήµης Ασφάλεια και προστασία δεδοµένων Χρονοπρογραµµατισµός & ιαχείρηση Πόρων οµή Συστήµατος ιεργασίες Ένα πρόγραµµα σε εκτέλεση Ένα στιγµιότυπο ενός προγράµµατος

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Το λειτουργικό σύστημα. Προγραμματισμός II 1

Το λειτουργικό σύστημα. Προγραμματισμός II 1 Το λειτουργικό σύστημα Προγραμματισμός II 1 lalis@inf.uth.gr Συστήματα υπολογιστών Ειδικού σκοπού συστήματα για μια συγκεκριμένη εφαρμογή περιορισμένοι υπολογιστικοί / αποθηκευτικοί πόροι δεν τίθεται θέμα

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

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

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

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

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

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

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

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

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

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

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

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

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

Λειτουργικά Συστήματα 7ο εξάμηνο, Ακαδημαϊκή περίοδος

Λειτουργικά Συστήματα 7ο εξάμηνο, Ακαδημαϊκή περίοδος ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ KΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ http://www.cslab.ece.ntua.gr Λειτουργικά

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

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

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

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

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

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ H/Y ΤΕΙ ΗΠΕΙΡΟΥ ΣΧΟΛΗ ΙΟΙΚΗΣΗΣ ΚΑΙ ΟΙΚΟΝΟΜΙΑΣ ΤΜΗΜΑ ΤΗΛΕΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΙΟΙΚΗΣΗΣ ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ H/Y ΠΑΝΑΓΙΩΤΗΣ ΧΑΤΖΗ ΟΥΚΑΣ ΑΡΤΑ 2007 ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ Κεφάλαιο 1 Εισαγωγή... 1 1.1 Ορισµός λειτουργικού

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

Βασικές έννοιες. Κατανεμημένα Συστήματα 1

Βασικές έννοιες. Κατανεμημένα Συστήματα 1 Βασικές έννοιες Κατανεμημένα Συστήματα 1 lalis@inf.uth.gr Ορισμός κατανεμημένου συστήματος Ένα σύστημα από ξεχωριστές ενεργές οντότητες (ονομάζονται «κόμβοι» ή «διεργασίες») που εκτελούνται ταυτόχρονα/ανεξάρτητα

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

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

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

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

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

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

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

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

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

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

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

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

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

Εισαγωγή στα Λειτουργικά Συστήματα (Λ/Σ) Το UNIX και οι εντολές του Παρουσίαση 3

Εισαγωγή στα Λειτουργικά Συστήματα (Λ/Σ) Το UNIX και οι εντολές του Παρουσίαση 3 Λειτουργικά Συστήματα & Γλώσσες Προγραμματισμού Εισαγωγή στα Λειτουργικά Συστήματα (Λ/Σ) Το UNIX και οι εντολές του Παρουσίαση 3 1 Λειτουργικά Συστήματα & Γλώσσες Προγραμματισμού Διαφάνειες σύμφωνα με

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

ENOTHTA 5 XPONO POMOΛOΓHΣH

ENOTHTA 5 XPONO POMOΛOΓHΣH ENOTHTA 5 Περιεχόµενα 1. Xρονοδροµολόγηση 2. Eίδη χρονοδροµολόγησης 3. Στόχοι και κριτήρια της χρονοδροµολόγησης 4. Tαξινόµηση αλγόριθµων χρονοδροµολόγησης 5. Xρονοδροµολόγηση µε βάση τον χρόνο εισόδου

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

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

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

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

Λειτουργικά Συστήματα 7ο εξάμηνο, Ακαδημαϊκή περίοδος

Λειτουργικά Συστήματα 7ο εξάμηνο, Ακαδημαϊκή περίοδος ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ KΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ http://www.cslab.ece.ntua.gr Λειτουργικά

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

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

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

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

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

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

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

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

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

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

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

Ι.Ε.Κ. Χαϊδαρίου ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ. Σημειώσεις Θεωρίας Ι.Ε.Κ. Χαϊδαρίου ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΙΙ Σημειώσεις Θεωρίας Αθήνα 2015 Μάθημα 1: Λειτουργικά Συστήματα 1.1 Γενικά Κάθε υπολογιστικό σύστημα αποτελείται από: Υπολογιστικό Σύστημα Υλικό (Hardware) Λογισμικό

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

Εικονική Μνήμη (Virtual Μemory)

Εικονική Μνήμη (Virtual Μemory) ΗΥ 431 Αρχιτεκτονική Παραλλήλων Συστημάτων Διάλεξη 16 Εικονική Μνήμη (Virtual Μemory) Νίκος Μπέλλας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ Απλό πείραμα int *data = malloc((1

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

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

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

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

Το λειτουργικό σύστημα. Προγραμματισμός II 1

Το λειτουργικό σύστημα. Προγραμματισμός II 1 Το λειτουργικό σύστημα Προγραμματισμός II 1 lalis@inf.uth.gr Συστήματα υπολογιστών Ειδικού σκοπού συστήματα για μια συγκεκριμένη εφαρμογή η εφαρμογή είναι γνωστή εκ των προτέρων περιορισμένοι υπολογιστικοί

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

Προγραμματισμός Ταυτόχρονος Προγραμματισμός

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

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

Βασικές έννοιες. Κατανεμημένα Συστήματα 1

Βασικές έννοιες. Κατανεμημένα Συστήματα 1 Βασικές έννοιες Κατανεμημένα Συστήματα 1 lalis@inf.uth.gr Ορισμός κατανεμημένου συστήματος Ένα σύστημα από ξεχωριστές ενεργές οντότητες (ονομάζονται «κόμβοι» ή «διεργασίες») που εκτελούνται ταυτόχρονα/ανεξάρτητα

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

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

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

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

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

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

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

Dr. Garmpis Aristogiannis - EPDO TEI Messolonghi

Dr. Garmpis Aristogiannis - EPDO TEI Messolonghi Προϋποθέσεις για Αµοιβαίο Αποκλεισµό Μόνο µία διεργασία σε κρίσιµο τµήµασεκοινό πόρο Μία διεργασία που σταµατά σε µη κρίσιµο σηµείο δεν πρέπει να επιρεάζει τις υπόλοιπες διεργασίες εν πρέπει να υπάρχει

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

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

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

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

Μάθημα 1 ο ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΤΩΝ ΛΕΙΤΟΥΡΓΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ

Μάθημα 1 ο ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΤΩΝ ΛΕΙΤΟΥΡΓΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ Μάθημα 1 ο ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΤΩΝ ΛΕΙΤΟΥΡΓΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ Τι είναι Λειτουργικό Σύστημα Κάθε Η/Υ αποτελείται από το Υλικό (Hardware) και το Λογισμικό (Software). Το Υλικό είναι το ηλεκτρικό, ηλεκτρονικό και

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

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

ροµολόγηση Επεξεργαστή ροµολόγηση Επεξεργαστή Κεφάλαιο 9 Στόχοι της ροµολόγησης Χρόνος Απόκρισης Throughput Αποδοτική χρήση επεξεργαστή Τύποι ροµολόγησης Μακροπρόθεσµη δροµολόγηση Μεσοπρόθεσµη δροµολόγηση Βραχυπρόθεσµη δροµολόγηση

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

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

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

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