Προηγμένοι Μικροεπεξεργαστές. Protected Mode & Multitasking
|
|
- Ἀγαμέμνων Βιτάλη
- 7 χρόνια πριν
- Προβολές:
Transcript
1 Προηγμένοι Μικροεπεξεργαστές Protected Mode & Multitasking
2 Μοντέλο Μνήμης Πριν τους η x86 αρχιτεκτονική ήταν 16 bit υπεραρκετά για τα PCs της εποχής Εκτός από την διευθυνσιοδότηση 16 bit διευθυνσιοδοτούν άμεσα μόνο 64ΚΒ μνήμης Πολύ λίγο για desktop συστήματα
3 Μοντέλο Μνήμης Στόχος της intel: Διαθέσιμη μνήμη 1MB Διευθύνσεις των 20 bit Προφανείς επιλογές: Καθαρή 32 bit αρχιτεκτονική Το 1978 αυτή η κίνηση θα ήταν ασύμφορη 8085-like διευθυνσιοδότηση: 2 16-bit registers σχηματίζουν μία 32 bit διεύθυνση 32-bit διεύθυνσης ήταν υπερβολικά πολλά Ο τρόπος διευθυνσιοδότησης του 8085 είναι δύστροπος Λύση(?): πιο περίπλοκο μοντέλο μνήμης
4 Μοντέλο Μνήμης Η διεύθυνση είναι 20 bits Μνήμη 00000h fffffh
5 Μοντέλο Μνήμης Η διεύθυνση είναι 20 bits 00000h Μνήμη Seg X 0000h Σχηματίζεται από δύο 16 bit κομμάτια 16*X Seg X 1. Το segment επιλέγει 64KB της μνήμης από το συνολικό 1MB ffffh fffffh
6 Μοντέλο Μνήμης Η διεύθυνση είναι 20 bits 00000h Μνήμη Seg X 0000h Σχηματίζεται από δύο 16 bit κομμάτια 16*X Seg X offset 1. Το segment επιλέγει 64KB της μνήμης από το συνολικό 1MB 2. To offset επιλέγει μία διεύθυνση μέσα στον χώρο του segment ffffh fffffh
7 Μοντέλο Μνήμης Η διεύθυνση είναι 20 bits 00000h Μνήμη Seg X 0000h Σχηματίζεται από δύο 16 bit κομμάτια 16*X Seg X offset 1. Το segment επιλέγει 64KB της μνήμης από το συνολικό 1MB 2. To offset επιλέγει μία διεύθυνση μέσα στον χώρο του segment ffffh Η πλήρης διεύθυνση συμβολίζεται segment : offset fffffh
8 Segment Registers Πως δίνουμε τους δύο 16 bit αριθμούς με μία εντολή; Το offset δίνεται κανονικά από την ίδια την εντολή Tο segment βρίσκεται οπωσδήποτε σε έναν segment register : Code Segment (CS) Data Segment (DS) Extra Segment (ES) Stack Segment (SS) Pentium4: Δύο επιπλέον registers, οι GS και FS
9 Segment Registers Δεν είναι όλοι οι segment registers ισοδύναμοι Κάθε ένας χρησιμοποιείται εξ' ορισμού για κάποιους τύπους προσπελάσεων Οι default χρήσεις τους: CS: IP/EIP (Ανάγνωση εντολών) SS: SP/ESP και BP/EBP (χρήση στοίβας) ES: string εντολές DS: Όλες οι άλλες προσπελάσεις μνήμης
10 Segment Registers Στους πρώτους x86 επιτρεπόταν μόνο η default χρήση των segment registers Όχι πια: Κάθε συνδυασμός segment και offset επιτρέπεται Αν χρησιμοποιούμε έναν segment register για την default χρήση του, τότε μπορούμε να τον παραλήψουμε στην εντολή Πχ mov ax, [1000h] αντί για mov ax, ds:[1000h] Διαφορετικά επιβάλλεται να τον αναφέρουμε
11 Μοντέλο μνήμης - Πλεονεκτήματα Μεγάλο address space με μικρό overhead Οι διευθύνσεις στον κώδικα είναι μόνο offset (16-bit) Οι μονάδες του επεξεργαστή έχουν πλάτος 16-bit Μόνο τα τελευταία στάδια του address calculation έχουν πλάτος 20-bit
12 Μοντέλο μνήμης - Πλεονεκτήματα Multiprogramming Jumps και moves μπορούν να αναφέρονται μόνο στο offset Το πρόγραμμα δεν χρειάζεται να ξέρει που θα τοποθετηθεί στην μνήμη Segment = επιλογή του OS στο runtime Μπορούμε να φορτώσουμε πολλαπλά προγράμματα στην μνήμη και να τα εκτελέσουμε
13 Μοντέλο μνήμης - Μειονεκτήματα Τα προγράμματα μπορούν να προσπελάσουν άμεσα μόνο 4 segments των 64KB 256KB Δύσκολο να το διαχειριστεί αποδοτικά μία γλώσσα υψηλού επιπέδου Τα 20 bits πολύ γρήγορα αποδείχθηκαν λίγα
14 Εξέλιξη Pentium 4: 32 bit καταχωρητές Μόνο με το offset μπορούμε να προσπελάσουμε όλη την μνήμη Δεν χρειαζόμαστε πραγματικά τα segments Μόνο για συμβατότητα προς τα πίσω
15 Εξέλιξη Core 2 Μέλλον Οι segment registers υπάρχουν ακόμη Αλλά είναι γειωμένοι στο μηδέν Τα segments ξεκινούν από το 0x000 και καλύπτουν όλη την μνήμη Πρακτικά το segmentation της μνήμης δεν υπάρχει πια
16 Γιατί Protected Mode; Real Mode: Έξυπνος τρόπος για παροχή 20 bit διευθύνσεων σε 16 bit αρχιτεκτονική Ήδη από το bit ήταν λίγα Διέξοδοι: 1. Καθαρή 32 bit αρχιτεκτονική 2. Τροποποίηση του segmentation μηχανισμού, ώστε να παράγει μεγαλύτερες διευθύνσεις
17 Γιατί Protected Mode; Πρόβλημα: Οι 8086 και 8088 ήταν τρομερά επιτυχημένοι Η PC αρχιτεκτονική και όλες οι εφαρμογές για αυτήν απαιτούσαν x86 επεξεργαστές Χωρίς backward compatibility το κόστος για την χρήση των νέων Intel επεξεργαστών θα ήταν πολύ μεγάλο Αποτέλεσμα: Η Intel διάλεξε την λύση με την μεγαλύτερη προς τα πίσω συμβατότητα
18 Γιατί Protected Mode; 1η Απόπειρα: (1982) Ξεκινά σε real mode (100% συμβατότητα προς τα πίσω) Αν ο χρήστης ή το OS το διαλέξει, πέρασμα σε protected mode 64MB φυσικής μνήμης, 1GB λογικής μνήμης Τα segments δεν αντιστοιχούν άμεσα σε περιοχές μνήμης Μηχανισμοί προστασίας υλοποιημένοι πάνω στο segmentation Τα περισσότερα 8086 και 8088 προγράμματα μπορούν να εκτελεστούν σε protected mode με μικρές τροποποιήσεις
19 Γιατί Protected Mode; 2η Απόπειρα: (1985) Πραγματική 32 bit αρχιτεκτονική Ομοίως ξεκινά σε real mode Σε protected mode: 4GB φυσικής και λογικής μνήμης (32 bit addresses) Καλύτεροι μηχανισμοί προστασίας Δυνατότητα για επιστροφή σε real mode Με κάποιες αλλαγές πολλά 8086 και 8088 προγράμματα μπορούν να τρέξουν σε protected mode Και όσα δεν μπορούν Virtual Mode
20 Γιατί Protected Mode; Οι καταχωρητές γενικού σκοπού επεκτείνονται ΑΧ ΕΑΧ, ΒΧ ΕΒΧ κοκ EAX AH AX AL Παρά τα 32 bit των 386, το segmentation έμεινε 8 7 Backward compatibility Μονάδα διαχείρισης και προστασίας μνήμης 0
21 Real Mode Address Translation Selector = 0100H 00000Η 01000Η 10FFFΗ Μνήμη Seg 0100 FFFFFΗ
22 Protected Mode Address Translation GDT Η Μνήμη Selector = 0100H Descriptor 20H Base Addr Size Rights F FFFFΗ FFFF FFFF Η
23 Selector Selector Τιμή που φορτώνουμε στους Segment Registers Bits 15-3: Θέση του Descriptor στο DT Bit 2: Επιλογή Global ή Local DT Bits 1-0: Requested Privilege Level Descriptor No D T RPL
24 Protected Mode Address Translation GDT Η Μνήμη Selector = 0100H Descriptor 20H Base Addr Size Rights F FFFFΗ FFFF FFFF Η
25 Protected Mode Address Translation GDT Η Μνήμη Selector = 0100H Descriptor 20H Base Addr Size Rights F FFFFΗ FFFF FFFF Η
26 Descriptors Οι descriptors Επιλέγονται από τους selectors Περιγράφουν κάποιο segment ή ορίζουν κάποια πύλη Έχουν μέγεθος 8 bytes
27 Descriptors Διάφοροι τύποι descriptor: Segment Descriptor Data ή Code Segment Descriptor System Descriptor: LDT segment descriptor Task State Segment descriptor Call Gate descriptor Task Gate descriptor Interrupt Gate descriptor Ο τύπος καθορίζεται από το πεδίο TYPE του desctiptor
28 Descriptors Types of segment descriptors
29 Segment Descriptor Ο Segment Descriptor περιγράφει ένα segment κώδικα ή δεδομένων Τα 8 bytes του descriptor δίνουν Τύπο του Descriptor Διεύθυνση Βάσης του Segment Μέγεθος του Segment Privilege Level Εκτελέσιμο ή Δεδομένα Δικαιώματα Read ή Read/Write κα
30 Code Segment Descriptor 7 BASE(B31-B24) G D 0 A LIMIT V (L19-L16) 6 5 P DPL 1 1 C R A BASE(B23-B16) BASE (B15-B0) LIMIT (L0-L15) 2 0 Αρχή του Segment = Base Μέγεθος = Limit ( ή Limit * 4K αν G = 1) A (Accessed) = Set αν έχει χρησιμοποιηθεί R (Read) = Μπορούμε να κάνουμε load C (conforming) - protection related G (Granularity bit) = ρυθμίζει την μετάφραση του Limit
31 Data Segment Descriptor 7 BASE(B31-B24) G B 0 A LIMIT V (L19-L16) 6 5 P DPL 1 0 E W A BASE(B23-B16) BASE (B15-B0) LIMIT (L0-L15) 2 0 Αρχή του Segment = Base Μέγεθος = Limit ( ή Limit * 4K αν G = 1) A (Accessed) = Set αν έχει χρησιμοποιηθεί W (Write) = Μπορούμε να κάνουμε store E (Expansion) = ρυθμίζει την μετάφραση του Limit G (Granularity bit) = ρυθμίζει την μετάφραση του Limit
32 Segment Descriptor Bit Position Name Function Present (P) Descriptor Privilege Level (DPL) Segment Descriptor Type (S) Executable(E) Expansion Direction(ED) Writeable(W) Executable(E) Conforming(C) Readable(R) P=1 Segment is mapped into physical memory P=0 No mapping to physical memory exists, base and limit are not used Segment privilege attribute used in privilege tests S=1 Code or Data segment descriptor S=0 System segment Descriptor or Gate Descriptor E=0 Data segment descriptor type is : ED=0 Expand Up segment ED=1 Expand Down segment W= 0 Data segment may not be written into W= 1 Data segment may be written into E=1 Code segment descriptor type is: C=1 Code segment may only be executed When CPL DPL and CPL remains unchanged R=0 Code segment may not be read R=1 Code segment may be read 0 Accessed(A) A=0 Segment has not been accessed A=1 Segment selector has been loaded into segment register or used by selector test instruction
33 Non System Segment descriptors P bit indicates whether segment is present in memory or not. P = 0 -> Segment is not present and P = 1-> Segment is present. DPL: defines privilege level of the segment. Used to protect segment from low privilege caller.
34 Non System Segment descriptors S: Used to distinguish between non system segment and system segment descriptors. S = 1-> Non system segment descriptor. E: Executable; Used to distinguish between data and code segments. E=0 -> Data segment including stack. E = 1 -> Code segment. ED/C: Expand direction/conforming; When E=0, then this bit functions as ED, ED indicates whether the segment is data or stack. ED = 0 -> Data segment( access segment randomly). Offset address limit. ED = 1 -> Stack segment LIFO.
35 Non System Segment descriptors When E =1, then this bit functions as C ( conforming) bit. Used to distinguish between conforming and nonconforming code segments. C= 0 -> Non conforming code segment. C = 1 -> Conforming code segment. R/W Read/Write. When E= 0( data segment), then this bit functions as W bit. This bit indicates whether data segment is writable or not. W = 0 -> data segment is not writable. W= 1 -> data segment is writable.
36 Non System Segment descriptors When E =1 (code segment) then this bit functions as R bit. This bit indicates whether code segment is readable or not. R = 0 -> code segment is not readable and R = 1 -> code segment is readable. A: Accessed; This bit indicates whether the segment is accessed or not. A= 1 -> Segment accessed. This bit is reset by OS periodically. A= 0 -> Segment not accessed
37 System Segment descriptor Type All system descriptors are present in GDT while some system descriptors are present in LDTs. Normally system segment descriptor are used by OS. The value of S in right access byte is 0. Their functions are fixed and specified by Intel. The type of system descriptor is indicated by type field. The system segment descriptors have no Accessed bit, instead the type field (3 bits) is now extended to 4 bits. The system segment descriptors contain the information about tables (LDT), tasks(tss) and gates (call gate, interrupt gate, task gate, trap gate) of the OS.
38 Name Value Description Type A B C D E F P 0 1 System descriptors Reserved Available 16 bit TSS LDT Busy 16 bit TSS Call Gate Task Gate 16 bit Interrupt gate 16 bit Trap gate Reserved Available 32 bit TSS Reserved Busy 32 bit TSS 32 bit Call Gate Reserved 32 bit Interrupt Gate 32 bit Trap Gate Descriptor contents are not valid Descriptor contents are valid DPL 0-3 Descriptor Privilege level 0,1,2, or 3 BASE 32-bit number Base address of special system data segment in memory LIMIT 20-bit number Offset of last byte in segment from the base
39 LDT descriptor (s=0, Type 2)
40 LDT descriptor (s=0, Type 2) The LDT descriptors are present in the GDT. They contain the information about the LDT. LDT contains the segment descriptors that are unique to a particular task. The DPL field of the descriptor is ignored as this descriptor can only be accessed with a privilege level of 0. Here type field =2 i.e. it specifies a LDT descriptor.
41 Task State Segment Task State Segment (TSS) Ένα για κάθε task Κρατάει την κατάσταση του task όταν αυτό φεύγει από τον επεξεργαστή Registers γενικού σκοπού, ESP, EIP Segment registers LDT Selector IO Permissions Διευκολύνει το multi-tasking
42 TSS Structure EBX EDX I/O MAP BASE LDT GS T ECX EAX EFLAGS FS INSTRUCTION POINTER (EIP) DS SS CS ES CR3 ESP2 SS2 SS1 EDI ESP1 ESI SS0 EBP ESP ESP0 BACKLINK
43 Task State Segment Όταν φορτώνεται ένα task αντιγράφεται η κατάσταση του από το TSS του στον επεξεργαστή Όταν βγάζουμε ένα task από τον επεξεργαστή αντιγράφεται η κατάστασή του από τον επεξεργαστή στο TSS
44 TSS Descriptor Όπως κάθε segment, το TSS περιγράφεται από έναν descriptor που επιλέγεται από έναν selector O selector του tss είναι και το αναγνωριστικό του task Ο selector του τρέχοντος task βρίσκεται στον task register Aπευθείας φόρτωση μόνο σε ειδικές περιπτώσεις Συνήθης φόρτωση: θα φορτώναμε selector στον CS Πχ για ένα task με TSS το tss1 και selector τον 18h: jmp 18h:0 ή call 18h:0
45 TSS Descriptor BASE(B31-B24) P DPL 0 TYPE B B A S E (B15-B0) LIMIT (L0-L15) G 0 0 A LIMIT V (L19-L16) BASE(B23-B16) B (busy bit) = 1 αν το task εκτελείται To limit πρέπει να είναι τουλάχιστον 103
46 Interrupt Gate Descriptor Δίνουν πληροφορίες για την κλήση μίας ISR Συγκεκριμένα: Code Segment Selector της ISR Offset της ISR μέσα στο code segment Privileges
47 Interrupt Gate Descriptor 7 OFFSET(A31-A16) 6 5 P DPL H SEGMENT SELECTOR OFFSET (A0-A15) 2 0
48 Gate descriptors (S=0, Type 4,5,6,7,C,F) Whenever 4,5,6,7 is specified in type field it specifies a call gate, task gate, interrupt gate and trap gate respectively. All fields are same as specified earlier except the word count, selector and offect. The word count field specifies the number of parameters that are to be copied from caller s stack to the called procedure s stack.
49 Gate descriptors (S=0, Type 4,5,6,7,C,F) Call gate are used to modified privilege levels. Trap and interrupt gates are used in interrupt and exception handling. The task gates are used in multitasking system
50 Descriptor Tables Τα DTs είναι πίνακες όπου περιέχονται descriptors Και αντίστροφα: όλοι οι descriptors πρέπει να βρίσκονται σε κάποιο DT O αριθμός του descriptor που δίνει ο selector είναι η θέση του descriptor στον πίνακα Ξεκινούν από όπου θέλουμε και έχουν (σχεδόν) όποιο μέγεθος θέλουμε Μέγιστος αριθμός εγγραφών = 8K Μέγιστο μέγεθος = 64ΚΒ
51 Descriptor Tables Μέχρι τρεις ενεργοί πίνακες κάθε στιγμή: GDT: Descriptors για όλα τα task (και OS) LDT: Descriptors μόνο για το ενεργό task IDT: Descriptors για Interrupt Gates Οι διευθύνσεις βάσης και τα μεγέθη τους φορτώνονται στους ειδικούς καταχωρητές GDTR, LDTR, IDTR Η πρώτη εγγραφή του GDT (selector = 0h) είναι δεσμευμένη NULL Descriptor
52 Σύνοψη Address Translation Αντί για segment number -> selector Ο selector επιλέγει descriptor από ένα descriptor table Ο descriptor περιγράφει τα χαρακτηριστικά του segment, δίνει την φυσική του θέση στην μνήμη και ορίζει δικαιώματα χρήσης
53 Segment-Based Protection Οι descriptors μας παρέχουν δυνατότητες για να ελέγξουμε την χρήση δεδομένων ή την εκτέλεση κώδικα 1. Type checking 2. Limit checking 3. Restricting access to data 4. Restricting control transfers 5. Restriction of instruction set Πιθανές παραβιάσεις οδηγούν σε exception
54 1. Type checking Χρησιμοποιεί το πεδίο TYPE για να ελέγξει την εγκυρότητα της εντολής Επιβάλλει την χρήση του σωστού τύπου selector/descriptor για κάθε εντολή. Πχ: Μόνο selectors για segment descriptors στους segment registers Μόνο interrupt και task gates στον IDT Μόνο selectors για TSS descriptors στο task switching
55 1. Type checking Αποτρέπει βάσει του πεδίου TYPE: Selectors για non-executable segments στον CS Selectors για executable segments χωρίς read δικαιώματα στους υπόλοιπους registers Selectors για read-only segments στον SS Store σε executable segment Store σε data segment που είναι read only
56 2. Limit Checking Σε κάθε προσπέλαση μνήμης ελέγχεται αν το offset βρίσκεται μέσα στα όρια που επιβάλλονται από το limit Γενικά 0 <= offset <= limit Αν G = 1 0 <= offset <= limit * 4K Aν Ε = 1 64K - 1 >= offset => limit + 1 Aν G = E = 1 4G - 1 >= offset >= limit * 4K + 1
57 Privilege Levels Στην x86 αρχιτεκτονική 4 επίπεδα προνομίων Level 0: Kernel (Πλήρη δικαιώματα) Level 1: Υπηρεσίες του OS και drivers Level 2: Επεκτάσεις του OS Level 3: Επίπεδο Χρήστη (Ελάχιστα δικαιώματα)
58 Privilege Levels Στην πράξη μόνο επίπεδο 0 και 3 Απαγορεύουν σε κώδικα χαμήλων προνομίων (κώδικα χρήστη) Να αλλοιώσει την κατάσταση του OS Να αλλάξει τον τρόπο που αυτό λειτουργεί Να υποκλέψει ξένα δεδομένα Ένα ελαττωματικό πρόγραμμα δεν παγώνει το σύστημα Ένα κακόβουλο πρόγραμμα δεν μολύνει εύκολα το λειτουργικό
59 Privilege Levels Τρεις τύποι privilege level Current Privilege Level (CPL) Το επίπεδο του εκτελούμενου code segment Descriptor Privilege Level (DPL) Πεδίο του descriptor. Καθορίζει τα ελάχιστα προνόμια (μέγιστο CPL) που απαιτούνται για την χρήση του segment Requested Privilege Level (RPL) Ορίζεται στα bits 0-1 του selector Δείχνει τα δικαιώματα με τα οποία θέλουμε να χρησιμοποιήσουμε ένα segment
60 3. Restricting access to data Η χρήση ενός data selector επιτρέπεται αν: Ο descriptor που επιλέγει ο selector έχει DPL μεγαλύτερο ή ίσο του max (CPL, RPL)
61 4. Restricting control transfers Through call gates Για να κληθεί ένα call gate πρέπει Να μπορεί να προσπελαστεί από την τρέχουσα διεργασία max(cpl, RPL) <= gate_dpl To target segment να έχει χαμηλότερο αριθμητικά επίπεδο Target segment DPL <= CPL G X G
62 4. Restricting control transfers Through call gates Τα call gates είναι τύπος descriptor Παρόμοιος με τα interrupt gates Μεταφέρει τον έλεγχο σε συγκεκριμένο segment και offset Προσφέρει πρόσβαση σε κώδικα υψηλότερων προνομίων Οι συναρτήσεις χρήστη μπορούν να χρησιμοποιήσουν κώδικα του OS αλλά μόνο με τους δικούς του όρους Φορτώνεται διαφορετική στοίβα, ώστε να απομονωθούν πλήρως τα επίπεδα προνομίων
63 4. Restricting control transfers Direct transfers Για near calls και jumps (μέσα στο ίδιο segment) γίνεται μόνο limit checking Για far calls και jumps (σε διαφορετικό segment) πρέπει: Αν το segment είναι nonconforming, το CPL να είναι ίσο με το target DPL Αν το segment είναι conforming, το CPL μπορεί να είναι μεγαλύτερο ή ίσο του DPL Ok if conforming
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
Προηγμένοι Μικροεπεξεργαστές. Φροντιστήριο 2 Addressing
Προηγμένοι Μικροεπεξεργαστές Φροντιστήριο 2 Addressing Roadmap Το μοντέλο μνήμης των x86 Γιατί τόσο περίπλοκο; Δομή Εξέλιξη Μέθοδοι διευθυνσιοδότησης Εντολές προσπέλασης μνήμης Μοντέλο Μνήμης Πριν τους
Διαβάστε περισσότεραΠροηγμένοι Μικροεπεξεργαστές. Paging & Segmentation
Προηγμένοι Μικροεπεξεργαστές Paging & Segmentation Segmentation Τεχνική για σπάσουμε την μνήμη σε λογικά κομμάτια Κάθε κομμάτι αποθηκεύει πληροφορία σχετική με data segments for each process code segments
Διαβάστε περισσότεραΠροηγμένοι Μικροεπεξεργαστές. Εργαστήριο 4 - Editor
Προηγμένοι Μικροεπεξεργαστές Εργαστήριο 4 - Editor Περιγραφή Υλοποίηση ενός υποτυπώδους editor που θα: Διαβάζει ένα προκαθορισμένο αρχείο Θα το απεικονίζει στην οθόνη Θα κάνει highlight με έναν ελεγχόμενο
Διαβάστε περισσότεραΑρχιτεκτονικές Συνόλου Εντολών (ΙΙ)
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2017-18 Αρχιτεκτονικές Συνόλου Εντολών (ΙΙ) (Αρχιτεκτονική x86-64) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Αρχιτεκτονική
Διαβάστε περισσότεραΑρχιτεκτονική-ΙI Ενότητα 6 :
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Αρχιτεκτονική-ΙI Ενότητα 6 : Υλικό του 80386 Ιωάννης Έλληνας Τμήμα Η/ΥΣ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε
Διαβάστε περισσότεραΑρχιτεκτονική x86(-64) 32-bit και 64-bit λειτουργία. Αρχιτεκτονική x86(-64) Αρχιτεκτονική επεξεργαστών x86(-64) Αρχιτεκτονικές Συνόλου Εντολών (ΙΙ)
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2017-18 Αρχιτεκτονικές Συνόλου Εντολών (ΙΙ) (Αρχιτεκτονική x86-64) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Αρχιτεκτονική
Διαβάστε περισσότεραΠροηγμένοι Μικροεπεξεργαστές. Εργαστήριο 3 Task Switching in PM
Προηγμένοι Μικροεπεξεργαστές Εργαστήριο 3 Switching in PM Περιγραφή Διαχείριση διεργασιών μέσα από protected mode. Υπάρχων κώδικας: Περνάει σε protected mode Αρχικοποιεί όλες τις δομές Δίνει τον έλεγχο
Διαβάστε περισσότεραΠροηγμένοι Μικροεπεξεργαστές. Εργαστήριο 6 C & Assembly
Προηγμένοι Μικροεπεξεργαστές Εργαστήριο 6 C & Assembly Real World Situation Στον πραγματικό κόσμο, κανείς δεν γράφει αποκλειστικά assembly Κουραστικό Δύσκολα συντηρήσιμος κώδικας Μηδενική φορητότητα Μεγάλη
Διαβάστε περισσότεραΕικονική Μνήμη (Virtual Μemory)
ΗΥ 431 Αρχιτεκτονική Παραλλήλων Συστημάτων Διάλεξη 16 Εικονική Μνήμη (Virtual Μemory) Νίκος Μπέλλας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ Απλό πείραμα int *data = malloc((1
Διαβάστε περισσότεραWriting kernels for fun and profit
Writing kernels for fun and profit Γιάννης Τσιομπίκας nuclear@memberfsforg 23 Μαρτίου 2011 Γιατί; It s FUN! Εξοικείωση με το hardware Εμβάθυνση στον θαυμαστό κόσμο των λειτουργικών συστημάτων Μια καλή
Διαβάστε περισσότεραΠροηγμένοι Μικροεπεξεργαστές. Παρουσίαση Εργασιών
Προηγμένοι Μικροεπεξεργαστές Παρουσίαση Εργασιών Γενικά 2 Projects για ένα άτομο 5 Projects για δύο άτομα 4 Project για ένα έως δύο άτομα Γενικά Προθεσμία: Τέλος Εξεταστικής (Hard Deadline) Τυπικός απαιτούμενος
Διαβάστε περισσότεραΔημήτρης Πρίτσος. ISLAB HACK: Βασικές Έννοιες της Αρχιτεκτονικής
ISLAB HACK: Βασικές Έννοιες της Αρχιτεκτονικής INTEL - IA32 για LINUX & WINDOWS Αθήνα 2003 1 Περιεχόμενα 2 Περιήγηση στην αρχιτεκτονική ΙΑ32 και των λειτουργικών συστημάτων Linux και Ms-Windows 1 Γενικά
Διαβάστε περισσότεραΕικονική Μνήμη (Virtual Μemory)
ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 16 Εικονική Μνήμη (Virtual Μemory) Νίκος Μπέλλας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ Απλό πείραμα int *data = malloc((1
Διαβάστε περισσότεραΠροηγμένοι Μικροεπεξεργαστές. Έλεγχος Ροής Προγράμματος
Προηγμένοι Μικροεπεξεργαστές Έλεγχος Ροής Προγράμματος Control Flow εντολές Jump related JMP Jcc (JZ, JNZ, JB, JNB etc) JCXZ, JECXZ LOOP LOOPE, LOOPNE Procedure related CALL RET INT IRET INTO ENTER LEAVE
Διαβάστε περισσότεραΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ. Διαχείριση μνήμης III
ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Διαχείριση μνήμης III Υλικό από: Tanenbaum, Modern Operating Systems,Structured Computer Organization Stallings, Operating Systems: Internals and Design Principles. Silberschatz,
Διαβάστε περισσότεραΚαταχωρητές & τμήματα μνήμης του Ματθές Δημήτριος Καθηγητής Πληροφορικής
Καταχωρητές & τμήματα μνήμης του 8086 Ματθές Δημήτριος Καθηγητής Πληροφορικής Καταχωρητές γενικού σκοπού Υπάρχουν τέσσερις (4) γενικού σκοπού καταχωρητές των 16-bit που χρησιμοποιούνται από τους προγραμματιστές
Διαβάστε περισσότεραΣημειώσεις για τον 80x86
Σημειώσεις για τον 80x86 Τι είναι η διεύθυνση; 16bits 0000h 0001h 0002h 8bits 20h 32h 30h Η μνήμη ενός μικροϋπολογιστικού συστήματος χωρίζεται σε μικρά τμήματα του ενός byte FFFEh 30h 2 16 =65,536 bytes
Διαβάστε περισσότεραΕικονική Μνήμη (virtual memory)
Εικονική Μνήμη (virtual memory) Πολλά προγράμματα εκτελούνται ταυτόχρονα σε ένα υπολογιστή Η συνολική μνήμη που απαιτείται είναι μεγαλύτερη από το μέγεθος της RAM Αρχή τοπικότητας (η μνήμη χρησιμοποιείται
Διαβάστε περισσότεραΑρχιτεκτονική Υπολογιστών
Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 3: Καταχωρητές, Τμήματα, Διευθυνσιοδότηση Μνήμης, SEGMENT, MOV, ADD, SUB, INT, TITLE, LEA
Διαβάστε περισσότεραΕνσωµατωµένα Υπολογιστικά Συστήµατα (Embedded Computer Systems)
Ενσωµατωµένα Υπολογιστικά Συστήµατα (Embedded Computer Systems) Μαθηµα 2 ηµήτρης Λιούπης 1 Intel SA-1110 µc StrongARM core. System-on-Chip. Εξέλιξη των SA-110 και SA-1100. 2 ARM cores ARM: IP (intellectual
Διαβάστε περισσότεραΕργαστήριο 3 ΟΡΓΑΝΩΣΗ ΤΗΣ ΚΜΕ. Εισαγωγή
Εισαγωγή Εργαστήριο 3 ΟΡΓΑΝΩΣΗ ΤΗΣ ΚΜΕ Σκοπός του εργαστηρίου είναι να γνωρίσουµε την εσωτερική δοµή και αρχιτεκτονική της κεντρικής µονάδας επεξεργασίας, να κατανοήσουµε τον τρόπο µε τον οποίο λειτουργεί
Διαβάστε περισσότεραΠροηγμένοι Μικροεπεξεργαστές. Φροντιστήριο 4 Real Mode Interrupts
Προηγμένοι Μικροεπεξεργαστές Φροντιστήριο 4 Real Mode Interrupts Επισκόπηση Μορφές control tranfer Γενικά μη προγραμματισμένες Ασυγχρονα προς την εκτέλεση του προγράμματος Hardware interrupts Σύγχρονα
Διαβάστε περισσότεραDr. Kerneldev or: how I learned to stop worrying and love the pagefault
Dr. Kerneldev or: how I learned to stop worrying and love the pagefault Γιάννης Τσιομπίκας nuclear@member.fsf.org 4 Νοεμβρίου 2011 Previously on dr.kerneldev Booting με το GRUB. VGA text mode driver &
Διαβάστε περισσότεραΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών. Intel x86 ISA. Νίκος Μπέλλας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών ΗΥ
ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Intel x86 ISA Νίκος Μπέλλας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών ΗΥ RISC vs. CISC Η assembly των επεξεργαστών ARM, SPARC (Sun), και Power (IBM) είναι όμοιες
Διαβάστε περισσότεραΙεραρχία Μνήμης. Εικονική μνήμη (virtual memory) Επεκτείνοντας την Ιεραρχία Μνήμης. Εικονική Μνήμη. Μ.Στεφανιδάκης
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής ρχιτεκτονική Υπολογιστών 2016-17 Εικονική Μνήμη (και ο ρόλος της στην ιεραρχία μνήμης) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Δευτερεύουσα μνήμη
Διαβάστε περισσότεραΑΡΧΙΤΕΚΤΟΝΙΚΗ HARDWARE ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ
ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΚΕΦΑΛΑΙΟ 7ο ΑΡΧΙΤΕΚΤΟΝΙΚΗ HARDWARE ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ Γενικό διάγραμμα υπολογιστικού συστήματος Γενικό διάγραμμα υπολογιστικού συστήματος - Κεντρική Μονάδα Επεξεργασίας ονομάζουμε
Διαβάστε περισσότεραΠΡΟΗΓΜΕΝΟΙ ΜΙΚΡΟΕΠΕΞΕΡΓΑΣΤΕΣ PROJECT 2: MEMORY MANAGEMENT
ΠΡΟΗΓΜΕΝΟΙ ΜΙΚΡΟΕΠΕΞΕΡΓΑΣΤΕΣ PROJECT 2: MEMORY MANAGEMENT ΘΕΩΡΙΑ Στο project αυτό έχουμε υλοποιήσει τις βασικές συναρτήσεις της stdlib της C malloc και free Η συνάρτηση malloc είναι η void *malloc(int
Διαβάστε περισσότεραInstruction Execution Times
1 C Execution Times InThisAppendix... Introduction DL330 Execution Times DL330P Execution Times DL340 Execution Times C-2 Execution Times Introduction Data Registers This appendix contains several tables
Διαβάστε περισσότεραΘ. Ζαχαριάδης Αν. Καθηγητής. Λ. Σαράκης Καθ. Εφαρμογών
Θ. Ζαχαριάδης Αν. Καθηγητής Λ. Σαράκης Καθ. Εφαρμογών CMP REG, memory memory, REG REG, REG memory, immediate REG, immediate Compare. operand1 - operand2 result is not stored anywhere, flags are set (OF,
Διαβάστε περισσότεραΤέτοιες λειτουργίες γίνονται διαμέσου του
Για κάθε εντολή υπάρχουν δυο βήματα που πρέπει να γίνουν: Προσκόμιση της εντολής (fetch) από τη θέση που δείχνει ο PC Ανάγνωση των περιεχομένων ενός ή δύο καταχωρητών Τέτοιες λειτουργίες γίνονται διαμέσου
Διαβάστε περισσότεραΕθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών - Μηχανικών Υπολογιστών. Αρχιτεκτονική Υπολογιστών Νεκτάριος Κοζύρης.
Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών - Μηχανικών Υπολογιστών Αρχιτεκτονική Υπολογιστών Νεκτάριος Κοζύρης Εικονική Μνήμη Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες
Διαβάστε περισσότεραΑρχιτεκτονική Υπολογιστών
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 13: Λειτουργίες Αρχείων Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών
Διαβάστε περισσότεραΙόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Εικονική Μνήμη. (και ο ρόλος της στην ιεραρχία μνήμης)
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2011-12 Εικονική (και ο ρόλος της στην ιεραρχία μνήμης) http://di.ionio.gr/~mistral/tp/comparch/ Μ.Στεφανιδάκης Ιεραρχία η νέα τάση: [2011]
Διαβάστε περισσότεραΣτοιχεία από Assembly Γιώργος Μανής
Στοιχεία από Assembly 8086 Γιώργος Μανής Καταχωρητές καταχωρητές γενικής φύσης καταχωρητές δείκτες καταχωρητές αναφοράς καταχωρητές τµηµάτων ειδικοί καταχωρητές Καταχωρητές γενικής φύσης 16 bit ax, bx,
Διαβάστε περισσότεραΟργάνωση επεξεργαστή (1 ο μέρος) ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική
Οργάνωση επεξεργαστή (1 ο μέρος) ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική Κώδικας μηχανής (E) Ο επεξεργαστής μπορεί να εκτελέσει το αρχιτεκτονικό σύνολο εντολών (instruction set architecture) Οι
Διαβάστε περισσότεραΜηχανοτρονική. Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο,
Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο, 2016-2017 ΜΙΚΡΟΕΠΕΞΕΡΓΑΣΤΕΣ Μικροϋπολογιστής Υπολογιστής που χρησιμοποιείται για την είσοδο, επεξεργασία και έξοδο πληροφοριών. Είδη μικροϋπολογιστών:
Διαβάστε περισσότεραΑρχιτεκτονική υπολογιστών
1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αρχιτεκτονική υπολογιστών Ενότητα 9 : Ομάδες Εντολών: Ιδιότητες και Λειτουργίες Ευάγγελος Καρβούνης Παρασκευή, 15/01/2016 Τι είναι ομάδα εντολών;
Διαβάστε περισσότεραΠροηγμένοι Μικροεπεξεργαστές. Παρουσίαση Projects
Προηγμένοι Μικροεπεξεργαστές Παρουσίαση Projects Γενικά 5 Projects για ένα άτομο 6 Projects για δύο άτομα 1 Project για ένα έως δύο άτομα 3 Projects για δύο έως τρία άτομα Γενικά Προθεσμία: Τέλος εξεταστικής
Διαβάστε περισσότεραΜετατροπή χαρακτήρων ASCII σε ακέραιο αριθµό (atoi) & Άνοιγµα αρχείου µέσα από τo QtSPIM, διάβασµα, και αποθήκευση του περιεχοµένου του στη µνήµη
Μετατροπή χαρακτήρων ASCII σε ακέραιο αριθµό (atoi) & Άνοιγµα αρχείου µέσα από τo QtSPIM, διάβασµα, και αποθήκευση του περιεχοµένου του στη µνήµη ( ιάλεξη 3) ιδάσκων: Γιώργος Ζάγγουλος Email: zaggoulos.george@ucy.ac.cy
Διαβάστε περισσότεραΚεντρική Μονάδα Επεξεργασίας (ΚΜΕ) Τμήματα ΚΜΕ (CPU) Ένα τυπικό υπολογιστικό σύστημα σήμερα. Οργάνωση Υπολογιστών (Ι)
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2015-16 Οργάνωση Υπολογιστών (Ι) (η κεντρική μονάδα επεξεργασίας) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Ένα
Διαβάστε περισσότεραΕΡΓΑΣΤΗΡΙΟ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ Η/Υ
ΕΡΓΑΣΤΗΡΙΟ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ Η/Υ 4 ο Εξάμηνο Μαδεμλής Ιωάννης MSc Ηλεκτρονικός Φυσικός Αντικείμενο: ΠΡΟΦΙΛ ΜΑΘΗΜΑΤΟΣ Προγραμματισμός σε γλώσσα Assembly Σκοπός: Γνώση της assembly από τους απόφοιτους του τμήματος
Διαβάστε περισσότεραΟργάνωση Υπολογιστών (Ι)
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2014-15 Οργάνωση Υπολογιστών (Ι) (η κεντρική μονάδα επεξεργασίας) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Ένα
Διαβάστε περισσότεραΑρχιτεκτονική Υπολογιστών
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 7: Αποκωδικοποίηση Εντολής x86 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών
Διαβάστε περισσότεραΥποστήριξη Λ.Σ. ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική
Υποστήριξη Λ.Σ. ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική Επικοινωνία με περιφερειακά Αρτηρία εισόδου-εξόδου, διευθύνσεις, εγγραφές αναγνώσεις Διαδικασία εξόδου έλεγχος κατάστασης περιφερειακού περίμενε
Διαβάστε περισσότεραΕικονική Μνήμη (Virtual memory)
ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 16 Εικονική Μνήμη (Virtual memory) Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων 1 Προβλήματα φυσικής μνήμης (1) Τι θα συμβεί εάν η μνήμη
Διαβάστε περισσότεραΔιαχείριση Κύριας Μνήμης
Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχ. και Μηχανικών Υπολογιστών Εργαστήριο Υπολογιστικών Συστημάτων Διαχείριση Κύριας Μνήμης Λειτουργικά Συστήματα Υπολογιστών 7ο Εξάμηνο, 2016-2017 Διαχείριση
Διαβάστε περισσότεραΕικονική Μνήμη (virtual memory)
Εικονική Μνήμη (virtual memory) Πολλά προγράμματα εκτελούνται ταυτόχρονα σε ένα υπολογιστή Η συνολική μνήμη που απαιτείται είναι μεγαλύτερη από το μέγεθος της RAM Αρχή τοπικότητας (η μνήμη χρησιμοποιείται
Διαβάστε περισσότεραΑρχιτεκτονική υπολογιστών
1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αρχιτεκτονική υπολογιστών Ενότητα 4 : Κρυφή Μνήμη Καρβούνης Ευάγγελος Δευτέρα, 30/11/2015 Χαρακτηριστικά Θέση Χωρητικότητα Μονάδα Μεταφοράς
Διαβάστε περισσότεραΑρχιτεκτονική Υπολογιστών
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Αρχιτεκτονική Υπολογιστών Υποσύστημα μνήμης Διδάσκων: Επίκουρος Καθηγητής Αριστείδης Ευθυμίου Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες
Διαβάστε περισσότεραΕΡΓΑΣΤΗΡΙΟ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ Η/Υ
ΕΡΓΑΣΤΗΡΙΟ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ Η/Υ 4 ο Εξάμηνο Μαδεμλής Ιωάννης ΥΠΟΡΟΥΤΙΝΕΣ ΕΡΓΑΣΤΗΡΙΟ 6 Οι υπορουτίνες αποτελούν αυτόνομα τμήματα κώδικα που διεκπεραιώνουν μία συγκεκριμένη εργασία και μπορούμε να τα καλούμε
Διαβάστε περισσότεραΘ. Ζαχαριάδης Αν. Καθηγητής. Λ. Σαράκης Καθ. Εφαρμογών
Θ. Ζαχαριάδης Αν. Καθηγητής Λ. Σαράκης Καθ. Εφαρμογών Στον debugger που χρησιμοποιούμε στο εργαστήριο, όταν γράφουμε δεκαεξαδικούς αριθμούς που το πιο σημαντικό ψηφίο τους είναι Α-F βάζουμε μπροστά από
Διαβάστε περισσότεραΑνάπτυξη rootkit σε Λειτουργικό Σύστημα Linux
Αλεξάνδρειο Τεχνολογικό Εκπαιδευτικό Ίδρυμα Θεσσαλονίκης Τμήμα Πληροφορικής Ανάπτυξη rootkit σε Λειτουργικό Σύστημα Linux Πτυχιακή εργασία Χατζηκυριάκου Ελένης Σεπτέμβριος 2008 Υπεύθυνος: Δρ. Ελευθέριος
Διαβάστε περισσότεραΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών ARM και x86
ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών ARM και x86 Αρης Ευθυμίου Το σημερινό μάθημα! Λυση του lab02! Αρχιτεκτονική ARM σε τι μοιάζει και σε τι διαφέρει από τον MIPS! Αρχιτεκτονική x86 μια γρήγορη ματιά στη
Διαβάστε περισσότεραΑρχιτεκτονική υπολογιστών
1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αρχιτεκτονική υπολογιστών Ενότητα 11-12 : Δομή και Λειτουργία της CPU Ευάγγελος Καρβούνης Παρασκευή, 22/01/2016 2 Οργάνωση της CPU Η CPU πρέπει:
Διαβάστε περισσότεραVirtual Memory. Αρχιτεκτονική Υπολογιστών. 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: Νεκ. Κοζύρης
Αρχιτεκτονική Υπολογιστών 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: 24-25 Νεκ. Κοζύρης nkoziris@cslab.ece.ntua.gr Virtual Memory http://www.cslab.ece.ntua.gr/courses/comparch/ Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό
Διαβάστε περισσότεραΕργαστήριο Ανάπτυξης Εφαρμογών Βάσεων Δεδομένων. Εξάμηνο 7 ο
Εργαστήριο Ανάπτυξης Εφαρμογών Βάσεων Δεδομένων Εξάμηνο 7 ο Procedures and Functions Stored procedures and functions are named blocks of code that enable you to group and organize a series of SQL and PL/SQL
Διαβάστε περισσότεραThe challenges of non-stable predicates
The challenges of non-stable predicates Consider a non-stable predicate Φ encoding, say, a safety property. We want to determine whether Φ holds for our program. The challenges of non-stable predicates
Διαβάστε περισσότεραΚεφάλαιο 3 Αρχιτεκτονική Ηλεκτρονικού Τμήματος (hardware) των Υπολογιστικών Συστημάτων ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ
Κεφάλαιο 3 Αρχιτεκτονική Ηλεκτρονικού Τμήματος (hardware) των Υπολογιστικών Συστημάτων ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ 1. Τι εννοούμε με τον όρο υπολογιστικό σύστημα και τι με τον όρο μικροϋπολογιστικό σύστημα; Υπολογιστικό
Διαβάστε περισσότερα; Γιατί είναι ταχύτερη η λήψη και αποκωδικοποίηση των εντολών σταθερού μήκους;
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2015-16 Αρχιτεκτονικές Συνόλου Εντολών (ΙΙ) (Δομή Εντολών και Παραδείγματα) http://di.ionio.gr/~mistral/tp/comparch/ Μ.Στεφανιδάκης Αρχιτεκτονική
Διαβάστε περισσότεραΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός Προγραμματισμός. Εργαστήριο Αρ. 2
ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός Προγραμματισμός Εργαστήριο Αρ. 2 Εισαγωγή στην Αρχιτεκτονική ARMv8-A Arithmetic and Logic Instr..data, Branch and Loops, PhD Σελ. 1 Memory Allocation LEGv8 0000
Διαβάστε περισσότεραΛειτουργικά Συστήματα (ΗΥ321)
Λειτουργικά Συστήματα (ΗΥ321) Διάλεξη 7: Εικονική Μνήμη Σελιδοποίηση & Πίνακες Σελίδων Ιδεατή Μνήμη Βασισμένη σε Σελίδες (Σελιδοποίηση) Σπάσε τη μνήμη σε κομματάκια σταθερού μεγέθους (σελίδες) Δίλλημα:
Διαβάστε περισσότεραΛειτουργικά Συστήματα
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Λειτουργικά Συστήματα Ενότητα 8: Διαχείριση Μνήμης. Φυσικές και Λογικές Διευθύνσεις Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και
Διαβάστε περισσότεραMIPS functions and procedures
Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών - Μηχανικών Υπολογιστών Αρχιτεκτονική Υπολογιστών Νεκτάριος Κοζύρης MIPS functions and procedures Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται
Διαβάστε περισσότεραΕΠΛ605 Εργασία 1 Ημερομηνία Παράδοσης 12/9/2018 στην αρχή του μαθήματος
ΕΠΛ605 Εργασία 1 Ημερομηνία Παράδοσης 12/9/2018 στην αρχή του μαθήματος Ε.1 Σας δίνεται ο πιο κάτω κώδικας. Ξαναγράψτε τον ώστε να μειωθεί ο αριθμός των εντολών του αλλά διατηρώντας την ίδια λειτουργιά
Διαβάστε περισσότεραΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ. Διαχείριση μνήμης Εργαστηριακές Ασκήσεις
ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Διαχείριση μνήμης Εργαστηριακές Ασκήσεις Υλικό από: Modern Operating Systems Laboratory Exercises, Shrivakan Mishra Σύνθεση Κ.Γ. Μαργαρίτης, Τμήμα Εφαρμοσμένης Πληροφορικής, Πανεπιστήμιο
Διαβάστε περισσότεραModbus basic setup notes for IO-Link AL1xxx Master Block
n Modbus has four tables/registers where data is stored along with their associated addresses. We will be using the holding registers from address 40001 to 49999 that are R/W 16 bit/word. Two tables that
Διαβάστε περισσότεραΚεντρική Μονάδα Επεξεργασίας
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Κεντρική Μονάδα Επεξεργασίας (Σχεδιασμός και λειτουργία μιας απλής ΚΜΕ) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης
Διαβάστε περισσότεραΛειτουργικά Συστήματα (ΗΥ222)
Λειτουργικά Συστήματα (ΗΥ222) Διάλεξη 7: Εισαγωγή στην Ιδεατή Μνήμη - Τμηματοποίηση Η Ευτυχισμένη Κοινωνία των Διεργασιών 2 Πολλαπλές χαρούμενες διεργασίες στο σύστημα Και αν το Visual Studio χρειαστεί
Διαβάστε περισσότεραΜετατροπή χαρακτήρων ASCII σε αριθμό (atoi) & διάβασμα, και αποθήκευση του περιεχομένου του στη μνήμη. (Διάλεξη. Πανεπιστήμιο Κύπρου
Μετατροπή χαρακτήρων ASCII σε αριθμό (atoi) & Άνοιγμα αρχείου μέσα από τo SPIM, διάβασμα, και αποθήκευση του περιεχομένου του στη μνήμη (Διάλεξη 3) 1 Μετατροπή χαρακτήρων ASCII σε ακέραιο Ο πιο κάτω κώδικας
Διαβάστε περισσότερα6. Επιστροφή ελέγχου στο σημείο εκκίνησης
Υποστήριξη διαδικασιών στο υλικό των υπολογιστών Βήματα στην εκτέλεση μιας διαδικασίας (procedure) 1. Τοποθέτηση παραμέτρων 2. Μεταβίβαση ελέγχου στη διαδικασία 3. Λήψη πόρων αποθήκευσης 4. Εκτέλεση επιθυμητής
Διαβάστε περισσότεραΛειτουργικά Συστήματα. Εισαγωγή
Λειτουργικά Συστήματα Εισαγωγή Λειτουργικά Συστήματα Ι 4/10/2016 Περιληπτικά Στο σημερινό μάθημα θα δούμε ποια είναι η θέση του Λειτουργικού Συστήματος στην οργάνωση ενός ηλεκτρονικού υπολογιστή. Σπύρος
Διαβάστε περισσότεραΚεφάλαιο 7 Ιεραρχία Μνήμης (Memory Hierarchy)
Κεφάλαιο 7 Ιεραρχία Μνήμης (Memory Hierarchy) 1 Συστήματα Μνήμης Η οργάνωση του συστήματος μνήμης επηρεάζει τη λειτουργία και απόδοση ενός μικροεπεξεργαστή: Διαχείριση μνήμης και περιφερειακών (Ι/Ο) απότολειτουργικόσύστημα
Διαβάστε περισσότεραΥποστήριξη διαδικασιών στο υλικό των υπολογιστών
Βήματα στην εκτέλεση μιας διαδικασίας (procedure) 1. Τοποθέτηση παραμέτρων 2. Μεταβίβαση ελέγχου στη διαδικασία 3. Λήψη πόρων αποθήκευσης 4. Εκτέλεση επιθυμητής εργασίας 5. Τοποθέτηση αποτελέσματος σε
Διαβάστε περισσότεραEPL475:Εργαστήριο 5, GDB
EPL475:Εργαστήριο 5, GDB Στο σημερινό εργαστήριο θα χρησιμοποιήσουμε το εργαλείο gdb για αποσφαλμάτωση. Με το τέλος αυτού του εργαστήριου οι φοιτητές θα μπορούν να: Να φορτώνουν εκτελέσιμο αρχείο στον
Διαβάστε περισσότεραΜνήμη Διευθύνσεις Δείκτες. Προγραμματισμός II 1
Μνήμη Διευθύνσεις Δείκτες Προγραμματισμός II 1 lalis@inf.uth.gr Μνήμη Η/Υ Ειδικό υλικό, ξεχωριστό από τον επεξεργαστή Χρησιμεύει για την αποθήκευση δεδομένων και της κατάστασης εκτέλεσης του προγράμματος
Διαβάστε περισσότεραΗΜΥ 213 Εργαστήριο Οργάνωσης Ηλεκτρονικών Υπολογιστών και Μικροεπεξεργαστών
ΗΜΥ 213 Εργαστήριο Οργάνωσης Ηλεκτρονικών Υπολογιστών και Μικροεπεξεργαστών Διδάσκων: Δρ. Γιώργος Ζάγγουλος Email: zaggoulos.george@ucy.ac.cy www.ece.ucy.ac.cy/courses/ece213 Μετατροπή ASCII σε Δεκαδικό
Διαβάστε περισσότεραReminders: linear functions
Reminders: linear functions Let U and V be vector spaces over the same field F. Definition A function f : U V is linear if for every u 1, u 2 U, f (u 1 + u 2 ) = f (u 1 ) + f (u 2 ), and for every u U
Διαβάστε περισσότεραKeyboard. Ασσιούρας Ιωάννης 5593 Βούκας Ιωάννης 5001 Πρωτονοτάριος Ιωάννης 6072
Keyboard Ασσιούρας Ιωάννης 5593 Βούκας Ιωάννης 5001 Πρωτονοτάριος Ιωάννης 6072 The PC keyboard Η κύρια συσκευή εισόδου του συστήματος. 101 πλήκτρα (τουλάχιστον). IBM PC/AT compatible. Περιλαμβάνουν αλφαριθμητικά
Διαβάστε περισσότεραΛειτουργικά Συστήματα
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Λειτουργικά Συστήματα Ενότητα 8: Διαχείριση Μνήμης. Φυσικές και Λογικές Διευθύνσεις Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και
Διαβάστε περισσότεραΣτοιχεία αρχιτεκτονικής μικροεπεξεργαστή
Στοιχεία αρχιτεκτονικής μικροεπεξεργαστή Αριθμός bit δίαυλου δεδομένων (Data Bus) Αριθμός bit δίαυλου διευθύνσεων (Address Bus) Μέγιστη συχνότητα λειτουργίας (Clock Frequency) Τύποι εντολών Αριθμητική
Διαβάστε περισσότεραΗΜΥ 213 Εργαστήριο Οργάνωσης Ηλεκτρονικών Υπολογιστών και Μικροεπεξεργαστών
ΗΜΥ 213 Εργαστήριο Οργάνωσης Ηλεκτρονικών Υπολογιστών και Μικροεπεξεργαστών Διδάσκων: Δρ. Γιώργος Ζάγγουλος Email: zaggoulos.george@ucy.ac.cy www.ece.ucy.ac.cy/courses/ece213 Ορίσματα στο QtSpim (set parameters
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΥΞΗΣΗΣ ΤΗΣ ΑΠΟΔΟΣΗΣ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ I
ΤΕΧΝΙΚΕΣ ΑΥΞΗΣΗΣ ΤΗΣ ΑΠΟΔΟΣΗΣ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ I MIPS Η MIPS (Microprocessor without Interlocked Pipeline Stages) είναι μία αρχιτεκτονική συνόλου εντολών (ISA) γλώσσας μηχανής που αναπτύχθηκε από την εταιρεία
Διαβάστε περισσότεραΗΜΥ 213 Εργαστήριο Οργάνωσης Ηλεκτρονικών Υπολογιστών και Μικροεπεξεργαστών
ΗΜΥ 213 Εργαστήριο Οργάνωσης Ηλεκτρονικών Υπολογιστών και Μικροεπεξεργαστών Διδάσκων: Δρ. Γιώργος Ζάγγουλος Email: zaggoulos.george@ucy.ac.cy www.ece.ucy.ac.cy/courses/ece213 Μετατροπή ASCII σε Δεκαδικό
Διαβάστε περισσότεραΑρχιτεκτονικές Συνόλου Εντολών (ΙΙ)
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Αρχιτεκτονικές Συνόλου Εντολών (ΙΙ) (Δομή Εντολών και Παραδείγματα) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Αρχιτεκτονική
Διαβάστε περισσότεραΙόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες. (οργάνωση, λειτουργία και απόδοση)
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Κρυφές Μνήμες (οργάνωση, λειτουργία και απόδοση) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Ιεραρχία συχνά και το
Διαβάστε περισσότεραΛειτουργικά Συστήματα Η/Υ
Λειτουργικά Συστήματα Η/Υ Κεφάλαιο 8 «Ιδεατή Μνήμη» Διδάσκων: Δ. Λιαροκαπης Διαφάνειες: Π. Χατζηδούκας Ιδεατή Μνήμη Οργάνωση. Εισαγωγή. Ιδεατές και πραγματικές διευθύνσεις. Λογική οργάνωση. Τμηματοποίηση
Διαβάστε περισσότεραCYTA Cloud Server Set Up Instructions
CYTA Cloud Server Set Up Instructions ΕΛΛΗΝΙΚΑ ENGLISH Initial Set-up Cloud Server To proceed with the initial setup of your Cloud Server first login to the Cyta CloudMarketPlace on https://cloudmarketplace.cyta.com.cy
Διαβάστε περισσότεραΕισαγωγή στην πληροφορική -4
Εισαγωγή στην πληροφορική 6 (, 64) bits Μνήµη Θέση (κύτταρο cell) µνήµης, χωράει λέξεις (words) εντολές (πρόγραµµα), αριθµοί (δεδοµένα) Αριθµοί: δυαδική (binary) αναπαράσταση = = = 4 = 4 = 5 = 7 Εισαγωγή
Διαβάστε περισσότεραi Όλες οι σύγχρονες ΚΜΕ είναι πολυπλοκότερες!
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Κεντρική Επεξεργασίας (Σχεδιασμός και λειτουργία μιας απλής ΚΜΕ) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Η υπολογιστική
Διαβάστε περισσότεραΑρχιτεκτονική Υπολογιστών
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Αρχιτεκτονική Υπολογιστών Αρχιτεκτονικό σύνολο εντολών Διδάσκων: Επίκουρος Καθηγητής Αριστείδης Ευθυμίου Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται
Διαβάστε περισσότεραΜικροαρχιτεκτονική του LC3
ΆδειαΧρήσης Τοπαρόνεκπαιδευτικόυλικόυπόκειταισε άδειεςχρήσηςcrea vecommons. Γιαεκπαιδευτικόυλικό,όπωςεικόνες,που υπόκειταισεάδειαχρήσηςάλλουτύπου, αυτήπρέπεινααναφέρεταιρητώς. Μικροαρχιτεκτονική του LC3
Διαβάστε περισσότεραΗΜΥ Εργαστήριο Οργάνωσης Υπολογιστών και Μικροεπεξεργαστών
ΗΜΥ 213 - Εργαστήριο Οργάνωσης Υπολογιστών και Μικροεπεξεργαστών ΗΜΥ 213 Εργαστήριο Οργάνωσης Υπολογιστών και Μικροεπεξεργαστών Διάλεξη 4 Περίληψη Συναρτήσεις Χρονόμετρο Χρήση Διακοπτών Coprocessor Διαχείριση
Διαβάστε περισσότεραΑρχιτεκτονική Υπολογιστών
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 6: Διαδικασίες, Σωρός, Διαφανείς συναρτήσεις Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής
Διαβάστε περισσότεραΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 6/5/2006
Οδηγίες: Να απαντηθούν όλες οι ερωτήσεις. Ολοι οι αριθμοί που αναφέρονται σε όλα τα ερωτήματα είναι μικρότεροι το 1000 εκτός αν ορίζεται διαφορετικά στη διατύπωση του προβλήματος. Διάρκεια: 3,5 ώρες Καλή
Διαβάστε περισσότεραΔιαδικασίες Ι. ΗΥ 134 Εισαγωγή στην Οργάνωση και στον Σχεδιασμό Υπολογιστών Ι. Διάλεξη 4
ΗΥ 134 Εισαγωγή στην Οργάνωση και στον Σχεδιασμό Υπολογιστών Ι Διάλεξη 4 Διαδικασίες Ι Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων Εισαγωγή στους Η/Υ (ΗΥ134) 1 Διευθυνσιοδότηση διακλαδώσεων
Διαβάστε περισσότεραΜάθημα 8: Διαχείριση Μνήμης
Μάθημα 8: Διαχείριση Μνήμης 8.1 Κύρια και δευτερεύουσα μνήμη Κάθε μονάδα ενός υπολογιστή που χρησιμεύει για τη μόνιμη ή προσωρινή αποθήκευση δεδομένων ανήκει στην μνήμη (memory) του υπολογιστή. Οι μνήμες
Διαβάστε περισσότεραΟΡΓΑΝΩΣΗ ΚΑΙ ΣΧΕΔΙΑΣΗ Η/Υ
ΟΡΓΑΝΩΣΗ ΚΑΙ ΣΧΕΔΙΑΣΗ Η/Υ Γιώργος Δημητρίου Μάθημα 3 ο ΠΜΣ Εφαρμοσμένη Πληροφορική ΑΡΧΙΤΕΚΤΟΝΙΚΕΣ ΣΥΝΟΛΟΥ ΕΝΤΟΛΩΝ Αρχιτεκτονικές συσσωρευτή Αρχιτεκτονικές επέκτασης συσσωρευτή Αρχιτεκτονικές στοίβας Αρχιτεκτονικές
Διαβάστε περισσότεραΕικονική Μνήμη (virtual memory)
Εικονική Μνήμη (virtual memory) Πολλά προγράμματα εκτελούνται ταυτόχρονα σε ένα υπολογιστή Η συνολική μνήμη που απαιτείται είναι μεγαλύτερη από το μέγεθος της RAM Αρχή τοπικότητας (η μνήμη χρησιμοποιείται
Διαβάστε περισσότεραΗΜΥ 213. Εργαστήριο Οργάνωσης Η.Y. και Μικροεπεξεργαστών week 5. Διδάσκων: Δρ. Γιώργος Ζάγγουλος
ΗΜΥ 213 Εργαστήριο Οργάνωσης Η.Y. και Μικροεπεξεργαστών week 5 Διδάσκων: Δρ. Γιώργος Ζάγγουλος Email: zaggoulos.george@ucy.ac.cy www.ece.ucy.ac.cy/courses/ece213 Περίληψη Κλήση Συνάρτησης και επιστροφή
Διαβάστε περισσότεραΔΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ. Λειτουργικά Συστήματα Ι. Διδάσκων: Καθ. Κ. Λαμπρινουδάκης ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι
ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι Μάθημα: Λειτουργικά Συστήματα Ι ΔΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ Διδάσκων: Καθ. Κ. Λαμπρινουδάκης clam@unipi.gr 1 ΕΙΣΑΓΩΓΗ Μνήμη : Πόρος ζωτικής σημασίας του οποίου η διαχείριση απαιτεί ιδιαίτερη
Διαβάστε περισσότερα