Materia - Arquitectura de Computadores 2021 2021
Materia - Arquitectura de Computadores 2021 2021
Materia - Arquitectura de Computadores 2021 2021
Memoria.
Es la capacidad de un computador para retener información.
Periféricos.
Dispositivos de entrada/salida conectados mediante cables a la unidad central de
proceso, y se utiliza para enviar o recibir información.
Usuarios.
Persona que utiliza la información generada por el computador.
Las diversas formas en que se utilizan los computadores muestran lo poderosas que
pueden ser estas máquinas dependiendo del tamaño y la forma.
1. Procesador.
2. Memoria.
3. Dispositivos de entrada y salida.
4. Discos de almacenamiento.
5. Programas.
Los primeros cuatro componentes son los elementos físicos de la máquina comúnmente
conocidos como hardware, el quinto elemento el del software, lo podemos definir como
un conjunto de instrucciones escritas por programadores, que le indican al hardware que
es lo que debe hacer, aunque el hardware es capaz de realizar tareas importantes y no
podría hacer ninguna de ellas sin el soporte del software.
Procesador.
-1-
Arquitectura de Computadores.
Memoria.
Es utilizada por el CPU para guardar información mientras trabaja con ella como una
especie de hoja electrónica para realizar cálculos, estas piezas de información se
representan electrónicamente en los circuitos de los chips de memoria y mientras
permanezcan en memoria la computadora puede tener acceso a ellas en forma directa.
Dispositivos de Entrada/Salida.
Comprende todas las maneras en que una computadora se comunica con el usuario y
con otras máquinas o dispositivos, sin dispositivos de entrada / salida la computadora
estaría aislada, el más común entre los dispositivos de entrada es el teclado que acepta
letras, números, comandos de usuario. Se tiene adicionalmente el mouse, que permite
entre otros aspectos dibujar, ejecutar comandos al oprimir uno de sus botones, otro
dispositivo de entrada puede ser el lápiz óptico, digitalizadores, escáner, etc.
Almacenamiento.
Son lugares donde se guardan los datos, que en ese momento no se está procesando,
El medio más común de almacenamiento es el disco magnético, con una gran capacidad
de almacenamiento.
Programas.
-2-
Arquitectura de Computadores.
EL DILEMA DE LA CLASIFICACIÓN
Muchas de las microcomputadoras (PC) de hoy son hasta 50 veces más poderosas que
sus contrapartes de hace una década. Los mismos saltos tecnológicos que han hecho a
las computadoras más potentes han insertado esa potencia en paquetes más y más
pequeños.
Todos estos tipos de computadoras pueden conectarse entre sí para formar redes de
computadoras, pero cada computadora individual, ya sea que este o no en una red, cae
dentro de una de estas categorías.
1. Computadoras Personales.
Los términos computadoras personales y microcomputadoras, generalmente se refiere a
pequeñas computadoras que se encuentran comúnmente en oficinas, salones de clase y
hogares. Vienen en todas formas y tamaños. Aunque la mayoría de los modelos se
colocan en escritorios, otras se paran en el piso y algunas hasta son portátiles.
Modelos de Escritorio.
Es el estilo de PC más común y también el que se introdujo primero, la
mayoría son lo suficientemente pequeñas para caber sobre un escritorio,
pero son demasiado grandes para llevarlas consigo. Algunos, como el
diseño de Macintosh son muy compactos con el monitor, el CPU, la
memoria y las unidades de disco, todo en una unidad. El diseño más
común es separar el monitor. Actualmente, muchos de estos modelos
están siendo reemplazados por modelos de torre, que con frecuencia se
colocan en el suelo para ahorrar espacio en el escritorio.
Computadores Notebook.
Como su nombre lo indica, se aproximan a la forma de una agenda de
aproximadamente 21.59 27.94 cm y pueden caber fácilmente en un
portafolios. Las laptops son las predecesoras de las computadoras
Notebook y son ligeramente más grandes que estas, y tienen por lo
común un teclado casi de tamaño normal. Tanto las Notebook y la laptop
por su funcionalidad, son utilizadas por personas que requieren el poder
de una computadora completa donde quiera que vayan. Algunos modelos
pueden conectarse a un "dock" (muelle) de una computadora de escritorio
para aprovechar el monitor y el espacio de almacenamiento mayores de
la máquina grande.
-3-
Arquitectura de Computadores.
La otra diferencia es que la mayoría de los PC pueden correr cualquiera de los cuatro
sistemas operativos más importantes: DOS, UNIX, OS/2, y Windows NT (y la
Macintosh puede correr tanto el sistema operativo Macintosh como la versión AUX de
UNIX, diseñado por apple), pero las estaciones de trabajo generalmente corren el
sistema operativo UNIX o una variación de este. El fabricante más grande de
estaciones de trabajo es Sun Microsystems y otros son : IBM, DEC, HP, y Silicom
Graphics.
3. Minicomputadoras.
Es interesante notar que al principio solo había computadoras. Hasta que empezaron a
salir nuevos tipos de computadoras surgió la necesidad de otros términos para poder
distinguir entre los diferentes tipos. Cuando DECK (Digital Equipment Corporation)
empezó a embarcar las computadoras de su serie PDP a principios de los 60, la prensa le
puso el nombre de minicomputadoras, pues en comparación con otras computadoras
eran más pequeñas.
Sus precios oscilan entre 20.000 y 250.000 dólares y resultan ideales para muchas
organizaciones y compañías ya que son relativamente baratas, pero conservan algunas
de las características deseables de un mainframe.
4. Macrocomputadoras (mainframe).
-4-
Arquitectura de Computadores.
Son las computadoras de mayor tamaño en uso común están diseñadas para manejar
grandes cantidades de entrada, salida y almacenamiento, atendiendo el acceso de una
gran cantidad de usuarios que utilizan una terminal para ingresar y recibir información
continua de grandes volúmenes (literalmente millones de registros de bases de datos)
que sería imposible manejarlos en sistemas más pequeños.
Los mainframe de hoy cuestan generalmente desde 200.000 hasta varios millones de
dólares era usual que las computadoras mainframe ocuparan cuartos completos e
incluso pisos enteros de edificios. Generalmente eran colocados dentro de edificios con
vidrios sellados y aire acondicionado especial para mantenerlos a una temperatura muy
baja, y sobre pisos falsos para ocultar todos los cables necesarios para la conexión de la
máquina. Este tipo de instalación ya no es utilizada. Hoy en día, un mainframe común
se ve como una hilera sencilla de grandes archiveros, aunque puede seguir requiriendo
de un ambiente controlado.
5. Supercomputadoras.
Cualquiera con desempeño por debajo del 1 gigallop/s no puede considerarse una
supercomputadora. Estas a fin de alcanzar tales velocidades tienen arquitecturas en
paralelo y son eficientes tan solo para solucionar un rango reducido de problemas. Uno
de los problemas de construir computadoras tan poderosas es la dispersión de la
tremenda cantidad de calor generada por la máquina. Gray uno de los principales
fabricantes de supercomputadoras, resolvió este problema usando enfriadores líquidos
para sus máquinas; también diseño algunas de estas con formas curvas para ayudar a las
máquinas a disipar el calor generado por ciertos componente.
Debido a que la tecnología computacional cambia tan rápido, las capacidades avanzadas
de una supercomputadora actual se puede convertir en las funciones estándar del
próximo año y las supercomputadora del próximo año serán mucho más poderosa que la
de hoy. Este tipo de computadoras pueden costar desde 10 millones hasta 30 millones
de dólares, y consumen energía eléctrica suficiente para alimentar 100 hogares.
En este capítulo se consideran conceptos de: Tecnología risk power 5…, cuchillas, rags
Alta disponibilidad, On demand, stabd by
CAPÍTULO II
-5-
Arquitectura de Computadores.
Definiciones de Rendimiento.
¿Cuándo se dice que un computador es más rápido que otro desde el punto de vista
del usuario del computador?
Tiempo de Respuesta.
Productividad.
Los términos latencia y ancho de banda (productividad) casi siempre se eligen cuando
se habla de un sistema de memoria por lo general la disminución del tiempo de
respuesta mejora la productividad.
Tey n
= 1+
Tex 100
Te: Tiempo de ejecución
-6-
Arquitectura de Computadores.
R: Rendimiento.
Ley de Amdhal.
Rtem
Ar =
Rte
1
Ar : Aceleración de rendimiento
Rtem : Rendimiento de la tarea completa, utilizando la mejora cuando sea posible.
Rte : Rendimiento de la tarea completa, sin utilizar la mejora.
-7-
Arquitectura de Computadores.
O el equivalente.
Tetc
Ar =
Tetcm
La aceleración mejorada nos indica la rapidez con que se realizará una tarea utilizando
una máquina con la mejora, con respecto a la máquina original, por ejemplo, aumentar
memoria RAM.
La ley de Amdhal, presenta una forma rápida de calcular la aceleración que depende de
dos factores.
Tea 1
Ag = = F
Ten (1 − F ) + m
m
Am
La ley de Amdhal puede servir como guía para ver como una mejora aumenta el
rendimiento y cómo distribuye los recursos para mejorar los recursos costo -
rendimiento.
-8-
Arquitectura de Computadores.
Localidad de Referencia.
Localidad Temporal Espacial, establece que los elementos cuyas direcciones son
próximas tienden a ser referenciados juntos en el tiempo.
-9-
Arquitectura de Computadores.
- 10 -
Arquitectura de Computadores.
El término organización, incluye los aspectos de alto nivel del diseño del computador
tal como sistema de memoria, estructura del bus, diseño interno de la CPU.
- 11 -
Arquitectura de Computadores.
Requerimientos Funcionales.
- 12 -
Arquitectura de Computadores.
El arquitecto siempre debe ser consciente del impacto, del diseño que elija, pues tendrá
impacto sobre el tipo de diseño y software.
Si una arquitectura a de tener éxito debe ser diseñada para que sobrevivan a los cambios
de la tecnología hardware, tecnología software y otras aplicaciones características.
- 13 -
Arquitectura de Computadores.
Una arquitectura a nivel de lenguaje de máquina que tenga éxito debería durar decenas
de años. El arquitecto debe planificar para que los cambios tecnológicos puedan
incrementar con éxito la vida de una máquina considerando los rápidos cambios que
experimentan las tecnologías de implementación, este tipo de cambios tecnológicos no
necesariamente son contiguos, más bien con frecuencia se presentan en pasos discretos
por ejemplo la capacidad de las memorias que aumentan siempre en factores.
- 14 -
Arquitectura de Computadores.
- 15 -
Arquitectura de Computadores.
CAPÍTULO III
Costos y Rendimiento.
Costos.
La comprensión del costo es esencial para que los diseñadores puedan tomar
decisiones inteligentes sobre si se debe incluir una determinada característica en los
diseños, donde el costo es un problema. Además que los diseños sensibles al costo
están creciendo en importancia, en este sentido, nuestro análisis se centra a los
diseños de máquinas sensibles al costo donde se presenta fundamentalmente tres
factores.
1. Costo de la electrónica.
2. Impacto del encapsulamiento en las decisiones de diseño.
3. Costo de un circuito integrado.
1. Costos de la Electrónica.
El rápido cambio de los costos de la electrónica es el primero de una serie de
temas en los diseños sensibles al costo, este parámetro cambia tan rápidamente
que los buenos diseñadores basan sus decisiones no en los costos actuales sino
en los costos proyectados en el instante en el que se fabrique el producto dando
una relación costo - rendimiento, diferente de la que se obtendría utilizando
costos actuales. Costos más bajos no necesariamente hacen precios más bajos ya
que pueden incrementar los beneficios, ahora cuando el producto está disponible
en múltiples fuentes la demanda no supera la oferta, la competencia obliga a que
bajen los precios con los costos.
- 16 -
Arquitectura de Computadores.
Ctd
Cci = Cd + + Ce
Ptf
Cci : Costo del circuito integrado.
Cd : Costo del dado.
Ctd : Costo del test del dado.
Ce : Costo del encapsulamiento.
Ptf : Productividad del test final.
1. Costo Directos.
Se refieren a los costos de mano de obra, compra de componentes, desperdicios
y garantía. Estos valores suponen un incremento del 25% al 40% de los costos
de los componentes.
- 17 -
Arquitectura de Computadores.
4. Precio de Lista
Difiere del precio de venta medio por cuanto las empresas ofrecen descuentos en
volumen de venta, por tanto, dependiendo del sistema de distribución,
tendríamos que el precio medio de venta normalmente del 60% al 75%
del precio de lista.
P = C c (1 + C d )
(
1 − Dm )(1 − Mb )
1
Cc = Costo de componentes
Cd = Costos directos
Dm = Descuento medio
M b = M arg en bruto o Costo indirecto
Una compañía que se esfuerce por ganar mercado podría ajustar el descuento
medio o los beneficios, pero necesariamente debe venir con sus
componentes, costos directos y los costos del margen bruto.
Rendimiento.
El tiempo es la medida del rendimiento del computador, el computador que
realiza la misma cantidad de trabajo en el mínimo tiempo es más rápido. Ahora
el tiempo se puede definir de formas distintas dependiendo de lo que queramos
cuantificar.
1. Tiempo Transcurrido.
- 18 -
Arquitectura de Computadores.
2. Tiempo de CPU.
Rendimiento de la CPU
Este término rendimiento de la CPU se refiere al tiempo de CPU del usuario, el cual
para un programa puede efectuarse de dos formas:
TCPU = Cr Dcr
o también
Cr
TCPU =
Fr
- 19 -
Arquitectura de Computadores.
Cr
CPI =
Cin
Cin CPI
TCPU =
Fr
Las Unidades de medidas está dada en segundos, por programa, de esta última fórmula
podemos deducir que el rendimiento de la CPU depende de tres características:
• Ciclos de reloj o frecuencia,
• Cclos de reloj por instrucción y
• Cuenta de instrucción.
Medidas de Rendimiento.
Una alternativa al tiempo como métrica son los mips que equivale.
Cin Fr
MIPS = =
Te 10 6
CPI 106
Te = Tiempo de ejecución.
- 20 -
Arquitectura de Computadores.
MFLOPS = Nopf
T 106
CPU
Un usuario que ejecuta los mismos programas día tras día debería ser el
candidato perfecto para evaluar un nuevo computador, potencialmente para
evaluar un nuevo sistema simplemente compararía el tiempo de ejecución de su
carga trabajo, mezcla de programas y comando del sistema operativo que el
usuario corre en una máquina, sin embargo no siempre es posible este tipo de
evaluación por lo que se debe confiar en otros métodos y con frecuencia otros
evaluadores esperando que estos métodos nos den un mejor criterio sobre el
rendimiento de la nueva máquina. Entre los métodos existentes nombraremos a
continuación los siguientes:
- 21 -
Arquitectura de Computadores.
5. UserBenchmark
- 22 -
Arquitectura de Computadores.
6. Novabench
7. PCMark
1
1 Tei
Marp =
n
Wi
Vi
i=1
1 n
Mat =
n
Tei Marp: Media
Mat: Media Armónica i =1
Aritmética
n: número de programas. Vi: Función de
n=Número programas
Tei: Tiempo de ejecución de carga de trabajo
. del i_ésimo programa
- 25 -
Arquitectura de Computadores.
Jerarquía de Memoria.
Un axioma en el diseño de hardware manifiesta que las partes más pequeñas de
hardware generalmente son más rápidas que las DRAM, este axioma es totalmente
válido en el diseño de memorias en donde utilizaremos las memorias más pequeñas para
que los elementos recientemente accedidos se encuentren cerca del CPU (esto tiene
relación con lo que es localidad de referencia), y memorias mayores cuando nos
alejamos de la CPU.
Dos niveles importantes de esta jerarquía son la memoria caché y la memoria virtual. La
caché contiene la mayor parte del código o de los datos recientemente obtenidos.
Cuando la CPU no encuentra un dato en la caché se produce un fallo de caché y el dato
se recupera de la memoria principal y se ubica en la memoria caché. Si el dato no se
encuentra en memoria principal se produce un fallo de página y la página completa se
transfiere del disco a la memoria principal.
- 26 -
Arquitectura de Computadores.
Nivel Jerárquico.
- 27 -
Arquitectura de Computadores.
Penalización de Fallo.
Es el tiempo para sustituir un bloque del nivel superior por el bloque correspondiente
por el bloque del nivel más bajo, más el tiempo en proporcionar este bloque al
dispositivo que lo ha pedido y por lo general es la CPU, esta penalización de fallo se
mide en dos componentes: tiempo de acceso y tiempo de transferencia.
Dirección de Memoria
Esta dividida en piezas que acceden a cada parte de la jerarquía, la primera pieza sería la
dirección de la estructura del bloque que es la parte de orden superior de la dirección
que identifica un bloque en un nivel de la jerarquía, el tamaño de la dirección de la
estructura del bloque, es el tamaño de la dirección completa en ese nivel, menos el
tamaño de la dirección del desplazamiento del bloque.
0,8
Ejemplo:
01 01 10 10 00 10 00 00 10 01 01 0 1 11 00 11 10
- 28 -
Arquitectura de Computadores.
2. Los fallos en una jerarquía de memoria significa que la CPU debe manejar
tiempo de acceso a memorias variables, si la penalización de fallo está en el
orden de decenas de ciclos de reloj, el procesador normalmente espera a que se
complete la transferencia a memoria, en cambio si la penalización de fallos es de
miles de instrucciones de reloj del procesador es muy costoso dejar a la CPU
inactivo, en este caso la CPU es interrumpida y se lo utiliza para otro proceso
durante el tratamiento del fallo.
3. El procesador debe tener algún mecanismo para determinar si la fracción está o
no en el nivel superior de la jerarquía de memoria, esta comprobación se realiza
en cada acceso a memoria y afecta al tiempo de acierto, en este sentido mantener
un rendimiento aceptable requiere habitualmente que la comprobación se
implemente en hardware.
- 29 -
Arquitectura de Computadores.
Caches.
Si la decisión se hiciese, entre un bloque que tiene un dato válido y un bloque que no lo
tiene entonces sería fácil relacionar que bloque debe reemplazar, desafortunadamente la
frecuencia elevada de aciertos de la caché significa que la decisión hay que tomarla
entre bloques que tengan datos válidos.
- 30 -
Arquitectura de Computadores.
asociativa, o asociativa por conjuntos donde hay varios bloques a elegir cuando se
produce el fallo, en este caso hay dos estrategias para determinar el bloque a
reemplazar.
Las lecturas dominan los accesos a las caches, todos los accesos de instrucciones son
lecturas, y muchas instrucciones no escriben en memoria, así el caso común rápido, que
significa optimizar las caches para la lectura, sin embargo conforme a la Ley de
Amdhal, los diseños de alto rendimiento, no pueden despreciar la velocidad de las
escrituras, existen muchos diseños de caches sin embargo hay dos opciones básicas.
TIPO DE CACHÉ
Caché de disco
Es una porción de memoria RAM asociada a un disco, con el fin de almacenar datos
recientemente leídos y agilizar su carga en dado caso que sean solicitados otra
vez. Puede mejorar notablemente el rendimiento de las aplicaciones, dado que acceder a
un byte de datos en RAM puede ser miles de veces más rápido que acceder a un byte del
disco duro.
- 31 -
Arquitectura de Computadores.
Caché de pista
Es una memoria de estado sólido tipo RAM cuyo uso de esta clase de discos
generalmente se limita a las supercomputadoras por su costo tan elevado.
Caché web
Es la encargada de almacenar documentos web para reducir el ancho de banda
consumido, la carga de los servidores y el retraso de las descargas. Existen 3 tipos de
caché web:
- 32 -
Arquitectura de Computadores.
- 33 -
Arquitectura de Computadores.
Tipos de Caché. Aunque de forma distinta a otros niveles de jerarquía de memoria las
caches suelen dividirse en caches de instrucciones y en caches de datos, las caches que
pueden contener instrucciones o datos se les denomina unificadas o mixtas.
Las caches de instrucciones tienen menos frecuencia de fallos que las caches de datos,
pues la separación de o instrucciones y datos elimina fallos debido a conflictos entre los
bloques de instrucciones y los bloques de datos, pero al dividir también se fija un
espacio dedicado a cada tipo, una buena comparación de caches separadas de
instrucciones, y con las caches unificadas, implica que el tamaño total de la caché sea el
mismo por ejemplo si tenemos una caché de instrucción de 1 Kbyte y caché de datos de
1Kbyte deberíamos comparar con una caché unificada de 2 Kbytes.
Memoria Principal
Las memorias establecen las necesidades de las caches y a la vez sirven de interfaz de
entrada / salida. Las medidas de rendimiento de la memoria principal hace énfasis en la
latencia y en el ancho de banda, generalmente la latencia de la memoria principal, que
afecta a la penalización de fallo de la caché, es la preocupación primordial de la caché,
mientras que el ancho de banda de la memoria principal, es la preocupación principal de
las entradas / salidas. La latencia de memoria tradicionalmente se expresa utilizando dos
medidas que son tiempo de acceso y duración del ciclo.
El tiempo de acceso, es el tiempo desde que se pide una lectura hasta que llega a la
palabra deseada.
Tenemos básicamente de dos tipos, las de acceso estáticas, y las de acceso dinámicas.
- 34 -
Arquitectura de Computadores.
ser leídos, de ahí que hay diferencia entre el tiempo de acceso, la duración del ciclo y la
necesidad del refresco, su diseño se caracteriza principalmente por su capacidad, el
rendimiento en las DRAM crece a una velocidad mucho más lenta que la CPU.
Por su naturaleza de memoria estática utiliza más circuitos por bits para prevenir que se
produzcan distorsiones en momentos de lectura sus característica principal es la
velocidad aunque también tiene como ventaja la capacidad, a diferencia de la DRAM,
no existe diferencia, entre el tiempo de acceso, la duración del ciclo y el refresco.
Comparaciones.
- 35 -
Arquitectura de Computadores.
Memoria Virtual.
En cualquier instante del tiempo los computadores están corriendo múltiples procesos
cada uno con su propio espacio de direcciones la mayoría utiliza solo una pequeña parte
del asignado de ahí que debe haber un medio de compartir una cantidad de memoria
física entre muchos procesos.
- 36 -
Arquitectura de Computadores.
3. Además de actuar como memoria de más bajo nivel para la memoria principal
en la jerarquía, la memoria secundaria también se utiliza para el file sistem
(sistema de archivos), que por lo general no es parte del espacio de direcciones,
pues es conocido que la mayor parte de la memoria secundaria, está ocupado
por el sistema de archivos (lo que conocemos como sistema de datos).
Se pueden categorizar en dos clases: las páginas que se caracterizan por ser bloques de
tamaño fijo, y los segmentos que son de tamaño variable.
Paginación.
- 37 -
Arquitectura de Computadores.
P → Selector de Página.
D → Desplazamiento Dentro de la Página.
Ejemplo:
Ahora tenemos direcciones virtuales de 128 bytes páginas mucho más grandes.
P V D Memoria
0 1 Dirección
Marco
Ejemplo:
Po 1 M Po
- 38 -
Arquitectura de Computadores.
Como el bit que indica la presencia en la página de memoria está el 1 dicha página
tiene un marco de página asociado que está dado por M P o Este valor corresponde
a un puntero de un marco de página específico.
DR = M Po + Do
Si durante la acción 1 se detecta que no existe un marco disponible osea la memoria está
completamente ocupada, es necesario liberar uno para cargar el bloque asociado a la
página actualmente referenciada, este mecanismo se lo realiza utilizando algoritmos
propios de reemplazo.
- 39 -
Arquitectura de Computadores.
SEGMENTACION
}
Donde:
S: Selector de segmento
D. Desplazamiento dentro del segmento
E.
Ejemplo:
- 40 -
Arquitectura de Computadores.
Suponga que una dirección virtual es de 16 bits el campo S tiene asignado 2 bits y el
campo D 14 bits.
S V L D
0 0
1 1
Donde
S es el número de segmento.
V el bit de validez que es igual a 1 si está en memoria principal y 0 si no lo está.
L el tamaño del segmento, y
D la dirección de inicio del segmento (V=1) o dirección de disco (V=0)
Ejemplo:
So 1 Lo MS0
Dirección
Base
Como el bit es 1, indica que dicho segmento está cargado en memoria teniendo:
DR = MS0 + D0
- 41 -
Arquitectura de Computadores.
VENTAJAS DE LA PAGINACIÓN
1. Es posible comenzar a ejecutar un programa, cargando solo una parte del mismo en
memoria, y el resto se cargara bajo la solicitud.
DESVENTAJAS DE LA PAGINACIÓN
- 42 -
Arquitectura de Computadores.
promedio a las páginas, evitando que si son muy pequeñas, se necesiten TABLAS BMT
y PMT muy grandes, y si son muy grandes, se incremente el grado de fragmentación
interna. (Quintuña, et al., 2010)
VENTAJAS DE LA SEGMENTACIÓN
• Es posible compilar módulos separados como segmentos el enlace entre los segmentos
puede suponer hasta tanto se haga una referencia entre segmentos.
• Debido a que es posible separar los módulos se hace más fácil la modificación de los
mismos. Cambios dentro de un módulo no afecta al resto de los módulos. (Quintuña, et
al., 2010)
• Es posible que los segmentos crezcan dinámicamente según las necesidades del
programa en ejecución.
ESVENTAJAS DE LA SEGMENTACIÓN
• Debido a que los segmentos tienen un tamaño variable se pueden presentar problemas
de fragmentación externas, lo que puede ameritar un plan de reubicación de segmentos
en memoria principal. (Quintuña, et al., 2010)
• No se puede garantizar, que al salir un segmento de la memoria, este pueda ser traído
fácilmente de nuevo, ya que será necesario encontrar nuevamente un área de memoria
libre ajustada a su tamaño.
- 43 -
Arquitectura de Computadores.
Tanto la paginación como la segmentación cuentan con una estructura de datos que está
indexada por el número de página o el número de segmento, esta estructura de datos
contiene la dirección física del bloque, para la paginación el desplazamiento del bloque
es sencillamente concatenado a la dirección física de la página, para la segmentación el
desplazamiento se suma a la dirección física del segmento para obtener la dirección
virtual final.
Casi todos los Sistemas Operativos intentan sustituir el bloque menos recientemente
usado (LRU) por que es el que menos probablemente se necesitará, para ubicarlo se usa
el índice de referencia que se pone siempre en 1 cada vez que se accede a una página.
- 44 -
Arquitectura de Computadores.
Se utiliza siempre como estrategia de escritura la post escritura debido al alto costo de
un innecesario acceso a un nivel más bajo de memoria. Los sistemas de memoria virtual
incluyen un bit de modificación para que sólo los bloques que han sido alterados desde
que se cargaron sean escritos en el disco.
Desde memoria secundaria posiblemente sobre una red es más eficiente que transferir
páginas más pequeñas.
Cuando los tamaños de la página son muy grandes mayor a 32 Kbyte se puede mal
gastar memoria ya sea principal o secundaria así como también el ancho de banda de
entrada / salida.
- 45 -
Arquitectura de Computadores.
Por otro lado, es usual que las aplicaciones que corren en los poderosos
supercomputadores requieran de operaciones de entradas/salidas de grandes volúmenes.
Esto sucede así por diferentes razones:
- 46 -
Arquitectura de Computadores.
Memoria Bus de
Principal memoria
CPU Bus de
E/S
Cuando la CPU desea realizar operaciones de E/S, carga un programa especial en uno
de los canales y le instruye para ejecutarlo. El canal maneja por si mismo todas las E/S
hacia la memoria principal, dejando libre a la CPU para hacer otras cosa. Cuando el
canal termina, envía a la CPU un interrupción (señal especial) para detener el proceso y
atender al canal. La ventaja de este diseño es que permite a la CPU descargar todo el
trabajo de E/S en el canal, permitiendo que tanto los cálculos como las operaciones de
E/S sean simultáneos.
Diseño único
Las PC utilizan este diseño que es mucho más simple; existe un gabinete para tarjetas
con gran tableta de circuitos impresos en el fondo al que se denomina tarjeta madre
(main borrad).
Esta contiene la CPU, algo de memoria y varios circuitos de soporte. Contiene también
un bus impreso a lo largo de uno de sus lados y contactos en los que pueden conectarse
tarjetas adicionales de memoria o de E/S.
- 47 -
Arquitectura de Computadores.
Gabinete
Trajeta
controladora
de E/S
Tarjeta de
memoria
Extremo
Conector
DISQUETTERA
MONITOR
IMPRESORA
TECLADO
Controlador
de Discos
DISCOS DUROS
Rendimiento de la E/S
- 48 -
Arquitectura de Computadores.
Las E/S han sido los elementos mas despreciados por los diseñadores de hardware y por
los mejoradotes del rendimiento de los computadores, quienes no hacen sino
concentrarse en volver mas eficientes el procesamiento de la información (acrecentar el
rendimiento de la CPU), sin tener en cuenta el rendimiento de los sistemas de E/S; tanto
así que una de las medidas más utilizadas para determinar que tan poderoso, bueno o
malo es algún sistema de cómputo, es el tiempo de CPU, el cual ignora completamente
el tiempo de E/S.
Hay quienes dicen que la velocidad de las entradas/salidas no importan puesto que
siempre hay un proceso que ejecutar mientras otro está esperando un periférico. Este
argumento se puede refutar ya que está midiendo el rendimiento como productividad
(más tareas por hora) no como tiempo de respuesta, y si analizamos la mayoría de las
aplicaciones por ejemplo las que manejan transacciones encontramos que son exigentes
con el tiempo.
Ahora veremos que elementos juegan un papel importante en el desempeño de las E/S.
El número de operaciones físicas de E/S necesarias para satisfacer un
requerimiento.
Teniendo en cuenta estos factores, se han planteado alternativas que tratan de mejorar
uno o más de ellos. La mayoría de estas soluciones está orientada a algún tipo de
arquitectura.
Comportamiento: entrada (leer una vez), salida (solo escribir, no puede leer) o
almacenamiento (puede ser releído y habitualmente reescrito).
Compañero: o bien una persona o una máquina está en el otro extremo del dispositivo
de E/S, introduciendo datos en la entrada o leyendo datos en la salida.
- 49 -
Arquitectura de Computadores.
DISCOS MAGNETICOS
- 50 -
Arquitectura de Computadores.
Las memorias volátiles o de largo plazo para archivos o bases de datos se encuentran
presentes aun cuando no se ejecuten los programas como un nivel de jerarquía de
memoria en el nivel inferior. En el nivel principal es utilizado como memoria virtual en
la ejecución de un programa.
El disco magnético consta de una colección de platos que giran sobre un eje
aproximadamente a 3600 rpm.
Los platos.- Son discos metálicos recubiertos ambas caras por material magnético y
adicionalmente los mayores tienen mayor rendimiento y los discos menores tienen
menor costo por unidad.
Cada superficie del disco esta dividida en círculos concéntricos denominados pistas,
cada pista a su vez esta dividida en sectores que contienen la información.
Cada pista puede tener 32 sectores.
Pistas Un disco esta dividido en delgados círculos concéntricos llamados pistas, las
cabezas se mueven desde la pista cero (la mas externa) a las pistas mas internas el
numero aproximado de pistas es 10.000.
Sector.- Es la unidad mas pequeña que puede ser leída o escrita. Tradicionalmente todas
las pistas tienen el mismo numero de sectores por lo tanto las pistas externas que son las
mas largas graban información con una densidad menor que las pistas mas internas.
Un BIT es la unidad mas útil mas pequeña en términos de memoria, los discos duros
almacenan información en espacios gruesos llamados sectores, la mayoría de los discos
usan sectores de 512 bytes. La controladora del disco determina tamaño de un sector en
momento que el disco es formateado pero lo general los sectores son de 512.
Cilindros.- El par de pistas al lado opuesto del disco se llaman cilindros si el disco duro
contiene múltiples discos supongamos que sea n, un cilindro incluye todos los pares de
pistas exactamente uno encima de otro o sea 2n pistas.
Los discos duros normalmente tienen una cabeza a cada lado del disco y dado que las
cabezas lectura/escritura están alineadas unas con otras, la controladora puede actuar en
todas las pistas del cilindro sin mover su estructura. Como resultado los discos duros de
múltiples platos (discos) se desempeñan un poco mas rápido que los discos duros de un
solo plato.
- 51 -
Arquitectura de Computadores.
Componentes Principales.
Un proceso de formateo físico organiza el nuevo disco en pistas y sectores cabe indicar
que la mayoría de los fabricantes tienen sus propias especificaciones de pistas y sectores
sin embargo los principios son los mismos.
- 52 -
Arquitectura de Computadores.
256-511 16 8
512-1023 34 16
1024-2048 64 32
• Tiempo de Latencia.- Cada pista contiene múltiples sectores, una vez que la
cabeza de L/E encuentra la pista correcta las cabezas permanecen en el lugar
hasta que el sector pasa por alguna de ellas, este tiempo de espera se llama
latencia por lo tanto el tiempo de latencia dependerá de la velocidad con la que
gira los discos.
• Tasa de Transferencia.- Los discos duros también son evaluados por su tasa de
transferencia la cual generalmente se refiere a la tasa en la cual los datos pueden
ser leídos o escritos en el drive. Por lo tanto la velocidad de los discos, la
densidad de la velocidad de datos y el tiempo de acceso afecta a la tasa de
transferencia, este aspecto es importante cuando se lee y se escribe en archivos
muy grandes, la tasa promedio de transferencia oxila entre 20 y 50 megabyts por
segundo.
Dado que los procesadores y los discos duros se comunican por un bus de
entrada/salida la tasa de transferencia de ellos esta limitada por la tasa de
transferencia del bus, la cual en muchos casos es mucho más lenta que la tasa de
transferencia del drive.
- 53 -
Arquitectura de Computadores.
En comparación con los discos duros tradicionales, las unidades de estado sólido son
menos sensibles a los golpes al no tener partes móviles, son prácticamente inaudibles, y
poseen un menor tiempo de acceso y de latencia, lo que se traduce en una mejora del
rendimiento exponencial en los tiempos de carga de los sistemas operativos. En
contrapartida, su vida útil es muy inferior, ya que tienen un número limitado de ciclos
de escritura, pudiendo producirse la pérdida absoluta de los datos de forma inesperada e
irrecuperable,2 sin embargo por medio del cáculo del tiempo medio entre fallos y la
- 54 -
Arquitectura de Computadores.
Administración de Sectores Malos (en inglés, Bad Block Management o BBM) dicho
problema puede ser mitigado.3 Las SSD hacen uso de la misma interfaz SATA que los
discos duros, por lo que son fácilmente intercambiables sin tener que recurrir
a adaptadores o tarjetas de expansión para compatibilizarlos con el equipo.
A partir de 2010, la mayoría de las SSD utilizan memoria flash basada en puertas
NAND, que retiene los datos sin alimentación eléctrica.1 Para aplicaciones que
requieren acceso rápido, pero no necesariamente la persistencia de datos después de la
pérdida de potencia, las SSD pueden ser construidos a partir de memoria de acceso
aleatorio (RAM). Estos dispositivos pueden emplear fuentes de alimentación
independientes, como baterías, para mantener los datos después de la desconexión de la
corriente eléctrica.4
Se han desarrollado dispositivos que combinan ambas tecnologías, discos duros con
memorias flash, que se denominan unidades de estado sólido híbridas (SSHD), e
intentan así aunar capacidad y velocidad a precios inferiores a las SSD.5
Ventajas
Los dispositivos de estado sólido que usan bloques de memorias flash tienen varias
ventajas únicas frente a los discos duros mecánicos:26
• Arranque más rápido, al no tener platos que necesiten tomar una velocidad
constante.
• Gran velocidad de escritura.
• Mayor rapidez de lectura, incluso diez veces más que los discos duros
tradicionales más rápidos gracias a los RAID internos en un mismo SSD.
• Baja latencia de lectura y escritura, cientos de veces más rápido que los discos
mecánicos.
• Lanzamiento y arranque de aplicaciones en menor tiempo: resultado de la mayor
velocidad de lectura y especialmente del tiempo de búsqueda. Pero sólo si la
aplicación reside en flash y es más dependiente de la velocidad de lectura que de
otros aspectos.
• Menor consumo de energía y producción de calor: resultado de no tener
elementos mecánicos.
• Sin ruido: la misma carencia de partes mecánicas los hace completamente
inaudibles.
• Mejorado el tiempo medio entre fallos, superando dos millones de horas, muy
superior al de los discos duros.
• Seguridad: permitiendo una muy rápida "limpieza" de los datos almacenados.
• Rendimiento determinista: a diferencia de los discos duros mecánicos, el
rendimiento de las SSD es constante y determinista a través del almacenamiento
entero. El tiempo de "búsqueda" constante.
• El rendimiento no se deteriora mientras el medio se llena.
(Véase Desfragmentación).
• Menor peso y tamaño que un disco duro tradicional de similar capacidad.
• Resistente: soporta caídas, golpes y vibraciones sin estropearse y sin
descalibrarse como pasaba con los antiguos discos duros, gracias a carecer de
elementos mecánicos.
- 55 -
Arquitectura de Computadores.
Los dispositivos de estado sólido que usan memorias flash tienen también varias
desventajas:
• Precio: los precios de las memorias flash son considerablemente más altos en
relación precio/gigabyte, debido a su menor demanda. Esta como tal no es una
desventaja técnica, y según se logre su uso masificado en detrimento del estándar
precedente, es de esperar que su precio se regule y se haga más asequible como
sucede con los discos duros móviles, que en teoría son más caros de producir por
llevar piezas metálicas y tener mecanismos de alta precisión.
- 56 -
Arquitectura de Computadores.
les afecte pudiendo producir la pérdida absoluta de todos los datos. Existe un
método para recuperarlos que consiste en recargarlos con un ciclo completo de
carga que no siempre es eficaz. Se recomienda usarlos con un dispositivo protector
de la energía eléctrica SAI.
•
• DIFERENCIAS ENTRE DISCOS DUROS Y SSD
- 57 -
Arquitectura de Computadores.
TEGNOLOGÍA SCSI
SCSI 1. Fue diseñado con la intención de evitar los problemas de velocidad que tenían
otros buses y la limitación a la hora de conectar muchas unidades al sistema.
Sus principales características son:
Soportar hasta 7 dispositivos de 8 bits conectados al mismo bus, una velocidad de
transferencia de 5 Megabits/s y capacidades de comunicación sincrónicas y
asincrónicas.
SCSI 2. Soporta una mayor cantidad de transferencia de datos de 10 Megas/s, soporta
unidades de 16 y 32 bits y fundamentalmente aparece aquí un control de calidad, para
evitar errores en las transmisiones de información.
- 58 -
Arquitectura de Computadores.
SCSI 3. Disminuye el soporte para dispositivos que se comunican con canales de fibra
óptica y por puerto serial, las tazas de transferencia van entre 20 Megabits/s.
Fibra óptica.
WIDE 20 Megabit/s
SCSI 3
ULTRA 40 Megabit/s
Son un conjunto de discos, unidos en un arreglo que aparecen a la vista del usuario
como un dispositivo único, se utiliza principalmente, a nivel de minicomputadores
- 59 -
Arquitectura de Computadores.
Raid 0. También llamado partición de los discos, los datos son distribuidos a través de
discos paralelos, tiene la característica de distribuir los datos rápidamente a los usuarios,
sin embargo no ofrecen protección a falla de hardware.
- 60 -
Arquitectura de Computadores.
- 61 -
Arquitectura de Computadores.
el hecho de que la información de la paridad se reparte entre todos los discos de forma
ROTATORIA, aliviando así el cuello de botella que se forma en operaciones
simultáneas de E/S. Esto ocurre, en concreto, gracias a que solo se debe leer la paridad
de un único disco, como es el caso del Raid 3. Con lo que se resuelve las limitaciones
de escritura en RAID-4. Así, todas las operaciones de lectura y escritura pueden
suponerse. Este nivel RAID es recomendable para aplicaciones que trabajen con
ficheros pequeños pero con un gran número de transacciones E/s, como es el caso de las
bases de datos relacionales o las aplicaciones de gestión.
Sistemas independientes de disco con integración de código de error mediante una doble
paridad. Raid 6 es esencialmente una extensión del RAID 5, para ello guarda, una
paridad. Este nivel proporciona muy buena integridad de los datos y repara diversos
errores en los discos. El nivel 6 de Raid añade un nivel más de disco, resultando una
organización con dos dimensiones de disco y una tercera que corresponde a los sectores
de los discos la ventaja de este nivel consiste que no solamante se puede recuperara un
error de entre dos discos, sino que es posible recuperar muchos errores de 3 discos. La
operación de escritura es difícil debido a la necesidad de sincronizar todas las
dimensiones.
- 62 -
Arquitectura de Computadores.
Ventajas.
- Podemos recuperar diversos errores simultáneamente.
- Nivel de integridad muy elevado solución perfecta para aplicaciones críticas.
Inconvenientes.
- El rendimiento en escritura de datos es bastante lento.
- No se dispone de muchas implementaciones comerciales en el nivel de Raid 6.
Raid 10.
Ventajas.
- En este nivel ofrece un 100% de redundancia de la información y un soporte
para grandes volúmenes de datos, donde el precio no es un factor importante.
Donde Implementarlo.
Ideal para sistemas de emisión crítica, donde se requiera mayor confiabilidad de la
información, ya que puede fallar dos discos inclusive (uno para cada canal) y los datos
todavía se mantienen en línea. Es apropiado también en escritura aleatorias pequqñas.
Raid 30.
- 63 -