Please use this identifier to cite or link to this item: http://artemis.cslab.ece.ntua.gr:8080/jspui/handle/123456789/8678
Full metadata record
DC FieldValueLanguage
dc.contributor.authorΙσίδωρος Σιδερής
dc.date.accessioned2018-07-22T22:39:07Z-
dc.date.available2018-07-22T22:39:07Z-
dc.date.issued2009-1-15
dc.date.submitted2008-12-10
dc.identifier.urihttp://artemis-new.cslab.ece.ntua.gr:8080/jspui/handle/123456789/8678-
dc.description.abstractΗ γλώσσα Java είναι μία σύγχρονη αντικειμενοστρεφής γλώσσα προγραμματισμού, που έχει διαδοθεί ιδιαίτερα σε μια πληθώρα συστημάτων. Τελευταία, έχει κάνει αισθητή την παρουσία της και σε ενσωματωμένες/φορητές συσκευές, όπως κινητά τηλέφωνα, set-top boxes κα. Τα κύρια χαρακτηριστικά της γλώσσας, τα οποία οδήγησαν και στην ευρεία διάδοσή της, είναι η παρεχόμενη ασφάλεια και η μεταφερσιμότητα των εφαρμογών, καθώς τα εκτελέσιμα προγράμματα Java περιέχουν εντολές μίας εικονικής μηχανής, της εικονικής μηχανής Java.Το στρώμα λογισμικού που μεσολαβεί μεταξύ του εικονικού εκτελέσιμου και της πλατφόρμας του οικείου συστήματος, οδηγεί σε σημαντική επιβράδυνση στην εκτέλεση. Η διατριβή αυτή επικεντρώνει στη μείωση αυτής της επιβάρυνσης σε φορητά συστήματα που τρέχουν πολυμεσικές εφαρμογές. Προτείνονται μικροαρχιτεκτονικές τεχνικές για την υλοποίηση μίας αποδοτικής εικονικής μηχανής Java για τέτοια συστήματα. Δίνεται ιδιαίτερη έμφαση στη διατήρηση της μεταφερσιμότητας, που έχει ιδιαίτερη αξία σε διαδικτυακά περιβάλλοντα και σε υπηρεσίες αλληλεπιδραστικής τηλεόρασης, όπου μπορούν να ανταλλάσσονται εφαρμογές από διακομιστή σε χρήστη ή μεταξύ χρηστών. Για το λόγο αυτό, προτείνονται τεχνικές που εκτελούν βελτιστοποιήσεις δυναμικά, κατά το χρόνο εκτέλεσης, και δε βασίζονται σε στατική προεπεξεργασία των προγραμμάτων.Πιο αναλυτικά, προτείνονται τεχνικές για δυναμική μετάφραση σε υλικό ροών εντολών Java (bytecodes) σε εντολές RISC. Η μετάφραση στηρίζεται στον αλγόριθμο OPEX, που προτάθηκε από τους Kharashi κα, και επιτελεί φωλιασμένη ομαδοποίηση εντολών Java, απαλείφοντας πλήρως τις προσβάσεις στοίβας. Αρχικά, προτείνεται μία τεχνική που μεταφράζει μπλοκ εντολών Java (δυναμικά σε υλικό), και αποθηκεύει τα αποτελέσματα της μετάφρασης (δηλ. εντολές RISC) σε ειδική κρυφή μνήμη, εξασφαλίζοντας έτσι μεγάλους ρυθμούς αποκωδικοποίησης, ικανούς να τροφοδοτήσουν εκτός σειράς υπερβαθμωτούς επεξεργαστές RISC. Η διατριβή αυτή μελετά και την ενσωμάτωση μηχανισμού επιτάχυνσης μετάφρασης εντολών Java σε συστήματα σε ψηφίδα με τον επεξεργαστή ARM και το διάδρομο AMBA. Πιο συγκεκριμένα, προτείνεται ειδικό περιφερειακό που μεταφράζει ροές εντολών Java σε εντολές RISC. Τέλος, προτείνεται ειδική επέκταση εντολών που επιταχύνει τη μετάφραση bytecodes σε εντολές RISC. Οι εντολές αυτές χρησιμοποιούν μεγάλους καταχωρητές και επεξεργάζονται πολλά bytecodes παράλληλα.Επιπλέον, μελετούνται τεχνικές για την εξάλειψη της επιβάρυνσης που επιφέρει ο μηχανισμός των εξαιρέσεων στις προσβάσεις αντικειμένων και πινάκων. Προτείνεται ειδική επέκταση εντολών που επιτελεί τους ελέγχους αυτούς σε υλικό. Η μεταγωγή από ένα μεταφρασμένο μπλοκ σε ένα άλλο, επιβαρύνει κι αυτή σημαντικά την εκτέλεση σε μία εικονική μηχανή JIT. Κι αυτό, γιατί σε κάθε διακλάδωση λαμβάνει χώρα αναζήτηση της πραγματικής διεύθυνσης μπλοκ με βάση το μετρητή προγράμματος Java. Για το λόγο αυτό, προτείνονται ειδικές εντολές διακλάδωσης που διατηρούν τις πιο πρόσφατες αντιστοιχίσεις σε ειδική κρυφή μνήμη και εκτελούν διακλαδώσεις σε έναν κύκλο.
dc.languageGreek
dc.subjectjava virtual machine
dc.subjectjava processor
dc.subjectembedded java
dc.subjectjava
dc.subjectbytecodes
dc.subjectjava ilp
dc.subjectpredecoded cache
dc.subjectsuperscalar
dc.subjectasic
dc.subjectaμβα
dc.subjectstack folding
dc.subjectopex
dc.subjecthardware translation
dc.subjectisa extension
dc.subjectsimplescalar
dc.subjectrisc
dc.subjectout of order
dc.subjectsystem-on-chip
dc.subjectcodesigned virtual machine
dc.subjectvliw
dc.subjectεικονική μηχανή java
dc.subjectεπεξεργαστής java
dc.subjectενσωματωμένα συστήματα java
dc.subjectπαραλληλία σε επίπεδο εντολών
dc.subjectκρυφή μνήμη προαποκωδικοποίησης
dc.subjectυπερβαθμωτός επεξεργαστής
dc.subjectομαδοποίηση στοίβας
dc.subjectμετάφραση σε υλικό
dc.subjectεπέκταση συνόλου εντολών
dc.subjectεκτός σειράς εκτέλεση
dc.subjectσύστημα σε ψηφίδα
dc.subjectσυσχεδιασμένη εικονική μηχανή
dc.subjectεπεξεργαστής μεγάλου μήκους λέξης
dc.titleΣχεδίαση Και Αποδοτική Υλοποίηση Της Εικονικής Μηχανής Java Για Πολυμεσικές Εφαρμογές
dc.typePhD Thesis
dc.description.pages216
dc.contributor.supervisorΠεκμεστζή Κιαμάλ
dc.departmentΤομέας Τεχνολογίας Πληροφορικής & Υπολογιστών
dc.organizationΕΜΠ, Τμήμα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών
Appears in Collections:Διδακτορικές Διατριβές - Ph.D. Theses

Files in This Item:
File SizeFormat 
PD2009-0005.pdf2.96 MBAdobe PDFView/Open


Items in Artemis are protected by copyright, with all rights reserved, unless otherwise indicated.