delta – master

Anuncio
DELTA – MASTER
FORMACIÓN
UNIVERSTARIA
C/ Gral. Ampudia, 16
Teléf.: 91 533 38 42 - 91 535
Microprocesadores, Junio 2008 final mañana
PROBLEMA 1
A.
1. Diseñe la macro mac1, que usa dos pseudoparámetros, que son la dirección de una cadena
ASCIIZ que representa un número en decimal (dir) y el destino del número convertido a binario
(dest). La macro debe llamar a la rutina atud para hacer la conversión y si detecta algún error saltará a
la etiqueta error. (0,75 ptos.)
2. Diseñe la macro mac2, que contiene el código necesario para llamar a la rutina udta; debe
usar 2 pseudoparámetros: el número a convertir (num) y el destino de la cadena convertida (destino),
que debe tener 10 caracteres como mínimo y estar expresada en decimal. (0,75 ptos.).
Nota: Considere que en la zona de variables existe la siguiente declaración:
tabla DB ‘0123456789ABCDEF’
Apartado 1
mac1
MACRO dir,
PUSH
PUSH
CALL
OR
JS
MOV
ENDM
dest
OFFSET dir
WORD PTR 10
atud
AX,
AX
error
dest,ESI
Explicación del código: el código se limita a llamar a la rutina atud (ver anexo C). Esta rutina realiza la transformación
de una cadena de caracteres en un número en binario.
La rutina devuelve en AX un código de retorno indicando, entre otras cosas, si se ha producido un error en la conversión
(valores -1 y -2 según la documentación), es por esto que después de llamar a la rutina, se realiza la operación OR AX,
AX (activación de flags) y JS error (comprobación si el bit de signo está activo, es decir, si AX tiene un valor negativo).
Apartado 2
mac2
MACRO num,
PUSH
PUSH
PUSH
PUSH
PUSH
CALL
ENDM
destino
num
WORD PTR 10
WORD PTR 10
OFFSET tabla
OFFSET destino
udta
1
DELTA – MASTER
FORMACIÓN
UNIVERSTARIA
C/ Gral. Ampudia, 16
Teléf.: 91 533 38 42 - 91 535
B.
Escriba la subrutina NEAR merge que realice el barajado perfecto del contenido de dos cadenas
ASCIIZ de la misma longitud, obteniendo una tercera cadena con el resultado (que también deberá
ser ASCIIZ). Para ello recibe por pila tres parámetros, el primero empilado es el offset de la cadena 1,
el segundo el de la cadena 2 y el tercero el de la cadena resultante.
Se valorará la optimización del código.
Nota: El barajado perfecto consiste en crear la cadena resultante con los valores alternados de las
otras dos, de manera que se inicia con el primer elemento de la cadena1, a continuación el primero de
la cadena 2, después el segundo de la cadena 1, el segundo de la cadena 2, …
merge PROC NEAR
PUSH
MOV
MOV
MOV
MOV
bucle:
MOV
INC
OR
JZ
MOV
INC
MOV
INC
MOV
INC
JMP
Salir:
POP
RET
merge ENDP
BP
BP,
SI,
BX,
DI,
AL,
SI
AL,
salir
[DI],
DI
AL,
BX
[DI],
DI
bucle
BP
2
SP
[BP + 8]
[BP + 6]
[BP + 4]
[SI]
AL
AL
[BX]
AL
Explicación del código: inicialmente se sacan los parámetros de la pila guardándolos de la siguiente forma (según el
orden indica en el enunciado):
- SI: offset de la cadena 1
Estado de la pila
0H
- BX: offset de la cadena 2
- DI: cadena resultante
A continuación entra en un bucle en el cual lee un carácter de la cadena 1
y comprueba si se encuentra al final de la cadena (saltando a la etiqueta
salir en caso positivo). Si no, lo almacena en la cadena resultante (MOV
[DI], AL), pasa al siguiente carácter de la cadena resultante y repite la
operación de lectura y escritura con la cadena 2. Por último salta para
continuar con la siguiente iteración del bucle.
Valor de BP (ant)
Valor de IP
[BP + 4]
cadena resultante
[BP + 6]
offset de la cadena 2
[BP + 8]
offset de la cadena 1
0FF...FFH
2
DELTA – MASTER
FORMACIÓN
UNIVERSTARIA
C/ Gral. Ampudia, 16
Teléf.: 91 533 38 42 - 91 535
C.
Dado el programa que aparece a continuación, en el que se han eliminado intencionadamente los
mensajes, se pide:
a) Explique de forma detallada la función o funciones que realiza (0,75 ptos).
b) Basándose en la explicación anterior, construya los mensajes eliminados procurando que sean lo
más explícitos posible (0,75 ptos).
INCLUDE
macros.mac
MODEL SMALL
STACK 200H
DATASEG
cmax
DB
?
crec
DB
?
buffer DB
50 DUP (0)
nomfic DB
'fichero.dat', 0
handle DW
?
msg1
DB
'********', 0
msg2
DB
'********', 10, 13, 0
msg3
DB
'********', 10, 13, 0
msgerr1
DB
'********', 10, 13,
msgerr2
DB
'********', 10, 13,
msgerr3
DB
'********', 10, 13,
msgerr4
DB
'********', 10, 13,
cr_lf DB
10, 13, 0
CODESEG
P386N
EXTRN atud: NEAR
STARTUPCODE
OPEN_HANDLE nomfic, 0
JC
error1
MOV
handle, AX
bucle1:DISP_STRINGZ cr_lf
GET_STRING
4, cmax
DISP_STRINGZ cr_lf
MOV
BL, crec
XOR
BH, BH
MOV
buffer[BX], 0
CMP
BL, 1
JNE
sigue
OR
buffer, 00100000B
CMP
buffer, 'f'
JE
fin
sigue: PUSH
PUSH
CALL
OFFSET buffer
WORD PTR 10
atud
OR
0
0
0
0
AX, AX
JS
MOV
MUL
MOVE_PTR
READ_HANDLE
JC
CMP
JNE
CMP
JE
MOV
bucle2:CMP
JE
CMP
JNE
INC
JMP
finreg:DISP_STRINGZ
DISP_STRINGZ
DISP_STRINGZ
JMP
vacio: DISP_STRINGZ
JMP
CLOSE_HANDLE
END_PROCESS
error1:DISP_STRINGZ
END_PROCESS
error2:DISP_STRINGZ
JMP
error3:CLOSE_HANDLE
DISP_STRINGZ
END_PROCESS
error4:CLOSE_HANDLE
DISP_STRINGZ
END_PROCESS
END
error2
AX, 50
SI
handle, DX, AX, 0
handle, buffer, 50
error3
AX, 50
error4
buffer, 0
vacio
SI, 1
buffer[SI], 0
finreg
SI, 49
error4
SI
bucle2
msg3
buffer
cr_lf
bucle1
msg2
bucle1
handle
0
msgerr1
1
msgerr2
bucle1
handle
msgerr3
3
handle
msgerr4
4
a)
Se trata de un programa que lee registros de un fichero de acceso directo denominado fichero.dat, que
tiene las siguientes características:
• Número de registros: 1000 (del 0 al 999).
• Tamaño reservado para cada registro: 50 bytes.
• Formato de los registros: son strings ASCIIZ de tamaño igual o menor de 49 caracteres.
El programa debe pedir por teclado el número de registro a leer (de 0 a 999). Si se recibe un número
correcto y el registro existe, visualiza su contenido por pantalla; si está vacío, saca un mensaje por
3
DELTA – MASTER
FORMACIÓN
UNIVERSTARIA
C/ Gral. Ampudia, 16
Teléf.: 91 533 38 42 - 91 535
pantalla que lo indica. En ambos casos se vuelve a pedir otro número de registro. Si se recibe una F
(mayúscula o minúscula), en lugar del número de registro, el programa finaliza. Cualquier otra
cadena que se reciba hará que el programa visualice un mensaje de error y vuelva a pedir el número
de registro.
El problema detecta además los siguientes errores fatales, visualizando un mensaje indicativo y
devolviendo un código de retorno diferente en cada caso:
• Error al abrir fichero.
• Error al leer fichero.
• Error de formato en el fichero o en el registro: se producirá si se llega al fin del fichero durante
la lectura de un registro, o no se detecta el NULL terminador de un registro después de 49
caracteres.
Obsérvese que, aunque en el fichero hay 50 caracteres reservados para cada registro, éste puede
ocupar menos bytes (de 0 a 49) y su final está marcado por el carácter NULL terminador del string.
Explicación del código: además de la explicación general de la funcionalidad del código, existen ciertas partes del
programa que pueden resulta complicadas:
GET_STRING 4, cmax
Permite introducir una cadena de caracteres, en este caso, de un máximo de 4 incluyendo el retorno de carro. En cmax se
almacenarán el número máximo de caracteres (4 tal y como especifica la instrucción), en crec el número de caracteres
tecleados y en buffer los caracteres tecleados.
OR
buffer, 00100000B
Este tipo de instrucciones obliga a que el sexto bit (ver el formato de la llamada) esté siempre activo (puesto que se trata
de un OR). Ejemplo:
OR 4, 00000001B
OR 5, 00000001B
En este ejemplo se estaría haciendo que el bit número 0 siempre estuviese activo.
La variable buffer es un duplicado de 50 bytes inicializados a valor 0. En buffer se han almacenado los caracteres que se
han introducido mediante la llamada GET_STRING vista con anterioridad. Al hacer referencia a buffer (sin ningún
parámetro), se referirá al primero de los 50 bytes, es decir al primer carácter que se haya tecleado. La instrucción OR,
sabiendo que se realiza sobre un carácter ASCII, al obligar a que ese bit esté siempre activo, convierte el carácter a
minúscula en caso de ser mayúscula y la deja como está en caso de ser ya minúscula.
READ_HANDLE
JC
CMP
handle, buffer, 50
error3
AX, 50
En este caso, la complicación podría venir por la última instrucción, CMP AX, 50. Para entenderla hay que tener en
cuenta las instrucciones que se han ejecutado con anterioridad. En este caso, tenemos un READ_HANDLE (ver anexo
B), que como parámetro de salida devuelve en AX el número de bytes leídos. Como resultado, estaríamos comprobando
el número de bytes leídos (AX) con el número de bytes que se pretendían leer (50 según la instrucción
READ_HANDLE).
b)
Mensajes:
msg1
msg2
msg3
msgerr1
msgerr2
msgerr3
msgerr4
DB
DB
DB
DB
DB
DB
DB
‘Teclee el número de registro (F para fin):’, 0
‘El registro está vacío’, 10, 13, 0
‘El contenido del registro es:’, 10, 13, 0
‘Error al abrir el fichero’, 10, 13, 0
‘Carácter no numérico’, 10, 13, 0
‘Error al leer el fichero’, 10, 13, 0
‘Formato incorrecto del fichero o registro’, 10, 13, 0
4
DELTA – MASTER
FORMACIÓN
UNIVERSTARIA
C/ Gral. Ampudia, 16
Teléf.: 91 533 38 42 - 91 535
PROBLEMA 2
Se sabe que las direcciones base de las tablas GDT y LDT respectivamente son: 15000000H y
16000000H y se dispone del siguiente volcado:
15000B70H
15000B80H
15000B90H
15001270H
15001280H
15001290H
00
A4
FF
15
BB
80
12
01
34
3F
2A
CC
03
DF
02
67
78
3C
EE
80
CA
03
2A
6A
4D
43
0B
C0
04
C0
05
5F
19
03
3C
05
FF
9D
65
98
E4
4D
06
45
10
78
D4
00
5F
07
CD
00
9A
4C
00
65
08
EF
00
DF
C6
00
78
09
78
10
EC
78
00
9A
0A
90
20
CE
9F
00
DF
0B
AB
87
23
2E
00
EC
0C
A2
67
65
3D
12
CE
0D
98
56
11
5F
32
23
0E
00
A1
1F
69
5A
11
0F
00
1A
F1
43
A7
22
1.- Sabiendo que un descriptor ocupa la entrada de índice 170H de la GDT, se pide:
a) Valor y direcciones físicas ocupadas por el descriptor (0,4 ptos).
b) Decodificarlo indicando el contenido de cada uno de sus campos (0,6 ptos).
2.- Se pretende diseñar una Gate para acceder a una rutina con offset 200H en el segmento calculado
en el punto 1 (no requiere parámetros).
a) Diseñar el descriptor de CALL GATE para que pueda ser llamada sólo por tareas cuyo CPL sea
menor o igual a 2 (0,6 ptos).
b) Si este descriptor se coloca en la entrada 300H de la LDT de una tarea con CPL=1, ¿Qué
instrucción habría que usar para llamarla? (Si hay varias posibilidades, indicarlo) (0,4 ptos).
3.- Una tarea con CPL=2 ejecuta la instrucción CALL 0B82:03B0H, indicar:
a) Tipo de carga de registro de segmento (0,3 ptos).
b) ¿Se produce el acceso? Justificar la respuesta (0,4 ptos).
c) Indicar el valor del CPL justo después de ejecutar la instrucción. Justificar la respuesta (0,3
ptos).
Apartado 1a
Dirección inicial el descriptor:
Dirección final del descriptor:
Valor del descriptor:
15000B80H
15000B87H
00109D056A783FFFH
Explicación: Para obtener la dirección inicial y final del descriptor tenemos los siguientes datos:
Dirección de comienzo de GDT: 15000000H
Ïndice del descriptor: 170H
Por lo tanto,
Dir_inicio_descriptor= Dir_inicio_GDT + (índice * 8)
Dir_fin_descriptor= Dir_inicio_GDT + (índice * 8) + 7
La multiplicación por 8 del índice y la suma de 7 para calcular la dirección de fin del descriptor se debe a que el tamaño
de un descriptor es de 8 bytes.
Apartado 1b
Descriptor de segmento de código con C=1, R=0 y A=1 (Conforme, no legible y recientemente
accedido).
Def=0 (16 bits), P=1 (presente en memoria), DPL=0 (privilegio del descriptor) y Av=1
Límite 3FFFH y Gr=0 offset límite = 3FFFH (tamaño = 4000H)
Dirección base: 00056A78H
5
DELTA – MASTER
FORMACIÓN
UNIVERSTARIA
C/ Gral. Ampudia, 16
Teléf.: 91 533 38 42 - 91 535
Explicación: descomponiendo gráficamente el descriptor se puede ver mejor el valor de cada uno de los campos:
Apartado 2
Descriptores de CALL Gate:
00 00 C4 00 0B 80 02 00 H
00 00 C4 00 0B 81 02 00 H
00 00 C4 00 0B 82 02 00 H
00 00 C4 00 0B 83 02 00 H
Instrucción:
CALL 1804H : XXXX
CALL 1805H : XXXX
CALL 1806H : XXXX
Explicación: descomposición gráfica de la CALL GATE
-
Offset: offset de la rutina, según el enunciado 200H
P: presente en memoria = 1
16/32 y WC/DC: la rutina no recibe parámetros por lo que WC/DC = 0 y 16/32 = 0
Gate DPL: la regla de privilegio que se aplica es (recordar que el segmento de código es conforme)
GATE DPL >= EPL
SEGM DPL <= CPL
6
DELTA – MASTER
FORMACIÓN
UNIVERSTARIA
C/ Gral. Ampudia, 16
Teléf.: 91 533 38 42 - 91 535
Se de sea que la CALL GATE pueda ser utilizada por cualquier tarea con CPL menor o igual a 2. Por lo tanto,
tenemos las siguientes reglas
CPL <= 2
SEGM DPL = 0 (viendo el descriptor de segmento del apartado 1).
Sabiendo que EPL = Máx (CPL y RPL), en la situación actual no se dispone de información a cerca del RPL, por lo
que por ahora se omite, tomando únicamente el valor de CPL.
Sabiendo entonces qué únicamente tareas con CPL menor o igual a 2 deben poder usar la CALL GATE, el único
valor de GATE DPL válido es 2.
-
Selector: el seletor de la CALL GATE debe apuntar al descriptor de segmento del apartado 1, que se encuentra en
el índice 170H de la GDT. Además el campo RPL no se utiliza (común en todas las GATEs), por lo tanto
calculamos todos los selectores posibles
Selectores
0B80 – RPL = 0
0B81 – RPL = 1
0B82 – RPL = 2
0B83 – RPL = 3
Apartado 3
a) Tipo de carga: Carga directa de CS
b) ¿Se produce el acceso?: Sí, ya que el bit P es 1 y cumple la regla de privilegio, que para códigos
conformes es: DPL <= CPL = RPL
c) Valor del CPL: Como es conforme, no hay cambio de privilegio, por tanto el CPL permanece
igual a 2.
7
DELTA – MASTER
FORMACIÓN
UNIVERSTARIA
C/ Gral. Ampudia, 16
Teléf.: 91 533 38 42 - 91 535
PROBLEMA 3
De una configuración multiprocesador como la esquematizada en la figura, con una capacidad
máxima de 4 GB en memoria principal, se sabe lo siguiente:
Nº Vías
Posiciones de memorias de
etiquetas
Tamaño etiqueta + estado
Codificación de estado
Criterio de escritura
Caché [1]
4
Caché [2]
Caché [3]
64K posiciones
64K posiciones
32K posiciones
15 bits
MESI
Write Back
13 bits
MESI
Write Back
14 bits
1 BIT
Write through
Todas las memorias caché codifican el estado de la línea con los bits más significativos de la
memoria de etiquetas según la siguiente tabla
MESI
ESTADO CÓDIGO
M
11
E
10
S
01
I
00
STATUS DE 1 BIT
ESTADO CÓDIGO
Válido
1
Inválido
0
Se pide:
1.- Calcular la capacidad de cada una de las cachés, los valores de i, j, k, n, número de posiciones de
la memoria de algoritmo y bits de cada posición (Suponga que la caché que lo necesite utiliza el
algoritmo LRU) (0,5 ptos).
2.- Sabemos que la línea que comienza en la dirección de memoria 87654320H, está cargada y
actualizada en el último plano de todas las cachés. Indica el valor de la etiqueta asociada a esta línea
en las cachés [1] y [2] (0,3 ptos).
3.- Indica la dirección física de esta línea en las cachés [1] y [2] (0,3 ptos).
8
DELTA – MASTER
FORMACIÓN
UNIVERSTARIA
C/ Gral. Ampudia, 16
Teléf.: 91 533 38 42 - 91 535
4.- La CPU [3] realiza una operación de escritura en esa línea. Indica qué acciones se realizan en la
memoria principal, memoria de datos, y memoria de etiquetas por parte de cada una de las cachés. Si
alguna etiqueta cambia su contenido debe indicarse el nuevo valor (0,5 ptos).
5.- A continuación de la operación del apartado anterior, la CPU [1] realiza una operación de lectura
en esa línea. Indica los mismos valores que en el apartado anterior (0,4 ptos).
Apartado 1
Capacidad de la caché de datos
I
J
K
N
Posiciones mem. algoritmo
Bits x posición
Caché [1]
2 MB
5
14
13
4
16K
6
Caché [2]
2 MB
5
16
11
1
No hay
-
Caché [3]
1 MB
5
14
13
2
16K
1
Explicación:
- Nº vías = n
- Posiciones de memoria de etiquetas = n * 2 i + j
- Tamaño etiqueta + estado = k + estado
- Posiciones memoria de algoritmo 2 j (si n = 0, directamente mapeada, no usa memoria de algoritmo).
- Bits por posición de memoria de algoritmo con LRU = (n * (n – 1)) / 2
Además, común para todos los ejercicios…
- i + j + k tienen el mismo valor para todas las cachés
- i tiene el mismo valor para todas las cachés
Apartado 2
Contenido de la etiqueta:
Caché 1
30ECH
Caché 2
C3BH
Explicación: la etiqueta se compone de los bits de estado + k. Puesto que la línea está actualizada, el estado para las caché
1 y 2 es compartido, código 01
Se descompone la dirección 87654320H para la caché 1
La etiqueta será:
Estado
01
K bits
1000 01111 0110 0
Resultado
= 30EC H
Se repite para la caché 2
La etiqueta será:
Estado
01
K bits
1000 01111 011
Resultado
= C3B H
9
DELTA – MASTER
FORMACIÓN
UNIVERSTARIA
C/ Gral. Ampudia, 16
Teléf.: 91 533 38 42 - 91 535
Apartado 3
Dirección de la línea:
Caché 1
1D4320H
Caché 2
54320H
Explicación:
La dirección de la línea para la caché 1 (configuración semi-asociativa de n vías) es de n-j-i
En el enunciado se indica que se encuentra en el último plano (apartado2). Siendo n = 4, el último plano será el 3.
n
j
i
11 101 0100 0011 001
0 0000 = 1D4320 H
Se repite para la caché 2, pero teniendo en cuenta que usa una configuración directamente mapeada, por lo que la
dirección de la línea será j – i (puesto que no existen vías).
j
0 0101 0100 0011 001
i
0 0000
= 54320 H
Apartado 4
Acciones en
memoria principal
Acciones en la caché
de datos
Acciones en la caché
de etiquetas
Nuevo valor de
etiqueta
Caché [1]
Caché [2]
Caché [3]
Escritura de la
línea en memoria
-
-
-
-
Escritura
Estado pasa a I
Estado pasa a I
-
10ECH
43BH
Explicación:
En la situación descrita, previo a la escritura la línea está actualizada en todas las cachés. Al escribir la cpu3, y teniendo la
caché un criterio de escritura ‘Write through’, el dato se escribe tanto en la caché 3 como en memoria princial. Puesto que
el data ‘bueno’ se encuentra en caché 3 y memoria principal, la línea en la caché 1 y 2 ya no son válidas, se modifica su
estado a inválido y por lo tanto la etiqueta varía (únicamente los bits correspondientes al estado, ver apartado 2).
Apartado 5
Acciones en
memoria principal
Acciones en la caché
de datos
Acciones en la caché
de etiquetas
Nuevo valor de
etiqueta
Caché [1]
Lectura de la
línea en memoria
Escribir nuevo
contenido
Caché [2]
Caché [3]
-
-
-
-
Estado pasa a S
-
-
30ECH
Explicación:
La cpu 1 realiza una lectura, el dato se cargará de memoria principal, almacenándose además en la caché. El dato se
encuentra también en la caché 3, por lo que el estado de la línea en la caché 1 será compartido.
10
DELTA – MASTER
FORMACIÓN
UNIVERSTARIA
C/ Gral. Ampudia, 16
Teléf.: 91 533 38 42 - 91 535
Problema 4
En las siguientes preguntas de tipo test, sólo existe una respuesta correcta. Cada pregunta tiene un
valor de 0,2 ptos. Cada respuesta incorrecta descuenta 0,05 ptos. La pregunta que esté en blanco no
sumará ni restará puntos.
1.- Una tarea con CPL=1 intenta acceder a una WORD para escritura, y la entrada de la última tabla
de paginación contiene el valor 9458AF7EH…
a) … produce una excepción.
b) … se realiza la escritura correctamente (sin que se produzca excepción alguna) sin modificar
dicha entrada.
c) … se realiza la escritura correctamente, pero se modifica dicha entrada.
d) … el valor indicado no es válido para una tabla de paginación.
Explicación: Se puede observar que es un valor de 32 bits, por lo que se tratará de una entrada de PD o PT con
direccionamiento no extendido. Al decodificar la entrada, viendo los bits comunes que tendrían los dos tipos de entrada,
se puede observar que el bit P (presente en memoria) tiene un valor 0, por lo que la página no se encuentra en memoria.
Al intentar acceder a ella se producirá una excepción para que la página se cargue en memoria.
2.- En un procesador IA-32 con paginación activada…
a) … el bit D (dirty) siempre se encuentra en la entrada de la tabla PD.
b) … el tamaño en bits de la dirección física depende del valor del bit de configuración PAE.
c) … el bit PSE indica si la página es accesible para tareas de usuario o no.
d) … el bit PS se encuentra siempre en la entrada de la tabla inmediatamente anterior a la página.
Explicación: El bit PAE (Page Address Extension) indica si se está utilizando direccionamiento extendido (direcciones
físicas de 36 bits) o no (direcciones físicas de 32 bits).
3.- En un microprocesador con arquitectura IA-32, cuando se trabaja en modo protegido…
a) … es obligatorio utilizar tanto la segmentación como la paginación.
b) … es obligatoria la paginación, pero la segmentación es opcional.
c) … es obligatoria la segmentación, pero la paginación es opcional.
d) … tanto la segmentación como la paginación son opcionales.
Explicación: El modo protegido se activa al trabajar con segmentación. La paginación es opcional.
4.- Cuando se accede a una página de 2MB…
a) … la Page Table debe comenzar por una dirección múltipla de 2MB.
b) … el Page Directory debe comenzar por una dirección múltipla de 2MB.
c) … la página debe comenzar por una dirección múltipla de 2MB.
d) … la tabla PDPT no interviene en la conversión de dirección.
Explicación: Esta situación se produce con todos los tamaños de página, si es de 4KB, la página empieza en una
dirección múltiplo de 4KB, si es de de 4MB será múltiplo de 4MB…
11
DELTA – MASTER
FORMACIÓN
UNIVERSTARIA
C/ Gral. Ampudia, 16
Teléf.: 91 533 38 42 - 91 535
5.- Cada entrada en el TLB incluye entre otros…
a) … el bit A.
b) … el bit PS.
c) … el bit P.
d) … el bit G.
Explicación: La TLB incluye los siguientes campos:
- Página lineal
- Página física
- U/S efectivo
- R/W efectivo
- bit D
- bit G
12
Descargar