Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

1 Δημοφιλή Συστήματα Αρχείων διαφόρων Λειτουργικών Συστημάτων. Λειτουργικά Συστήματα επιβλέπων: Δρ. Μηνάς Δασυγένης Φοιτητής : Ροΐδης Νικόλαος AM: 155.

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "1 Δημοφιλή Συστήματα Αρχείων διαφόρων Λειτουργικών Συστημάτων. Λειτουργικά Συστήματα επιβλέπων: Δρ. Μηνάς Δασυγένης Φοιτητής : Ροΐδης Νικόλαος AM: 155."— Μεταγράφημα παρουσίασης:

1 1 Δημοφιλή Συστήματα Αρχείων διαφόρων Λειτουργικών Συστημάτων. Λειτουργικά Συστήματα επιβλέπων: Δρ. Μηνάς Δασυγένης Φοιτητής : Ροΐδης Νικόλαος AM: 155 Συμπληρωματική εργασία Θέμα « Δημοφιλή Συστήματα Αρχείων διαφόρων Λειτουργικών Συστημάτων. » 24/6/2014

2 2 Περιεχόμενα  Γενικά για λειτουργικά συστήματα.………………………σελ 3  Αρχεία……………………………………………………….σελ 13  Κατάλογοι……………………………………………………σελ 19  FAT32………………………………………………………..σελ 32  NTFS…………………………………………………………σελ 41  UFS…………………………………………………………..σελ 47  FFS…………………………………………………………..σελ 63  VFS…………………………………………………………..σελ 69  ext2, ext3, ext4……………………………………………..σελ 74  HFS………………………………………………………….σελ 77  Yaffs…………………………………………………………σελ 85  Βιβλιογραφία……………………………………………… σελ 90

3 3 Λειτουργικό Σύστημα (1) • Ο όρος Λειτουργικό Σύστημα (Operating System) δηλώνει το σύνολο των προγραμμάτων ενός υπολογιστή που συντονίζουν και ελέγχουν την λειτουργία των μονάδων του. • Το Λειτουργικό Σύστημα βελτιστοποιεί την απόδοση της λειτουργίας του υπολογιστή και ενεργεί ως ενδιάμεσο (interface) μεταξύ χρήση και μηχανής. Με τον τρόπο αυτό δημιουργείται ένα περιβάλλον συνεργασίας ανθρώπου και υπολογιστή όπου ο προγραμματιστής μπορεί να δημιουργεί τα προγράμματα των εφαρμογών του και ο υπολογιστής να τα εκτελεί.

4 4 Λειτουργικό Σύστημα (2) • Το Λειτουργικό Σύστημα αποτελεί ένα διαχειριστή για την ανάθεσης πόρων (resource allocation). Αποτελεί το πρόγραμμα που αναλαμβάνει να μοιράσει τους πόρους τους συστήματος ανάμεσα στις διάφορες εφαρμογές. • Το ΛΣ δημιουργεί ένα εικονικό περιβάλλον, μέσα στο οποίο εκτελούνται οι εφαρμογές. Οι εφαρμογές μέσα από συγκεκριμένη και τυποποιημένη διασύνδεση, που τους προσφέρει το ΛΣ διαμορφώνουν, αυστηρά συμμορφωμένα με αυτήν, αιτήματα για να αποκτήσουν πόρους, προκειμένου να ολοκληρώσουν τις εργασίες που ζητά ο χρήστης. • Το ΛΣ είναι το πρώτο λογισμικό που «φορτώνει» στην μνήμη του ο υπολογιστής. Οποιοδήποτε λογισμικό «φορτωθεί» στη συνέχεια βασίζεται στο ΛΣ για την παροχή όλων των βασικών υπηρεσιών.

5 5 Λειτουργικό Σύστημα (3) •Τα Λειτουργικά Συστήματα έχουν μια σχέση «εξάρτησης» με την αρχιτεκτονική των υπολογιστικών συστημάτων στα οποία εκτελούνται. Οι εξελίξεις στο υλικό των υπολογιστικών συστημάτων έκανε δυνατή την παροχή επιπλέον λειτουργιών προς τα προγράμματα των χρηστών. Οι λειτουργίες αυτές υλοποιούνταν με την ανακάλυψη και την εξέλιξη των λειτουργικών συστημάτων.

6 6  Να εκτελεί τις εντολές εισόδου-εξόδου τις οποίες έχει ζητήσει ένα πρόγραμμα κατά την εκτέλεση του.  Να χειρίζεται και να αξιοποιεί την κεντρική μνήμη με το καλύτερο δυνατό τρόπο.  Να αξιοποιεί την κεντρική μονάδα επεξεργασίας.  Να διαχειρίζεται τις περιφερειακές μονάδες (δίσκου, ταινίες κλπ.), παραχωρώντας αυτές στα διάφορα προγράμματα.  Να διαχειρίζεται την αρχειοθέτηση των πληροφοριών στο δίσκο, και να εξασφαλίζει τα αρχεία από λανθασμένη ή κακή λειτουργία προγραμμάτων ή μηχανής. Βασικές Λειτουργίες ενός Λειτουργικού Συστήματος (1)

7 7 Βασικές Λειτουργίες ενός Λειτουργικού Συστήματος (2)  Να φορτώνει και να εκτελεί το πρόγραμμα του χρήστη και να εποπτεύει την αλληλοδιαδοχή των προγραμμάτων του ίδιου ή διαφορετικών χρηστών.  Να προστατεύει τα προγράμματα του καθώς και αυτά των χρηστών από επέμβαση άλλων προγραμμάτων σε περιβάλλον πολυπρογραμματισμού.  Να διατηρεί λογιστικά και άλλα στοιχεία των προγραμμάτων των χρηστών σε περιπτώσεις πολυπρογραμματισμού. Να τηρεί ημερολόγιο της λειτουργίας του υπολογιστή με τα γεγονότα της ημέρας, ποιος χρησιμοποιεί το σύστημα, πότε, πόσο χρόνο σε επεξεργασία, σε είσοδο /έξοδο κλπ.

8 8  Windows (98, NT, 2000, XP, Vista, 7, Server)  FreeBSD  Linux Distributions (Ubuntu, Fedora, Mandriva)  Macintosh OS v 10.x (Leopard, Tiger)  Android  Windows Mobile CE  Haiku  Solaris  IPhone OS  CentOS  OpenBSD  Unix Παραδείγματα Σύγχρονων Λειτουργικών Συστημάτων

9 9  Ένα σύστημα αρχείων μπορούμε να το φανταστούμε ως το μέσο με το οποίο ο υπολογιστής διαχειρίζεται τα αρχεία που βρίσκονται στον σκληρό δίσκο. Η διαχείριση αυτή θέτει ως βασικό στόχο την εκτέλεση βασικών λειτουργιών που αφορούν τα αρχεία όπως η διαγραφή, η μετονομασία, η δημιουργία, η αντιγραφή, βασικές λειτουργίες που οποιοδήποτε σύστημα αρχείων πρέπει να είναι εφοδιασμένο να εκτελεί.  Το σύστημα αρχείων δημιουργεί δομές – καταλόγους ώστε να γνωρίζει την τοποθεσία των αρχείων που βρίσκονται στον σκληρό δίσκο, ώστε να μπορεί άμεσα να τα προσπελαύνει.  Το σύστημα αρχείων πρέπει να διατηρεί πληροφορίες για τον ελεύθερο / δεσμευμένο χώρο που βρίσκεται στον δίσκο. Σύστημα Αρχείων (1)

10 10  Το σύστημα αρχείων πρέπει να διατηρεί πληροφορίες για τα χαρακτηριστικά που έχουν τα αρχεία, φακέλους κτλ, που φιλοξενεί καθώς επίσης και να μπορεί να τις ανανεώνει δυναμικά.  Το σύστημα αρχείων διατηρεί μονοπάτια προς τα αρχεία καθώς επίσης και οτιδήποτε άλλη πληροφορία σχετίζεται με αυτά, συντομεύσεις, I-nodes, soft links, hard links. Σύστημα Αρχείων (2)

11 11  FAT (FAT12, FAT16, FAT32, exFAT)  NTFS  HFS και HFS+  HPFS  UFS  ext2, ext3, ext4  btrfs  ISO 9660  ODS-5  Veritas File System  ZFS  UDF  πολλά άλλα ακόμα. Παραδείγματα Συστημάτων Αρχείων

12 12  Αρχεία  Κατάλογοι  Pipes  I – nodes (Unix) Στοιχεία Συστήματος Αρχείων

13 13  Αρχεία (Files)

14 14  Το σύστημα αρχείων του ΛΣ χρειάζεται διάφορες πληροφορίες για κάθε αρχείο, οι οποίες ονομάζονται χαρακτηριστικά (attributes - properties). Το βασικό χαρακτηριστικό του αρχείου είναι βέβαια το όνομά του. Υπάρχουν όμως και άλλες απαραίτητες πληροφορίες, μερικές από τις οποίες μπορεί να είναι:  Το μέγεθος του αρχείου  Ο χρήστης που δημιούργησε το αρχείο  Ο τύπος του αρχείου  Ο τρέχων χρήστης-ιδιοκτήτης του  Η ημερομηνία και ώρα δημιουργίας του αρχείου Χαρακτηριστικά των αρχείων (1)

15 15  Η ημερομηνία και ώρα της τελευταίας πρόσβασης στο αρχείο  Η ημερομηνία και ώρα της τελευταίας τροποποίησης των περιεχομένων του  Μια ένδειξη αν τα δεδομένα του αρχείου μπορούν να αλλοιωθούν ή αυτό προορίζεται μόνο για ανάγνωση δεδομένων (read only)  Μια ένδειξη αν πρόκειται για αρχείο του ΛΣ  Οι χρήστες που δικαιούνται να το χρησιμοποιούν και με ποιο τρόπο: να διαβάζουν τα δεδομένα του, να τα αλλάζουν ή να τροποποιούν κάποια χαρακτηριστικά του  Αν το αρχείο το χρησιμοποιούν από κοινού πολλές διεργασίες και ποιες Χαρακτηριστικά των αρχείων (2)

16 16  Δημιουργία ενός νέου αρχείου. Αυτό αρχικά δεν περιέχει δεδομένα, δηλαδή το μέγεθός του είναι 0. Το νέο αρχείο, μετά τη δημιουργία του είναι «ανοικτό» και διαθέσιμο στη διεργασία που το δημιούργησε για να προσθέσει δεδομένα ξεκινώντας από την αρχή του.  Διαγραφή ενός αρχείου από τη δευτερεύουσα μνήμη. Ανάλογα με το ΛΣ, τα περιεχόμενα του αρχείου μπορεί να χάνονται αυτομάτως ή να υπάρχει μια πιθανότητα να ανακτηθούν με ειδικά προγράμματα.  Άνοιγμα ενός αρχείου από μια διεργασία, ώστε αυτή να έχει πρόσβαση στα περιεχόμενά του. Υπάρχουν διάφοροι τρόποι ανοίγματος ενός αρχείου: για ανάγνωση μόνο, για ανάγνωση και εγγραφή, για σειριακή ανάγνωση (δηλαδή μόνο από την αρχή προς το τέλος με τη σειρά). Ένα αρχείο μπορεί να ανοιχθεί ως μοιραζόμενο· στην περίπτωση αυτή πολλές διεργασίες μπορούν να έχουν συγχρόνως το ίδιο αρχείο ανοικτό, να διαβάζουν ή να γράφουν σε αυτό. Λειτουργίες που εκτελούνται στα αρχεία (1)

17 17  Η προσπέλαση των δεδομένων του αρχείου από μια διεργασία γίνεται πάντα στο τρέχον σημείο του αρχείου. Όταν το αρχείο δημιουργείται ή ανοίγει, το τρέχον σημείο είναι η αρχή του.  Κλείσιμο ενός αρχείου που είχε ανοιχθεί νωρίτερα από μια διεργασία. Η διεργασία δεν έχει πλέον πρόσβαση στα περιεχόμενα του αρχείου, και όποιες αλλαγές είχαν γίνει σ' αυτό και δεν είχαν οριστικοποιηθεί τώρα μπορούν να αποθηκευθούν μόνιμα.  Ανάγνωση δεδομένων από ένα ανοικτό αρχείο. Η ανάγνωση γίνεται στο τρέχον σημείο του αρχείου. Κατόπιν το τρέχον σημείο μετακινείται αυτόματα στα αμέσως επόμενα δεδομένα από αυτά που διαβάστηκαν. Λειτουργίες που εκτελούνται στα αρχεία (2)

18 18 Λειτουργίες που εκτελούνται στα αρχεία ( 3 )  Εγγραφή δεδομένων σε ένα ανοικτό αρχείο, στο τρέχον σημείο του. Μετά από την εγγραφή το τρέχον σημείο προωθείται αμέσως μετά από τα δεδομένα που γράφτηκαν· εκεί θα γίνει η επόμενη εγγραφή. Αν στο σημείο όπου έγινε η εγγραφή υπήρχαν δεδομένα, τότε αυτά χάνονται. Αν δεν υπήρχαν δεδομένα (π.χ. στο τέλος του αρχείου), τότε χρησιμοποιείται νέος χώρος στη δευτερεύουσα μνήμη για να καταγραφούν οι νέες πληροφορίες.  Ανάγνωση ή αλλαγή των χαρακτηριστικών ενός αρχείου. Μια διεργασία μπορεί π.χ. να μάθει τον ιδιοκτήτη του αρχείου, την ημερομηνία δημιουργίας του κλπ. Δεν είναι δυνατόν όμως να αλλάξουν όλα τα χαρακτηριστικά του αρχείου, όπως το μέγεθος του αρχείου, το οποίο καθορίζεται έμμεσα από τα δεδομένα που περιέχει. Το κυριότερο χαρακτηριστικό ενός αρχείου που μπορεί να αλλάξει είναι το όνομά του.

19 19  Κατάλογοι (Directories)

20 20 Γενικά Κατάλογοι  Κατάλογοι (Directories): Συνήθως χρησιμοποιείται ιεραρχικό σύστημα για την ταξινόμηση των αρχείων στο file system. Αυτό σημαίνει ότι κάτω από μια ρίζα υπάρχουν φάκελοι με άλλους φακέλους και αρχεία δημιουργώντας μια ιεραρχική δομή.

21 21 Λειτουργίες στους Καταλόγους / Directories(1)  Δημιουργία / Create: Δημιουργεί ένα directory.  Διαγραφή / Delete: Διαγράφει ένα directory. Μόνο ένα άδειο directory μπορεί να διαγραφεί.  Άνοιγμα / Open: Για να διαβαστεί ένα directory πρέπει πρώτα να ανοιχτεί. Αυτό γίνεται με την κλήση open.  Κλείσιμο / Close: Κλείνει τον κατάλογο.  Μετονομασία / Rename: Αλλάζει το όνομα του καταλόγου

22 22 Λειτουργίες στους Καταλόγους / Directories(2)  Link: Το linking είναι μια τεχνική που επιτρέπει σε ένα αρχείο να εμφανίζεται σε περισσότερα του ενός directories. Με αυτή την κλήση δημιουργείται ένας σύνδεσμος μεταξύ ενός υπάρχοντος αρχείου και ενός άλλου directory από αυτό στο οποίο ανήκει το αρχείο. Έτσι στη συνέχεια το αρχείο αυτό εμφανίζεται να ανήκει και στα δύο directories.  Unlink: Διαγράφει ένα link από ένα directory. Αν το αρχείο που γίνεται unlink δεν ανήκει πλέον σε κανένα directory τότε διαγράφεται και από το file system.

23 23 Τεχνικές Διαχείρισης Αρχείων / Διαχείριση Ελεύθερου Χώρου  Τα αρχεία υπάρχουν στην δευτερεύουσα μονάδα αποθήκευσης – δίσκο.  Προβλήματα στην διαχείριση του ελεύθερου χώρου  Απόδοση  Ανάκτηση αρχείων με μεγάλη ταχύτητα  Τρεις είναι οι βασικές μέθοδοι για την διαχείριση του ελεύθερου χώρου σε μία μονάδα δευτερεύουσας αποθήκευσης 1.Συνεχόμενη 2.Συνδεδεμένη 3.Με ευρετήριο

24 24 Συνεχόμενη Δέσμευση Χώρου (1)  Κάθε αρχείο δεσμεύει ένα σύνολο από συνεχόμενα μπλοκ στον δίσκο.  Πλεονέκτημα στην μέθοδο αυτή είναι ότι είναι ιδιαίτερα απλή καθώς κάθε αρχείο ξεκινά από το μπλοκ με αριθμό #x, έχει μέγεθος ν μπλοκ, δηλαδή ν * μέγεθος του κάθε μπλοκ στον δίσκο.  Βασικό μειονέκτημα εδώ είναι ότι θα χρειαζόμαστε συνεχόμενα δυναμική δέσμευση στον δίσκο, κάτι που θα δημιουργήσει εξάντληση πόρων πολύ γρήγορα  Τα αρχεία δεν μπορούν να μεγαλώσουν καθώς για να γίνει αυτό θα πρέπει να μετακινηθούν τα αρχεία σε άλλα μπλοκ κάτι που είναι πρακτικά αδύνατον.

25 25 Συνεχόμενη Δέσμευση Χώρου (2)

26 26 Συνδεδεμένη Δέσμευση Χώρου (1)  Κάθε αρχείο είναι μία συνδεδεμένη λίστα από μπλοκ, τα μπλοκ μπορεί να είναι διάσπαρτα σε οποιοδήποτε σημείο του δίσκου  Βασικό πλεονέκτημα εδώ είναι η απλότητα καθώς το μόνο που χρειαζόμαστε είναι να γνωρίζουν την διεύθυνση της κεφαλής της λίστας των μπλοκ.  Επίσης ο χώρος αξιοποιείται βέλτιστα καθώς δεν χρειάζεται να σπαταλήσουμε χώρο στον δίσκο.  Δεν υπάρχει τυχαία προσπέλαση.

27 27 Συνδεδεμένη Δέσμευση Χώρου (2)

28 28 Με ευρετήριο Διαχείριση Χώρου (1)  Φέρνει όλους του δείκτες μαζί σε ένα μπλοκ που ονομάζεται μπλοκ ευρετήριο.  Χρειάζεται πίνακα ευρετήριο που πρέπει να ενημερώνεται.  Τυχαία προσπέλαση.  Δυναμική προσπέλαση χωρίς εξωτερικό κατακερματισμό αλλά με το μειονέκτημα ότι χρειάζεται μπλοκ ευρετηρίου.

29 29 Με ευρετήριο Διαχείριση Χώρου (2)

30 30 Γενική Εικόνα Λειτουργίας Συστήματος Αρχείων (1)

31 31 Γενική Εικόνα Λειτουργίας Συστήματος Αρχείων (2)  Πρώτο είναι το boot block όπως έχει προαναφερθεί ενώ ακολουθεί το superblock το οποίο περιέχει κάποιες σημαντικές πληροφορίες σχετικά με τον τύπο του filesystem, τον αριθμό των blocks κ.τ.λ. Μετά ίσως ακολουθεί ένα αρχείο σε μορφή bitmap ή συνδεδεμένης λίστας που δείχνει τα ελεύθερα blocks. Στη συνέχεια μπορεί να υπάρχουν οι i-nodes, που είναι μια δομή δεδομένων, ένας για κάθε αρχείο που έχει όλες τις πληροφορίες για το αρχείο. Τέλος θα υπάρχει το root directory με την ρίζα του file system tree και τα υπόλοιπα αρχεία και φάκελοι.

32 32  FAT32 (File Allocation Table)

33 33  FAT32: File Allocation Table 32  Παρουσιάστηκε για πρώτη φορά με τα Windows 95OSR2, υιοθετήθηκε ευρέως από πολλά λειτουργικά συστήματα τα οποία μπορούν εύκολα να δημιουργήσουν κατατμήσεις με αυτό το σύστημα αρχείων με την διαφορά σε σχέση με τις προγενέστερες εκδόσεις ότι κάθε FAT εγγραφή έχει μέγεθος 32 bit σε αντίθεση με τα 16 bit που μέχρι εκείνη τη στιγμή χρησιμοποιούνταν.  Υποστηρίζει μέγεθος δίσκων μεγαλύτερο των 2 GB. FAT32 – Γενικά (1)

34 34  Επειδή το σύστημα αρχείων FAT32 υποστηρίζει περισσότερους από clusters μικρότεροι σε μέγεθος clusters μπορούν να χρησιμοποιηθούν για την οργάνωση του διαθέσιμου χώρου με αποτέλεσμα καλύτερη απόδοση. Για μέγεθος cluster 512 Bytes έχουμε όριο για το μέγιστο όριο volume στα 2 TB, ενώ αντίστοιχα για μέγεθος cluster 4096 Bytes έχουμε μέγιστο όριο μεγέθους τόμου στα 16TB.  Στην ουσία από τα 32 bit μόνο τα 28 χρησιμοποιούνται σε κάθε εγγραφή FAT και δηλώνουν την διεύθυνση του κάθε cluster, τα υπόλοιπα 4 είναι δεσμευμένα. FAT32 – Γενικά (2)

35 35  Το πρώτο sector του δίσκου ονομάζεται Master Boot Record (MBR).  Κάθε sector έχει μέγεθος 512 Bytes εκ προεπιλογής, επιγραμματικά από τα 512 Bytes του πρώτου sector τα αρχικά 446 Bytes περιέχουν τον κώδικα εκκίνησης που είναι ο κώδικας που διαβάζει ο υπολογιστής για να ξεκινήσει την φόρτωση του λειτουργικού συστήματος.  Στη συνέχεια έχουμε τα υπόλοιπα 64 Bytes τα οποία αναπαριστούν 4 στο μέγιστο διαφορετικές κατατμήσεις όπου κάθε εγγραφή έχει μέγεθος 16 Bytes. Η δομή αυτή ονομάζεται Partition Table.  Τέλος τα τελευταία δύο Bytes δηλαδή τα 0x55, 0xAA αντιπροσωπεύουν bytes ελέγχου κατά πόσο το MBR είναι εντάξει, πιστοποιούν δηλαδή την ορθότητα και ακεραιότητα της κύριας εγγραφής εκκίνησης.  Οι τέσσερις αυτές κατατμήσεις που φαίνονται στο σχήμα είναι κύριες κατατμήσεις και δεν μπορούμε να έχουμε περισσότερες από 4, παρά μόνο αν χρησιμοποιήσουμε επεκταμένη κατάτμηση. FAT32 – Δομή 1

36 36  Για να επιλυθεί το πρόβλημα με το μέγιστο των 4 κύριων κατατμήσεων, για τόμους που χρειάζονται παραπάνω από 4, μπορεί να χρησιμοποιηθεί μία ή και περισσότερες εκτεταμένες κατατμήσεις στις οποίες μπορούμε να δημιουργήσουμε λογικές κατατμήσεις. Αυτό γίνεται καθώς το πρώτο sector για κάθε εκτεταμένη κατάτμηση έχει το δικό του partition table το οποίο περιγράφει τις κατατμήσεις στο δικό του ελεύθερο χώρο. FAT32 – Δομή 2

37 37  Κάθε κατάτμηση (partition) στην κύρια εγγραφή εκκίνησης έχει μέγεθος 16 bytes από τα οποία το 5 ο byte, Type Code, δηλώνει τι σύστημα αρχείων θα χρησιμοποιεί η κατάτμηση, ενώ τα bytes 9 – 12 δηλώνουν την διεύθυνση εκκίνησης της κατάτμησης.  Για το σύστημα αρχείων FAT32 το Type Code είναι 0x0B ή 0x0C.  Η εγγραφή διατηρεί και έναν αριθμό που δηλώνει τον μέγιστο αριθμό από sectors που μπορεί να χρησιμοποιήσει η κατάτμηση ώστε να μην ξεπερνάει τα όρια της. FAT32 – Δομή 3

38 38  Το πρώτο βήμα για να διαβαστεί το σύστημα αρχείων FAT32 είναι να διαβαστεί το πρώτο sector που ονομάζεται Volume ID.  Αυτό διαβάζεται χρησιμοποιώντας την διεύθυνση LBA που βρίσκεται στην εγγραφή του πίνακα με τις κατατμήσεις.  Εδώ έγκειται διαφορά με τις προηγούμενες υλοποιήσεις συστημάτων αρχείων τύπου FAT (12, 16)  Από αυτό το sector έχουμε ότι πληροφορίες χρειαζόμαστε για το σύστημα αρχείων. FAT32 – Δομή 4

39 39 FieldMicrosoft's Name OffsetSizeValue Bytes Per Sector BPB_BytsPerS ec 0x0B16 BitsAlways 512 Bytes Sectors Per Cluster BPB_SecPerClu s 0x0D8 Bits1,2,4,8,16,32,64,128 Number of Reserved Sectors BPB_RsvdSecC nt 0x0E16 BitsUsually 0x20 Number of FATs BPB_NumFATs0x108 BitsAlways 2 Sectors Per FAT BPB_FATSz320x2432 BitsDepends on disk size Root Directory First Cluster BPB_RootClus0x2C32 BitsUsually 0x Signature(none)0x1FE16 BitsAlways 0xAA55 FAT32 – Δομή 5

40 40  Η απεικόνιση του συστήματος αρχείων FAT32 είναι σχετικά απλή. Αρχικά το πρώτο sector είναι πάντα το Volume ID, που ακολουθείται από κάποιον ελεύθερο χώρο που είναι τα δεσμευμένα sectors. Μετά τα δεσμευμένα sectors ακολουθούν δύο (2) αντίγραφα του File Allocation Table (FAT), το υπόλοιπο κομμάτι είναι οργανωμένο σε clusters με ένα μικρό κομμάτι ελεύθερου χώρου στο τέλος. FAT32 – Δομή 6

41 41  NTFS (New Technology File System)

42 42  NTFS: New Technology File System, νέο σύστημα αρχείων διαθέσιμο μόνο στις αληθινές 32 Bit εκδόσεις λειτουργικών συστημάτων.  Σχεδιάστηκε για να εξομαλύνει τα προβλήματα και τις αδυναμίες του FAT συστήματος αρχείων, δυνατότητα να αξιοποιεί δίσκους μεγαλύτερου μεγέθους.  Δόθηκε έμφαση στην ταχύτητα και στην ασφάλεια, εμπλουτισμός με νέες δυνατότητες για κρυπτογράφηση αρχείων.  Ο σχεδιασμός και οι λεπτομέρειες υλοποίησης του έχουν κρατηθεί κρυφές από την Microsoft και παρά το γεγονός ότι έχει γίνει μεγάλη προσπάθεια με τεχνικές να αποκρυπτογραφεί, μόνο η ίδια η εταιρεία γνωρίζει τον ακριβή τρόπο που λειτουργεί. NTFS – Γενικά (1)

43 43  Υιοθετήθηκε ευρέως σε όλα τα Windows NT συστήματα (NT, XP, Vista, 7, Server Editions) όπου μάλιστα έγινε υποχρεωτική επιλογή για το βασικό διαμέρισμα εκκίνησης σε κάποια από τα νεώτερα λειτουργικά.  Λειτουργικά συστήματα διαφορετικά από τα Windows δεν έχουν την δυνατότητα να γράψουν σε διαμερίσεις που έχουν διαμορφωθεί με αυτού του είδους συστήματος αρχείων παρά μόνο με την χρήση ειδικού λογισμικού, μπορούν όμως να διαβάσουν δεδομένα από αυτό. NTFS – Γενικά (2)

44 44  Μερικά από τα βασικά πλεονεκτήματα του νέου συστήματος αρχείων έναντι των προγενέστερων αφορά τα εξής: 1.Το NTFS έχει την δυνατότητα για επαναφορά κρίσιμων για το λειτουργικό σύστημα αρχείων καθώς διατηρεί αντίγραφα ασφαλείας τους και σε περίπτωση που το σύστημα αποτύχει αυτόματα επαναφέρει τα αντίγραφα των προβληματικών αρχείων και το σύστημα επαναλειτουργεί. 2.Ο βαθμός ασφάλειας είναι πολύ μεγαλύτερος καθώς παρέχεται η δυνατότητα για επιλογή βαθμού ασφαλείας ανά αρχείο και εγγράφονται περισσότερες πληροφορίες σχετικά με την χρήση του αρχείου. 3.Το σύστημα αρχείων χρησιμοποιεί μικρότερου μεγέθους cluster και με τον τρόπο αυτό έχουμε αύξηση της απόδοσης όσον αφορά την αξιοποίηση του διαθέσιμου χώρου του σκληρού δίσκου. NTFS – Πλεονεκτήματα (1)

45 45  Πλεονεκτήματα του συστήματος αρχείων NTFS 5.Προσφέρει δυνατότητες RAID Volumes ώστε να μπορούν να εξασφαλιστούν τα δεδομένα καθώς παρέχεται η δυνατότητα τα δεδομένα να καθρεπτίζονται σε δύο ή και περισσότερους δίσκους ώστε σε περίπτωση αποτυχίας να μην χάνονται τα δεδομένα. Επίσης παρέχεται και η δυνατότητα rebuild όπου ένας νέος άδειο δίσκος που εισέρχεται στην συστοιχία ανακατασκευάζεται από τους ήδη υπάρχοντες ώστε να φιλοξενήσει τα δεδομένα. 6.Χρησιμοποιεί UNICODE ονόματα αρχείων και φακέλων και υποστηρίζει πολύ μεγαλύτερου μεγέθους ονόματα. 7.Στα προγενέστερα συστήματα αρχείων το μέγιστο μέγεθος αρχείου περιοριζόταν στα 4 GB κάτι που στο NTFS έχει επιλυθεί, για αυτό ίσως είναι προτιμότερο για flash drives με χωρητικότητα άνω των 4 GB να διαμορφώνονται σε NTFS ώστε να μπορούν εύκολα να δεχτούν αρχεία με μέγεθος μεγαλύτερο των 4 GB. NTFS – Πλεονεκτήματα (2)

46 46  Πλεονεκτήματα του συστήματος αρχείων NTFS 8.Έμφαση, διαχωρισμός δικαιωμάτων πρόσβασης ανά χρήστη ώστε να μην μπορεί ο ένας χρήστης να έχει πρόσβαση στα δεδομένα του άλλου χρήστη. 9.Στις Server εκδόσεις μπορεί να υλοποιηθεί μόνο σε αυτό το σύστημα αρχείων το Active Directory που είναι η βασική μονάδα ελέγχου χρηστών και υπολογιστών που βρίσκονται σε δίκτυο (domain), δυνατότητα που χρησιμοποιείται σήμερα κατά κόρον σε περιβάλλοντα δικτύωσης πολλών υπολογιστών και χρηστών. 10.Δίνει την δυνατότητα να οριστεί ο μέγιστος χώρος που μπορεί να αξιοποιήσει ο χρήστης από τους πόρους του συστήματος (user quotas) ώστε να μην μπορεί ο χρήστης να δεσμεύσει όλο τον ελεύθερο χώρο. NTFS – Πλεονεκτήματα (3)

47 47  Unix File System (UFS)

48 48 Layers του συστήματος Unix

49 49 Εικόνα του συστήματος Unix

50 50 Αρχιτεκτονική Συστήματος Unix

51 51  Αρχείο ονομάζεται ένα σύνολο ταξινομημένης πληροφορίας που έχει κάποιο όνομα.  Τα αρχεία αντιπροσωπεύουν:  Δεδομένα  Αριθμούς  Χαρακτήρες  Δυαδικά  Προγράμματα (source & μάσκες)  Ιδιότητες Αρχείων:  Όνομα  Τύπος  Τοποθεσία  Μέγεθος  Προστασία  Ώρα, ημερομηνία, και πληροφορίες χρήστη Γενικά για αρχεία

52 52  Συνήθης : ‘Φυσιολογικά’ αρχεία όπως προγράμματα, αρχεία κειμένου κτλ. Γενικά ότι αρχείο δεν είναι σαν τα υπόλοιπα.  Κατάλογος: Ένα αρχείο που περιέχει αναφορές σε άλλα αρχεία  char/block special: Όχι αληθινά αρχεία αλλά εγγραφές που αναφέρονται σε συσκευές  Pipe : Ένα αρχείο τέτοιο τύπου αναφέρεται σε ένα αρχείο προσωρινής μνήμης, το οποίο κρατά τα αποτελέσματα στο ρεύμα εξόδου μίας διεργασίας και δίνει το αποτέλεσμα αυτό στο ρεύμα εισόδου μίας άλλης. Τύποι Αρχείων

53 53  Passwd Περιέχει όλους τους χρήστες  Motd Περιέχει το "Μήνυμα της Ημέρας"  Mtab Λίστα προσαρτήσεων  Utmp Λίστα συνδεδεμένων χρηστών  TermcapΟρισμοί διαφόρων τερματικών Τα παραπάνω περιέχονται στον κατάλογο /etc  consol Συλλέγει τα μηνύματα του UNIX  null Eικονικό αρχείο  Lp Υποστήριξη εκτυπωτή  mt# Υποστήριξη μαγνητικής ταινείας  tty# Υποστήριξη τερματικής οθόνης Τα παραπάνω περιέχονται στον κατάλογο /dev Σημαντικά Αρχεία

54 54  Κατάλογος (directory, περιοχή) είναι ένα είδος αρχείου που περιέχει πληροφορίες που χρησιμοποιούνται για πρόσβαση και οργάνωση άλλων αρχείων: είναι δηλαδή μια λίστα αρχείων. Κάθε directory μπορεί να είναι συνδεδεμένο με άλλα directories για να οργανωθούν ιεραρχικά τα δεδομένα. Οι περιοχές χειρίζονται σαν να είναι "χώροι", άρα μπορούμε να "μπούμε" και να "βγούμε" από αυτές, όπως και να δημιουργούμε αλυσίδα από περιοχές η μία "μέσα" στην άλλη. Κατάλογοι - Directories

55 55 Κατάλογοι στο σύστημα Unix (1)  Ένα αρχείο αντιπροσωπεύεται από ένα i-node, μία εγγραφή που κρατά πληροφορίες για ένα συγκεκριμένο αρχείο στον δίσκο.  Το i-node κρατά επίσης 15 δείκτες σε μπλοκ στον δίσκο που διατηρούν τα δεδομένα που απαρτίζουν το αρχείο.  Από αυτούς τους δείκτες οι πρώτοι 12 είναι δείκτες σε άμεσα μπλοκ.  Οι επόμενοι τρεις είναι δείκτες σε έμμεσα μπλοκ  Ο πρώτος έμμεσος δείκτης είναι η διεύθυνση του έμμεσου μπλοκ, πρόκειται για ένα μπλοκ index, που κρατάει πληροφορίες που αφορούν τις διευθύνσεις των μπλοκ που περιέχουν δεδομένα.  Ο δεύτερος είναι ένας διπλός έμμεσος δείκτης μπλοκ, που αντιπροσωπεύει την διεύθυνση από ένα μπλοκ που κρατά τις διευθύνσεις μπλοκ που διατηρούν δείκτες στα δεδομένα.  Ο τρίτος είναι ένας τριπλά έμμεσος δείκτης

56 56 Κατάλογοι στο σύστημα Unix (2)

57 57 I – nodes (1)  H τυπική δομή ενός δομή ενός I – node είναι η ακόλουθη:

58 58 I – nodes (2)

59 59 I – nodes (3)

60 60 Δομή Volume (1)  60  Boot Block. Φορτώνεται ο πυρήνας μέσα στην κύρια μνήμη.  Super Block. Διατηρεί πληροφορίες για το σύστημα αρχείων.

61 61 Δομή Volume (2) 61  I-node Block. Το i-node (information node) μπλοκ διατηρεί πληροφορίες για κάθε αρχείο που βρίσκεται στο Data Block.  Data Blocks. Διατηρούν όλα τα αρχεία που ανήκουν στον χρήστη. Είναι τα μπλοκ που διατηρούν τα δεδομένα και αποθηκεύονται τα αρχεία, επίσης διατηρούν και ειδικά αρχεία τα οποία έχουν να κάνουν με τα δεδομένα του χρήστη.

62 62 Το σύστημα αρχείων του Unix μέσα στην κύρια μνήμη

63 63  Fast file system (ffs)

64 64 FFS(1)  Το σύστημα αρχείων του FreeBSD είναι το Fast File System ή FFS, το οποίο προήλθε από το αρχικό σύστημα αρχείων του Unix™, γνωστό επίσης και ως UFS. Αυτό είναι και το εγγενές σύστημα αρχείων του FreeBSD, το οποίο χρησιμοποιείται στους σκληρούς δίσκους και προσφέρει πρόσβαση στα δεδομένα.  Το FreeBSD προσφέρει επίσης πληθώρα διαφορετικών συστημάτων αρχείων, ώστε να παρέχει τοπική πρόσβαση σε δεδομένα που έχουν δημιουργηθεί από άλλα λειτουργικά συστήματα, π.χ. δεδομένα που βρίσκονται σε τοπικά USB αποθηκευτικά μέσα, οδηγούς flash, και σκληρούς δίσκους. Υπάρχει επίσης υποστήριξη για άλλα, μη-εγγενή συστήματα αρχείων, όπως το Extended File System (EXT) του LinuxR καθώς και το σύστημα Z File System (ZFS) της Sun™.

65 65 FFS(2)  Tο σύστημα αρχείων είναι χωρισμένο σε ομάδες κυλίνδρων (cylinder groups) που αποθηκεύονται διαδοχικά πάνω στο τμήμα.  Κάθε ομάδα κυλίνδρων περιλαμβάνει στην αρχή της εναν αριθμό i-nodes και στη συνέχεια έναν αριθμό data blocks.  Ετσι, το τμήμα είναι αλληλοδιαδοχή περιοχών με i-nodes και περιοχών με data blocks. Αυτή η δομή επιταχύνει πολύ τη χρήση του δίσκου.  Ειδικά blocks, τα λεγόμενα superblocks περιέχουν γενικές πληροφορίες για το σύστημα αρχείων: μέγεθος, σημείο ανάρτησης και, φυσικά, τη λίστα ελεύθερου χώρου (free list), δηλ. ποιά data blocks είναι ελεύθερα στο σύστημα.

66 66 FFS(3)  Η διάθεση χώρου στα αρχεία γίνεται με μονάδα το data block (δηλ. και το μικρότερο αρχείο θα καταλαμβάνει ένα τουλάχιστον data block και στη συνέχεια η επέκταση του θα γίνεται προσθέτοντας data blocks -ή fragments).  Τα data blocks χωρίζονται σε δυο κατηγορίες, τα "κανονικά" data blocks και τα fragments ή frags.  Ο χώρος που καταλαμβάνει το αρχείο αποτελείται απο ένα ή περισσότερα data blocks και μηδέν, ένα ή περισσότερα fragments στο τέλος.  Ενα fragment είναι ενα μικρότερο data block με μέγεθος συνήθως το ¼ ή το 1/8 του μεγέθους του κανονικού. Σκοπός του είναι η μείωση της σπατάλης χώρου.

67 67 FFS(4)  Tα μεγάλα αρχεία συμφέρει να αποθηκεύονται σε συστήματα αρχείων με μεγάλα μεγέθη data blocks και fragments ώστε να χρειάζονται λιγότερα data blocks / fragments για να περιγράψουν το αρχείο και να επιτυγχάνουν μεγαλύτερη ταχύτητα.  Αντίθετα, τα μικρά αρχεία χρειάζονται μικρά μεγέθη ώστε να γίνεται μικρότερη σπατάλη χώρου  Συνήθως οι εξ΄ ορισμού τιμές που δίνονται απο τα προγράμματα κατασκευής (πχ. data block 8 KBytes - fragment 1 KByte) συστημάτων αρχείων είναι ικανοποιητικές στην πλειοψηφία των περιπτώσεων.

68 68 FFS(5)  Το σύστημα αρχείων FFS (fast filesystem) του FreeBSD μπορεί να διαχειριστεί ονόματα αρχείων που ανήκουν σε σετ single C (είναι 8-bit clean), αλλά δεν αποθηκεύει το σετ χαρακτήρων που χρησιμοποιείται. Με άλλα λόγια, είναι 8- bit αλλά δεν γνωρίζει τίποτα για την κωδικοποίηση των χαρακτήρων.  Επίσημα, το FFS δεν υποστηρίζει ακόμα σετ χαρακτήρων wide ή multibyte. Υπάρχουν ωστόσο κάποια ανεξάρτητα patches για το FFS που υποστηρίζουν αυτές τις δυνατότητες.

69 69  Linux VFS (Virtual File System)

70 70 Linux VFS  Επιτρέπει στο Linux να μπορεί να χρησιμοποιεί (να προσαρτήσει – mount) διαφορετικά συστήματα αρχείων.  To Linux διαθέτει 4 ειδών ενδιάμεσες μνήμες όπως φαίνεται στο επόμενο slide.  Page cache  i-node cache  Buffer cache  Directory cache  Με αυτό τον τρόπο το VFS έρχεται ως ένα ενδιάμεσο στρώμα (layer) ανάμεσα στις δομές αυτές ώστε ο πυρήνας να μπορεί να αντιμετωπίσει τις διάφορες αιτήσεις για I/O με αφηρημένο τρόπο. (abstraction layer).

71 71 Linux VFS Context

72 72 Λογική Αναπαράσταση (1)  VFS Inode Cache Directory Cache NTFS Ext2 CryptFS Buffer Cache Disk Drivers User space

73 73 Λογική αναπαράσταση (2)  Task 1 Task 2 Task n … user space kernel space VIRTUAL FILE SYSTEM minixext2msdosproc device driver for hard disk device driver for floppy disk Buffer Cache software hardware Hard DiskFloppy Disk Linux Kernel

74 74  ext2, ext3, ext4 (Extended File System)

75 75 Ext4 (1)  ext2, ext3, και ext4: αυτά συναντώνται συνήθως σε λειτουργικά συστήματα GNU/Linux Το Ubuntu χρησιμοποιεί το ext4 σαν προεπιλεγμένο σύστημα αρχείων.  Το Ext4 (τέταρτο Extended File System) είναι ένα προηγμένο και αποτελεσματικό σύστημα αρχείων  που αναπτύσσεται ως διάδοχος του Ext3 σύστημα αρχείων.  Το ext4, ενώ διατηρεί την σταθερότητα και την ασφάλεια που χαρακτήριζε το ext3, ενσωματώνει βασικές αναβαθμίσεις πάνω σε θέματα απόδοσης αλλά και ευελιξίας, στη διαχείριση ενός συνεχώς μεταβαλλόμενου όγκου δεδομένων.

76 76 Ext4 (2)  Προσφέρει υψηλές επιδόσεις και αφαιρεί 64-bit όρια αποθήκευσης των προηγούμενων συστημάτων αρχείων.  Το σύστημα αρχείων υποστηρίζει τα πίσω συμβατότητα με το Ext3 και Ext2 συστήματα αρχείων.  Persistent Pre allocation.  Delayed allocation.  Γρηγορότερος έλεγχος του συστήματος αρχείων.

77 77  Hierarchical File System (HFS / HFS+)

78 78 HFS (1)  HFS εισήχθη από την Apple τον Σεπτέμβριο του 1985, ειδικά για τη στήριξη πρώτο της Apple σκληρό δίσκο για Macintosh, αντικαθιστώντας το σύστημα αρχείων Macintosh (MFS)  To HFS χρησιμοποιεί μία νέα δομή που ονομάζεται αρχείο καταλόγου (Catalog File) το οποίο βασίζεται στα Β δέντρα (B trees) τα οποία έχουν το βασικό πλεονέκτημα να είναι ταχύτατη δομή ευρετηρίου για αναζήτηση ανεξάρτητα με το μέγεθος του αντικειμένου που αναζητείται.  Το ιεραρχικό σύστημα αρχείων χωρίζει έναν τόμο σε λογικές ενότητες των 512 bytes.  HFS + ή HFS Plus είναι ένα εξελιγμένο σύστημα αρχείων που σχεδιάστηκε από την Apple Inc για την αντικατάσταση HFS τους (Ιεραρχική File System) ως πρωταρχικό σύστημα αρχείων, το οποίο χρησιμοποιήθηκε στο Mac OS.

79 79 Βασικά Στοιχεία HFS (1)  Sector: είναι το μικρότερο κομμάτι του δίσκου που μπορεί να γίνει read/write από τον driver του δίσκου. (συνήθως 512Bytes)  allocation block: είναι το ελάχιστο κομμάτι του δίσκου που γίνεται allocate από το filesystem (συνήθως 4KB). Κάθε allocation block έχει το allocation number που το ορίζει μονοσήμαντα.  Clumps: είναι groups από allocation blocks. Όταν δημιουργείται ένα αρχείο παίρνει όχι ένα allocation block αλλά ένα clump προς αποφυγή fragmation.  Extent: είναι συνεχής χώρος από allocation blocks που αναλογεί σε ένα fork(data ή resource). Αναπαριστάται από ένα ζευγάρι αριθμών. Το allocation number του πρώτου block και τον αριθμό των allocation blocks.

80 80 Βασικά Στοιχεία HFS (2)  Special files: Είναι κάποια αρχεία που έχουν στοιχεία που χρειάζεται το filesystem για πρόσβαση στα folders, user files, attributes. Συγκεκριμένα υπάρχουν τα ακόλουθα files:  Catalog file (B-Tree): Είναι ένα ειδικό αρχείο που περιγράφει την ιεραρχία φακέλων και αρχείων στο δίσκο. Περιέχει το catalog information για files, folders. Το catalog file είναι οργανωμένο σε b-tree.  Attributes file (B-Tree): Περιέχει επιπλέον δεδομένα για τα αρχεία και τους φακέλους.  Extents overflow file (B-Tree): Περιέχει τα extents πλέων των 8 πρώτων που βρίσκονται στο catalog file.

81 81 Βασικά Στοιχεία HFS (3)  Allocation file (bitmap): Ειδικό αρχείο που ορίζει αν ένα allocation block είναι used or free.  Startup file: Διευκολύνει το ξεκίνημα για το MAC OS. Τα αρχεία αυτά είναι σε τυχαίες θέσεις στο δίσκο αλλά κρατιέται αναφορά σε αυτά από το Volume Header.  B-Trees: Τα B-Trees χρησιμοποιούνται για τα αρχεία catalog, extents overflow και attributes. Είναι στην πραγματικότητα B+-Trees με επιπλέον στοιχείο της δομής μια διπλά συνδεδεμένη λίστα για την σύνδεση μεταξύ κόμβων του ιδίου επιπέδου μέσα στο δέντρο. Τα δέντρα αποθηκεύονται μέσα στο data fork του αρχείου. Τα αρχεία τύπου B-tree είναι χωρισμένα σε καθορισμένου μεγέθους nodes, καθένας από τους οποίους περιέχει records, που αποτελούνται από ένα κλειδί και data. Ο σκοπός του B-Tree είναι να κρατά αποδοτικά την αντιστοιχία μεταξύ κλειδιού και δεδομένων. Για να επιτευχθεί αυτό πρέπει να υπάρχει ξεκάθαρος τρόπος ταξινόμησης των κλειδιών.

82 82 Υλοποίηση HFS (1)  Υπάρχουν πέντε δομές που συνθέτουν ένα HFS τόμο: 1.Τα Λογικά μπλοκ 0 και 1 του τόμου είναι τα μπλοκ εκκίνησης, τα οποία περιέχουν πληροφορίες για την εκκίνηση του συστήματος. 2.Το Λογικό μπλοκ 2 περιέχει το μπλοκ Master Directory Block (MDB). Αυτό ορίζει μια ευρεία ποικιλία των δεδομένων σχετικά με την ίδια ένταση, για παράδειγμα, την ημερομηνία και ώρα για γραμματόσημα όταν ο τόμος δημιουργήθηκε, η θέση των άλλων δομών του τόμου, όπως το Bitmap τόμος ή το μέγεθος των λογικές δομές όπως μπλοκ κατανομής.

83 83 Υλοποίηση HFS (2) 4.Το Λογικό μπλοκ 3 είναι το αρχικό μπλοκ του Volume Bitmap, το οποίο παρακολουθεί τα μπλοκ που είναι σε χρήση ή όχι. 5.Υπάρχει επίσης ένα αντίγραφο του MDB ονομάζεται ο Alternate Master Directory Block (Alternate MDB) που βρίσκεται στο αντίθετο άκρο του τόμου κατά το δεύτερο στο τελευταίο λογικό μπλοκ. Αυτό προορίζεται κυρίως για χρήση από βοηθητικά προγράμματα δίσκου και ενημερώνεται μόνο όταν είτε το αρχείο καταλόγου ή αρχείου Extents Υπερχείλιση μεγαλώνουν σε μέγεθος. 6.Το Extent Overflow File είναι ένα Β-δέντρο που περιέχει δομές που παρακολουθούν το ποια μπλοκ ανήκουν σε ποια αρχεία, όταν τα αρχικά τρία extents στον αρχείο καταλόγου χρησιμοποιηθούν.

84 84 Υλοποίηση HFS (3) 7.Το αρχείο καταλόγου (Catalog File) είναι ένα άλλο Β-δέντρο που περιέχει εγγραφές για όλα τα αρχεία και τους καταλόγους αποθηκεύονται στον τόμο. Αποθηκεύει τέσσερις τύπους εγγραφών. Κάθε αρχείο αποτελείται από ένα File Thread Record και ένα File Record ενώ κάθε κατάλογος αποτελείται από ένα Directory Thread Record και ένα Directory Record. Τα αρχεία και οι κατάλογοι στο αρχείο καταλόγου αναγνωρίζονται από την μοναδική τους ταυτότητα κόμβου Καταλόγου (ή CNID – Catalog Node ID).

85 85  Yaffs (Yet Another File System)

86 86 YAFFS (1)  YAFFS είναι το πρώτο σύστημα αρχείων που σχεδιάζεται συγκεκριμένα για την NAND τεχνολογία, χρησιμοποιείται σε συσκευές που έχουν λειτουργικό Android (smart phones) και όχι μόνο.  Χαρακτηρίζεται από υψηλή μεταφερσιμότητα ενώ είναι συμβατό με λειτουργικά συστήματα όπως Linux, ucLinux, Windows CE.  Δημιουργήθηκε για εξαιτίας της ακαταλληλότητας που είχαν τα συστήματα αρχείων JFFSv1 και JFFSv2 για NAND μνήμες.

87 87 Πλεονεκτήματα YAFFS  Ταχύτητα  Εύκολα μεταφέρσιμο (easily ported)  Βασίζεται στην πολιτική συστημάτων αρχείων με δομή log (log structured file systems) ενώ παράλληλα παρέχει τεχνικές εξισορρόπησης φθοράς (wear leveling techniques).  Υποστηρίζει διάφορους τύπους μνήμης NAND.  Παρέχει γρήγορη προσάρτηση (fast mount).  Τυπικά χρησιμοποιεί λιγότερη μνήμη RAM σε σχέση με άλλα συστήματα.

88 88 Στρωματοποιημένη απεικόνιση του YAFFS

89 89 YAFFS1, YAFFS2  Δύο εκδόσεις, αυτή την στιγμή βρισκόμαστε στην δεύτερη έκδοση.  Η πρώτη έκδοση χρησιμοποιεί κομμάτια μεγέθους 512 bytes.  Η ανακήρυξη ενός κομματιού ως μη έγκυρο γίνεται καθαρίζοντας με αλλαγή τιμής από 1 σε 0 ενός byte, από την επικεφαλίδα του.  H δεύτερη έκδοση χρησιμοποιεί σελίδες 2KB, καθώς και αυστηρή σειριακή σειρά εγγραφής σελίδας.  Βελτιώθηκε η ταχύτητα σε σχέση με την πρώτη έκδοση σε βασικές λειτουργίες / πράξεις κατά τέσσερις φορές.  Μικρότερη χρήση μνήμης RAM, σε σχέση με την πρώτη έκδοση κατά περίπου 50%.  Υποστήριξη MLC μνημών NAND των εταιριών TOSHIBA και SANDISK.

90 90 Βιβλιογραφία (1)      FileSystems.html FileSystems.html   8.html 8.html

91 91 Βιβλιογραφία (2)      


Κατέβασμα ppt "1 Δημοφιλή Συστήματα Αρχείων διαφόρων Λειτουργικών Συστημάτων. Λειτουργικά Συστήματα επιβλέπων: Δρ. Μηνάς Δασυγένης Φοιτητής : Ροΐδης Νικόλαος AM: 155."

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google