Primer Parcial Flashcards
Modelo Para el prog de apps, Introducción al ASM, Call Convention, Memoria Cache
Las principales contribuciones de von Neumann:
El concepto de programa almacenado.
Una nueva arquitectura para la construcción de computadores.
Limitaciones de la arquitectura von Neumann
Cuello de botella de memoria:
Cuello de botella de decodificación:
Flujo de Instrucciones + Flujo de datos SISD:
cATEGORIAS flujos de instrucciones y flujos de datos
SISD: simple flujo de instrucciones, simple flujo de datos.
MISD: múltiples flujos de instrucciones, simple flujo de datos.
SIMD: simple. flujo de instrucciones, .múltiples flujos de datos.
MIMD: múltiples flujos de instrucciones, múltiples flujos de datos.
MTMD: múltiples tareas, múltiples flujo de datos.
En que grupos de clasifican los 16 registros del pentuim que osn para el uso del programador de aplicaciones
- 8 Registros de Proposito General (RPG)
- 1 Registro Puntero de Instrucciones (EIP)
- 1 Registro de Estado (o de Señalizadores) (EFLAGS)
- 6 Registros de Segmento (RS)
Cuales son los registros de proposito general
heredados del 8086 de 16 bits y ampliados a 32 bits los RPG son 8 registros que pueden manejar 32/16 y hasta 8 bits y son
* EAX: Acumulador
* EBX: Base
* ECX: Contador
* EDX: Datos
* ESP: Puntero de Pila
* EBP: Puntero de Base
* EDI: Indice destino
* ESI: Indice fuente
Que es el EIP y En que modos puede trabajar?
El EIP es el Puntero de Instrucciones o Contador de Programa y no
está disponible para el programador, lo gobierna implícitamente el flujo de
control de las instrucciones, las interrupciones y las excepciones.
Puede trabajar:
* En modo Protegido, con 32 bits y 4gb de desplazamiento max
* En modo Real, con 16 bits y g4 KB de desplazamiento max
Que contiene a ggrandes reasgos el registro EFLAGS
Este registro consta de 32 bits, de los cuales, la mayoría flags de estado,
controlados por la ALU (acarreo, paridad, acarreo auxiliar, cero, signo y
sobrepasamiento), actuando los restantes como señalizadores del sistema,
ligados al mecanismo de protección y a otros recursos de que dispone el
sistema de explotación.
Que es la segmentacion y que son los segmentos?
Nombrar los registros de Segmentos
la segmentación como sistema
principal de organización de la memoria. Los segmentos son zonas de la memoria
de tamañoo variable que contienen el mismo tipo de información.
La segmentaci ́on favorece la programaci ́on estructurada y la modularidad, permite la
reubicaci ́on y soporta una estructura de protecci ́on segura y flexible.
Los registros que conforman el RS son:
* CS: Segmento de Código
* DS: Segmento de Datos
* SS: Segmento de Pila
* ES,FS,GS: Segmentos Extras de Datos
Mejorar esta respuesta
Explicar cada uo de los rs
- CS: Contiene en cada momento el segmento de c ́odigo que est ́a ejecutando
- la CPU. El desplazamiento que hay que a ̃nadir a la base del CS reside en el EIP.
- SS: Guarda el valor del selector del segmento de pila en curso. ESP contiene el desplazamiento que debe a ̃nadirse a la base del segmento de pila para determinar la cima por donde se cargan y descargan los datos.
- DS: Soporta el valor del selector del segmento de datos y el desplazamiento viene especificado en el modo de direccionamiento usado en la instrucci ́on para expresar operandos y el resultado.
- ES/FS/GS: Los x86 de 32 bits disponen de estos registros para tener activos otros tres segmentos de datos.
Como funciona la Segmentacion en modo real?
En modo Real se le agrega 4 ceros a los 16Bits del RS correspondiente para calcular la base del segmento
Un segmento queda definido por los siguientes
elementos:
* Base. Dirección de comienzo, 20 bits. El bus de direcciones es de 20 líneas y la capacidad máxima de la memoria principal es de 1 MB.
* Desplazamiento. El tamaño máximo de un segmento es de 64 KB, por lo que el desplazamiento estará definido por 16 bits. (Definido para cada segmento por si correspondiente desplazador)
Como esta formado los Registros de Segmento en modo Protegido
Cuando el Pentium trabaja en modo protegido la direccion logica o virtual de todo elemento accesible en la memoria, esta formada por un puntero que consta de los siguientes campos:
- Selector: 14 bits de mas peso del RS al que se desea acceder y con ellos se encuentra la base donde comienza el segmento, el límite o tamaño que tiene y sus atributos. Los dos bits de menos peso del RS no pertenecen al selector sino que conforman el campo RPL que indica el nivel de privilegio del segmento peticionario.
- Desplazamiento: Es lo que se añade a la base del segmento para localizar la direccion que hay que acceder en el. El tamaño de desplazamiento determina su longitud maxima, en este caso es 4 GB.
Que es un descriptor de Segmento y con que elementos esta definido
El segmento al que apunta el RS en modo protegido se denomina Descriptor de Segmento y esta definido por:
* Base: Direcci ́on lineal donde comienza el segmento. Consta de 32 bits, el tamaño maximo que puede alcanzar la memoria f ́ısica es de 232 = 4GB.
* Lımite: 20 bits que determinan el tama ̃no del segmento. Si est ́a expresado en bytes, el lımite maximo serıa de 220 = 1MB y si esta expresado en paginas de 4 KB, un segmento puede ser tan grande como la memoria principal: 4 GB.
* Atributos o derechos de acceso: Campo de 12 bits, que proporciona las caracterısticas relevantes del segmento como: Tipo de Segmento (r,w,x) Nivel de privilegio e indicadores relacionados con la gestion de memoria
Estos se guardan en la tabla de descriptores que residen en la memoria principal y son creadas y manejadas desde el SO.
De que se encargan las 8 etapas de una intrucion realizada por un Unidad de Coma florante
- Las cuatro primeras etapas son las mismas que poseen las unidades de
enteros. - La quinta y la sexta, corresponden a la ejecuci ́on de las instrucciones de coma flotante.
- La septima etapa se encarga de escribir el resultado en los registros adecuados y la octava realiza el informe de posibles errores que se hayan producido.
re pija esta preg
Que beneficios proporciona la FPU
La FPU integrada en el Pentium amplıa el numero de registros que puede
manejar el programador de aplicaciones, ası como el repertorio de instrucciones.
Los nuevos registros que proporciona el coprocesador son ocho generales de 80 bits cada uno y tres de 16 bits, siendo estos ultimos empleados en labores de control y presentaci ́on de estado.
Razones fundamentales por las que se sigue usando Assembler
- Eficiencia Tanto en los requisito de memoria de un programa y el largo de su codigo como en el tiempo necesario para ejecutarlo ya que este solo contiene el codigo necesario para realizar su tarea
- Accesibilidad al hardware Permite el control directo sobre el hw sin abstracciones lo cual mejora su manejo