background image

Κεφάλαιο 3 - Ανάπτυξη και Υλοποίηση της Εφαρμογής 
 

 

 

39 

 

δημιουργηθεί  και  ο  κατάλογος  “/home/user/hdl-compiler/User/Project_1/”.  Σε  αυτόν  τον 
κατάλογο θα προστίθενται τα αρχεία που δημιουργεί ή εισάγει στο έργο “Project 1” ο χρήστης. 
Επίσης  σε  αυτόν  τον  κατάλογο  θα  δημιουργηθούν  και  τα  αρχεία  μεταγλώττισης  και 
προσομοίωσης για το ίδιο έργο. Έτσι χρησιμοποιούμε έναν συγκεκριμένο κατάλογο για την 
οργάνωση των αρχείων χρηστών μέσα στον οποίο αναπτύσσεται η δομή καταλόγων για τον 
κάθε χρήστη και το κάθε έργο που χρησιμοποιεί.  

 

Μέσα στον βασικό μόνιμο κατάλογο, διατηρούμε και δύο ακόμη καταλόγους για την 

χρήση βιβλιοθηκών. Αρχικά έχουμε τον κατάλογο “/home/user/hdl-compiler/libraries/” στον 
οποίο βρίσκονται τα αρχεία βιβλιοθηκών. Κατά την δημοσίευση μίας βιβλιοθήκης, το αρχείο 
αντιγράφεται σε αυτόν τον κατάλογο και αναμένει έγκριση ή απόρριψη από έναν διαχειριστή. 
Κατά την εισαγωγή ή ενημέρωση μίας βιβλιοθήκης σε ένα έργο, έχουμε την αντιγραφή του 
αρχείου  στον  φάκελο  του  έργου.  Ο  δεύτερος  κατάλογος  που  χρησιμοποιούμε  για  την 
λειτουργία  βιβλιοθηκών  είναι  ο  “/home/user/hdl-compiler/update_libraries/”.  Όταν  ο 
συγγραφέας  μίας  βιβλιοθήκης  προτείνει  μία  τροποποίηση,  το  αντίστοιχο  αρχείο  από  το 
προσωπικό του έργο αντιγράφεται σε αυτόν τον κατάλογο και αναμένει έγκριση ή απόρριψη. 
Εάν  γίνει  έγκριση  της  τροποποίησης  από  έναν  διαχειριστή,  το  αρχείο  θα  μεταφερθεί  και 
αντικαταστήσει  το  αντίστοιχο  στον  κατάλογο  βιβλιοθηκών.  Στην  περίπτωση  απόρριψης,  το 
αρχείο θα διαγραφεί από τον κατάλογο προτάσεων. Η δομή αυτή μας επιτρέπει την χρήση του 
υπάρχοντος  μόνιμου  καταλόγου  για  την  διατήρηση  των  απαραίτητων  αρχείων  για  τις 
λειτουργίες  των  βιβλιοθηκών.  Παράλληλα  προσθέτει  τον  περιορισμό  κατάληψης  των 
ονομάτων “libraries” “update_libraries” από τα πιθανά ονόματα χρηστών. Θεωρούμε όμως ότι 
ο περιορισμός αυτός είναι αμελητέος δεδομένου του αριθμού διαθέσιμων ονομάτων κι έτσι 
γίνεται φανερό ότι το πλεονέκτημα χρήσης υπάρχοντος καταλόγου υπερτερεί. 

 

3.2.2 Αρχεία Επισκεπτών 
 

 

Τα αρχεία επισκεπτών έχουν παρόμοια δομή με τα αρχεία χρηστών. Η βασική διαφορά 

που παρατηρείται είναι ότι στα αρχεία επισκεπτών η έννοια του χρήστη και έργο συμπίπτει. 
Συγκεκριμένα, τα αρχεία επισκεπτών διατηρούνται στον κατάλογο “/tmp/VHDL/”. Όταν ένας 
επισκέπτης έρχεται σε πρώτη επαφή με την εφαρμογή μας, του παρέχεται ένας τυχαίος αλλά 
μοναδικός  αριθμός  συνοδού  (session  ID).  Ταυτόχρονα  δημιουργείται  ένας  κατάλογος 
χρησιμοποιώντας  τον  ίδιο  αριθμό  ως  “/tmp/VHDL/SID/”.  Οι  επισκέπτες  δεν  μπορούν  να 
δημιουργήσουν επιπλέον έργα κι έτσι χρησιμοποιείται αυτός ο κατάλογος απευθείας για την 
διατήρηση των αρχείων τους.  Σε μελλοντικές επαφές με την εφαρμογή μας, ο επισκέπτης, εάν 
δεν έχει δημιουργήσει δικό του λογαριασμό ακόμα, μπορεί να συνδεθεί στον προσωρινό “SID” 
που  του  δόθηκε  μέχρι  την  επόμενη  επανεκκίνηση  του  εξυπηρετητή.  Τότε  τα  αρχεία  που 
βρίσκονται σε προσωρινούς καταλόγους θα απομακρυνθούν. Το σύστημα αυτό επιτρέπει στους 
επισκέπτες να δοκιμάσουν κάποιες σημαντικές λειτουργίες της εφαρμογής  μας αλλά με τον 
συμβιβασμό περιορισμένων και προσωρινών πόρων.