HEAL DSpace

Απόδειξη ορθότητας συλλέκτη σκουπιδιών αντιγραφής

Αποθετήριο DSpace/Manakin

Εμφάνιση απλής εγγραφής

dc.contributor.advisor Παπασπύρου, Νικόλαος el
dc.contributor.author Χαριτάτος, Αλέξανδρος-Ηρόδοτος Δ. el
dc.contributor.author Charitatos, Alexandros-Herodotos D. en
dc.date.accessioned 2012-03-02T09:24:15Z
dc.date.available 2012-03-02T09:24:15Z
dc.date.copyright 2012-03-01 -
dc.date.issued 2012-03-02
dc.date.submitted 2012-03-01 -
dc.identifier.uri https://dspace.lib.ntua.gr/xmlui/handle/123456789/5852
dc.identifier.uri http://dx.doi.org/10.26240/heal.ntua.7012
dc.description 88 σ. el
dc.description.abstract Η διαχείριση της μνήμης που έχει εκχωρηθεί σε ένα πρόγραμμα αποτελεί πολύ σημαντικό κομμάτι του προγράμματος. Με την έννοια της διαχείρισης της μνήμης εννοούμε όλες τις απαραίτητες ενέργειες που πρέπει να γίνουν για να διασφαλιστεί ότι όλα τα αντικείμενα της μνήμης των οποίων ο χρόνος ζωής έχει παρέλθει θα πρέπει να αφαιρεθούν και η μνήμη την οποία καταλάμβαναν να αποδοθεί ελεύθερη προς χρήση. Η διαχείριση αυτή μπορεί να γίνει είτε από τον ίδιον τον προγραμματιστή, πράγμα που συμβαίνει σε γλώσσες όπως η C και η Pascal, είτε από μια διαδικασία η οποία ονομάζεται συλλέκτης σκουπιδιών όπως στις συναρτησιακές γλώσσες προγραμματισμού αλλά και σε ευρέως χρησιμοποιούμενες γλώσσες όπως η Java αλλά και η C#. Η διαχείριση της μνήμης από τον ίδιον τον προγραμματιστή έχει κάποια σημαντικά μειονεκτήματα όπως ο χρόνος που θα πρέπει να αφιερώσει κατά τη γραφή του πηγαίου κώδικα για να υλοποιήσει την διαχείριση αυτή, ο κώδικας θα γίνει δυσκολότερος στην συντήρησή του αλλά και πιθανώς θα υπάρξουν και λάθη στον κώδικα τα οποία θα οδηγήσουν σε σημαντικές δυσλειτουργίες του προγράμματος. Η διαδικασία της συλλογής σκουπιδιών πραγματοποιείται κατά την ώρα εκτέλεσης του προγράμματος. Την διαδικασία αυτή αναλαμβάνει το ίδιο το πρόγραμμα και ο προγραμματιστής δεν αναμιγνύεται. Σκοπός της εργασίας αυτής είναι η απόδειξη της ορθότητας της λειτουργίας ενός τέτοιου συλλέκτη σκουπιδιών. Γίνεται εύκολα αντιληπτό πως μια δυσλειτουργία ενός συλλέκτη σκουπιδιών μιας γλώσσας αυτόματα θα περνούσε σε όλα τα προγράμματα που θα παράγονταν από την γλώσσα αυτήν. Ο συλλέκτης σκουπιδιών που επιλέχτηκε για απόδειξη είναι ο semi-space garbage collector. Για την απόδειξη δημιουργήθηκε ένας συλλέκτης σκουπιδιών semi-space σε γλώσσα ANSI C και χρησιμοποιήθηκαν τα εργαλεία Caduceus και Frama-c. el
dc.description.abstract The management of memory allocated to a program is a very important part of it. With the term “memory management” one describes all the necessary actions to be taken, which ensure that all memory objects whose lifetime has expired will be removed and the memory that they occupied will be free to use. This management can be performed either manually by the developer, as it happens in languages like C and Pascal, or automatically by a process called the garbage collector, as it happens in functional programming languages but also in widely used languages such as Java and C#. Manual memory management has some major disadvantages, such as the time spent in writing the source code to implement it. The management of this code is a hard job and it is highly probable that it will contain errors, which will lead to significant failures of the program. The process of garbage collection takes place during program execution. It is executed by the program itself and the programmer does not need to interfere with it. The purpose of this thesis is to prove the correctness of such a garbage collector. It is easy to understand that a malfunction of a garbage collector in the runtime system of a language would automatically pass to all the programs executed by this language implementation. The garbage collector that we chose to prove correct is the semi-space garbage collector. For this purpose, a semi-space garbage collector was created in ANSI C and the tools Caduceus and Frama-c were used. 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 Caduceus el
dc.subject Frama-C el
dc.subject Program verification en
dc.subject Garbage collector en
dc.subject Semi-space en
dc.subject Caduceus en
dc.subject Frama-c en
dc.title Απόδειξη ορθότητας συλλέκτη σκουπιδιών αντιγραφής el
dc.title.alternative Program verification of semi-space garbage collector en
dc.type bachelorThesis el (en)
dc.date.accepted 2011-12-19 -
dc.date.modified 2012-03-01 -
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 2012-03-02 -
dc.date.recordmanipulation.recordmodified 2012-03-02 -


Αρχεία σε αυτό το τεκμήριο

Αυτό το τεκμήριο εμφανίζεται στην ακόλουθη συλλογή(ές)

Εμφάνιση απλής εγγραφής