Κατέβασμα παρουσίασης
Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε
ΔημοσίευσεXylon Tomaras Τροποποιήθηκε πριν 10 χρόνια
1
Προηγμένοι Μικροεπεξεργαστές 2007 – 2008 Παρουσίαση Projects
2
Γενικά 5 Θέματα για 1 άτομο 5 Θέματα για 1-2 άτομα 4 Θέματα για 2 άτομα 2 Θέματα για 2-3 άτομα
3
Γενικά Προθεσμία: Τέλος εξεταστικής (Hard Deadline) Τυπικός απαιτούμενος χρόνος: 3-4 μέρες προετοιμασία 7-10 μέρες δουλειά full time Παραδοτέα: Κώδικας και Αναφορά
4
Γενικά Το debugging είναι επίσης κομμάτι της δουλειάς σας Θα σας βοηθήσουμε αφού: Έχετε ψάξει το manual της Intel Έχετε ψάξει για πληροφορίες στο δίκτυο Έχετε ψάξει εξονυχιστικά για να βρείτε το πρόβλημα Έχετε περιορίσει το που μπορεί να οφείλεται το πρόβλημα
5
Θέμα 1 ο – 1-2 Άτομα Χρήση Performance Counters για την μελέτη της συμπεριφοράς μίας εφαρμογής όταν γίνεται compile με διάφορα optimization flags
6
Θέμα 1 ο – Σχόλια Οι compilers επιτρέπουν την ενεργοποίηση διαφόρων βελτιστοποιήσεων Παρέχουν σημαίες που ενεργοποιούν την παραγωγή κώδικα για συγκεκριμένες γενιές επεξεργαστών Σκοπός: ο έλεγχος του πως επηρεάζουν τα πιο συνηθισμένα optimization flags την απόδοση ενός προγράμματος.
7
Θέμα 2 ο – 2 Άτομα Sudoku Solver σε Assembly
8
Θέμα 2 ο – Σχόλια Το πρόγραμμα θα πρέπει: να διαβάζει από αρχείο την αρχική κατάσταση του sudoku με έναν συνδυασμό αναλυτικής λογικής και brute force τεχνικών να προσπαθεί να το λύσει θα πρέπει να εμφανίζεται η κατάσταση του sudoku κατά την επίλυση στην οθόνη
9
Θέμα 3 ο – 1-2 Άτομα Μελέτη και παρουσίαση των μεθόδων με τις οποίες μπορούμε να συνδυάσουμε assembly και C ρουτίνες.
10
Θέμα 3 ο - Σχόλια Στα πλαίσια της άσκηση θα υλοποιηθεί C προγράμμα σε real mode θα διαβάζει ένα bitmap αρχείο θα το εκτυπώνει στην οθόνη χρησιμοποιώντας assembly ρουτίνες που προσπελαύνουν άμεσα την VGA Memory
11
Θέμα 4 ο – 2-3 Άτομα Υλοποίηση ενός στοιχειώδους File System
12
Θέμα 4 ο - Σχόλια Θα χρησιμοποιεί BIOS services για την ανάγνωση – εγγραφή των sectors/blocks της δισκέτας Θα δημιουργήσει ένα υποτυπώδες file system Θα παρέχει υπηρεσίες ανάγνωσης αρχείου από την δισκέτα σε memory buffer εγγραφής από memory buffer σε νέο αρχείο διαγραφή αρχείου δημιουργία αρχείου. Μία απλή γραμμή εντολών θα παρέχει τρεις εντολές: Store: θα διαβάζει το πληκτρολόγιο και θα γράφει σε νέο αρχείο Print: θα εμφανίζει το αρχείο στην οθόνη Format: θα δημιουργεί το file system στην δισκέτα.
13
Θέμα 4 ο - Σχόλια Υποτυπώδες file system: Τα ονόματα των αρχείων είναι μέχρι οχτώ χαρακτήρες Μέχρι 16 Αρχεία Τα αρχεία είναι συνεχόμενα στο δίσκο Ανάμεσα στα αρχεία δεν υπάρχουν κενά Όλος ο ελεύθερος χώρος βρίσκεται μετά το τέλος του τελευταίου αρχείου Ένα Allocation Table περιέχει ονόματα αρχείων, block από όπου αρχίζουν και block όπου τελειώνουν
14
Θέμα 4 ο – Σχόλια FilenameStartBlockEndBlock file1150 Allocation Table file251285
15
Θέμα 5 ο – 2-3 Άτομα Υλοποίηση ενός απλού debugger χρησιμοποιώντας τα debug facilities των x86.
16
Θέμα 5 ο - Σχόλια Ο debugger πρέπει να έχει τις εξής interactive δυνατότητες: Εκκίνηση μέσω του debugger μίας διεργασίας Πάγωμα της εκτέλεσης της διεργασίας και είσοδος στο debug περιβάλλον με το πάτημα ενός πλήκτρου Εκτύπωση των περιεχομένων οποιουδήποτε register Εκτύπωση της τιμής οποιασδήποτε μεταβλητής ή θέσης μνήμης Βηματική εκτέλεση Έξοδος από τον debugger
17
Θέμα 6 ο – 2 Άτομα Υλοποίηση ενός συστήματος που θα δειγματοληπτεί το access stream του επεξεργαστή μέσω perfomance counters
18
Θέμα 6 ο - Σχόλια Το σύστημα Θα χρησιμοποιεί χαμηλού επιπέδου προσπέλαση των performance counters σε sampling mode ώστε να παράγει interrupt κάθε Ν processor accesses. Θα συλλαμβάνει το interrupt Θα διαβάζει την κατάσταση του επεξεργαστή την στιγμή του interrupt Θα καθορίζει την διεύθυνση της εντολής που προκάλεσε το access και την διεύθυνση που θα προσπελάστηκε και θα τα εκτυπώνει σε αρχείο.
19
Θέμα 7 ο – 2 Άτομα Υλοποίηση μηχανισμού προστασίας από stack overflow με χρήση του limit protection του selector σε protected mode
20
Θέμα 7 ο - Σχόλια Ένα από τα συνηθισμένα προβλήματα σε προγραμματιστικά περιβάλλοντα που περιορίζουν την ποσότητα της στοίβας που μπορεί να χρησιμοποιηθεί είναι το stack overflow η προσπάθεια του προγράμματος να χρησιμοποιήσει περισσότερη στοίβα από όση πραγματικά μπορεί
21
Θέμα 7 ο - Σχόλια Το σύστημα θα πρέπει: Να καλείται από το πρόγραμμα χρήστη στην αρχικοποίηση και να του παραχωρεί ένα αρχικό stack segment Να συλλαμβάνει τα protection violations που προκαλούνται από τον από την υπέρβαση του limit του SS Τότε να προσπαθεί να μεταφέρει την στοίβα σε μεγαλύτερο segment ή να μεγαλώσει το segment Αν η στοίβα συνεχίσει και μεγαλώνει πέρα από κάποιο όριο, τότε το σύστημα προστασίας θα τερματίζει το πρόγραμμα. Επιπλέον θα υλοποιηθεί ένα πολύ απλός task scheduler και 2-3 tasks που να επιδεικνύουν σενάρια stack overflow
22
Θέμα 8 ο – 1-2 Άτομα Μελέτη και υλοποίηση παραδείγματος της χρήσης call gate Επίδειξη της επικοινωνίας ρουτινών σε διαφορετικά επίπεδα protection Χρήση στοίβας για το πέρασμα παραμέτρων
23
Θέμα 9 ο – 1 Άτομο Μελέτη και παρουσίαση των Virtual Machine Extensions. Πως στήνεται βήμα προς βήμα ένα VMX περιβάλλον Πως ο hypervisor ελέγχει και παρεμβαίνει στην εκτέλεση μιας διεργασίας.
24
Θέμα 10 ο – 1 Άτομο Μελέτη και παρουσίαση τον μεθόδων με τις οποίες viruses, worms και Trojan horses εκμεταλλεύονται την x86 αρχιτεκτονική ή/και αποφεύγουν τους protection μηχανισμούς
25
Θέμα 11 ο – 1 Άτομο Paging σε protected mode. Είσοδος στο protected mode στήσιμο του paging (Page Directories, Page Tables) Ενεργοποίηση Paging Πάνω σε αυτό το σύστημα υλοποίηση μηχανισμού που να επιτρέπει την κοινή χρήση σελίδων μεταξύ δύο task
26
Θέμα 12 ο – 2 Άτομα Υλοποίηση pipe μηχανισμού
27
Θέμα 12 ο - Σχόλια Να σχεδιαστούν ρουτίνες ανάγνωσης – εκτύπωσης δεδομένων οι οποίες θα καλούνται από τα προγράμματα χρήστη. υπό κανονικές συνθήκες θα διαβάζουν από το πληκτρολόγιο και θα εκτυπώνουν στην οθόνη κάνοντας χρήση DOS Services αν έχει δημιουργηθεί pipe ανάμεσα σε δύο προγράμματα τότε θα ανακατευθύνουν τα δεδομένα εξόδου του ενός προγράμματος στην είσοδο του άλλου κάνοντας χρήση ενός προσωρινού buffer.
28
Θέμα 13 ο – 1-2 Άτομα Διερεύνηση με performance counters της συμπεριφοράς διαφόρων java virtual machines
29
Θέμα 13 ο - Σχόλια Java virtual machine μετάφραση των java bytecodes στήσιμο του java περιβάλλοντος Εκτός από την υλοποίηση της Sun (Hot Spot JVM) υπάρχει μία σειρά από άλλες virtual machines Jikes Kaffe JamVM CACAO διαφορετικές λογικές λειτουργίας πειραματικές ιδιότητες και βελτιστοποιήσεις έμφαση σε διαφορετικά είδη προγραμμάτων χρήστη
30
Θέμα 14 ο – 1 Άτομο Υλοποίηση προγράμματος για την μελέτη των TLBs στην Pentium 4 αρχιτεκτονική
Παρόμοιες παρουσιάσεις
© 2024 SlidePlayer.gr Inc.
All rights reserved.