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

Σχετικά έγγραφα

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ. Λειτουργικά Συστήματα

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Δίκτυα Υπολογιστών Firewalls. Χάρης Μανιφάβας

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Ιεραρχία Μνήμης. Εικονική μνήμη (virtual memory) Επεκτείνοντας την Ιεραρχία Μνήμης. Εικονική Μνήμη. Μ.Στεφανιδάκης

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

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

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

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

Εικονικοποίηση. Λειτουργικά Συστήματα Υπολογιστών 7ο Εξάμηνο,

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

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Εικονική Μνήμη. (και ο ρόλος της στην ιεραρχία μνήμης)

Εικονικοποίηση. Αρχιτεκτονική Υπολογιστών 5ο Εξάμηνο,

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

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

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

Εργαστήριο Λειτουργικών Συστημάτων. Minix Overview

Μάθημα 10 ο ΔΙΑΧΕΙΡΙΣΗ ΕΙΣΟΔΟΥ ΕΞΟΔΟΥ (INPUT/OUTPUT)

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

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

SNMP ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ

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

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

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

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

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

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

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

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

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

Κεφάλαιο 1ο Πολυπρογραμματισμός Πολυδιεργασία Κατηγορίες Λειτουργικών Συστημάτων

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

Κεφάλαιο 3 Λειτουργικά Συστήματα Β ΕΠΑΛ

Επικοινωνία Client/Server Απομακρυσμένη Κλήση Διαδικασιών

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

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

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

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

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

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

Μάθημα 4: Πρότυπα, Πρωτόκολλα & Υπηρεσίες

ΗΜΥ 313: Τεχνολογία Λειτουργικών Συστηµάτων

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

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

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

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

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

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

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

1 ο ΓΥΜΝΑΣΙΟ ΘΕΡΜΗΣ. Πληροφορική Α' Γυμν. Το Λειτουργικό Σύστημα του Υπολογιστή

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

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

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

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

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

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

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

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

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

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

ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΑ ΣΥΣΤΗΜΑΤΑ

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

Transcript:

Λειτουργικά Συστήματα (Λ/Σ) Δομή Λειτουργικών Συστημάτων Βασίλης Σακκάς 20/11/2013 1

Δομή ενός Λ/Σ -1 Μονολιθικά συστήματα (monolithic systems) Λειτουργικά συστήματα με ανυπαρξία δομής: "η μεγάλη ακαταστασία" (the big mess). Το Λ/Σ είναι μία συλλογή διαδικασιών, οι οποίες μεταγλωττίζονται ξεχωριστά και με τη βοήθεια του προγράμματος σύνδεσης (linker) ενοποιούνται σε ένα μοναδικό εκτελέσιμο αρχείο. Κάθε επιμέρους διαδικασία στο σύστημα έχει καλά καθορισμένη ενδοσυνεννόηση, ως προς τις παραμέτρους που δέχεται και τα αποτελέσματα που παράγει. 2

Δομή ενός Λ/Σ -2 Η ελάχιστη δομή ενός Λ/Σ Περιλαμβάνειυπηρεσίεςκλήσεις συστήματος, οι οποίες καλούνται ως εξής (1/2): τοποθετώνται οι παράμετροι σε καλά καθορισμένες θέσεις (καταχωρητές, στοίβα) εκτελείται η ειδική εντολή κλήσης πυρήνα (kernel call) ή κλήσης επόπτη (supervisor call) ηεντολήυποχρεώνειτημηχανήναμεταπέσειαπό κατάσταση χρήστη σε κατάσταση πυρήνα 3

Δομή ενός Λ/Σ -3 Η ελάχιστη δομή ενός Λ/Σ Περιλαμβάνειυπηρεσίεςκλήσεις συστήματος, οι οποίες καλούνται ως εξής (2/2): μεταφέρεται ο έλεγχος στο Λ/Σ το Λ/Σ εξετάζει τις παραμέτρους κλήσης για να καθορίσει ποια κλήση συστήματος θα πρέπει να ενεργοποιηθεί για την εξυπηρέτηση το Λ/Σ εντοπίζει και καλεί τη διαδικασία εξυπηρέτησης η κλήση συστήματος τερματίζεται και ο έλεγχος επιστρέφεται στο πρόγραμμα του χρήστη. 4

Δομή ενός Λ/Σ -4 Κύρια Διαδικασία Διαδικασία Εξυπηρέτησης Βοηθητικές διαδικασίες Η οργάνωση αυτή προτείνει μια βασική δομή για το Λ/Σ ένα κύριο πρόγραμμα, που ενεργοποιεί τη ζητηθείσα διαδικασία εξυπηρέτησης (service procedure) ένα σύνολο διαδικασιών εξυπηρέτησης που υλοποιούν τις κλήσεις συστήματος ένα σύνολο βοηθητικών προγραμμάτων (utility procedures) που υποβοηθούν τις διαδικασίες εξυπηρέτησης»(π.χ. φροντίζουν να έλθουν τα δεδομένα από τα προγράμματα του χρήστη) Στο μοντέλο αυτό, για κάθε κλήση συστήματος, υπάρχει μια διαδικασία εξυπηρέτησης που φροντίζει γι' αυτήν. 5

Δομή ενός Λ/Σ -5 Στρωματοποιημένα συστήματα Το Λ/Σ οργανώνεται ως μία ιεραρχία επιπέδων, καθένα από τα οποία δομείται στο υποκείμενο επίπεδό του. 5 4 3 2 1 0 Χειριστής Συστήματος Προγράμματα Χρηστών ιαχείριση Εισόδου/Εξόδου Επικοινωνία χειριστή - διεργασίας ιαχείριση μνήμης και δίσκου Κατανομή επεξεργαστή και πολυπρογραμματισμός 6

Δομή ενός Λ/Σ -6 Παράδειγμα Ι: Σύστημα ΤΗΕ (Technische Hogeschool Eindhoven, Dijkstra, 1968) Σύστημα μαζικής επεξεργασίας το οποίο διέθετε 6 επίπεδα. Το επίπεδο 0 ασχολούνταν με τη χορήγηση του επεξεργαστή, την εναλλαγή του επεξεργαστή μεταξύ διεργασιών. Το επίπεδο 1 αναλάμβανε τη διαχείριση κύριας και δευτερεύουσας μνήμης. Το επίπεδο 2 χειριζόταν την επικοινωνία μεταξύ διεργασίας και χειριστή. Το επίπεδο 3 φρόντιζε για τη διαχείριση των συσκευών εισόδου/εξόδου και τη ροή των πληροφοριών από και προς αυτές. Το επίπεδο 4 ασχολείται με τα προγράμματα του χρήστη. Το επίπεδο 5 ασχολείται με τις διεργασίες του χειριστή του συστήματος. Τα επίπεδα του συστήματος δεν είναι πραγματικά συνδεδεμένα μεταξύ τους σε ένα μοναδικό εκτελέσιμο πρόγραμμα. 7

Δομή ενός Λ/Σ -7 Λ/Σ: Σύστημα MULTICS Το Λ/Σ οργανώνεται ως μια σειρά από ομόκεντρους δακτυλίους, στους οποίους οι εσωτερικοί δακτύλιοι είναι περισσότερο προνομιούχοι από ότι οι εξωτερικοί. Όταν μία διαδικασία βρίσκεται σε εξωτερικό δακτύλιο και αιτείται την κλήση μιας διαδικασίας σε εσωτερικό δακτύλιο, δημιουργείται το ισοδύναμο μιας κλήσης συστήματος (μια εντολή TRAP), αφού ελεγχθούν οι παράμετροι της εντολής, πριν επιτραπεί στην κλήση να προχωρήσει. 8

Δομή ενός Λ/Σ -8 Ιδεατές μηχανές Παρά την αποδοχή του OS/360 στο χώρο των συστημάτων μαζικής επεξεργασίας, οι απαιτήσεις των χρηστών ήταν στην αξιοποίηση συστημάτων καταμερισμού χρόνου. Το κυριότερο σύστημα καταμερισμού χρόνου ήταν το CP/CMS που τελικά ονομάστηκε VM/370. 9

Δομή ενός Λ/Σ -9 Η κύρια συνιστώσα του συστήματος, ο ελεγκτήςτης ιδεατής μηχανής (virtual machine monitor), έτρεχε στο βασικό υλικό και υλοποιούσε: πολυπρογραμματισμό ιδεατές μηχανές με σημαντική αφαιρετικότητα επικοινωνίας με το χρήστη. Ιδεατές μηχανές 370 Είσοδος/έξοδος εντολών Κλήσεις συστήματος Δημιουργία παγίδας Δημιουργία παγίδας Το πραγματικό υλικό του 370 10

Δομή ενός Λ/Σ -10 Αντίθετα από άλλα Λ/Σ, αυτές οι ιδεατές μηχανές ήταν απόλυτες αντιγραφές του βασικού υλικού και καθεμία μπορούσε να τρέξει οποιοδήποτε Λ/Σ, είτε μαζικής επεξεργασίας, είτε διαλογικά συστήματα για ένα μόνο χρήστη. Έτσι, όταν ένα πρόγραμμα του CMS εκτελούσε κλήση συστήματος, η κλήση παγιδευόταν στη δική του ιδεατή μηχανή και όχι στο VM/370. 11

Δομή ενός Λ/Σ -11 Μοντέλο εξυπηρετούμενου / εξυπηρέτη (client/server model) Τα σύγχρονα Λ/Σ υιοθετούν τη βασική ιδέα του VM/370 για μετατόπιση κώδικα σε υψηλότερο επίπεδο, αφήνοντας ελάχιστο πυρήνα. Στο μοντέλο εξυπηρετούμενου / εξυπηρέτη, η διεργασία εξυπηρετούμενου (client process) αποστέλλει αίτηση εξυπηρέτησης στη διεργασία εξυπηρέτη (server process), η οποία επιτελεί την εργασία και επιστρέφει την απάντηση. 12

Δομή ενός Λ/Σ -12 Οπυρήναςχειρίζεται: την επικοινωνία μεταξύ εξυπηρετούμενων και εξυπηρετών τις λειτουργίες του Λ/Σ που δεν είναι εφικτό να υλοποιηθούν σε επίπεδο χρήστη (π.χ. Φόρτωση εντολών σε καταχωρητές συσκευών Ε/Ε). Διεργασία εξυπηρετούμενου Διεργασία εξυπηρετούμενου Εξυπηρέτης διεργασιών Εξυπηρέτης τερματικών Εξυπηρέτης αρχείων Εξυπηρέτης μνήμης Κατάσταση χρήστη Πυρήνας Κατάσταση πυρήνα Οεξυπηρετούμενος εξυπηρετείται στέλνοντας μηνύματα στις διεργασίες εξυπηρέτησης 13

Δομή ενός Λ/Σ -13 Πλεονεκτήματα του μοντέλου: τα επιμέρους τμήματα του Λ/Σ (εξυπηρέτες διεργασιών, αρχείων, μνήμης κλπ.) γίνονται μικρότερα και ευκολόχρηστα οι εξυπηρέτες τρέχουν σε κατάσταση χρήστη (user mode) και όχι σε κατάσταση πυρήνα (kernel mode), συνεπώς αποφεύγεται η προσπέλαση στο υλικό κατά συνέπεια αποφεύγεται και η διακοπή της λειτουργίας της μηχανής από κατάρρευση ενός εξυπηρέτη υπάρχει δυνατότητα προσαρμογής σε κατανεμημένα συστήματα, αφού ένας εξυπηρετούμενος δε γνωρίζει αν το μήνυμα εξυπηρέτησης που έστειλε διαχειρίζεται τοπικά ή απομακρυσμένα. 14