Documente Academic
Documente Profesional
Documente Cultură
Curs 2
Terminalele
Structura intern
Setul de registre:
registre de segment,
registre generale i
registre sistem.
Registrele de segment
Registrele generale
Registrele sistem
Ciclurile main
tipuri de cicluri
M//IO
D//C
W//R
Tip de ciclu
Nu apare
Citire de la porturi
Scriere la porturi
10
Scriere 3
Citire 2
T2
T1
T2
T1
Adres 3
Adres 2
Adres 1
T2
W//R
/ADS
/NA
/READY
D31-0
IN 1
IN 2
OUT 3
11
Adres 1
Citire 2
T2p
T1p
Scriere 3
T2p
T1p
Adres 2
Adres 3
IN 1
IN 2
T2p
Adres 4
/NA
/ADS
/READY
D31-0
OUT 3
12
Citire 1
T1
CLK2
/BE3-0,
A31-2,
M//IO,
D//C,W//R
T2
Adres 1
T1p
T2p
Scriere 3
T1p
T2p
Adres 2
Adres 3
IN 1
IN 2
/NA
/ADS
/READY
D31-0
13
Bloc
de
memorie 0
STB
R
e
g
STB
DEC
Bloc
de
memorie 1
DEC
CS
CS
Date
ADS0
W/ R
M / IO
CLK
ADS1
Bloc
de
comanda
ADS
READY
SEL
14
Modul real:
15
Modul protejat:
16
adresa logic
adresa liniar
Mecanismul de
segmentare
Mecanismul de
paginare
adresa fizic
17
Mecanismul de segmentare
18
19
LDTR
partea vizibil
GDT
LDTR
partea invizibil
LDT
20
3 2
INDEX
TI
RPL
21
Descriptor:
0
BAZ 31-24
D
A
G / 0 V
B
L
Limit
19-16
P DPL S
BAZ 15-0
TIP
14
Descriptor
pentru
segmente de
cod i date
BAZ 23-16
LIMIT 15-0
0
31
0
BAZ 31-24
G 0 0 0
Limit
19-16
P DPL 0
BAZ 15-0
TIP
BAZ 23-16
14 Descriptor
pt.
segmente
sistem
0
LIMIT 15-0
31
0
DEPLASAMENT 31-16
SELECTOR
P DPL 0
TIP
0 0 0
NUMR
DEPLASAMENT 15-0
14 Descriptor
de tip
poart
0
22
ED ("Expansion Direction"): specific dac segmentul este expandabil spre adrese mai mici
(cazul segmentelor de stiv), 1 sau spre adrese mai mari (cazul segmentelor de date), 0;
dac ED = 0 atunci deplasamentul din adresa logic trebuie s fie egal sau mai mic dect
limita specificata n descriptor iar dac ED = 1 atunci deplasamentul trebuie s fie egal sau
mai mare dect limita, n caz contrar generndu-se o excepie; prin acest mecanism se
stabilete pn unde se poate ntinde un segment de date sau de stiv;
W ("Writeable"): specific dac segmentul respectiv este protejat, 0, sau nu, 1, la scriere.
24
25
SELECTOR
GDT/ LDT
DEPLASAMENT
NEFOLOSIT
SELECTOR
BAZ
LIMIT
28
Accesul la date: dac nivelul de privilegiu efectiv al taskului este egal sau
mai mare dect nivelul de privilegiu al segmentului adic nivelul cel mai mic
fixat de RPL sau CPL s fie mai privilegiat sau egal cu nivelul fixat de DPL,
adic n valori: max (CPL, RPL) DPL;
la accesul la date,
la transferul controlului n alt segment de cod.
excepii ...
29
30
31
65535
HART
I/E
16
15
0
FF H
65504
63
31
+2000
+1FFC
56
24
55
23
48
16
47
15
40 39
8
7
Informaii de stare
suplimentare
LDT
GS
FS
0
0
0
0
0
0
0
DS
SS
CS
ES
EDI
ESI
EBP
ESP
EBX
EDX
ECX
EAX
SS2
50
4C
48
44
40
3C
38
34
20
1C
18
14
10
C
SS0
8
4
0
ESP0
0
60
5C
58
54
SS1
ESP1
64
28
24
ESP2
0
30
2C
EFLAGS
EIP
CR3
0
DEPLASAMENT
HART
DEPLASAMENT HART
+0004
32
0
LEGTURA
31
Verificrile menionate,
CPL IOPL,
biii din HART I/E.
33
Mecanismul de paginare:
34
31
31
+
Adresa
fizic
Pagina fizic
dorit
+
Tabela
paginilor
CS3
Tabela
directorilor
35
Avantaje:
Dezavantaje:
36
Adres
logic
31
SELECTOR
DEPLASAMENT
Descriptor
Tabel descriptori
GDT sau LDT
Adres
liniar
22
31
21
12
Tabel
Director
11
0
Deplasament
Paginare neactivat
Memoria fizic
Paginare
activat
Memorie
cache pentru
paginare
(TLB)
Cutare cu succes
+
Adresa
fizic
Cutare fr
succes
31
31
Pagina
fizic
dorit
CR3
Tabela
directorilor
Tabela paginilor
37
Sistemul de ntreruperi:
38
Descriptor pt.
segment de cod
Segment de cod
Rutina de tratare
IDT
Deplasament
Poart de tip
ntrerupere sau trap
Vector de
ntrerupere
39