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



Σχετικά έγγραφα
3ο Εργαστήριο Βασικές εντολές διαχείρισης αρχείων σε LINUX

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

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

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

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

2ο Εργαστήριο. Εισαγωγική στο Λ.Σ. LINUX Γενικές εντολές συστήματος και χρηστών

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

ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Τμήμα Μηχανικών Πληροφορικής ΤΕ Λειτουργικά Συστήματα (Εργαστήριο) Διδάσκων: I. Τσακνάκης. 8ο Εργαστήριο

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

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

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

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

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

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

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

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

ΚΕΦΑΛΑΙΟ 1 Ψηφιακός Κόσμος

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

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

Δίκτυα Η/Υ στην Επιχείρηση

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

Προγραμματισμός Διαχείρισης Συστημάτων ΙΙ

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

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

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

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

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

Field Service Management ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ

Computing and Information Systems Service. ιαχείριση Αρχείων

Το Σύστημα Αρχείων του UNIX

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

Λειτουργικά Συστήματα - Εργαστήριο 6. 6ο Εργαστήριο. Συμπίεση αρχείων Χρήση ειδικών χαρακτήρων στην γραμμή εντολών. Χρήστες και Ομάδες Χρηστών

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

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ (TP-105)

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

Διαχείριση Πληροφοριών στο Διαδίκτυο. Εργαστήριο 1

Εισαγωγή ενός νέου στοιχείου. Επιλογή i-οστoύ στοιχείου : Εύρεση στοιχείου με το i-οστό μικρότερο κλειδί

Διαχείριση Πολιτισμικών Δεδομένων

ΚΕΦΑΛΑΙΟ 9 ΒΑΣΙΚΕΣ ΕΝΤΟΛΕΣ

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

A ΕΠΑ.Λ ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 5 η ΕΝΟΤΗΤΑ: ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Εκπαιδευτικοί: ΓΑΛΑΝΟΣ ΓΕΩΡΓΙΟΣ ΜΠΟΥΣΟΥΝΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ

an:3 are:6 a:10

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

ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Α ΤΑΞΗ

Οι βασικές λειτουργίες (ή πράξεις) που γίνονται σε μια δομή δεδομένων είναι:

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

Κατανεμημένα Συστήματα Αρχείων

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

Πληροφορική ΙΙ Εισαγωγή στις Βάσεις Δεδομένων. Τμήμα Λογιστικής

ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. Εισαγωγή στο Unix

[11] Υπολογιστικά συστήματα: Στρώματα. Περιεχόμενα. Εισαγωγή. επικοινωνία εφαρμογές λειτουργικό σύστημα προγράμματα υλικό

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

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

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

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

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

ΕΙΣΑΓΩΓΗ ΣΤΟ ΛΕΙΤΟΥΡΓΙΚΟ ΣΥΣΤΗΜΑ Microsoft WINDOWS (95-98-NT-2000-XP)


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

Εισαγωγή στους Η/Υ. Ενότητα 5α: Λειτουργικά Συστήματα ΙΙ (Παραδείγματα Διαδρομών)

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

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

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

ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Κεφάλαιο 3 ο. Πίνακες. Επικοινωνία:

ΠΑΡΑΡΤΗΜΑ: QUIZ ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ

Χρήση του διακόπτη /D για αλλαγή της τρέχουσας μονάδας δίσκου πέραν της αλλαγής τρέχοντος καταλόγου για μια μονάδα δίσκου.

Δίκτυα Η/Υ ςτην Επιχείρηςη

Εγχειρίδιο για το Λειτουργικό Σύστηµα Linux. Ιωάννης Ε. Λιβιέρης

Περιεχόμενα. Κεφάλαιο 1 Εισαγωγή στην Access Κεφάλαιο 2 Χειρισμός πινάκων... 27

Να αποθηκεύουμε και να ξανανοίγουμε αρχεία σε περιβάλλον Windows. Να ξεχωρίζουμε τα συστατικά (αρχεία, φακέλους κλπ.) ενός δίσκου

Εντολές του Λειτουργικού Συστήματος UNIX

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

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

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

Κεφάλαιο 5Β (επανάληψη) Εισαγωγή στην Πληροφορική. Τυπικοί χρόνοι πρόσβασης. Μέσος χρόνος πρόσβασης. Ταχύτητα µεταφοράς δεδοµένων

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

CloudBox!: Ένα εργαλείο cloud αποθήκευσης αρχείων με κατανεμημένο τρόπο

Διαδικασιακός Προγραμματισμός

ΚΕΦΑΛΑΙΟ 3 ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΑΛΓΟΡΙΘΜΟΙ

ΑΣΦΑΛΕΙΑ ΔΕΔΟΜΕΝΩΝ ΣΤΗΝ ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ (Μηχανισμοί Ελέγχου Προσπέλασης)

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

Θέματα διπλωματικών εργασιών σε. Συστοιχίες παράλληλης εξυηρέτησης εφαρμογών Διαδικτύου

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

Στοιχεία από την αρχιτεκτονική των μικροϋπολογιστών

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

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων

Εισαγωγή στην Επεξεργασία Ερωτήσεων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Δυναμικά Πολυεπίπεδα Ευρετήρια (Β-δένδρα) Μ.Χατζόπουλος 1

Διαχείριση Βάσης Δεδομένων (dbadmin)

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

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

Κεφάλαιο 1.6: Συσκευές αποθήκευσης

Ερµήνευση Boot Sector :

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

(Κεφάλαιο 2.7 και 12) Αρχεία στην C. (Διάλεξη 15)

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

Οδηγίες Συμπλήρωσης της Έκθεσης Ολοκλήρωσης

ΕΠΛ : Εισαγωγή στην Επιστήμη της Πληροφορικής Σημειώσεις Εργαστηρίων (2009)

Transcript:

ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Τμήμα Μηχανικών Πληροφορικής ΤΕ Λειτουργικά Συστήματα (Εργαστήριο) Διδάσκων: I. Τσακνάκης 1ο Εργαστήριο Σύστημα Αρχείων ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ - ABSOLUTE KAI RELATIVE PATH Λειτουργικό Σύστημα (Λ.Σ.) (operating system) είναι το λογισμικό (software) που διαχειρίζεται μία συσκευή (hardware) και επιτρέπει τόσο στους χρήστες, όσο και σε άλλες εφαρμογές, τη χρήση της συσκευής αυτής. Μία από της βασικές υπηρεσίες ενός λειτουργικού συστήματος για υπολογιστές είναι η διαχείριση των δεδομένων ή αλλιώς το σύστημα αρχείων (file system). Αρχείο (file) είναι ένα σύνολο δεδομένων το οποίο βρίσκεται σε κάποιο είδος μνήμης ή σε κάποιο αποθηκευτικό μέσο. Φάκελος (κατάλογος directory folder) είναι μία εννοιολογική οντότητα που επιτρέπει την ομαδοποίηση αρχείων. Στην πράξη πρόκειται για ένα ειδικό αρχείο. Κάθε φάκελος μπορεί να περιέχει ένα ή περισσότερα αρχεία, καθώς και έναν ή περισσότερους φακέλους. Η λογική με την οποία ομαδοποιούνται τα αρχεία μπορεί να διαφέρει από φάκελο σε φάκελο. Για παράδειγμα, ένας φάκελος μπορεί να ομαδοποιεί περιέχει τα αρχεία ενός χρήστη, ή τα αρχεία που δημιουργήθηκαν μία συγκεκριμένη ημερομηνία, ή τα αρχεία ενός συγκεκριμένου τύπου, όπως φωτογραφίες. Γιατί είναι απαραίτητη η ομαδοποίηση και οργάνωση των αρχείων; Αναλογιστείτε το εξής παράδειγμα. Σε ένα τεράστιο χώρο οργανώνεται μία βιβλιοθήκη. Μέσα σε αυτήν αποθηκεύονται όλα τα βιβλία που έχουν ποτέ τυπωθεί. Αρχικά όλα τα βιβλία βρίσκονται σε έναν κοινό κι ενιαίο χώρο. Η ανεύρεση ενός συγκεκριμένου βιβλίου σε έναν τέτοιο χώρο θα απαιτούσε πολύ χρόνο, ακόμα κι αν τα βιβλία ήταν ταξινομημένα κατά οποιοδήποτε τρόπο. Ακόμα και η διαδικασία της ταξινόμησης θα ήταν εξαιρετικά χρονοβόρος. Αν όμως η βιβλιοθήκη οργανωθεί διαφορετικά, η διαδικασίες της ταξινόμησης και τη αναζήτησης μπορούν να επιταχυνθούν σημαντικά. Αρχικά δημιουργείται ένα δωμάτιο για κάθε κατηγορία επιστήμη, Ιστορία, Λογοτεχνία, Μαθηματικά, Φυσική και ούτω καθεξής, στα οποία μεταφέρονται τα αντίστοιχα βιβλία. Κατόπιν σε κάθε δωμάτιο δημιουργούνται άλλα μικρότερα για κάθε υποκατηγορία της αντίστοιχης επιστήμης. Έτσι στα Μαθηματικά μπορούμε να δημιουργήσουμε δωμάτια για τη Γεωμετρία, τον Διαφορικό Λογισμό, τη Γραμμική Άλγεβρα. Και στη συνέχεια στο δωμάτιο της Γεωμετρίας να δημιουργήσουμε δύο μικρότερα, ένα για την Ευκλείδεια κι ένα για την κατά Riemann. Με αυτή τη λογική τόσο η ταξινόμηση όσο και η αναζήτηση ενός τόμου διευκολύνονται σε μεγάλο βαθμό σε σχέση με την αρχική οργάνωση.

Κατά ανάλογο τρόπο λειτουργεί και η οργάνωση των αρχείων. Η βιβλιοθήκη είναι το σύνολο των αρχείων ενός συστήματος. Τα βιβλία αντιστοιχούν στα αρχεία και τα δωμάτια στους φακέλους, οι οποίοι διευκολύνουν στην οργάνωση και αναζήτηση των αρχείων. Αυτού του είδους η οργάνωση των αρχείων μπορεί να αναπαρασταθεί με έναν γράφο, όπου κάθε αρχείο (ή φάκελος μιας που οι φάκελοι όπως έχει προαναφερθεί είναι είδος αρχείου) συμβολίζεται με έναν κόμβο και η σχέση "ανήκω σε φάκελο" συμβολίζεται με μία ακμή. Ο αρχικός φάκελος που περιέχει το σύνολο των αρχείων και των φακέλων (το αντίστοιχο της βιβλιοθήκης του παραδείγματος) ονομάζεται Root ή Ρίζα του δέντρου. Ο γράφος που σχηματίζεται ονομάζεται δέντρο και είναι ένας πλήρως συνδεδεμένος άκυκλος γράφος. Ως δέντρο, στη θεωρεία των γράφων, ορίζεται ο γράφος όπου οποιοιδήποτε δύο κόμβοι του συνδέονται με ένα και μοναδικό μονοπάτι διαδρομή. Ο γράφος που σχηματίζεται είναι δέντρο διότι έχει γίνει η βασική παραδοχή στο μοντέλο οργάνωσης ότι κάθε αρχείο (ή/και φάκελος) ανήκει σε ΕΝΑΝ και ΜΟΝΑΔΙΚΟ φάκελο. Σχήμα 1: Αναπαράσταση της οργάνωσης των δεδομένων σε δένδρο. Με ψηφία συμβολίζονται αρχεία ενώ με γράμματα συμβολίζονται φάκελοι. Το Λειτουργικό Σύστημα κάνει χρήση αυτής της βασικής ιδιότητας του δέντρου για να μπορέσει να ταυτοποιήσει ονοματίσει μοναδικά όλα τα αρχεία (κι άρα κι όλους τους φακέλους) του συστήματος. Το όνομα ενός αρχείου λειτουργεί ως ταυτότητα για να μπορεί το Λειτουργικό Σύστημα να αναφέρεται σε αυτό, όπως για παράδειγμα: Σβήσε το αρχείο readme.txt. Λόγω αυτής της ιδιότητας του ονόματος δεν είναι δυνατόν να υπάρχουν δύο αρχεία με το ίδιο όνομα κάτω από τον ίδιο φάκελο. Η εξήγηση είναι προφανής, αν υπήρχαν δύο αρχεία με το ίδιο όνομα κάτω από τον ίδιο φάκελο, τότε δεν θα μπορούσε το Λειτουργικό Σύστημα να ξεχωρίσει σε ποιο από τα δύο αρχεία αναφέρεται η εντολή που εκτελείται. Μονοπάτι (Path) σε ένα γράφο είναι μία διαδρομή από έναν κόμβο του γράφου σε έναν άλλο κόμβο ακολουθώντας τις ακμές του γράφου και χωρίς να σχηματίζεται κάποιος κύκλος. Ουσιαστικά στη συγκεκριμένη περίπτωση των γράφων που αντιστοιχούν στην οργάνωση των

αρχείων ενός Λειτουργικού Συστήματος, path είναι η διαδρομή πάνω στο δένδρο από ένα αρχείο σε ένα άλλο. Σχήμα 2: Με κόκκινο συμβολίζεται το μονοπάτι από τον κόμβο B στον κόμβο 3 ενώ με μπλε το μονοπάτι από τον κόμβο G στον κόμβο I. Τα ΛΣ σε αυτό το μοντέλο οργάνωσης χρησιμοποιούν δύο είδη path, το absolute (απόλυτο) και το relative (σχετικό). Absolute είναι το μονοπάτι του ξεκινάει από το ROOT. Relative είναι το μονοπάτι που ξεκινάει από τον κόμβο στον οποίο βρισκόμαστε. Παρατήρηση: Βάση της βασικής ιδιότητας του δέντρου, (ότι δηλαδή ανάμεσα σε δύο κόμβους του γράφου υπάρχει μία και μοναδική διαδρομή) συμπεραίνεται ότι για κάθε κόμβο του δέντρου υπάρχει ένα και μοναδικό absolute path, ενώ υπάρχουν τόσα relative paths, όσα και οι κόμβοι του δέντρου. Η αναπαράσταση ενός path γίνεται με τον εξής τρόπο: Όνομα αρχικού κόμβου Διαχωριστικό Όνομα επόμενου κόμβου (Χ φορές) Διαχωριστικό Όνομα τελικού κόμβου Όπου: Όνομα αρχικού κόμβου : το όνομα του φακέλου από τον οποίο ξεκινάει η διαδρομή Διαχωριστικό : ένας χαρακτήρας που έχει επιλέξει το κάθε ΛΣ για να διαχωρίζει τα ονόματα των φακέλων στο path Όνομα επόμενου κόμβου : το όνομα του επόμενου φακέλου στη διαδρομή που ακολουθείται (0 ή περισσότερες φορές) Όνομα τελικού κόμβου : το όνομα του αρχείου (ή φακέλου μιας κι αυτός είναι είδος αρχείου) στο οποίο καταλήγει η διαδρομή Σε ένα absolute path το Όνομα_αρχικού_φακέλου είναι πάντα το όνομα του Root. Σε ένα relative path το Όνομα_αρχικού_φακέλου είναι το όνομα του πρώτου φακέλου στη διαδρομή που ακολουθείται ΜΕΤΑ από τον φάκελο που βρισκόμαστε. Κάθε λειτουργικό σύστημα έχει τον δικό του χαρακτήρα συμβολίζει το διαχωριστικό στα paths

όπως και χρησιμοποιούν διαφορετικό συμβολισμό για τον κατάλογο Root. Στα λειτουργικά συστήματα που βασίζονται στο UNIX ο χαρακτήρας που διαχωρίζει τους φακέλους και τα αρχεία στο path, και ο χαρακτήρας που συμβολίζει το Root ταυτίζονται και είναι ο χαρακτήρας / (slash) Στα λειτουργικά συστήματα που βασίζονται στο DOS ο χαρακτήρας που αντιστοιχεί στο διαχωριστικό είναι ο χαρακτήρας \ (backslash), ενώ Root θεωρείται ο χαρακτήρας που έχει αντιστοιχίσει το Λ.Σ. στο αποθηκευτικό μέσο που βρίσκονται αποθηκευμένα τα αρχεία (C:, D:, E:...). Παραδείγματα absolute path Σχήμα 3: Με κόκκινο το absolute path για το αρχείο 3 και με μπλε το absolute path για τον φάκελο Ι. Στο UNIX το absolute path για το αρχείο 3 συμβολίζεται ως εξής /B/F/3 ενώ για τον φάκελο Ι είναι το /C/H/I Στο DOS, αν υποθέσουμε ότι η δομή του σχήματος 3 είναι αποθηκευμένη σε αποθηκευτικό μέσο, που το ΛΣ του έχει αντιστοιχίσει το γράμμα D:, το absolute path για το αρχείο 3 είναι το D:\B\F\3 ενώ για τον φάκελο Ι είναι το D:\C\H\I Παραδείγματα relative path

Σχήμα 4: Με κόκκινο το relative path από το φάκελο Α στο αρχείο 4, με μπλε το relative path από τον φάκελο Root στον φάκελο F, με κίτρινο το relative path από τον φάκελο C στο αρχείο 2 και με πράσινο το relative path από τον φάκελο C στον φάκελο Ι. Στο UNIX το relative path από τον φάκελο A στο αρχείο 4 γράφεται D/4 από τον φάκελο Root στον φάκελο F γράφεται B/F από τον φάκελο C στο αρχείο 2 γράφεται 2 από τον φάκελο C στον φάκελο I γράφεται Η/Ι Αντίστοιχα στο DOS το relative path από τον φάκελο A στο αρχείο 4 γράφεται D\4 από τον φάκελο Root στον φάκελο F γράφεται B\F από τον φάκελο C στο αρχείο 2 γράφεται 2 από τον φάκελο C στον φάκελο I γράφεται Η\Ι Όπως στο παράδειγμα της βιβλιοθήκης, όταν κάποιον βρίσκεται μέσα σε ένα δωμάτιο μπορεί να δει μόνο τα βιβλία που περιέχει το δωμάτιο αυτό καθώς και ποια πιθανώς άλλα δωμάτια έχουν δημιουργηθεί μέσα σε αυτό. Δεν μπορεί να δει τα βιβλία των δωματίων που βρίσκονται μέσα σε αυτό και προφανώς ούτε βιβλία άλλων δωματίων. Το ίδιο ισχύει και με τους φακέλου και τα αρχεία. Μέσα σε ένα φάκελο μπορεί κάποιος να δει ποια αρχεία περιέχει και ποιους φακέλους. Δεν μπορεί να δει όμως ποια αρχεία περιέχουν οι φάκελοι κάτω από αυτών, ούτε τα ονόματα των αρχείων και των φακέλων πάνω από αυτόν. Αυτό το γεγονός είναι πολύ σημαντικό στο σχηματισμό ενός path. Σε κάθε κόμβο ο επόμενος πρέπει να είναι κάποιος κόμβος που μπορούμε να δούμε από τον κόμβο στον οποίοι βρισκόμαστε αυτή τη στιγμή. Τί γίνεται όμως στην περίπτωση που θέλουμε να πάμε πίσω (να ανεβούμε) ένα επίπεδο αφού δεν μπορούμε να δούμε φακέλους πάνω από τον φάκελο που βρισκόμαστε;

Για τον λόγο αυτό τα Λ.Σ. που χρησιμοποιούν αυτόν τον τρόπο οργάνωσης των αρχείων υλοποιούν το εξής: Κάθε φάκελος (ακόμα και οι κενοί) περιέχουν υποχρεωτικά δύο φακέλους που τους δημιουργεί το ίδιο το Λ.Σ. Ο πρώτος φάκελος έχει όνομα. (μία τελεία) και ο δεύτερος έχει όνομα.. (δύο τελείες). Ο φάκελος με όνομα μία τελεία συμβολίζει πάντα τον τρέχων φάκελο (δηλαδή τον εαυτό του). Ο φάκελος με όνομα δύο τελείες συμβολίζει πάντα τον φάκελο που βρίσκεται ένα επίπεδο πιο πάνω, δηλαδή τον φάκελο ο οποίος τον περιέχει (parent directory). Έτσι κάθε φορά που θέλουμε να ανεβούμε ένα επίπεδο χρησιμοποιούμε το φάκελο με όνομα δύο τελείες. Σχήμα 5: Με κόκκινο το relative path από τον φάκελο Ι στο αρχείο 2, με πράσινο το relative path από τον φάκελο F στον φάκελο B, με μπλε το relative path από το E στο αρχείο 4 του φακέλου Root και με κίτρινο το relative path από τον φάκελο C στον φάκελο F. Στο UNIX το relative path από τον φάκελο I στο αρχείο 2 γράφεται../../2 από τον φάκελο F στον φάκελο B γράφεται.. από τον φάκελο E στο αρχείο 4 γράφεται../../4 από τον φάκελο C στον φάκελο F γράφεται../b/f Αντίστοιχα στο DOS το relative path από τον φάκελο I στο αρχείο 2 γράφεται..\..\2 από τον φάκελο F στον φάκελο B γράφεται.. από τον φάκελο E στο αρχείο 4 γράφεται..\..\4 από τον φάκελο C στον φάκελο F γράφεται..\b\f

ΣΥΣΤΗΜΑΤΑ ΑΡΧΕΙΩΝ Τα Συστήματα Αρχείων (ΣΑ για συντομογραφία από εδώ και στο εξής) (file systems) μπορούν να κατηγοριοποιηθούν σε συστήματα αρχείων για δίσκους (disk file systems), δικτυακά συστήματα αρχείων (network file systems) και ειδικού σκοπού συστήματα αρχείων (special purpose file systems). Disk file system είναι ένα ΣΑ που έχει σχεδιαστεί για την αποθήκευση αρχείων σε μία συσκευή αποθήκευσης δεδομένων, κοινώς γνωστή ως δίσκος (disk drive), που μπορεί να είναι άμεσα ή έμμεσα συνδεδεμένη στον υπολογιστή. Παραδείγματα ΣΑ για δίσκους είναι τα FAT (FAT12, FAT16, FAT32, exfat), NTFS, ext2, ext3, ext4, ISO 9660 και UDF. ISO 9660 και UDF (Universal Disk Format) χρησιμοποιούνται σε δίσκους CD, DVD και Blu-Ray. Οι διάφορες εκδόσεις των Windows υποστηρίζουν τα ΣΑ NTFS και FAT, ενώ οι διάφορες εκδόσεις του UNIX υποστηρίζουν πολλαπλά ΣΑ αλλά συνήθως χρησιμοποιείται κάποιο από την οικογένεια των ΣΑ ext. Δικτυακό σύστημα αρχείων είναι ένα ΣΑ που λειτουργεί ως πρόγραμμα πελάτης σε ένα πρωτόκολλο πρόσβασης απομακρυσμένων αρχείων (remote file access protocol) παρέχοντας πρόσβαση στα αρχεία ενός εξυπηρετητή (server). Παραδείγματα δικτυακών ΣΑ περιλαμβάνουν εφαρμογές πελάτη για τα πρωτόκολλα NFS, AFS, SMB, FTP και WebDAV. Ειδικού σκοπού ΣΑ είναι οποιοδήποτε ΣΑ που δεν ανήκει στις προηγούμενες δύο κατηγορίες. Στη συνέχεια θα αναλυθεί το ΣΑ του UNIX Τύποι αρχείων Τα πάντα στο UNIX θεωρούνται αρχεία, ακόμα και τα διάφορα μέσα αποθήκευσης δεδομένων που διαθέτει ο υπολογιστής θεωρούνται το καθένα ξεχωριστό αρχείο. Το UNIX διακρίνει τους παρακάτω τύπους αρχείων (σε παρένθεση ο συμβολισμός που χρησιμοποιεί το ΛΣ για τον συγκεκριμένο τύπο αρχείου). Απλό αρχείο - Regular file (-): Κατάλογος Directory (d): Αρχείο που αντιπροσωπεύει αναπαριστά τα περιεχόμενα ενός φακέλου. Αρχείο συνδέσμου - Symbolic link (l): Αρχείο συντόμευσης που δείχνει σε ένα άλλο αρχείο. Character special file (c): Αρχείο που χρησιμεύει για την επικοινωνία με συσκευές (hardware) χαρακτήρων, π.χ. τερματικό Block special file (b): Αρχείο που χρησιμεύει για την επικοινωνία με συσκευές (hardware) block, π.χ. σκληρό δίσκο Named pipe (p): Αρχείο που χρησιμεύει για τη διοχέτευση πληροφοριών από μία διεργασία σε μία άλλη. Δεν περιέχει δεδομένα το ίδιο το αρχείο, αλλά περνάει τα δεδομένα που γράφει η μία διεργασία και διαβάζει η άλλη. Socket (s): Μηχανισμός που χρησιμοποιείται για την επικοινωνία μεταξύ διεργασιών.

Inode Γενικά ένα ΣΑ για κάθε αρχείο, πέρα από τα δεδομένα (data), που είναι αποθηκευμένα σε κάποιο αποθηκευτικό μέσο, φυλάσσει και επιπλέον πληροφορίες, που αφορούν ορισμένες ιδιότητες του αρχείου. Τέτοιες πληροφορίες μπορεί να είναι το μέγεθος του αρχείου και ο τύπος του. Οι πληροφορίες αυτές ονομάζονται metadata και αποθηκεύονται κι αυτές σε κάποιο αποθηκευτικό μέσο του συστήματος. Στο UNIX αυτά τα metadata αποθηκεύονται σε μία δομή δεδομένων που ονομάζεται inode. Κάθε αρχείο συσχετίζεται με ένα inode, το οποίο αναγνωρίζεται μοναδικά με βάση έναν ακέραιο αριθμό ο οποίος ονομάζεται i-number ή απλά αριθμός inode. inode Tύπος Δικαιώματα πρόσβασης Αριθμός συνδέσμων Ιδιοκτησία Μέγεθος Χρονοσφραγίδες Δείκτες σε blocks δεδομένων 5960 d rw-r r-- 2 guest/guest 40 12/03/11 11:20 5962 - rwxr-xr-x 2 root/root 16 10/08/07 22:31 Σχήμα 6: Πίνακας inodes Στο inode αποθηκεύονται πληροφορίες όπως: Ο αριθμός inode. Με βάση αυτόν τον αριθμό γίνεται η αναζήτηση των metadata για κάθε αρχείο. Τύπος του αρχείου Δικαιώματα πρόσβασης στο αρχείο. Για κάθε αρχείο υπάρχουν καθορισμένα δικαιώματα για τις επιτρεπτές ενέργειες ανάλογα με τον λογαριασμό του κάθε χρήστη. Τα δικαιώματα αυτά κωδικοποιούνται σε ένα 9ψήφιο string το οποίο αποθηκεύεται στα metadata του αρχείου. Αριθμός συνδέσεων. Όπως θα παρουσιαστεί παρακάτω, μπορεί ένα inode να αντιστοιχηθεί σε περισσότερα από ένα ονόματα αρχείων. Πρόκειται για αριθμό που μετράει τον αριθμό των ονομάτων αρχείων που έχουν αντιστοιχηθεί συνδεθεί με το συγκεκριμένο inode. Ιδιοκτησία. Πληροφορίες σχετικά με τον λογαριασμό του χρήστη που δημιούργησε το αρχείο (creator), που έχει στην ιδιοκτησία του πλέον το αρχείο (owner) (κι επομένως μπορεί να καθορίσει τα δικαιώματα πρόσβασης σε αυτό για όλους τους χρήστες) καθώς και για την κύρια ομάδα χρηστών στην οποία ανήκει ο owner του αρχείου. Μέγεθος του αρχείο σε bytes Χρονοσφραγίδες (timestamps) (ημερομηνία και ώρα που συνέβη ένα γεγονός). Κάθε αρχείο διαθέτει 3. Μία για την ημερομηνία δημιουργίας (creation time), μία για την τελευταία φορά που τροποποιήθηκε το αρχείο (modification time) και μία για την τελευταία φορά που προσπελάστηκε το αρχείο (access time). Δείκτες στις διευθύνσεις των blocks που είναι αποθηκευμένα τα δεδομένα του αρχείου ή που είναι αποθηκευμένοι άλλοι δείκτες που με τη σειρά τους δείχνουν διευθύνσεις

blocks στα οποία είναι τα δεδομένα του αρχείου. Σε πολλές υλοποιήσεις διαφόρων τύπων ΣΑ, το μέγεθος που καταλαμβάνουν τα inodes στο αποθηκευτικό μέσο, κι επομένως ο μέγιστος αριθμός inodes, καθορίζεται κατά τη δημιουργία του ΣΑ (συνήθως καθορίζεται ότι τα inodes καταλαμβάνουν το 1% του συνολικού χώρου) και περιορίζει τον μέγιστο αριθμό αρχείων που μπορεί να διαχειριστεί το ΣΑ. Το όνομα του αρχείου ΔΕΝ αποθηκεύεται στα metadata του inode. Το όνομα του αρχείου και η συσχέτισή του με το νούμερο inode γίνεται στο αρχείο του καταλόγου. Κατάλογοι αρχείων Στο UNIX κατάλογος αρχείων είναι ένα αρχείο, το οποίο περιέχει μία λίστα (πίνακας). Κάθε στοιχείο της λίστας αντιστοιχεί σε ένα αρχείο που περιέχει ο κατάλογος αυτός και περιέχει δύο πεδία, το όνομα του αρχείου και τον αριθμό inode στον οποίο αντιστοιχεί. inode Όνομα αρχείου 5960 MyDocuments 5962 TextFile Σχήμα 7: Λίστα αρχείων που αντιστοιχούν σε ένα φάκελο. Όταν ζητείται το περιεχόμενο ενός φακέλου το Λ.Σ ανοίγει τη λίστα που αντιστοιχεί στον φάκελο και παρουσιάζει όλα τα ονόματα των αρχείων που βρίσκει μέσα σε αυτήν. Αντίστοιχα, όταν κάποιος (χρήστης ή εφαρμογή) αναφέρονται σε ένα αρχείο μέσω μίας εντολής, το Λ.Σ. βρίσκει τον κατάλογο στον οποίο ανήκει το αρχείο αυτό, και κάνει αναζήτηση στη λίστα με βάση το όνομα του αρχείου, προσδιορίζοντας έτσι τον αριθμό inode που του αντιστοιχεί. Χρησιμοποιώντας το αριθμό inode, γίνεται αναζήτηση στον πίνακα των inode, ώστε να ανακτήσει τα metadata του αρχείου και μέσω αυτόν και τα ίδια τα δεδομένα του αρχείου. inode Tύπος Δικαιώματα πρόσβασης Αριθμός συνδέσμων Ιδιοκτησία Μέγεθος Χρονοσφραγίδες Δείκτες σε blocks δεδομένων 7340168 d rwxr-xr-x 2 root/root 53248 20/03/11 12:34 7340170 d rwxr-xr-x 2 root/root 4096 12/01/11 02:08 7340167 d rwxr-xr-x 64 root/root 20480 03/02/11 10:33 7341287 l rwxrwxrwx 1 root/root 3 12/01/11 01:51 7340169 d rwxr-xr-x 233 root/root 69632 20/03/11 12:34 Σχήμα 8: Απόσπασμα του πίνακα των inode inode Όνομα αρχείου 7340168 bin 7340170 games 7340167 include 7340169 lib 7341287 lib64 Σχήμα 9: Λίστα περιεχομένων φακέλου. Ο φάκελος περιέχει 5 αρχεία με ονόματα bin, games,

include, lb και lib64. Παρακάτω παρουσιάζονται οι βασικές λειτουργίες αρχείων όπως υλοποιούνται από το Σ.Α. του UNIX. Δημιουργία Όταν δημιουργείται ένα αρχείο, αρχικά του ανατίθεται ένας νέος αριθμός inode από μία δεξαμενή αριθμών που διατηρεί το Λ.Σ. Έπειτα, προστίθεται μία νέα εγγραφή στον πίνακα των inodes συμπληρώνοντας κατάλληλα τις αντίστοιχες πληροφορίες όπως timestamps, αριθμό συνδέσμων (2 αν είναι αρχείο καταλόγου και 1 σε οποιαδήποτε άλλη περίπτωση), τύπος αρχείου και μέγεθος. Τα δεδομένα του αρχείου γράφονται σε blocks ενός αποθηκευτικού μέσου και η διεύθυνση των blocks αυτών αποθηκεύεται ως δείκτης σε block δεδομένων. Τέλος, στο αρχείο του καταλόγου στον οποίο δημιουργείται το αρχείο, δημιουργείται μία νέα εγγραφή στη λίστα όπου και συσχετίζεται ο νέος αριθμός inode με το όνομα του αρχείου. Αντιγραφή Με βάση το όνομα του αρχείου που θα αντιγραφεί γίνεται αναζήτηση στη λίστα του καταλόγου όπου βρίσκεται το αρχείο ώστε να βρεθεί ο αριθμός inode στον οποίο αντιστοιχεί. Με βάση τον αριθμό inode γίνεται αναζήτηση στον πίνακα των inodes και ανακτάται το inode του αρχείου που αντιγράφεται και με βάση αυτό ανακτώνται και τα δεδομένα του αρχείου από τα blocks του αποθηκευτικού μέσου. Ανατίθεται στο αρχείο αντίγραφο που δημιουργείται ένας νέος αριθμός inode από τη δεξαμενή αριθμών που διατηρεί το Λ.Σ. για inode. Με βάση αυτόν τον αριθμό προστίθεται νέα εγγραφή στον πίνακα των inode. Στην εγγραφή αυτή αντιγράφονται όλες οι πληροφορίες από το inode του αρχικού αρχείου, εκτός από τα timestamps, τους δείκτες στα blocks των δεδομένων και φυσικά τον αριθμό inode. Τα δεδομένα του αρχικού αρχείου αντιγράφονται σε κενά blocks του δίσκου και οι διευθύνσεις των block αυτών συμπληρώνονται ως δείκτες στο αντίστοιχο πεδίο του inode για το νέο αρχείο. Τέλος στη λίστα του καταλόγου στον οποίο δημιουργείται το αντίγραφο του αρχείο προστίθεται μία νέα εγγραφή με το όνομα του αρχείου και το νέο αριθμό inode που έδωσε το Σ.Α. στο αντίγραφο. Μετακίνηση Αν η μετακίνηση του αρχείου γίνει μέσα στο ίδιο σύστημα αρχείων, τότε το Σ.Α. αρχικά δημιουργεί μία νέα εγγραφή στον κατάλογο στον οποίο μετακινείται το αρχείο με το όνομα του αρχείου και, κατόπιν, σβήνει την παλιά εγγραφή από τη λίστα του καταλόγου που βρισκότανε αρχικά το αρχείο. Ο αριθμός inode παραμένει ο ίδιος και δεν μετακινούνται δεδομένα στο δίσκο. Αλλάζει η ώρα προσπέλασης του αρχείου μόνο. Μετονομασία Στη λίστα του καταλόγου που βρίσκεται το αρχείο ενημερώνεται η εγγραφή που έχει το όνομα του αρχείο με το νέο όνομα. Ο αριθμός inode παραμένει ο ίδιος και δεν μετακινούνται δεδομένα στο δίσκο. Αλλάζει η ώρα προσπέλασης του αρχείου μόνο. Διαγραφή Για τη διαγραφή ενός αρχείου το Σ.Α. αναζητά στη λίστα του φακέλου που το περιέχει τον αριθμό inode με βάση το όνομα του αρχείου. Με τον αριθμό inode ανακτά τις πληροφορίες του inode που αντιστοιχούν στο αρχείο. Αν ο αριθμός συνδέσμων είναι μεγαλύτερος από 1 τότε μειώνεται κατά

ένα και το inode διατηρείται. Αν είναι 1 τότε το inode διαγράφεται, ο αριθμός inode ελευθερώνεται (και μπορεί να δοθεί πλέον σε άλλο αρχείο) και τα blocks του σκληρού δίσκου θεωρούνται πάλι ελεύθερα (τα δεδομένα ΔΕΝ διαγράφονται, αλλά τα blocks στα οποία βρίσκονταν είναι διαθέσιμα για την εγγραφή άλλου αρχείου). Τέλος διαγράφεται η εγγραφή που αφορά το όνομα του αρχείου από τη λίστα του φακέλου στον οποίο ανήκει. Αρχεία συνδέσμων Ένα αρχείο συνδέσμου είναι ένα αρχείο το οποίο αναφέρεται στα δεδομένα ή στο όνομα ενός δεύτερου αρχείου. Τα αρχεία που αναφέρονται στα ΔΕΔΟΜΕΝΑ ενός άλλου αρχείου ονομάζονται κανονικοί σύνδεσμοι (links ή hard links). Τα αρχεία που αναφέρονται στο ΟΝΟΜΑ ενός άλλου αρχείου ονομάζονται συμβολικοί σύνδεσμοι (symbolic links ή soft links). Επομένως τα hard links αφού αναφέρονται στα ΔΕΔΟΜΕΝΑ ενός άλλου αρχείου είναι ουσιαστικά δείκτες σε inode ενώ τα symbolic links που αναφέρονται στο ΟΝΟΜΑ ενός άλλου αρχείου είναι δείκτες στη εγγραφή της λίστας του φακέλου που περιέχει το όνομα του αρχείου. Συμβολικοί σύνδεσμοι Πρακτικά ένας συμβολικός σύνδεσμος είναι ένα αρχείο κειμένου που περιέχει το path για το όνομα του αρχείου στο οποίο αναφέρεται. Όταν μία εντολή εκτελείται με όρισμα ένα συμβολικό σύνδεσμο, η εντολή ενεργεί στην πραγματικότητα πάνω στο αρχείο στο οποίο «δείχνει» ο συμβολικός σύνδεσμος. Εξαίρεση σε αυτή της συμπεριφορά, αποτελεί η εντολή rm, η οποία σβήνει το συμβολικό σύνδεσμο και όχι το αρχείο που «δείχνει». Για να δημιουργηθεί ένας σύνδεσμος με το όνομα password_slink που να αναφέρεται στο αρχείο /etc/passwd δώστε την εντολή: ln s /etc/passwd password_slink Ένας συμβολικός σύνδεσμος έχει το δικό του αριθμό inode. Ένας συμβολικός σύνδεσμος, λοιπόν, είναι ξεχωριστό αρχείο από το αρχικό. Ο τύπος του αρχείου συμβολίζεται με l (από τη λέξη link) και όχι με -, όπως στα συνηθισμένα αρχεία. Το μέγεθος του συμβολικού συνδέσμου είναι διαφορετικό από το μέγεθος του αρχείου. Το μέγεθος του συμβολικού συνδέσμου πάντα είναι ίσο με το πλήθος των ψηφίων του (πλήρους ή σχετικού) μονοπατιού του αρχείου στο οποίο δείχνει. Έτσι ένας συμβολικός σύνδεσμος στο αρχείο /etc/passwd θα έχει μέγεθος 11 bytes, όσους ακριβώς έχει και η συμβολοσειρά /etc/passwd. Αυτό συμβαίνει γιατί το περιεχόμενο του συμβολικού συνδέσμου είναι το πλήρες μονοπάτι του αρχείου στο οποίο «δείχνει». Σύνδεσμοι Ένας σύνδεσμος (hard link) ουσιαστικά είναι η σύνδεση ανάμεσα σε έναν αριθμό inode και σε ένα όνομα. Έτσι όλα τα αρχεία έχουν τουλάχιστον ένα σύνδεσμο. Όμως με τον τρόπο που χειρίζεται τα ονόματα των αρχείων το Σ.Α. του UNIX (το όνομα του αρχείου ΔΕΝ είναι αποθηκευμένο στα metadata του inode, αλλά σα ζεύγος όνομα αρχείου αριθμός inode στη λίστα του αρχείου του καταλόγου) είναι δυνατό ένα inode να συνδεθεί με περισσότερα από ένα ονόματα. Για να δημιουργηθεί ένας σύνδεσμος του αρχείου /etc/passwd με όνομα password_hlink, η εντολή είναι: ln /etc/passwd password_ηlink Τα δύο αρχεία, το αρχικό και ο σύνδεσμός του, έχουν τον ίδιο αριθμό inode. Υπάρχει λοιπόν ένα

αρχείο, αλλά δύο ονόματα για να αναφερθούμε σε αυτό. Το πεδίο αριθμός συνδέσεων του inode, αναφέρεται στον αριθμό των διαφορετικών ονομάτων αρχείων που δείχνουν στο ίδιο inode. Επομένως μετά την εκτέλεση της παραπάνω εντολής στο inode του αρχείου η τιμή του αριθμού συνδέσεων είναι 2 (γιατί δύο είναι τα ονόματα των αρχείων που δείχνουν στην ίδια εγγραφή του πίνακα των inode) Τα δύο αρχεία, το αρχικό και ο σύνδεσμός του, είναι κανονικά αρχεία. Όταν σβήσουμε το ένα από τα δύο αρχεία, ο αριθμός των συνδέσμων θα μειωθεί κατά ένα, αλλά το αρχείο δε θα διαγραφεί, παρά μόνο όταν σβήσουμε το τελευταίο αρχείο που χρησιμοποιεί τον αριθμό inode. Το Λ.Σ. χρησιμοποιεί τα hard links για να υλοποιήσει τους ειδικούς φακέλους. (τελεία) και.. (δύο τελείες). Παραπάνω αναφέρθηκε ότι σε κάθε φάκελλο υπάρχουν υποχρεωτικά δύο φάκελοι ειδικής σημασίας. Ο φάκελος με όνομα. (μία τελεία) συμβολίζει τον τρέχον φάκελο. Ενώ ο φάκελος με όνομα.. (δύο τελείες) συμβολίζει τον φάκελο που βρίσκεται ένα επίπεδο ψηλότερα στο δέντρο. Επομένως το Σ.Α. για κάθε φάκελο δημιουργεί ένα hard link με όνομα. (μία τελεία) έτσι ώστε να αναφέρονται στο ίδιο inode και επομένως να είναι ο ίδιος φάκελος. Με την ίδια λογική σε κάθε φάκελο δημιουργείται ένα hard link στον φάκελο που βρίσκεται ένα επίπεδο πιο πάνω με όνομα.. και άρα παίρνει το ίδιο inode, έτσι ώστε οποιαδήποτε αναφορά στον φάκελο.. να είναι ουσιαστικά αναφορά στο parent directory. Ισχύουν οι εξής περιορισμοί στους συνδέσμους: 1. Τα δύο αρχεία, το αρχικό και ο σύνδεσμός του, πρέπει να βρίσκονται στο ίδιο σύστημα αρχείων, αφού μοιράζονται τον ίδιο αριθμό inode. 2. Δεν επιτρέπεται στους χρήστες η δημιουργία hard link σε φάκελο. Η λειτουργία αυτή είναι αποκλειστικότητα του Λειτουργικού Συστήματος και εξυπηρετεί την υλοποίηση των ειδικών φακέλων. (μία τελεία) και.. (δύο τελείες) που περιέχουν όλοι οι φάκελοι.

Ερωτήσεις σε ABSOLUTE και RELATIVE PATH Σχήμα 10: Δενδρική δομή δεδομένων 1. Με βάση το σχήμα 10 δώστε για το Λ.Σ. UNIX τα absolute path για τα αρχεία φακέλους. a. F2 b. F10 c. F8 2. Με βάση το σχήμα 10 δώστε για το Λ.Σ. UNIX τα relative path για τα αρχεία φακέλους. a. F11 όταν είστε στον φάκελο F1 b. F9 όταν είστε στον φάκελο Root c. F5 όταν είστε στον φάκελο F6 d. Root όταν είστε στον φάκελο F10 3. Με βάση το σχήμα 10 δώστε για το Λ.Σ. DOS τα absolute path για τα αρχεία φακέλους. Τα αρχεία βρίσκονται στον σκληρό δίσκο Ε: a. F2 b. F10 c. F8 4. Με βάση το σχήμα 10 δώστε για το Λ.Σ. DOS τα relative path για τα αρχεία φακέλους. a. F11 όταν είστε στον φάκελο F1 b. F9 όταν είστε στον φάκελο Root c. F5 όταν είστε στον φάκελο F6 d. Root όταν είστε στον φάκελο F10 5. Ποιοι από τους κόμβους F1 έως F11 του σχήματος 10 είναι σίγουρα φάκελοι και ποιοι θα μπορούσαν να είναι αρχεία; Αιτιολογήστε την απάντησή σας.

Ερωτήσεις - ΣΥΣΤΗΜΑΤΑ ΑΡΧΕΙΩΝ Σχήμα 11: Δενδρική δομή δεδομένων. 1. Γιατί πιστεύετε ότι δεν επιτρέπεται στους χρήστες η δημιουργία hard link σε φακέλους; 2. Με βάση το σχήμα 11 πόσα hard links υπάρχουν για τους φακέλους F10, F4, F3 αντίστοιχα; Αιτιολογήστε την απάντησή σας. 3. Αν εκτελεστεί η εντολή ln -s /F1/F5/F11 SymbolicLinkForF11 τί μέγεθος θα είναι το αρχείο SymbolicLinkForF11; Αιτιολογήστε την απάντησή σας 4. Για το αρχείο κειμένου TestFile δημιουργείται ένα hard link με όνομα HaTestFile και ένα symbolic link με όνομα SyTestFile. Αν διαγραφεί το αρχείο TestFile η προσπάθεια να εμφανιστούν τα περιεχόμενα των αρχείων HaTestFile και SyTestFile θα επιτύχει ή θα αποτύχει; Αιτιολογήστε την απάντησή σας. 5. Με βάση το σχήμα 8 της θεωρίας πόσα διαφορετικά αρχεία και πόσα ονόματα αρχείων υπάρχουν στο σύστημα;