HEAL DSpace

Συλλογή σκουπιδιών σε συστήματα πιστοποιημένου κώδικα

DSpace/Manakin Repository

Show simple item record

dc.contributor.advisor Παπασπύρου, Νικόλαος el
dc.contributor.author Βερβαινιώτης, Ευθύμιος Γ. el
dc.contributor.author Vervainiotis, Efthymios G. en
dc.date.accessioned 2011-12-16T11:33:40Z
dc.date.available 2011-12-16T11:33:40Z
dc.date.copyright 2011-11-21 -
dc.date.issued 2011-12-16
dc.date.submitted 2011-11-21 -
dc.identifier.uri https://dspace.lib.ntua.gr/xmlui/handle/123456789/5656
dc.identifier.uri http://dx.doi.org/10.26240/heal.ntua.10390
dc.description 100 σ. el
dc.description.abstract Η διαχείριση της μνήμης που έχει εκχωρηθεί σε ένα πρόγραμμα αποτελεί μια σοβαρή επιβάρυνση για τον προγραμματιστή, όταν αυτή γίνεται χειροκίνητα. Σε αυτήν την περίπτωση ο ίδιος ο προγραμματιστής είναι υπεύθυνος για την παρακολούθηση του χρόνου ζωής των αντικειμένων, των οποίων τη μνήμη πρέπει να αποδεσμεύει όταν αυτά δεν χρειάζονται πια. Αυτό έχει ως αποτέλεσμα ο κώδικας που απαιτείται για την δουλειά αυτή να δυσκολεύει την υλοποίηση, την συντήρηση, ακόμα και τη σχεδίαση των προγραμμάτων, ενώ συχνά μπορεί να οδηγήσει σε σφάλματα, όπως αιωρούμενες αναφορές και διαρροές μνήμης. Μια λύση στο πρόβλημα αυτό έρχεται να δώσει η συλλογή σκουπιδιών, η οποία απαλλάσσει τον προγραμματιστή από το καθήκον να παρακολουθεί αυτός τα αντικείμενα και να τα αποδεσμεύει όταν δεν είναι πια χρήσιμα (σκουπίδια). Η διαδικασία αυτή πραγματοποιείται κατά την ώρα εκτέλεσής ενός προγράμματος από το ίδιο το πρόγραμμα, το οποίο φέρει κώδικα που διαπιστώνει πότε ένα αντικείμενο δεν είναι χρήσιμο και ανάλογα φροντίζει να αποδεσμεύσει αυτόματα την μνήμη που έχει εκχωρηθεί σε αυτό. Η συλλογή σκουπιδιών χρησιμοποιείται ευρέως στις συναρτησιακές γλώσσες προγραμματισμού, καθώς σε αυτές τις γλώσσες είναι δύσκολη η ρητή αποδέσμευσή μνήμης. Σκοπός της εργασίας αυτής είναι η συγκριτική μελέτη διάφορων αλγορίθμων συλλογής σκουπιδιών, κατάλληλων για χρήση σε ένα σύστημα μεταγλώττισης πιστοποιημένων εκτελέσιμων (certified binaries). Γίνεται εκτενής παρουσίαση των αλγορίθμων και αναφορά στα πλεονεκτήματα και μειονεκτήματα του καθενός. Οι αλγόριθμοι που αναφέρονται υλοποιήθηκαν σε C για το NFlint, ένα σύστημα μεταγλώττισης πιστοποιημένων εκτελέσιμων που έχει υλοποιηθεί στο Εργαστήριο Τεχνολογίας Λογισμικού του ΕΜΠ. el
dc.description.abstract Manual management of the memory allocated to a program can be a strenuous task for the programmer. In this case, the programmer is responsible for determining the lifetime of all objects, whose memory must be explicitly deallocated when they will not be needed any more. This complicates the design, implementation and maintenance of programs and potentially leads to certain types of bugs such as dangling pointers and memory leaks. An attractive solution to this problem is garbage collection, which frees the programmer from the task of manually examining the liveness of objects and freeing them when they are not going to be used any more. Garbage collection does that automatically at runtime. The program carries code that is able to determine if an object is useless (garbage) or not, and accordingly deallocate the memory used by it. Garbage collection is widely used in functional programming languages, for which manual memory deallocation is in general difficult. The purpose of this diploma dissertation is the comparative study of several garbage collection algorithms, appropriate for use in a system for compiling certified binaries. We thoroughly present the algorithms and refer to the advantages and disadvantages of each one. The algorithms under study have been implemented in C for NFlint, a system for compiling certified binaries that has been developed at the Software Engineering Laboratory of NTUA. en
dc.description.statementofresponsibility Ευθύμιος Γ. Βερβαινιώτης el
dc.language.iso el en
dc.rights ETDFree-policy.xml en
dc.subject Συλλογή σκουπιδιών el
dc.subject Σημείωση σάρωση el
dc.subject Σημείωση χωρίς σάρωση el
dc.subject Σημειώση συμπύκνωση el
dc.subject Διακοπή αντιγραφή el
dc.subject Garbage collection en
dc.subject NFlint en
dc.subject Mark & sweep en
dc.subject Mark & don't sweep en
dc.subject Mark & compact en
dc.subject Stop & copy en
dc.title Συλλογή σκουπιδιών σε συστήματα πιστοποιημένου κώδικα el
dc.type bachelorThesis el (en)
dc.date.accepted 2011-11-09 -
dc.date.modified 2011-11-21 -
dc.contributor.advisorcommitteemember Σαγώνας, Κωνσταντίνος el
dc.contributor.advisorcommitteemember Κοζύρης, Νεκτάριος el
dc.contributor.committeemember Παπασπύρου, Νικόλαος el
dc.contributor.committeemember Σαγώνας, Κωνσταντίνος el
dc.contributor.committeemember Κοζύρης, Νεκτάριος el
dc.contributor.department Εθνικό Μετσόβιο Πολυτεχνείο. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών. Τομέας Τεχνολογίας Πληροφορικής και Υπολογιστών el
dc.date.recordmanipulation.recordcreated 2011-12-16 -
dc.date.recordmanipulation.recordmodified 2011-12-16 -


Files in this item

This item appears in the following Collection(s)

Show simple item record