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

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

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


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

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

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

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

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

ENOTHTA 8 IAXEIPIΣH KAI ΣYΣTHMATA APXEIΩN

Λειτουργικό Σύστημα: διαχείριση πόρων. Τι είναι ένα αρχείο ; Διαχείριση αρχείων. Λειτουργικά Συστήματα (ΙΙ) (διαχείριση αρχείων)

Μάθημα 2 ο ΟΡΓΑΝΩΣΗ ΣΥΣΤΗΜΑΤΟΣ ΑΡΧΕΙΩΝ

Λειτουργικά Συστήματα (ΙΙ) (διαχείριση αρχείων)

Σύστηµα Αρχείων και Καταλόγων

Λειτουργικό Σύστημα: διαχείριση πόρων. Διαχείριση αρχείων. Τι είναι ένα αρχείο ; Λειτουργικά Συστήματα (ΙΙ) (διαχείριση αρχείων)

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

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

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

Πληροφορική 2. Δομές δεδομένων και αρχείων

Σύστηµα Αρχείων File System

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

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ. Συστήματα αρχείων, δίσκοι

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

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

ΣΥΣΚΕΥΕΣ ΑΠΟΘΗΚΕΥΣΗΣ (ΜΝΗΜΗ)

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

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

Αρχιτεκτονική Υπολογιστών

Τεχνολογία Υπολογιστικών Συστηµάτων & Λειτουργικά Συστήµατα Κεφάλαιο 10

Πανεπιςτήμιο Πελοποννήςου Τμήμα Επιςτήμησ και Τεχνολογίασ Τηλεπικοινωνιών. Λειτουργικά Συςτήματα Προγραμματιςμόσ Συςτήματοσ.

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

Υπάρχουν δύο τύποι μνήμης, η μνήμη τυχαίας προσπέλασης (Random Access Memory RAM) και η μνήμη ανάγνωσης-μόνο (Read-Only Memory ROM).

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

Εισαγωγή στην Επιστήμη της Πληροφορικής Εργαστήριο. UNIX Μέρος 1

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

Τα δεδομένα (περιεχόμενο) μιας βάσης δεδομένων αποθηκεύεται στο δίσκο

Συστήματα Αρχείων (Σ.Α.)

ΚΕΦΑΛΑΙΟ 2: Τύποι δεδομένων και εμφάνιση στοιχείων...33

Αρχεία Ένα αρχείο αποτελείται από μία σειρά ομοειδών δεδομένων που ονομάζονται λογικές εγγραφές (logical record)

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

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

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

Αποθήκευση και Οργάνωση αρχείων. Βάσεις Δεδομένων Μάθημα 2ο Διδάσκων: Μαρία Χαλκίδη

Εξωτερική Αναζήτηση. Ιεραρχία Μνήμης Υπολογιστή. Εξωτερική Μνήμη. Εσωτερική Μνήμη. Κρυφή Μνήμη (Cache) Καταχωρητές (Registers) μεγαλύτερη ταχύτητα

Διαχείριση αρχείων. Τυπικές πράξεις με αρχεία. Δομή και οργάνωση αρχείων

Μάθημα 8: Διαχείριση Μνήμης

Οργάνωση αρχείων: πως είναι τοποθετηµένες οι εγγραφές ενός αρχείου όταν αποθηκεύονται στο δίσκο

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

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

Με τον όρο μνήμη αναφερόμαστε στα μέσα που χρησιμοποιούνται για την αποθήκευση προγραμμάτων και δεδομένων σε έναν υπολογιστή ή άλλη ψηφιακή

Εισαγωγή στους Η/Υ. Ενότητα 5: Λειτουργικά Συστήματα ΙΙ. Δημήτρης Σαραβάνος, Καθηγητής Πολυτεχνική Σχολή Τμήμα Μηχανολόγων & Αεροναυπηγών Μηχανικών

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

Κατακερματισμός. 4/3/2009 Μ.Χατζόπουλος 1

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Αρχεία Δεδομένων. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

Πληροφορική & Τηλεπικοινωνίες K18 - Υλοποίηση Συστηµάτων Βάσεων εδοµένων Εαρινό Εξάµηνο

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ

Δομές Δεδομένων και Αλγόριθμοι. Λουκάς Γεωργιάδης

ECDL Module 2 Χρήση Υπολογιστή και ιαχείριση Αρχείων Εξεταστέα Ύλη, έκδοση 5.0 (Syllabus Version 5.0)

ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ

1ο Εργαστήριο Σύστημα Αρχείων

Αρχιτεκτονική Υπολογιστών II Ενδεικτικές απαντήσεις στα θέματα των εξετάσεων

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ,

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Πληροφορική II. Ενότητα 6 : Δομές αρχείων. Δρ. Γκόγκος Χρήστος

Προγραμματισμός Η/Υ. Χειρισμός Αρχείων. ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος

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

ΕΠΙΜΕΛΕΙΑ: ΚΩΣΤΑΣ ΔΕΛΗΜΑΡΗΣ - ΧΡΗΣΗ ΗΥ ΚΑΙ ΔΙΑΧΕΙΡΙΣΗ ΑΡΧΕΙΩΝ

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

Άσκηση 1 (ανακοινώθηκε στις 20 Μαρτίου 2017, προθεσμία παράδοσης: 24 Απριλίου 2017, 12 τα μεσάνυχτα).

./mydiz {-c -a -x -m -d -p -j} <archive-file> <list-of-files/dirs>

Τα δεδοµένα συνήθως αποθηκεύονται σε αρχεία στο δίσκο Για να επεξεργαστούµε τα δεδοµένα θα πρέπει αυτά να βρίσκονται στη

PROXY SERVER. Άριστη πύλη διαχωρισμού μεταξύ του εσωτερικού δικτύου και του Internet.

Κρυφή Μνήµη. Λειτουργικά Συστήµατα ΙΙ UNIX. Μάθηµα: Aναπλ. Καθ. Κ. Λαµπρινουδάκης ιδάσκων: &καιτοπλήθοςτωνπλαισίωντηςκρυφήςµνήµης

Κεφάλαιο 2.4: Εργασία με εικονίδια

Κεφ.11: Ευρετήρια και Κατακερματισμός

Λογισμικό - Προγράμματα

Γενικά Στοιχεία Ηλεκτρονικού Υπολογιστή

ΗΥ240: οµές εδοµένων Χειµερινό Εξάµηνο Ακαδηµαϊκό Έτος Παναγιώτα Φατούρου. Προγραµµατιστική Εργασία 3 ο Μέρος

Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στο Λ.Σ. UNIX

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

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

Αικατερίνη Καμπάση, PhD. Τμήμα Προστασίας και Συντήρησης Πολιτισμικής Κληρονομιάς Α.Τ.Ε.Ι. Ιονίων Νήσων

Εισαγωγή στην επιστήμη των υπολογιστών. Οργάνωση εδομένων Κεφάλαιο 11ο ομές εδομένων

ΗΛΕΚΤΡΟΝΙΚΟΙ ΥΠΟΛΟΓΙΣΤΕΣ

Δομές Δεδομένων και Αλγόριθμοι

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

SMPcache. Ένα εργαλείο για προσομοίωση-οπτικοποίηση κρυφής μνήμης (Cache)

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

ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ. Επίπεδα Αφαίρεσης Σ Β. Αποθήκευση Εγγραφών - Ευρετήρια. ρ. Βαγγελιώ Καβακλή ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ, Επίπεδο Όψεων.

FTP - (File Transfer Protocol ) Πρωτόκολλο Μεταφοράς Αρχείων

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΛΥΣΗ ΣΤΗΝ ΕΥΤΕΡΗ ΑΣΚΗΣΗ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ, ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 001: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ

Υπολογιστές Ι. Άδειες Χρήσης. Εισαγωγή. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

Τα µπιτ και η σηµασία τους. Σχήµα bit. ΚΕΦΑΛΑΙΟ 1: Αποθήκευση εδοµένων (1/2) 1.7 Αποθήκευση κλασµάτων 1.8 Συµπίεση δεδοµένων 1.9 Σφάλµατα επικοινωνίας

Δυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

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

Εισαγωγή Κεφάλαιο 1: Εγκατάσταση της Access Κεφάλαιο 2: Βάσεις δεδομένων και δομικά στοιχεία της Access

ΜΕΤΑΦΟΡΑ ΑΡΧΕΙΩΝ FTP

Ευρετήρια. Ευρετήρια. Βάσεις Δεδομένων : Ευρετήρια 1

Δυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Κεφάλαιο 7 Ιεραρχία Μνήμης (Memory Hierarchy)

Transcript:

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

Τυπικές Προεκτάσεις Αρχείων 3 ομή Αρχείων (α) Ακολουθία Byte (το νόημα της ακολουθίας αυτής αποδίδεται από το πρόγραμμα) (β) Ακολουθία Εγγραφών (κάθε εγγραφή έχει μια εσωτερική δομή, ανάγνωση / εγγραφή σε επίπεδο εγγραφής) (γ) Δένδρο (δένδρα εγγραφών που δεν έχουν το ίδιο μήκος, κάθε ένα περιέχει ένα πεδίο «κλειδί», με βάση το οποίο είναι ταξινομημένο το δένδρο) 4 2

Τύποι Αρχείων Κανονικά Αρχεία (Regular Files) Περιέχουν πληροφορίες των χρηστών με κάποια από την προαναφερόμενη «δομή». Με αυτά θα ασχοληθούμε. Κατάλογοι (Directories) Αρχεία συστήματος που βοηθούν στη δόμηση των αρχείων. Ειδικά Αρχεία Χαρακτήρων (Character Special Files) Σχετίζονται με την είσοδο-έξοδο σειριακών συσκευών όπως τερματικά εκτυπωτές κ.λ.π.) Ειδικά Αρχεία Μπλόκ (Block Special Files) Μοντελοποιούν Δίσκους 5 Τύποι Αρχείων Κανονικά Αρχεία Τα Κανονικά Αρχεία μπορεί να είναι: Αρχεία ASCII ή Αρχεία Δυαδικά (binary) (α) Εκτελέσιμα Αρχεία (executable) τα οποία αποτελούνται από πέντε μέρη: Κεφαλίδα Κώδικας Δεδομένα Bit επανατοποθέτησης Πίνακας συμβόλων (β) Δυαδικό Αρχείο-αρχειοθήκη (archive) τo οποίo αποτελείται από μια συλλογή από library procedures (object modules) που δεν έχουν συνδεθεί. 6 3

υαδικά Αρχεία 7 Πρόσβαση στα Αρχεία Σειριακή Πρόσβαση (Sequential Access) Ανάγνωση όλων των bytes/εγγραφών από την αρχή Δεν είναι δυνατή ανάγνωση με άλλη σειρά Είναι δυνατή η επαναφορά στην αρχή και η εκ νέου ανάγνωση του αρχείου Εύχρηστα στην εποχή των μαγνητικών ταινιών Αρχεία Τυχαίας Προσπέλασης (Random access) Η ανάγνωση των bytes/εγγραφών μπορεί να γίνει με οποιαδήποτε σειράς, ανεξαρτήτου της θέσης τους Απαραίτητα κυρίως για Βάσεις Δεδομένων Η ανάγνωση μπορεί να γίνει με δύο τρόπους Καθορισμός της τρέχουσας θέσης στο αρχείο (εντολή seek), και μετά ανάγνωση από εκείνο το σημείο σειριακά ή... ΗεντολήRead δίνει και τη θέση εκκίνησης της ανάγνωσης 8 4

Ιδιότητες Αρχείων Η λίστα των ιδιοτήτων διαφέρει από σύστημα σε σύστημα. Η παραπάνω είναι απλά ενδεικτική... και εξαρτάται από το συγκεκριμένο σύστημα. 9 Ενέργειες στα Αρχεία Create (Δημιουργία) Καθορισμός μερικών από τις ιδιότητες του Delete (Διαγραφή) Open (Άνοιγμα) Προσκομίζονται στη κύρια μνήμη οι ιδιότητες και η λίστα των σχετικών με το αρχείο διευθύνσεων που υπάρχουν στο δίσκο. Close (Κλείσιμο) Οι ιδιότητες και οι διευθύνσεις δίσκου δεν χρειάζονται πια οπότε απελευθερώνεται μνήμη (γιατολόγοαυτόπολλάσυστήματαορίζουν μέγιστο αριθμό ανοικτών αρχείων) Κατά το κλείσιμο εξαναγκάζεται η εγγραφή του τελευταίου block στο δίσκο, ακόμα και αν δεν είναι γεμάτο. Read (Ανάγνωση) Πρέπει να καθοριστούν πόσα δεδομένα χρειάζονται (ώστε να δεσμευθεί και ο ανάλογος χώρος στη μνήμη) 10 5

Ενέργειες στα Αρχεία Write (Εγγραφή) Συνήθως η εγγραφή ξεκινάει από την τρέχουσα θέση. Αν η τρέχουσα θέση είναι στο τέλος του αρχείου τότε αυξάνει το μέγεθος του. Αν η τρέχουσα θέση βρίσκεται οπουδήποτε μέσα στο αρχείο τα δεδομένα που υπάρχουν αποθηκευμένα εκεί αντικαθίστανται. Append(Προσάρτηση) Περιορισμένη εκδοχή της Write Προσθέτει δεδομένα στο τέλος του αρχείου Seek (Αναζήτηση) Η συγκεκριμένη κλήση επανατοποθετεί το δείκτη αρχείου σε μια συγκεκριμένη θέση. Στησυνέχειαμπορείναγίνειανάγνωση/ εγγραφή με αφετηρία τη συγκεκριμένη θέση. Get Attributes (Λήψη Ιδιοτήτων) Πολλέςδιεργασίεςπρέπειναδιαβάσουντιςιδιότητεςτωναρχείωνγιανα επιτελέσουν το έργο τους (π.χ. το make) Set Attributes (Ορισμός Ιδιοτήτων) Παρέχει τη δυνατότητα αλλαγής κάποιων ιδιοτήτων του αρχείου. Rename (Μετονομασία) 11 Παράδειγμα Χρήσης Κλήσεων Συστήματος για Αντιγραφή Αρχείων (1/2) 12 6

Παράδειγμα Χρήσης Κλήσεων Συστήματος για Αντιγραφή Αρχείων (2/2) 13 Αρχεία με Χαρτογράφηση στη Μνήμη Κάποια λειτουργικά συστήματα υποστηρίζουν μηχανισμό για την χαρτογράφηση (mapping) των αρχείων στο χώρο των διευθύνσεων της διεργασίας που εκτελείται. Συγκεκριμένα, αξιοποιούνται οι εντολές: Map: Αυτή παρέχει ένα όνομα αρχείου και μια εικονική διεύθυνση και αναγκάζει το λειτουργικό σύστημα να απεικονίσει το αρχείο μέσα στο χώρο διευθύνσεων ξεκινώντας από τη συγκεκριμένη εικονική διεύθυνση Unmap: Αφαιρεί τα αρχεία από το χώρο διευθύνσεων 14 7

Παράδειγμα Χαρτογραφημένων Αρχείων σε Σύστημα που Υποστηρίζει Κατάτμηση (Segmentation) (a) Πριν τη χαρτογράφηση των αρχείων (b) Μετά τη χαρτογράφηση: υπάρχον αρχείο abc σ ένα τμήμα δημιουργία νέου τμήματος για το αρχείο xyz 15 Αρχεία με Χαρτογράφηση στη Μνήμη Τα βασικά προβλήματα: Επειδή συνήθως η διαχείριση μνήμης γίνεται με σελίδων ή / και τμημάτων, το σύστημα δεν είναι εύκολο να γνωρίζει το ακριβές μέγεθος του αρχείου (παρά μόνο σε πλήθος σελίδων) Ένα αρχείο που είναι χαρτογραφημένο στη μνήμη μπορεί να ανοίξει για συμβατική ανάγνωση από άλλη διεργασία και να δημιουργηθεί πρόβλημα «ασυνεπών» εκδόσεων του αρχείου. Τέλος αν κάποιο αρχείο είναι πολύ μεγάλο θα πρέπει η εντολή map να χαρτογραφεί μόνο μέρος του αρχείου 16 8

Κατάλογοι Συστήματα Καταλόγων Ενός Επιπέδου Ένας μόνο κατάλογος που περιέχει όλα τα αρχεία, δηλαδή: περιέχει 4 αρχεία τα οποία ανήκουν σε τρεις διαφορετικούς ιδιοκτήτες, A, B, και C Το πρόβλημα με τους καταλόγους ενός επιπέδου είναι ότι μπορεί να διαφορετικοί χρήστες να δημιουργήσουν αρχεία με τοίδιοόνομαμεαποτέλεσματοένανααπόταδύοναχάνεται 17 Συστήματα Καταλόγων ύο Επιπέδων Ένας κατάλογος για κάθε χρήστη που περιέχει όλα τα αρχεία του. Με τα δύο επίπεδα δεν υπάρχουν πλέον διενέξεις αναφορικά με τα ονόματα των αρχείων. Ο κάθε χρήστης μπορεί να προσπελάσει μόνο τα αρχεία που βρίσκονται στον κατάλογο του. Επίσης, επιτρέπεται στους χρήστες να έχουν πρόσβαση στα αρχεία των άλλων παρέχοντας κάποια υπόδειξη η οποία προσδιορίζει σε ποιόν ανήκει το αρχείο (π.χ. Open ( costas/file ). Αυτό εξυπηρετεί στη χρήση των βοηθητικών και άλλων αρχείων του συστήματος. 18 9

Ιεραρχικά Συστήματα Καταλόγων 19 Ονόματα ιαδρομών ΈναΔένδροΚαταλόγωνστοUNIX 20 10

Ονόματα ιαδρομών Απόλυτο Όνομα Διαδρομής (absolute path name) Windows: \usr\ast\mailbox (ο \ είναι ο χαρακτήρας διαχωρισμού) UNIX: /usr/ast/mailbox (ο / είναι ο χαρακτήρας διαχωρισμού) Σχετικό Όνομα Διαδρομής (Relative path name) Χρησιμοποιείται σε συνδυασμό με το κατάλογο εργασίας (τρέχων κατάλογος). Δηλαδή αν ο τρέχω κατάλογος είναι ο /usr/ast, το αρχείο με απόλυτη διαδρομή /usr/ast/mailbox μπορεί απλά να προσδιοριστεί ως mailbox. Τα περισσότερα λειτουργικά συστήματα που υποστηρίζουν ιεραρχικούς καταλόγους έχουν δύο ειδικές καταχωρήσεις σε κάθε κατάλογο τις. που σημαίνει τρέχων κατάλογος και.. που σημαίνει γονικός κατάλογος Παράδειγμα: Αν ο τρέχων κατάλογος είναι ο /usr/ast οι παρακάτω εντολές είναι ισοδύναμες cp /usr/lib/dictionary /usr/ast/dictionary και cp../lib/dictionary. 21 Ενέργειες σε Καταλόγους Create (Δημιουργία) Δημιουργείται ένας κενός κατάλογος Delete (Διαγραφή) Μπορούν να διαγραφούν μόνο κενοί κατάλογοι Opendir (Άνοιγμα Καταλόγου) Για να διαβαστεί ένας κατάλογος πρέπει πρώτα να ανοίξει Closedir (Κλείσιμο Καταλόγου) Μετά την ανάγνωση ο κατάλογος μπορεί να κλείσει ώστε να ελευθερωθεί χώρος στη μνήμη. Readdir (Ανάγνωση Καταλόγου) Επιστρέφει πάντα την επόμενη καταχώρηση από έναν ανοικτό κατάλογο. 22 11

Ενέργειες σε Καταλόγους Rename (Μετονομασία) Όπως και στα αρχεία Link (Σύνδεση) Η σύνδεση είναι μια τεχνική που επιτρέπει σ ένα αρχείο να εμφανίζεται σε περισσότερους από έναν καταλόγους. Καθορίζει ένα υπάρχων αρχείο και ένα όνομα διαδρομής, και δημιουργεί ένα σύνδεσμο από το υπάρχων αρχείο στο όνομα που καθορίζει η διαδρομή. Unlink (Αποσύνδεση) Διαγράφεται μια καταχώρηση καταλόγου. Αν το αρχείο που αποσυνδέεται υπάρχει μόνο σ ένα κατάλογο τότε διαγράφεται το αρχείο. Αν υπάρχει σε περισσότερους καταλόγους τότε διαγράφεται μόνο το συγκεκριμένο όνομα της διαδρομής. 23 Υλοποίηση Συστήματος Αρχείων Οι περισσότεροι δίσκοι μπορούν να διαιρεθούν σε ένα ή περισσότερα διαμερίσματα (partitions) καικάθεδιαμέρισμαναέχειανεξάρτητο σύστημα αρχείων. Οτομέας0 τουδίσκουονομάζεταιβασικήεγγραφήεκκίνησης (MBR Master Boot record) και εκτελείται όταν ξεκινάει ο υπολογιστής. Το πρόγραμμα του MBR έχει ως στόχο να εντοπίσει το ενεργό διαμέρισμα και να αναγνώσει το πρώτο του μπλόκ που είναι το μπλόκ εκκίνησης (boot block). Στο τέλος του MBR βρίσκεται ο Πίνακας Διαμερισμάτων που περιέχει την αρχική και τελική διεύθυνση κάθε διαμερίσματος. Το πρώτο μπλόκ σε όλα τα διαμερίσματα είναι το μπλόκ εκκίνησης στο οποίο τοποθετείται το πρόγραμμα εκκίνησης του λειτουργικού συστήματος του συγκεκριμένου διαμερίσματος (μπλόκ εκκίνησης υπάρχει ακόμα και αν το συγκεκριμένο διαμέρισμα δεν περιέχει λειτουργικό σύστημα). Με εξαίρεση το μπλόκ εκκίνησης η δομή των διαμερισμάτων τροποποιείται από σύστημα αρχείων σε σύστημα αρχείων. 24 12

File System Implementation Περιέχει διάφορες παραμέτρους για το Σύστημα Αρχείων (τύπος, πλήθος μπλόκς κ.λ.π.) Ελεύθερα μπλόκς (Χάρτης ψηφίων ή λίστα από δείκτες) Πίνακας από i-κόμβους (ένας κόμβος για κάθε αρχείο) Βσικός Κατάλογος (Κορυφή του δένδρου) A possible file system layout 25 Υλοποίηση Αρχείων Συνεχής Κατανομή (α) Συνεχής κατανομή του χώρου του δίσκου για 7 αρχεία (β) Κατάσταση του δίσκου μετά τη διαγραφή των αρχείων D και E 26 13

Υλοποίηση Αρχείων Κατανομή Συνδεδεμένης Λίστας Αποθήκευση αρχείων σε μια συνδεδεμένη λίστα από μπλοκ δίσκου. Η πρώτη λέξη κάθε μπλοκ χρησιμοποιείται σαν δείκτης προς το επόμενο Όμως: Αργή τυχαία προσπέλαση Απώλεια χώρου από τους δείκτες σε κάθε μπλοκ Ο διαθέσιμος χώρος δεν είναι δύναμη του 2 27 Υλοποίηση Αρχείων Κατανομή Συνδεδεμένης Λίστας με Χρήση ενός Πίνακα στην Κύρια Μνήμη Η λέξη με το δείκτη από κάθε μπλοκ μεταφέρεται σε ένα πίνακα στη μνήμη Διαθέσιμο για αποθήκευση το σύνολο του μπλοκ Γρήγορη τυχαία προσπέλαση Μειονέκτημα: Διατηρείται στη μνήμη ολόκληρος ο πίνακας Απαιτείται ~ 60-80 MB για 20GB δίσκου Εξάρτηση του μεγέθους του πίνακα από το μέγεθος του δίσκου Ο παραπάνω πίνακας είναι γνωστός ως Πίνακας Κατανομής Αρχείων (File Allocation Table) 28 14

Υλοποίηση Αρχείων Κόμβοι i (Index Nodes) Σε κάθε αρχείο αντιστοιχίζεται μια δομή δεδομένων: κόμβος i (index node) Περιέχει τις διευθύνσεις στο δίσκο των μπλοκ του αρχείου Τις ιδιότητες του αρχείου Ο κόμβος i βρίσκεται στη μνήμη μόνο όταν είναι ανοιχτό το αντίστοιχο αρχείο Αυτήησχεδίασηαπαιτείστημνήμηπίνακα με μέγεθος που εξαρτάται από το μέγιστο επιτρεπόμενο αριθμό των ανοιχτών αρχείων και όχι το μέγεθος του δίσκου 29 Υλοποίηση Καταλόγων Για να ανοίξει ένα αρχείο αξιοποιείται το όνομα διαδρομής που παρέχει ο χρήστης για να εντοπιστεί η καταχώριση καταλόγου. Η καταχώρηση καταλόγου παρέχει τις πληροφορίες πουχρειάζονταιγιαναβρεθούνταμπλόκτουδίσκου η διεύθυνση δίσκου ολόκληρου του αρχείου για τη περίπτωση συνεχούς κατάτμισης Ο αριθμός του πρώτου μπλόκ για τις δύο περιπτώσεις συνδεδεμένης λίστας Ο αριθμός του κόμβου I Έναζήτημαείναιηεπιλογήτουχώρουγιατην αποθήκευση των ιδιοτήτων του αρχείου 30 15

Υλοποίηση Καταλόγων (a) Απλή Σχεδίαση με καταχωρίσεις σταθερού μεγέθους (μια ανά αρχείο) που περιέχουν το όνομα του αρχείου (σταθερού μεγέθους), μια δομή με τις ιδιότητες και μια ή περισσότερες διευθύνσεις στο δίσκο (μέχρι κάποιο μέγιστο) (b) Σχεδίαση καταλόγου τον οποίο κάθε εγγραφή αναφέρεται σε κάποιο κόμβο i 31 ιαχείριση Μεγάλων Ονομάτων Αρχείων στους Καταλόγους α) Εσωτερικά β) Σε Σωρό 32 16

Κοινόχρηστα Αρχεία Υπάρχουν προβλήματα συγχρονισμού του αρχείου!! 33 Κοινόχρηστα Αρχεία Το πρόβλημα του συγχρονισμού μπορεί να λυθεί με δύο τρόπους: Τα μπλόκ του δίσκου δεν παρουσιάζονται στους καταλόγους αλλά σε μικρές δομές δεδομένων (π.χ. Κόμβους i για το UNIX) O B συνδέεται με ένα από τα αρχεία του C μέσω της δημιουργίας ενός νέου αρχείου τύπου LINK, και της τοποθέτησης του νέου αυτού αρχείου στον κατάλογο του Β. Το νέο αρχείο περιέχει απλώς το όνομα της διαδρομής που έχει συνδεθεί. Ο τρόπος αυτός είναι γνωστός ως «Συμβολική Σύνδεση». 34 17

Κοινόχρηστα Αρχεία (με χρήση μικρών ομών εδομένων) (a) Αρχική Κατάσταση (b) Μετά τη σύνδεση του χρήστη Β με το αρχείο (c) Μετά που ο αρχικός χρήστης C διαγράφει το αρχείο 35 ιαχείριση Χώρου ίσκου Αποθήκευση αρχείου σε συνεχή ακολουθία από byte Οδηγεί στο πρόβλημα της μεταφοράς του αρχείου όταν αυτό μεγαλώσει Αποθήκευση αρχείου σε μπλοκ σταθερού μεγέθους Ποιο πρέπει να είναι το μέγεθος του μπλοκ Μεγάλο μέγεθος μπλοκ: Απώλεια χώρου σε μικρά αρχεία Ταχύτερη μεταφορά δεδομένων Μικρό μέγεθος μπλοκ: Καλύτερη χρήση του χώρου του δίσκου Μικρότερος ρυθμός μεταφοράς δεδομένων Κεντρική τιμή μεγέθους αρχείων: 1680 byte 36 18

ιαχείριση Χώρου ίσκου Block size Ησυνεχήςκαμπύλη(αριστερή κλίμακα) δίνει το ρυθμό μεταφοράς δεδομένων του δίσκου Η διακεκομμένη καμπύλη (δεξιά κλίμακα) δίνει την αποδοτικότητα χρήσης του χώρου του δίσκου Για αρχεία μεγέθους 2KB 37 ιαχείριση Χώρου ίσκου Παρακολούθηση των Ελεύθερων Block (a) Χρήση συνδεδεμένης λίστας από μπλοκ δίσκου για την αποθήκευση των αριθμών των ελεύθερων μπλοκ (b) Χάρτης ψηφίων 38 19

ιαχείριση Χώρου ίσκου Έλεγχος Χώρου ίσκου Χρηστών (Quotas) 39 Αξιοπιστία των Συστημάτων Αρχείων Εφεδρικά Αντίγραφα Φυσική Αντιγραφή Αντιγραφή όλων των μπλοκ του δίσκου ξεκινώντας από το μπλοκ 0 Αποφυγή αντιγραφής των ελεύθερων μπλοκ αν το πρόγραμμα αντιγραφής έχει πρόσβαση στις δομές των ελεύθερων μπλοκ Απλή και γρήγορη μέθοδος Μειονεκτήματα: Αδυναμία παράληψης καταλόγων Αδυναμία δημιουργίας Αυξητικών αντιγράφων Αδυναμία ανάκτησης συγκεκριμένων καταλόγων 40 20

Αξιοπιστία των Συστημάτων Αρχείων Λογική Αντιγραφή Ξεκινά από ένα ή περισσότερους καταλόγους και αντιγράφει αναδρομικά όλα τα αρχεία που βρίσκονται εκεί Δυνατότητα επιλεκτικής Αντιγραφής Δυνατότητα επιλεκτικής ανάκτησης Δυνατότητα αυξητικών αντιγράφων 41 Αξιοπιστία των Συστημάτων Αρχείων File that has not changed Τα τετράγωνα συμβολίζουν τους καταλόγους και οι κύκλοι τα αρχεία. Τα σκιασμένα στοιχεία έχουν τροποποιηθεί μετά την τελευταία αντιγραφή. Κάθε κατάλογος και κάθε αρχείο έχει ως ετικέτα τον αριθμό του κόμβου i του 42 21

Αξιοπιστία των Συστημάτων Αρχείων Χάρτης Ψηφίων που αξιοποιείται στον αλγόριθμο λογικής αντιγραφής 43 Συνέπεια των Συστημάτων Αρχείων Καταστάσεις του Συστήματος Αρχείων (a) Συνεπής (b) Αγνοούμενο μπλόκ (c) Μπλόκ που εμφανίζεται δύο φορές στη λίστα ελεύθερων μπλόκ (d) Μπλόκ που εμφανίζεται δύο φορές στα μπλοκ δεδομένων 44 22

Χρήση Κρυφής Μνήμης (Cache) για Καλύτερη Επίδοση Κατακερματισμός Δνσεων του Δίσκου και χρήση πίνακα κατακερματισμού (Hash Table). Δημιουργία Αλυσίδων Σύγκρουσης και λίστας διπλής κατεύθυνσης που διατρέχει όλα τα μπλόκ με βάση τη σειρά χρήσης 45 Παραδείγματα Συστημάτων Αρχείων CD-ROM Μέγεθος Καταχώρησης Δνση 1 ου μπλόκ Μέγεθος Αρχείου Δυνατότητα η καταχώρηση καταλόγου να αναφέρεται σε αρχείο που βρίσκεται σε άλλο CD Στόχος είναι οι καταχωρήσεις να έχουν μονό αριθμό bytes Καταχώρηση Καταλόγου στο ISO 9660 46 23

Παραδείγματα Συστημάτων Αρχείων CP/M Καταχώρηση Καταλόγου στο CP/M To σύστημα αρχείων CPM διαθέτει ένα μόνο κατάλογο με καταχωρήσεις σταθερού μεγέθους (32-bits). Μέσω του User Code δημιουργούνται εικονικοί κατάλογοι για κάθε χρήστη Ονόματα Αρχείων με 8 χαρακτήρες + 3 χαρακτήρες προέκταση (Επιτρέπονται ΜΟΝΟ τα κεφαλαία γράμματα) Μέγιστο μέγεθος αρχείου 16 KB (δεδομένου ότι ένα block έχει οριστεί σε 1ΚΒ. Σε περίπτωση μεγαλύτερων αρχείων αξιοποιούνται περισσότερες καταχωρήσεις καταλόγου η σειρά των οποίων καθορίζεται μέσω του πεδίου Extent 47 Παραδείγματα Συστημάτων Αρχείων MS-DOS Δεν υπήρχε στο CP/M Δείκτης σε FAT The MS-DOS directory entry 48 24

Παραδείγματα Συστημάτων Αρχείων MS-DOS 49 Παραδείγματα Συστημάτων Αρχείων Windows 98 Για συμβατότητα με το NT και σωστή εμφάνιση των ονομάτων των αρχείων (στο MS-DOS όλα κεφαλαία, κάτι που δεν ισχύει στο NT Bytes Tα 10 αχρησιμοποίητα bits του DOS Υποστήριξη FAT 32 (συνεπώς θέλουμε 32 bit διεύθυνση) Η επεκτεταμένη καταχώρηση καταλόγου του MS-DOS που χρησιμοποιούν τα Windows 98 50 25

Παραδείγματα Συστημάτων Αρχείων Windows 98 Πώς αναγνωρίζουν τα Windows 98 αν μια καταχώρηση περιέχει ένα όνομα αρχείου MS-DOS ή ένα μεγάλο όνομα αρχείου (τμήμα) ; Απότοπεδίο Ιδιότητες το οποίο στις καταχωρήσεις μεγάλων ονομάτων παίρνει τη τιμή 0x0F Bytes Checksum Μια καταχώρηση για (τμήμα) ενός μεγάλου ονόματος αρχείου 51 Παραδείγματα Συστημάτων Αρχείων Windows 98 Παράδειγμα Καταχώρησης Μεγάλου Ονόματος 52 26

Παραδείγματα Συστημάτων Αρχείων UNIX V7 Καταχώρηση Καταλόγου στο UNIX V7 53 Παραδείγματα Συστημάτων Αρχείων UNIX V7 UNIX i-node 54 27

Παραδείγματα Συστημάτων Αρχείων UNIX V7 Αναζήτηση του Αρχείου /usr/ast/mbox 55 28