Please use this identifier to cite or link to this item: http://artemis.cslab.ece.ntua.gr:8080/jspui/handle/123456789/8678
Title: Σχεδίαση Και Αποδοτική Υλοποίηση Της Εικονικής Μηχανής Java Για Πολυμεσικές Εφαρμογές
Authors: Ισίδωρος Σιδερής
Πεκμεστζή Κιαμάλ
Keywords: java virtual machine
java processor
embedded java
java
bytecodes
java ilp
predecoded cache
superscalar
asic
aμβα
stack folding
opex
hardware translation
isa extension
simplescalar
risc
out of order
system-on-chip
codesigned virtual machine
vliw
εικονική μηχανή java
επεξεργαστής java
ενσωματωμένα συστήματα java
παραλληλία σε επίπεδο εντολών
κρυφή μνήμη προαποκωδικοποίησης
υπερβαθμωτός επεξεργαστής
ομαδοποίηση στοίβας
μετάφραση σε υλικό
επέκταση συνόλου εντολών
εκτός σειράς εκτέλεση
σύστημα σε ψηφίδα
συσχεδιασμένη εικονική μηχανή
επεξεργαστής μεγάλου μήκους λέξης
Issue Date: 15-Jan-2009
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. Για το λόγο αυτό, προτείνονται ειδικές εντολές διακλάδωσης που διατηρούν τις πιο πρόσφατες αντιστοιχίσεις σε ειδική κρυφή μνήμη και εκτελούν διακλαδώσεις σε έναν κύκλο.
URI: http://artemis-new.cslab.ece.ntua.gr:8080/jspui/handle/123456789/8678
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.