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

Slides:



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

Λογισμικο συστηματοσ Κεφάλαιο 4ο
1. Εισαγωγή Ορισμοί:  VOD  NVOD  Live Streaming.
Εισαγωγή στις Τεχνολογίες της Πληροφορικής και των Επικοινωνιών
Επιμορφωτής: Ονομ/νυμο Επιμορφωτή
Καθηγητής: Δ. Μπουτακίδης
Λειτουργικό Σύστημα ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ENOTHTA B.1.3 (1)
ΤΟ ΥΛΙΚΟ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ Κεφάλαιο 3 ο - Συνέχεια Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα.
Εισαγωγικές έννοιες πληροφορικής
1 Α. Βαφειάδης Αναβάθμισης Προγράμματος Σπουδών Τμήματος Πληροφορικής Τ.Ε.Ι Θεσσαλονίκης Μάθημα Προηγμένες Αρχιτεκτονικές Υπολογιστών Κεφαλαίο Δεύτερο.
Δομή Μαθήματος Υπεύθυνος: Δρ Ν. Πετρέλλης, ΠΔ407
Συστήματα εισόδου/εξόδου
Αρχιτεκτονική Προσωπικού Υπολογιστή
Λειτουργικά Συστήματα
Copyright ©: SAMSUNG & Samsung Hope for Youth. Με επιφύλαξη κάθε νόμιμου δικαιώματος Εκπαιδευτικό υλικό Λογισμικό: Δημιουργία εφαρμογών Επίπεδο.
7.5.2 Αντικειμενοστραφής προγραμματισμός
ΔΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ.
-Στοίβα-Ουρά - Πλεονεκτήματα πινάκων -Δομές δεδομένων δευτερεύουσας μνήμης -Πληροφορική και δεδομένα -Παραδείγματα-Προβλήματα ψευδοκώδικα.
Το υλικο του Υπολογιστη
Λειτουργικό Σύστημα 2ο μέρος.
Κεφάλαιο 1ο: ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΤΩΝ ΛΕΙΤΟΥΡΓΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ
Τι είναι ο υπολογιστής; Τι είναι ο προγραμματισμός
Διαδικασία ανάπτυξης Προσδιορισμός απαιτήσεων Αρχιτεκτονικός Σχεδιασμός Λεπτομερής Σχεδιασμός Κωδικοποίηση Έλεγχος Παράδοση Συστήματος Λειτουργία - Συντήρηση.
ΚΕΦΑΛΑΙΟ 3 Το υλικό των υπολογιστών.
ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ ΤΜΗΜΑΤΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ
Εισαγωγή στους Η/Υ Πίνακες.
ΣΤΟΙΧΕΙΑ ΨΕΥΔΟΚΩΔΙΚΑ ΒΑΣΙΚΕΣ ΔΟΜΕΣ ΒΑΣΙΚΟΙ ΑΛΓΟΡΙΘΜΟΙ ΠΙΝΑΚΩΝ
ΝΕΟ ΑΝΑΛΥΤΙΚΟ ΠΡΟΓΡΑΜΜΑ Γ’ ΓΥΜΝΑΣΙΟΥ
Κεφάλαιο 6 Υλοποίηση Γλωσσών Προγραμματισμού
ΕΣ 08: Επεξεργαστές Ψηφιακών Σημάτων © 2006 Nicolas Tsapatsoulis Η Αρχιτεκτονική των Επεξεργαστών Ψ.Ε.Σ Τμήμα Επιστήμη και Τεχνολογίας Τηλεπικοινωνιών.
Περίληψη Αρχιτεκτονική Μικροεπεξεργαστών MIPS-32
ΕΝΟΤΗΤΑ 2 – Κεφάλαιο 6: Το Γραφικό Περιβάλλον Επικοινωνίας (Γ. Π. Ε
Εισαγωγικές Έννοιες Διδάσκοντες: Σ. Ζάχος, Δ. Φωτάκης Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο.
Projects 2007 εργαστήριο Προηγμένων μΕ. Program for TLB testing Υλοποίηση προγράμματος για την μελέτη των TLBs. πέρασμα όλων των δυνατών συνδυασμών των.
Προηγμένοι Μικροεπεξεργαστές 2006 – 2007 Παρουσίαση Projects.
Εργασία Η υλοποίηση του αλγορίθμου συγχώνευσης θα πρέπει να χρησιμοποιεί την ιδέα των ροών (streams). Θα πρέπει να υπάρχουν δύο διαφορετικά είδη.
William Stallings Computer Organization and Architecture 7 th Edition Κεφάλαιο 16 Λειτουργία Μονάδας Ελέγχου.
Η ΓΛΩΣΣΑ C ΜΑΘΗΜΑ 2.
Διαχείριση μνήμης Υπόβαθρο Εναλλαγή Συνεχής κατανομή Σελιδοποίηση
ΑΡΧΙΤΕΚΤΟΝΙΚΗ & ΟΡΓΑΝΩΣΗ ΥΠΟΛΟΓΙΣΤΩΝ Κεφάλαιο 1 Εισαγωγή
Οργάνωση και Αρχιτεκτονική Υπολογιστών Βασικές αρχές Αρχιτεκτονικής
1 Οργάνωση και Αρχιτεκτονική Υπολογιστών Πρόγραμμα Αναβάθμισης Προγράμματος Σπουδών Τμήματος Πληροφορικής Τ.Ε.Ι Θεσσαλονίκης Μάθημα Οργάνωση και Αρχιτεκτονική.
Κεφάλαιο 2 Το Εσωτερικό του υπολογιστή
ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ 2: ΘΕΜΑΤΑ ΘΕΩΡΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ Η/Υ
Πληροφορική, Β Γυμνασίου
1 Οργάνωση και Αρχιτεκτονική Υπολογιστών Πρόγραμμα Αναβάθμισης Προγράμματος Σπουδών Τμήματος Πληροφορικής Τ.Ε.Ι Θεσσαλονίκης Μάθημα Οργάνωση και Αρχιτεκτονική.
Για τη διεκπεραίωση ενός προβλήματος πρέπει να ακολουθηθεί η εξής διαδικασία:  να γραφεί ο αλγόριθμος να συνταχθεί το πρόγραμμα σε γλώσσα υψηλού επιπέδου.
Ο προσωπικός υπολογιστής εσωτερικά
Διδακτική της Πληροφορικής ΗΥ302 Εργασία :Παρουσίαση σχολικού βιβλίου Γ’ Λυκείου Τεχνολογικής Κατεύθυνσης «Ανάπτυξη εφαρμογών σε προγραμματιστικό περιβάλλον»
ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ 2: ΘΕΜΑΤΑ ΘΕΩΡΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ Η/Υ
Κεφάλαιο 10 – Υποπρογράμματα
ΗΥ150 – ΠρογραμματισμόςΚώστας Παναγιωτάκης ΗΥ-150 Προγραμματισμός Αναδρομή (1/2)
Δομές Δεδομένων 1 Θέματα Απόδοσης. Δομές Δεδομένων 2 Οργανώνοντας τα Δεδομένα  Η επιλογή της δομής δεδομένων και του αλγορίθμου επηρεάζουν το χρόνο εκτέλεσης.
Translation Lookaside Buffers Φροντιστήριο του μαθήματος “Προηγμένοι Μικροεπεξεργαστές”
ΕΝΟΤΗΤΑ 2 – Κεφάλαιο 5: Γνωριμία με το Λογισμικό
ΠΑΡΑΔΕΙΓΜΑ: ΤΑ ΕΠΙΠΕΔΑ ΥΛΙΚΟΥ – ΛΟΓΙΣΜΙΚΟΥ ΣΕ ΕΝΑΝ ΥΠΟΛΟΓΙΣΤΗ.
Java DataBase Connectivity
στην Επιστήμη των Υπολογιστών Κωδικός Διαφανειών: MKT110
Κατηγορίες και Προδιαγραφές Λογισμικού Η/Υ (Software)
ΟΙ ΜΙΚΡΟΕΠΕΞΕΡΓΑΣΤΕΣ ΤΗΣ INTEL
Αρχιτεκτονική Υπολογιστών 5ο Εξάμηνο,
Γνωριμία με το περιβάλλον Βασικές δυνατότητες/λειτουργίες
Πίνακας Συμβόλων Διαλέξεις στο μάθημα: Μεταφραστές Γιώργος Μανής.
1 Οργάνωση και Αρχιτεκτονική Υπολογιστών A. Βαφειάδης Πρόγραμμα Αναβάθμισης Προγράμματος Σπουδών Τμήματος Πληροφορικής Α.Τ.Ε.Ι Θεσσαλονίκης Μάθημα Οργάνωση.
ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΑ ΠΕΡΙΒΑΛΛΟΝΤΑ Ανάπτυξη Εφαρμογών για Φορητές Συσκευές
ΗΥ-150 Προγραμματισμός Αναδρομή (1/2).
TO BIOS βρίσκεται στην μητρική πλακέτα και τα αρχικά του σημαίνουν: Βασικό Σύστημα Εισόδου-Εξόδου.
ΘΕΜΑ : ΛΟΓΙΣΜΙΚΟ LOGICATOR ΔΙΑΡΚΕΙΑ: 1 περίοδος.
ΣΥΓΧΡΟΝΑ ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Τρίτη Έκδοση ANDREW S
UNIT 1 Τα Πρώτα Προγράμματα.
Μεταγράφημα παρουσίασης:

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

Γενικά 5 Θέματα για 1 άτομο 5 Θέματα για 1-2 άτομα 4 Θέματα για 2 άτομα 2 Θέματα για 2-3 άτομα

Γενικά Προθεσμία:  Τέλος εξεταστικής (Hard Deadline) Τυπικός απαιτούμενος χρόνος:  3-4 μέρες προετοιμασία  7-10 μέρες δουλειά full time Παραδοτέα:  Κώδικας και Αναφορά

Γενικά Το debugging είναι επίσης κομμάτι της δουλειάς σας Θα σας βοηθήσουμε αφού:  Έχετε ψάξει το manual της Intel  Έχετε ψάξει για πληροφορίες στο δίκτυο  Έχετε ψάξει εξονυχιστικά για να βρείτε το πρόβλημα  Έχετε περιορίσει το που μπορεί να οφείλεται το πρόβλημα

Θέμα 1 ο – 1-2 Άτομα Χρήση Performance Counters για την μελέτη της συμπεριφοράς μίας εφαρμογής όταν γίνεται compile με διάφορα optimization flags

Θέμα 1 ο – Σχόλια Οι compilers  επιτρέπουν την ενεργοποίηση διαφόρων βελτιστοποιήσεων  Παρέχουν σημαίες που ενεργοποιούν την παραγωγή κώδικα για συγκεκριμένες γενιές επεξεργαστών Σκοπός:  ο έλεγχος του πως επηρεάζουν τα πιο συνηθισμένα optimization flags την απόδοση ενός προγράμματος.

Θέμα 2 ο – 2 Άτομα Sudoku Solver σε Assembly

Θέμα 2 ο – Σχόλια Το πρόγραμμα θα πρέπει:  να διαβάζει από αρχείο την αρχική κατάσταση του sudoku  με έναν συνδυασμό αναλυτικής λογικής και brute force τεχνικών να προσπαθεί να το λύσει  θα πρέπει να εμφανίζεται η κατάσταση του sudoku κατά την επίλυση στην οθόνη

Θέμα 3 ο – 1-2 Άτομα Μελέτη και παρουσίαση των μεθόδων με τις οποίες μπορούμε να συνδυάσουμε assembly και C ρουτίνες.

Θέμα 3 ο - Σχόλια Στα πλαίσια της άσκηση θα υλοποιηθεί C προγράμμα σε real mode  θα διαβάζει ένα bitmap αρχείο  θα το εκτυπώνει στην οθόνη χρησιμοποιώντας assembly ρουτίνες που προσπελαύνουν άμεσα την VGA Memory

Θέμα 4 ο – 2-3 Άτομα Υλοποίηση ενός στοιχειώδους File System

Θέμα 4 ο - Σχόλια Θα χρησιμοποιεί BIOS services για την ανάγνωση – εγγραφή των sectors/blocks της δισκέτας Θα δημιουργήσει ένα υποτυπώδες file system Θα παρέχει υπηρεσίες  ανάγνωσης αρχείου από την δισκέτα σε memory buffer  εγγραφής από memory buffer σε νέο αρχείο  διαγραφή αρχείου  δημιουργία αρχείου. Μία απλή γραμμή εντολών θα παρέχει τρεις εντολές:  Store: θα διαβάζει το πληκτρολόγιο και θα γράφει σε νέο αρχείο  Print: θα εμφανίζει το αρχείο στην οθόνη  Format: θα δημιουργεί το file system στην δισκέτα.

Θέμα 4 ο - Σχόλια Υποτυπώδες file system:  Τα ονόματα των αρχείων είναι μέχρι οχτώ χαρακτήρες  Μέχρι 16 Αρχεία  Τα αρχεία είναι συνεχόμενα στο δίσκο  Ανάμεσα στα αρχεία δεν υπάρχουν κενά Όλος ο ελεύθερος χώρος βρίσκεται μετά το τέλος του τελευταίου αρχείου  Ένα Allocation Table περιέχει ονόματα αρχείων, block από όπου αρχίζουν και block όπου τελειώνουν

Θέμα 4 ο – Σχόλια FilenameStartBlockEndBlock file1150 Allocation Table file251285

Θέμα 5 ο – 2-3 Άτομα Υλοποίηση ενός απλού debugger χρησιμοποιώντας τα debug facilities των x86.

Θέμα 5 ο - Σχόλια Ο debugger πρέπει να έχει τις εξής interactive δυνατότητες:  Εκκίνηση μέσω του debugger μίας διεργασίας  Πάγωμα της εκτέλεσης της διεργασίας και είσοδος στο debug περιβάλλον με το πάτημα ενός πλήκτρου  Εκτύπωση των περιεχομένων οποιουδήποτε register  Εκτύπωση της τιμής οποιασδήποτε μεταβλητής ή θέσης μνήμης  Βηματική εκτέλεση  Έξοδος από τον debugger

Θέμα 6 ο – 2 Άτομα Υλοποίηση ενός συστήματος που θα δειγματοληπτεί το access stream του επεξεργαστή μέσω perfomance counters

Θέμα 6 ο - Σχόλια Το σύστημα  Θα χρησιμοποιεί χαμηλού επιπέδου προσπέλαση των performance counters σε sampling mode ώστε να παράγει interrupt κάθε Ν processor accesses.  Θα συλλαμβάνει το interrupt  Θα διαβάζει την κατάσταση του επεξεργαστή την στιγμή του interrupt  Θα καθορίζει την διεύθυνση της εντολής που προκάλεσε το access και την διεύθυνση που θα προσπελάστηκε και θα τα εκτυπώνει σε αρχείο.

Θέμα 7 ο – 2 Άτομα Υλοποίηση μηχανισμού προστασίας από stack overflow με χρήση του limit protection του selector σε protected mode

Θέμα 7 ο - Σχόλια Ένα από τα συνηθισμένα προβλήματα σε προγραμματιστικά περιβάλλοντα που περιορίζουν την ποσότητα της στοίβας που μπορεί να χρησιμοποιηθεί είναι το stack overflow  η προσπάθεια του προγράμματος να χρησιμοποιήσει περισσότερη στοίβα από όση πραγματικά μπορεί

Θέμα 7 ο - Σχόλια Το σύστημα θα πρέπει:  Να καλείται από το πρόγραμμα χρήστη στην αρχικοποίηση και να του παραχωρεί ένα αρχικό stack segment  Να συλλαμβάνει τα protection violations που προκαλούνται από τον από την υπέρβαση του limit του SS  Τότε να προσπαθεί να μεταφέρει την στοίβα σε μεγαλύτερο segment ή να μεγαλώσει το segment  Αν η στοίβα συνεχίσει και μεγαλώνει πέρα από κάποιο όριο, τότε το σύστημα προστασίας θα τερματίζει το πρόγραμμα. Επιπλέον θα υλοποιηθεί ένα πολύ απλός task scheduler και 2-3 tasks που να επιδεικνύουν σενάρια stack overflow

Θέμα 8 ο – 1-2 Άτομα Μελέτη και υλοποίηση παραδείγματος της χρήσης call gate  Επίδειξη της επικοινωνίας ρουτινών σε διαφορετικά επίπεδα protection  Χρήση στοίβας για το πέρασμα παραμέτρων

Θέμα 9 ο – 1 Άτομο Μελέτη και παρουσίαση των Virtual Machine Extensions. Πως στήνεται βήμα προς βήμα ένα VMX περιβάλλον Πως ο hypervisor ελέγχει και παρεμβαίνει στην εκτέλεση μιας διεργασίας.

Θέμα 10 ο – 1 Άτομο Μελέτη και παρουσίαση τον μεθόδων με τις οποίες viruses, worms και Trojan horses εκμεταλλεύονται την x86 αρχιτεκτονική ή/και αποφεύγουν τους protection μηχανισμούς

Θέμα 11 ο – 1 Άτομο Paging σε protected mode.  Είσοδος στο protected mode  στήσιμο του paging (Page Directories, Page Tables)  Ενεργοποίηση Paging  Πάνω σε αυτό το σύστημα υλοποίηση μηχανισμού που να επιτρέπει την κοινή χρήση σελίδων μεταξύ δύο task

Θέμα 12 ο – 2 Άτομα Υλοποίηση pipe μηχανισμού

Θέμα 12 ο - Σχόλια Να σχεδιαστούν ρουτίνες ανάγνωσης – εκτύπωσης δεδομένων οι οποίες θα καλούνται από τα προγράμματα χρήστη.  υπό κανονικές συνθήκες θα διαβάζουν από το πληκτρολόγιο και θα εκτυπώνουν στην οθόνη κάνοντας χρήση DOS Services  αν έχει δημιουργηθεί pipe ανάμεσα σε δύο προγράμματα τότε θα ανακατευθύνουν τα δεδομένα εξόδου του ενός προγράμματος στην είσοδο του άλλου κάνοντας χρήση ενός προσωρινού buffer.

Θέμα 13 ο – 1-2 Άτομα Διερεύνηση με performance counters της συμπεριφοράς διαφόρων java virtual machines

Θέμα 13 ο - Σχόλια Java virtual machine  μετάφραση των java bytecodes  στήσιμο του java περιβάλλοντος Εκτός από την υλοποίηση της Sun (Hot Spot JVM) υπάρχει μία σειρά από άλλες virtual machines  Jikes  Kaffe  JamVM  CACAO διαφορετικές λογικές λειτουργίας πειραματικές ιδιότητες και βελτιστοποιήσεις έμφαση σε διαφορετικά είδη προγραμμάτων χρήστη

Θέμα 14 ο – 1 Άτομο Υλοποίηση προγράμματος για την μελέτη των TLBs στην Pentium 4 αρχιτεκτονική