Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Προηγμένοι Μικροεπεξεργαστές 2007 – 2008 Παρουσίαση Projects.

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "Προηγμένοι Μικροεπεξεργαστές 2007 – 2008 Παρουσίαση Projects."— Μεταγράφημα παρουσίασης:

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 αρχιτεκτονική


Κατέβασμα ppt "Προηγμένοι Μικροεπεξεργαστές 2007 – 2008 Παρουσίαση Projects."

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google