ΛΕΙΣΟΤΡΓΙΚΆ ΤΣΉΜΑΣΑ 12 θ Διάλεξθ Διαχείριςθ Αρχείων
Αρχεία και υςτιματα Αρχείων (1/3) 2 Όςον αφορά ςτουσ χριςτεσ, ζνα από τα πιο ςθμαντικά τμιματα του Λ είναι το ςφςτθμα αρχείων, το οποίο τουσ επιτρζπει να δθμιουργοφν ςυλλογζσ δεομζνων, που ονομάηονται αρχεία και διακζτουν ιδιότθτεσ όπωσ: Μακροπρόθεςμη φπαρξη: αποκθκεφονται ςτο δίςκο ι ςε άλλα μζςα δευτερεφουςασ αποκικευςθσ Διαμοιραςμόσ μεταξφ διεργαςιών: τα αρχεία ζχουν ονόματα και μποροφν να ζχουν ςχετικά δικαιϊματα πρόςβαςθσ που επιτρζπουν τον ελεγχόμενο διαμοιραςμό τουσ Δομή: ανάλογα με το ςφςτθμα αρχείων, το αρχείο μπορεί να ζχει εςωτερικι δομι που εξυπθρετεί ςυγκεκριμζνεσ εφαρμογζσ. Επίςθσ, τα αρχεία μποροφν να οργανωκοφν ςε ιεραρχικζσ ι και πιο πολφπλοκεσ δομζσ, ϊςτε να αντικατοπτρίηεται θ ςχζςθ μεταξφ αρχείων
Αρχεία και υςτιματα Αρχείων (2/3) 3 Οι ςυνικεισ λειτουργίεσ που μποροφν να εκτελεςτοφν ςτα αρχεία είναι: Δημιουργία: ορίηεται ζνα νζο αρχείο και τοποκετείται εντόσ τθσ δομισ των αρχείων Διαγραφή: το αρχείο αφαιρείται από τθ δομι αρχείων και καταςτρζφεται Άνοιγμα: θ διεργαςία ορίηει ζνα υφιςτάμενο αρχείο ωσ «ανοικτό» και ζχει τθ δυνατότθτα να εκτελζςει λειτουργίεσ ςτο αρχείο αυτό Κλείςιμο: κλείςιμο του αρχείου και ενθμζρωςθ τθσ αντίςτοιχθσ διεργαςίασ, ζτςι ϊςτε αυτι να μθν είναι ςε κζςθ να εκτελεί λειτουργίεσ ςτο αρχείο, μζχρι να το ανοίξει εκ νζου Ανάγνωςη: θ διεργαςία διαβάηει ζνα ι όλα τα τμιματα των δεδομζνων του αρχείου Εγγραφή: θ διεργαςία ενθμερϊνει το αρχείο, είτε προςκζτοντασ νζα δεδομζνα τα οποία αυξάνουν το μζγεκοσ του αρχείου είτε τροποποιϊντασ τισ τιμζσ υφιςτάμενων ςτοιχείων δεδομζνων του αρχείου
Αρχεία και υςτιματα Αρχείων (3/3) 4 υνικωσ, το ςφςτθμα αρχείων διατθρεί ςφνολο ιδιοτιτων που ςχετίηονται με το αρχείο, όπωσ: Κάτοχοσ Χρόνοσ δθμιουργίασ Χρόνοσ τελευταίασ τροποποίθςθσ Προνόμια πρόςβαςθσ
Δομι Αρχείων (1/2) 5 Σζςςερισ είναι οι ζννοιεσ που χρθςιμοποιοφνται όταν εξετάηουμε τα αρχεία: Πεδίο: αποτελεί το βαςικό ςτοιχείο των δεδομζνων και περιζχει μια τιμι. Χαρακτθρίηεται από το μικοσ του (είτε ςτακερό είτε μεταβλθτό) και τον τφπο δεδομζνων του Εγγραφή: αποτελεί ςυλλογι ςχετικϊν πεδίων που μπορεί να αντιμετωπιςτεί από κάποιο πρόγραμμα εφαρμογισ ωσ μονάδα. Η εγγραφι ζχει μεταβλθτό μικοσ, ςτθν περίπτωςθ που αποτελείται από πεδία μεταβλθτοφ μικουσ ι ςτθν περίπτωςθ που μπορεί να μεταβάλλεται το πλικοσ των πεδίων τθσ
Δομι Αρχείων (2/2) 6 : Αρχείο: αποτελεί ςυλλογι παρόμοιων εγγραφϊν. Σο αρχείο αντιμετωπίηεται από τουσ χριςτεσ και τισ εφαρμογζσ ωσ μια οντότθτα και μπορεί να γίνει αναφορά ςε αυτό με βάςθ το όνομά του. Περιοριςμοί ελζγχου πρόςβαςθσ ςυνικωσ εφαρμόηονται ςε αυτό το επίπεδο Βάςη δεδομζνων: αποτελεί ςυλλογι ςχετικϊν δεδομζνων. χεδιάηονται με τζτοιο τρόπο ϊςτε να μποροφν να χρθςιμοποιοφνται από πλικοσ διαφορετικϊν εφαρμογϊν
Αρχιτεκτονικι υςτιματοσ Αρχείων (1/6) 7 Προκειμζνου να γίνει αντιλθπτό το φάςμα των αρμοδιοτιτων τθσ διαχείριςθσ των αρχείων κα πρζπει να εξεταςτεί θ ακόλουκθ αναπαράςταςθ τθσ ςυνθκιςμζνθσ οργάνωςθσ λογιςμικοφ
Αρχιτεκτονικι υςτιματοσ Αρχείων (2/6) 8 το κατϊτερο επίπεδο, οι οδηγοί ςυςκευών επικοινωνοφν άμεςα είτε με περιφερειακζσ ςυςκευζσ είτε με τουσ ελεγκτζσ τουσ ι τα κανάλια τουσ ε ότι αφορά τισ λειτουργίεσ αρχείων, οι ςυνικεισ ςυςκευζσ που ελζγχονται είναι οι δίςκοι και οι οδθγοί ταινίασ Οι οδθγοί ςυςκευϊν ςυνικωσ κεωροφνται τμιμα του Λ
Αρχιτεκτονικι υςτιματοσ Αρχείων (3/6) 9 Σο επόμενο επίπεδο, το βαςικό ςφςτημα αρχείων ι το φυςικό επίπεδο Ε/Ε, αποτελεί τθν πρωτεφουςα διεπαφι ενόσ υπολογιςτικοφ ςυςτιματοσ με το εξωτερικό περιβάλλον Αςχολείται με blocks δεδομζνων, δθλαδι φροντίηει τθν τοποκζτθςθ αυτϊν των blocks ςτθ ςυςκευι δευτερεφουςασ αποκικευςθσ και για τθν απομόνωςθ τουσ ςτθν κφρια μνιμθ Δεν κατανοεί οφτε τα περιεχόμενα των δεδομζνων οφτε τθ δομι των εμπλεκόμενων αρχείων Σο βαςικό ςφςτθμα αρχείων ςυνικωσ κεωρείται τμιμα του Λ
Αρχιτεκτονικι υςτιματοσ Αρχείων (4/6) 10 Ο βαςικόσ επόπτησ Ε/Ε είναι υπεφκυνοσ για όλεσ τισ αρχικοποιιςεισ και τουσ τερματιςμοφσ Ε/Ε των αρχείων διατθροφνται δομζσ ελζγχου που αςχολοφνται με τθν Ε/Ε ςυςκευισ, τθ χρονοδρομολόγθςθ και τθν κατάςταςθ αρχείου Επιλζγει τθ ςυςκευι ςτθν οποία πρόκειται να εκτελεςτεί θ Ε/Ε αρχείου, βαςιηόμενοσ ςτο ςυγκεκριμζνο επιλεγμζνο αρχείο και αςχολείται με τθ χρονοδρομολόγθςθ δίςκου και τθν προςπζλαςθ ταινίασ, με ςκοπό τθ βελτιςτοποίθςθ τθσ απόδοςθσ Ο βαςικόσ επόπτθσ Ε/Ε αποτελεί τμιμα του Λ
Αρχιτεκτονικι υςτιματοσ Αρχείων (5/6) 11 Η λογική Ε/Ε δίνει ςε χριςτεσ και εφαρμογζσ τθ δυνατότθτα προςπζλαςθσ των εγγράφων ενϊ το βαςικό ςφςτθμα αρχείων αςχολείται με blocks δεδομζνων, θ μονάδα λογικισ Ε/Ε αςχολείται με εγγραφζσ αρχείων Η λογικι Ε/Ε παρζχει τθ δυνατότθτα Ε/Ε εγγραφϊν γενικοφ ςκοποφ, ενϊ διατθρεί και τα βαςικά δεδομζνα των αρχείων
Αρχιτεκτονικι υςτιματοσ Αρχείων (6/6) 12 Σο επίπεδο του ςυςτιματοσ αρχείων που ςυνικωσ βρίςκεται πιο κοντά ςτο χριςτθ αναφζρεται ωσ μζθοδοσ πρόςβαςησ και παρζχει τυποποιθμζνθ διεπαφι ανάμεςα ςτισ εφαρμογζσ από τθ μια πλευρά και τα ςυςτιματα αρχείων και τισ ςυςκευζσ που διατθροφν τα δεδομζνα από τθν άλλθ Διαφορετικζσ μζκοδοι πρόςβαςθσ αντικατοπτρίηουν διαφορετικζσ δομζσ αρχείων και διαφορετικοφσ τρόπουσ προςπζλαςθσ και επεξεργαςίασ δεδομζνων (κα αναφερκοφν ςτισ επόμενεσ διαφάνειεσ)
Οργάνωςθ και Προςπζλαςθ Αρχείων (1/7) 13 Βαςικά κριτιρια επιλογισ οργάνωςθσ αρχείων: Μικρόσ χρόνοσ πρόςβαςθσ Ευκολία ενθμζρωςθσ Οικονομία ςτθν αποκικευςθ Απλι ςυντιρθςθ Αξιοπιςτία Η ςχετικι προτεραιότθτα των κριτθρίων αυτϊν εξαρτάται από τισ εφαρμογζσ που χρθςιμοποιοφν το αρχείο Σα κριτιρια αυτά μπορεί να ζρχονται ςε ςφγκρουςθ μεταξφ τουσ
Οργάνωςθ και Προςπζλαςθ Αρχείων (2/7) 14 Τπάρχει πλικοσ εναλλακτικϊν οργανϊςεων αρχείου Οι πζντε βαςικότερεσ είναι: ωρόσ ειριακό αρχείο ειριακό αρχείο ευρετθρίου Αρχείο ευρετθρίου Άμεςο αρχείο ι αρχείο κατακερματιςμοφ
Οργάνωςθ και Προςπζλαςθ Αρχείων (3/7) 15 Σωρόσ: Πιο απλι οργάνωςθ αρχείων Σα δεδομζνα ςυλλζγονται με τθ ςειρά που καταφκάνουν Οι εγγραφζσ μπορεί να ζχουν διαφορετικά πεδία ι παρόμοια πεδία με διαφορετικι ςειρά Κάκε πεδίο πρζπει να περιγράφει τον εαυτό του, περιλαμβάνοντασ τόςο το όνομα του όςο και κάποια τιμι Σο μικοσ των πεδίων κακορίηεται ζμμεςα με τθ βοικεια διαχωριςτικϊν ςυμβόλων, ορίηεται ρθτά ςε κάποιο υποπεδίο ι λαμβάνει κάποια γνωςτι προεπιλεγμζνθ τιμι του ςυγκεκριμζνου τφπου πεδίου Επειδι το αρχείο ςωροφ δε διακζτει κάποια δομι, θ προςπζλαςθ των εγγράφων γίνεται μζςω εξαντλθτικισ αναηιτθςθσ Ο τφποσ αυτόσ είναι ακατάλλθλοσ για τισ περιςςότερεσ περιπτϊςεισ και χρθςιμοποιείται μόνο όταν τα δεδομζνα ςυλλζγονται και αποκθκεφονται πριν τθν επεξεργαςία ι όταν τα δεδομζνα δεν είναι εφκολο να οργανωκοφν
Οργάνωςθ και Προςπζλαςθ Αρχείων (4/7) 16 Σειριακό Αρχείο: Η πιο κοινι μορφι δομισ αρχείου Όλεσ οι εγγραφζσ ζχουν ίδιο μικοσ και αποτελοφνται από το ίδιο πλικοσ πεδίων ςτακεροφ μικουσ, ταξινομθμζνων ςε ςυγκεκριμζνθ ςειρά Επειδι το μικοσ και θ κζςθ κάκε πεδίου είναι γνωςτά, χρειάηεται να αποκθκεφονται μόνο οι τιμζσ των πεδίων Ζνα ςυγκεκριμζνο πεδίο, ςυνικωσ το πρϊτο, κάκε εγγραφισ αναφζρεται ωσ πεδίο κλειδί, το οποίο προςδιορίηει μοναδικά κάκε εγγραφι και βάςθ αυτοφ γίνεται θ ταξινόμθςθ των εγγραφϊν Η προςπζλαςθ του αρχείου επιβάλλει ςειριακι αναηιτθςθ, μζχρι να εντοπιςτεί το κλειδί που αναηθτείται Οι νζεσ εγγραφζσ τοποκετοφνται ςε ξεχωριςτό αρχείο ςωροφ, το οποίο ονομάηεται αρχείο καταγραφισ και, ανά περιόδουσ, εκτελείται ενθμζρωςθ δζςμθσ που ςυγχωνεφει το αρχείο καταγραφισ με το πρωτεφον αρχείο Εναλλακτικι λφςθ αποτελεί θ οργάνωςθ του ςειριακοφ αρχείου ωσ ςυνδεδεμζνθ λίςτα
Οργάνωςθ και Προςπζλαςθ Αρχείων (5/7) 17 Σειριακό Αρχείο Ευρετηρίου: Αποτελεί δθμοφιλι προςζγγιςθ αντιμετϊπιςθσ των μειονεκτθμάτων των ςειριακϊν αρχείων Και ςε αυτι τθ μορφι, οι εγγραφζσ είναι οργανωμζνεσ ςε ςειρά με βάςθ το πεδίο κλειδί Δφο νζα χαρακτθριςτικά: Ζνα ευρετιριο αρχείου για τθν υποςτιριξθ τθσ τυχαίασ προςπζλαςθσ Ζνα αρχείο υπερχείλιςθσ, όπου προςτίκεται κάκε νζα εγγραφι Σο ςειριακό αρχείο ευρετθρίου μειϊνει ςε μεγάλο βακμό το χρόνο που απαιτείται για τθν προςπζλαςθ μιασ εγγραφισ, χωρίσ να κυςιάηεται θ ςειριακι φφςθ του αρχείου τθν πιο απλι μορφι, χρθςιμοποιείται ζνα επίπεδο δεικτοδότθςθσ, αν και για να επιτευχκεί μεγαλφτερθ αποδοτικότθτα κατά τθν προςπζλαςθ, μποροφν να χρθςιμοποιθκοφν πολλαπλά επίπεδα δεικτοδότθςθσ Παράδειγμα αποτελοφν τα αρχεία μιςκοδοςίασ
Οργάνωςθ και Προςπζλαςθ Αρχείων (6/7) 18 Αρχείο Ευρετηρίου: ε μερικζσ εφαρμογζσ, οι δφο μορφζσ ςειριακϊν αρχείων είναι ανεπαρκείσ, κακϊσ χρειάηεται μεγαλφτερθ ευελιξία ςτθν αποτελεςματικι αναηιτθςθ, π.χ. αναηιτθςθ με βάςθ κάποιασ άλλθσ ιδιότθτασ, διαφορετικισ από το πεδίο κλειδί Επιπλζον κα πρζπει να μποροφν να χρθςιμοποιθκοφν εγγραφζσ μεταβλθτοφ μικουσ Προκειμζνου να επιτευχκεί αυτοφ του είδουσ θ ευελιξία, χρειάηεται δομι που χρθςιμοποιεί πολλαπλά ευρετιρια, ζνα για κάκε τφπο που μπορεί να αποτελεί αντικείμενο αναηιτθςθσ Χρθςιμοποιοφνται κυρίωσ ςε εφαρμογζσ όπου είναι κρίςιμθ θ ζγκαιρθ αναηιτθςθ πλθροφοριϊν και όπου ςπάνια πραγματοποιείται εξαντλθτικι επεξεργαςία των δεδομζνων (π.χ. κρατιςεισ αεροπορικϊν ειςιτθρίων και ζλεγχοσ αποκεμάτων)
Οργάνωςθ και Προςπζλαςθ Αρχείων (7/7) 19 Άμεςο Αρχείο ή Αρχείο Κατακερματιςμοφ: Αξιοποιεί τθ δυνατότθτα των δίςκων να προςπελάηουν άμεςα κάκε block γνωςτισ διεφκυνςθσ Και ςε αυτό τον τφπο απαιτείται ζνα πεδίο κλειδί για κάκε εγγραφι, ωςτόςο δεν υπάρχει θ ζννοια τθσ ςειριακισ ταξινόμθςθσ Σα άμεςα αρχεία χρθςιμοποιοφνται ςυχνά όπου απαιτείται γριγορθ πρόςβαςθ, όπου χρθςιμοποιοφνται εγγραφζσ ςτακεροφ μικουσ και όπου γίνεται προςπζλαςθ μιασ εγγραφισ τθ φορά, π.χ. κατάλογοι, λίςτεσ ονομάτων, πίνακεσ τιμολόγθςθσ, κ.ά.
Β- Δζντρα 20 τθν περίπτωςθ των μεγάλων αρχείων ι βάςεων δεδομζνων, θ χριςθ ενόσ ςειριακοφ αρχείου με ευρετιρια προσ το πρωτεφον κλειδί δεν προςφζρει ταχεία προςπζλαςθ υνικωσ επιλζγεται μια δενδρικι δομι, ςτθν οποία όμωσ κα πρζπει να επιβλθκοφν κανόνεσ ϊςτε να μθ καταλιξουμε ςε ανιςομερι δομι Η κατάλλθλθ δομι είναι τα Β-δζντρα, τα οποία ζχουν καταςτεί πρότυπθ μζκοδοσ οργάνωςθσ των ευρετθρίων των βάςεων δεδομζνων και χρθςιμοποιοφνται ςυνικωσ ςτα ςυςτιματα αρχείων των Λ
Διαμοιραςμόσ Αρχείων (1/6) 21 ε ςυςτιματα πολλαπλϊν χρθςτϊν, υπάρχει ςχεδόν πάντα θ απαίτθςθ τθσ δυνατότθτασ διαμοιραςμοφ αρχείων ςε πλικοσ χρθςτϊν Δφο ηθτιματα προκφπτουν: Σα δικαιϊματα πρόςβαςθσ Η διαχείριςθ τθσ ταυτόχρονθσ πρόςβαςθσ Σο ςφςτθμα αρχείων πρζπει να παρζχει πλικοσ επιλογϊν, ζτςι ϊςτε να ελζγχεται ο τρόποσ προςπζλαςθσ ενόσ ςυγκεκριμζνου αρχείου υνικωσ, παραχωροφνται ςυγκεκριμζνα δικαιϊματα πρόςβαςθσ ςε ζνα αρχείο ςε χριςτεσ ι ομάδεσ χρθςτϊν
Διαμοιραςμόσ Αρχείων (2/6) 22 Αντιπροςωπευτικά δικαιϊματα πρόςβαςθσ: Κανζνα: ο χριςτθσ δεν ζχει καμία ενθμζρωςθ και πρόςβαςθ ςτο αρχείο αυτό, κακϊσ και δε μπορεί να διαβάςει τον κατάλογο χριςτθ που περιλαμβάνει το αρχείο αυτό Γνώςησ: ο χριςτθσ μπορεί να διαπιςτϊςει τθν φπαρξθ κάποιου αρχείου, κακϊσ και τον κάτοχό του. Είναι ςε κζςθ να ηθτιςει από τον κάτοχο επιπρόςκετα δικαιϊματα πρόςβαςθσ Εκτζλεςησ: ο χριςτθσ μπορεί να φορτϊςει και να εκτελζςει κάποιο πρόγραμμα, όμωσ δεν μπορεί να το αντιγράψει Ανάγνωςη: ο χριςτθσ μπορεί να διαβάςει το αρχείο, να το αντιγράψει και να το εκτελζςει. Μερικά ςυςτιματα είναι ςε κζςθ να επιβάλλουν διαχωριςμό ανάμεςα ςτθν προβολι και τθν αντιγραφι
Διαμοιραςμόσ Αρχείων (3/6) 23 : Προςθήκη: ο χριςτθσ μπορεί να προςκζςει δεδομζνα ςτο αρχείο, αλλά δεν μπορεί να τροποποιιςει ι να διαγράψει τα περιεχόμενά του Ενημζρωςη: ο χριςτθσ μπορεί να τροποποιιςει, να διαγράψει και να προςκζςει δεδομζνα ςτο αρχείο Τροποποίηςη προςταςίασ: ο χριςτθσ μπορεί να αλλάηει τα δικαιϊματα πρόςβαςθσ που ζχουν παραχωρθκεί ςε άλλουσ χριςτεσ. Για τθν αποφυγι τθσ εςφαλμζνθσ χριςθσ του μθχανιςμοφ αυτοφ, ο κάτοχοσ αρχείου ςυνικωσ είναι ςε κζςθ να κακορίηει ποια δικαιϊματα μποροφν να τροποποιθκοφν από το δικαιοφχο των δικαιωμάτων αυτϊν Διαγραφή: ο χριςτθσ μπορεί να διαγράψει το αρχείο από το ςφςτθμα αρχείων
Διαμοιραςμόσ Αρχείων (4/6) 24 Σα δικαιϊματα αυτά μπορεί να κεωρθκεί ότι αποτελοφν μια ιεραρχία, όπου τα δικαιϊματα κάκε επιπζδου περιλαμβάνουν και τα δικαιϊματα των προθγοφμενων επιπζδων Ζνασ χριςτθσ ανακθρφςςεται κάτοχοσ ενόσ δεδομζνου αρχείου και ςυνικωσ πρόκειται για αυτόν που το δθμιοφργθςε Ο κάτοχοσ διακζτει όλα τα παραπάνω δικαιϊματα και μπορεί να παραχωριςει δικαιϊματα ςε άλλουσ
Διαμοιραςμόσ Αρχείων (5/6) 25 Κλάςεισ Χρθςτϊν: Συγκεκριμζνοι Χρήςτεσ: πρόκειται για μεμονωμζνουσ χριςτεσ που προςδιορίηονται με βάςθ τθν ταυτότθτά τουσ Ομάδεσ Χρηςτών: ςφνολο χρθςτϊν που δεν ορίηονται ςε ατομικό επίπεδο. Σο ςφςτθμα πρζπει να διακζτει κάποιο τρόπο καταγραφισ των μελϊν των ομάδων χρθςτϊν Όλοι: πρόκειται για όλουσ τουσ χριςτεσ που ζχουν πρόςβαςθ ςτο ςφςτθμα δθμόςια αρχεία
Διαμοιραςμόσ Αρχείων (6/6) 26 Σαυτόχρονθ Πρόςβαςθ: Όταν παραχωρείται πρόςβαςθ προςκικθσ ι ενθμζρωςθσ ενόσ αρχείου ςε περιςςότερουσ χριςτεσ, το Λ κα πρζπει να επιβάλλει ζλεγχο: Μια δυναμικι προςζγγιςθ είναι το κλείδωμα ολόκλθρου του αρχείου από κάποιο χριςτθ, όταν αυτό πρόκειται να ενθμερωκεί Μια πιο ιπια προςζγγιςθ είναι το κλείδωμα μεμονωμζνων εγγραφϊν κατά τθ διάρκεια των ενθμερϊςεων
Βιβλιογραφία 27 Stallings, W. (2017). Λειτουργικά Συστήματα: Αρχζς Σχεδίασης. Εκδόςεισ Σηιόλα: Θεςςαλονίκθ