Arquitectura de von Neumann
Memory
Control
Unit
Arithmetic
Logic
Unit
Accumulator
Input
Output
Diagrama de la arquitectura Von Neumann.
Diagrama de la arquitectura Von Neumann.
de botella Von Neumann y muchas veces limita el rendimiento del sistema.[3]
El diseo de una arquitectura Von Neumann es ms simple que la arquitectura Harvard ms moderna, que tambin es un sistema de programa almacenado, pero tiene
un conjunto dedicado de direcciones y buses de datos para leer datos desde memoria y escribir datos en la misma,
y otro conjunto de direcciones y buses de datos para ir a
buscar instrucciones.
Un computador digital de programa almacenado es una
que mantiene sus instrucciones de programa, as como sus
datos, en memoria de acceso aleatorio (RAM) de lecturaescritura. Las computadoras de programa almacenado representaron un avance sobre los ordenadores controlados
por programas de la dcada de 1940, como la Colossus
y la ENIAC, que fueron programadas por ajustando interruptores e insertando parches, conduciendo datos de la
ruta y para controlar las seales entre las distintas unidades funcionales. En la gran mayora de las computadoras
modernas, se utiliza la misma memoria tanto para datos
como para instrucciones de programa, y la distincin entre Von Neumann vs. Harvard se aplica a la arquitectura
de memoria cach, pero no a la memoria principal.
Diagrama de la arquitectura Von Neumann.
La arquitectura Von Neumann, tambin conocida como modelo de Von Neumann o arquitectura Princeton, es una arquitectura de computadoras basada en
la descrita en 1945 por el matemtico y fsico John
von Neumann y otros, en el primer borrador de un informe sobre el EDVAC.[1] Este describe una arquitectura de diseo para un computador digital electrnico
con partes que constan de una unidad de procesamiento que contiene una unidad aritmtico lgica y registros
del procesador, una unidad de control que contiene un
registro de instrucciones y un contador de programa, una
memoria para almacenar tanto datos como instrucciones, almacenamiento masivo externo, y mecanismos de
entrada y salida.[1][2] El signicado ha evolucionado hasta ser cualquier computador de programa almacenado en 1 Historia
el cual no pueden ocurrir una extraccin de instruccin
y una operacin de datos al mismo tiempo, ya que com- Las primeras mquinas de computacin tenan prograparten un bus en comn. Esto se conoce como el cuello mas jos. Algunos equipos muy simples siguen utilizan1
DESARROLLO DEL CONCEPTO DE PROGRAMA ALMACENADO
do este diseo, ya sea por motivos de simplicacin o de
formacin. Por ejemplo, una calculadora de escritorio es
(en principio) una computadora de programa jo. En ella,
se pueden hacer matemticas bsicas, pero no puede ser
utilizada como procesador de texto o consola de juegos.
Cambiar el programa de una mquina de programa jo
requiere re cablear, reestructurar, o re disear la mquina. Las primeras computadoras no eran tanto programadas ya que fueron diseadas."Reprogramar cuando
era posible, era un proceso laborioso que comenzaba con
diagramas de ujo y notas de papel, seguido de diseos
detallados de ingeniera y luego el muchas veces arduo
proceso de recablear fsicamente y reconstruir la mquina. Poda tomar hasta tres semanas preparar un programa
de ENIAC y conseguir que funcionara.[4]
Esa situacin cambi con la propuesta de la computadora con programa almacenado. Una computadora de
programa almacenado incluye, por diseo, un conjunto
de instrucciones y puede almacenar en la memoria un
conjunto de instrucciones (un programa) que detalla la
computacin.
Un diseo de programa almacenado tambin permite un
cdigo mutante. Una primera motivacin para una instalacin de este tipo fue la necesidad de que un programa
incremente o modique de otro modo la porcin de direccin de instrucciones, lo cual, en los primeros diseos,
tena que hacerse manualmente. Esto lleg a ser menos
importante cuando los registros ndice y modos de direccionamiento se convirtieron en caractersticas habituales
de la arquitectura de la mquina. Otro uso fue para incrustar datos frecuentemente usados en el ujo de instrucciones utilizando direccionamiento inmediato. El cdigo mutante ha cado en gran parte en desuso, ya que
suele ser difcil de entender y de depurar, adems de ser
ineciente, en favor de los regmenes de los modernos
procesadores pipelines y del almacenamiento en cach.
A gran escala, la capacidad para tratar a las instrucciones
de la misma forma que si fueran datos es lo que hacen los
ensambladores, compiladores, enlazadores, cargadores, y
otras posibles herramientas automticas de programacin. Se puede escribir programas que escriban programas. En una escala menor, las intensivas operaciones repetitivas de E/S como los primeros manipuladores de
imgenes BitBLT o los sombreadores de pxeles y vrtices
en los grcos 3D modernos, se consideraron inecaces
al funcionar sin necesidad de hardware personalizado. Estas operaciones podran acelerarse en los procesadores de
propsito general con tecnologa de compilacin mosca ("compilacin en tiempo de ejecucin"), por ejemplo, programas de cdigo generado, una forma de cdigo
automodicable que ha mantenido popularidad.
Hay algunas desventajas para el diseo de Von Neumann.
Aparte del cuello de botella de Von Neumann descripto
a continuacin, las modicaciones del programa pueden
ser muy perjudiciales, ya sea por accidente o por diseo.
En algunos diseos simples de computadora con progra-
ma almacenado, un programa que no funcione correctamente puede daarse, daar a otros programas, o inclusive al sistema operativo, lo que puede dar lugar a un
desplome o crash de la computadora. Normalmente, la
proteccin de memoria y otras formas de control de acceso pueden proteger tanto de modicaciones accidentales
como de programas maliciosos.
2 Desarrollo del concepto de programa almacenado
El matemtico Alan Turing, quien haba sido alertado de
un problema de lgica matemtica por las lecciones de
Max Newman en la Universidad de Cambridge, escribi un artculo en 1936 titulado On Computable Numbers,
with an Application to the Entscheidungsproblem, que fue
publicado en los Proceedings of the London Mathematical Society.[5] En l describa una mquina hipottica
que llam mquina computadora universal, y que ahora es conocida como la "Mquina de Turing universal".
La mquina hipottica tena un almacenamiento innito (memoria en la terminologa actual) que contena tanto las instrucciones como los datos. John Von Neumann
conoci a Turing cuando ejerca de profesor sustituto en
Cambridge en 1935 y tambin durante el ao PhD que
Turing pas en la Institute for Advanced Study en Princeton, Nueva Jersey durante 1936-37. Cundo supo del
artculo de 1936 de Turing no est claro.
En 1936, Konrad Zuse tambin anticip en dos solicitudes de patente que instrucciones de la mquina podan ser
almacenadas en el mismo almacenamiento utilizado para
los datos.[6]
Independientemente, J. Presper Eckert y John Mauchly,
quienes estaban desarrollando el ENIAC en la Escuela
Moore de Ingeniera Elctrica en la Universidad de
Pennsylvania, escribieron sobre el concepto de programa
almacenado en diciembre de 1943. En enero de 1944,
mientras diseaba una nueva mquina, EDVAC, Eckert escribi que se almacenaran datos y programas
en un nuevo dispositivo de memoria direccionable, una
memoria de lnea de retardo. sta fue la primera vez que
se propuso la construccin de un prctico programa almacenado. Por esas fechas, no tenan conocimiento del
trabajo de Turing.
Von Neumann estaba involucrado en el Proyecto Manhattan en el Laboratorio Nacional Los lamos, el cual
requera ingentes cantidades de clculos. Esto le condujo
al proyecto ENIAC, en verano de 1944. All se incorpor
a los debates sobre el diseo de un ordenador con programas almacenados, el EDVAC. Como parte del grupo,
se ofreci voluntario a escribir una descripcin de l. El
trmino von Neumann architecture surgi del primer
artculo de von Neumann: First Draft of a Report on the
EDVAC, fechado el 30 de junio de 1945, el cual inclua
ideas de Eckert y Mauchly. Estaba inconcluso cuando su
3
compaero Herman Goldstine lo hizo circular con slo el
nombre de von Neumann escrito en l, para consternacin
de Eckert y Mauchly. El artculo fue ledo por docenas de
compaeros de trabajo de Von Neumann en Amrica y
Europa, e inuenci la siguiente hornada de diseos de
computadoras.
arquitectura von Neumann. En la publicacin de 1953
Faster than Thought: A Symposium on Digital Computing
Machines (Ms rpido que el pensamiento: Un Simposio sobre Mquinas informticas digitales -editado por
BV Bowden-), una seccin en el captulo sobre Computers in America (Computadoras en Amrica) dice lo
[10]
Por lo tanto, Von Neumann no se encontraba solo en el siguiente:
desarrollo de la idea de la arquitectura de programa alLa Mquina del Instituto de Estudios
macenado, y Jack Copeland considera que es histricaAvanzados,
Princeton
mente inapropiado referirse a las computadoras electrnicas digitales de programa almacenado como 'mquinas
En 1945, el profesor J. von Neumann, que
de von Neumann'".[7] Su colega del colegio Los lamos,
en
ese
entonces trabajaba en la Escuela MooStan Frankel dijo de las consideraciones de von Neumann
re
de
Ingeniera
en Filadela, donde se haba
con respecto a las ideas de Turing:
construido el ENIAC, emitido en nombre de
un grupo de sus compaeros de trabajo un inS que en o alrededor de 1943 o '44 von
forme sobre el diseo lgico de las compuNeumann era muy consciente de la importantadoras digitales. El informe contena una procia fundamental del papel de 1936 de Turing...
puesta bastante detallada para el diseo de la
Von Neumann me introdujo a ese papel y en su
mquina que, desde entonces, se conoce coinsistencia lo estudi con cuidado. Muchas permo la EDVAC (computadora de retardo variasonas han aclamado a von Neumann como el
ble discreta). Esta mquina ha sido recientepadre de la computadora (en el sentido momente completada en Amrica, pero el inforderno del trmino), pero estoy seguro de que
me von Neumann inspir la construccin de la
nunca habra hecho que el propio error. l bien
EDSAC (calculadora automtica de almacenapodra haberse llamado tal vez la partera, pemiento electrnico de retardo) en Cambridge
ro con rmeza enfatiz para m, y para otros,
(vase pgina 130).
que estoy seguro, que la concepcin fundamental se debe a Turingen la medida en que no
En 1947, Burks, Goldstine y Von Neuanticipado por Babbage... Por supuesto, tanto
mann, publicaron un informe en el que descriTuring como von Neumann tambin hicieron
ben el diseo de otro tipo de mquina (una mimportantes contribuciones a la reduccin a la
quina paralela en este momento) que debera
prctica de estos conceptos, pero yo no conser muy rpida, capaz de hacer 20 000 operasiderara esto como comparable en importanciones por segundo. Sealaron que el problema
cia con la introduccin y explicacin del conpersistente en la construccin de tal mquina
cepto de una computadora capaz de almacenar
estaba en el desarrollo de una memoria adeen su memoria su programa de actividades y
cuada, todos los contenidos de los cuales fuede modicar ese programa en el curso de estas
ron instantneamente accesibles, y al principio
actividades[8]
se sugiri el uso de un tubo especial llamado
Selectron que haba sido inventado por los laEn el mismo momento en que el informe Primer Borraboratorios de Princeton de la RCA. Estos tudor fue distribuido, Turing desarroll un informe tcnibos son caros y difciles para fabricar, as Von
co detallado, Proposed Electronic Calculator, que descriNeumman decidi construir una mquina babe en detalle la ingeniera y la programacin, su idea de
sada en la memoria de Williams. Esa mquina
una mquina que fue llamada la Automatic Computing
que se complet en junio de 1952 en Princeton
Engine (ACE).[9] Present ste al Laboratorio Nacional
se ha conocido como MANIAC I. El diseo de
de Fsica Britnico el 19 de febrero de 1946. A pesar de
esta mquina que ha sido inspirado de una doque Turing saba por su experiencia de guerra en el Parcena o ms de mquinas que estn actualmente
que Bletchley que su propuesta era factible, el secretismo
en construccin en Amrica.
mantenido durante muchas dcadas acerca de los ordenadores Colossus le impidi manifestarlo. Se produjeron En el mismo libro, los dos primeros prrafos de un capvarias implementaciones del diseo ACE de forma exito- tulo sobre ACE dicen lo siguiente:[11]
sa.
Los trabajos tanto de von Neumann como de Turing,
describan computadoras de programas almacenados, pero al ser anterior el artculo de von Neumann, consigui
mayor circulacin y repercusin, as que la arquitectura de computadoras que esboz adquiri el nombre de
Clculo automtico en el laboratorio nacional de fsica
Uno de los equipos digitales ms modernos que incorpora novedades y mejoras en la
5 PRIMERAS COMPUTADORAS BASADAS EN ARQUITECTURA VON NEUMANN
tcnica de la computacin electrnica ha sido
demostrado en el Laboratorio Nacional de Fsica, Teddington, donde ha sido diseado y construido por un pequeo equipo de matemticos
e ingenieros electrnicos investigadores sobre
el personal del laboratorio, asistido por ingenieros de produccin de la compaa elctrica
inglesa. El equipo construido hasta ahora en el
laboratorio es solo el modelo piloto de muchas
instalaciones muy grandes que se va a conocer como el motor de clculo automtico, pero
aunque es relativamente pequeo en volumen
y contiene solo 800 vlvulas termoinicas, es
una mquina de clculo muy rpido y verstil.
Los conceptos bsicos y principios abstractos de la computacin por una mquina fueron formuladas por el Dr A. M. Turing, en un
papel1 ledo ante la Sociedad Matemtica de
Londres en 1936, pero el trabajo en dichas mquinas en el Reino Unido se retras por la guerra. En 1945, se hizo una revisin al problema
en el laboratorio nacional de Fsica por el profesor J. R. Womersley. Se le adjunt al Dr. Turing un pequeo equipo de especialistas, y en
1947 la planicacin preliminar fue lo sucientemente avanzada como para justicar el establecimiento del grupo especial ya mencionado.
En abril de 1948, estos ltimos pasaron a estar en la seccin de electrnica del laboratorio,
bajo el cargo del Sr. F. M. Colebrook.
Denicin formal
Las computadoras son mquinas de arquitectura von
Neumann cuando:
1. Tanto los programas como los datos se almacenan en
una memoria en comn. Esto hace posible la ejecucin de comandos de la misma forma que los datos.
4 Estructura clsica de las mquinas von Neumann
Una mquina Von Neumann, al igual que prcticamente
todos los computadores modernos de uso general, consta
de cuatro componentes principales:
1. Dispositivo de operacin (DO), que ejecuta instrucciones de un conjunto especicado, llamado sistema (conjunto) de instrucciones, sobre porciones
de informacin almacenada, separada de la memoria del dispositivo operativo (aunque en la arquitectura moderna el dispositivo operativo consume ms
memoria -generalmente del banco de registros-), en
la que los operandos son almacenados directamente
en el proceso de clculo, en un tiempo relativamente
corto
2. Unidad de control (UC), que organiza la implementacin consistente de algoritmos de decodicacin de instrucciones que provienen de la memoria
del dispositivo, responde a situaciones de emergencia y realiza funciones de direccin general de todos
los nodos de computacin. Por lo general, el DO y
la UC conforman una estructura llamada CPU. Cabe sealar que el requisito es consistente, el orden
de la memoria (el orden del cambio de direccin en
el contador de programa) es fundamental a la hora
de la ejecucin de la instruccin. Por lo general, la
arquitectura que no se adhiere a este principio no se
considera von Neumann
3. Memoria del dispositivo un conjunto de celdas
con identicadores nicos (direcciones), que contienen instrucciones y datos.
4. Dispositivo de E/S (DES), que permite la comunicacin con el mundo exterior de los computadores,
son otros dispositivos que reciben los resultados y
que le transmiten la informacin al computador para su procesamiento.
2. Cada celda de memoria de la mquina se identica
con un nmero nico, llamado direccin.
5 Primeras computadoras basadas
en arquitectura von Neumann
3. Las diferentes partes de la informacin (los comandos y los datos) tienen diferente modos de uso, pero
la estructura no se representa en memoria de manera
codicada.
La primera saga se basaba en un diseo que fue utilizado
por muchas universidades y empresas para construir sus
computadoras.[12] Entre estas, solo ILLIAC y ORDVAC
tenan un conjunto de instrucciones compatible.
4. Cada programa se ejecuta de forma secuencial que,
en el caso de que no haya instrucciones especiales,
comienza con la primera instruccin. Para cambiar
esta secuencia se utiliza el comando de control de
transferencia.
Mquina Experimental de Pequea Escala de Mnchester (SSEM), apodada Baby (Universidad de
Mnchester, Inglaterra) hizo su primera ejecucin
exitosa de un programa almacenado el 21 de junio
de 1948.
5
EDSAC (Universidad de Cambridge, Inglaterra) fue
el primer computador electrnico prctico de programa almacenado (mayo de 1949)
Manchester Mark I (Universidad de Mnchester, Inglaterra) Desarrollado a partir de la SSEM (junio de
1949)
CSIRAC (Consejo de Investigacin Cientca e Industrial) Australia (noviembre de 1949)
EDVAC (Laboratorio de Investigacin Balstica,
Laboratorio de Informtica de Aberdeen Proving
Ground, 1951)
ORDVAC (U-Illinois) en Aberdeen Proving
Ground, Maryland (completado en noviembre de
1951)[13]
IAS machine en Princeton University (enero 1952)
MANIAC I en Laboratorio Cientco Los lamos
(marzo de 1952)
ILLIAC en la Universidad de Illinois, (septiembre
de 1952)
AVIDAC en Laboratorios Argonne National (1953)
ORACLE en Laboratorio Nacional de Oak Ridge
(junio de 1953)
JOHNNIAC en RAND Corporation (enero de
1954)
BESK en Estocolmo (1953)
BESM-1 en Mosc (1952)
ledas desde una cinta de papel debido a su memoria
limitada.[15]
La Manchester SSEM (la beb) fue la primera
computadora completamente electrnica que ejecutaba un programa almacenado. Se corri un programa de factoraje durante 52 minutos el 21 junio de
1948, despus de ejecutar un simple programa de
divisin y un programa para demostrar que dos nmeros eran primos entre s.
La ENIAC fue modicada para funcionar como un
computador primitivo con programa almacenado de
solo lectura (usando la tabla de funciones de programa ROM) y se demostr como tal el 16 de septiembre de 1948, ejecutando un programa de Adele
Goldstine para von Neumann.
La BINAC corri algunos programas de prueba en
febrero, marzo y abril de 1949, aunque no se termin
hasta septiembre de 1949.
La Manchester Mark I desarrollada basada en el proyecto SSEM. En abril de 1949, con el n de para
ejecutar programas, se hizo disponible una versin
intermedia de la Mark 1, pero no se termin hasta
octubre de 1949.
La EDSAC corri su primer programa el 6 de mayo
de 1949.
La EDVAC fue presentada en agosto de 1949, pero tuvo problemas que la mantena de su puesta en
funcionamiento regular hasta 1951.
DASK en Dinamarca (1955)
La CSIR Mark I corri su primer programa en noviembre de 1949.
PERM en Mnich (1956?)
La SEAC fue demostrada en abril de 1950.
SILLIAC en Sdney (1956)
La Pilot ACE corri su primer programa el 10 de
mayo 1950 y fue demostrada en diciembre de 1950
WEIZAC en Rehovoth (1955)
La SWAC se complet en julio de 1950.
Primeras computadoras de programa almacenado
La Computadora Whirlwind se complet en diciembre de 1950 y estuvo en uso real en abril de 1951.
La ERA 1101 (ms tarde la ERA 1101/UNIVAC
1101 comercial) se instal en diciembre de 1950.
La informacin de la fecha en la siguiente cronologa es
difcil de establecer en el orden correcto. Algunas fechas
son de la primera ejecucin de un programa de pruebas,
algunas fechas son de la primera vez que el equipo se de- 7 Evolucin
mostr o complet, y algunas fechas son de la primera
entrega o instalacin.
A lo largo de las dcadas de los aos 1960 y 1970, las
computadoras hicieron, en general, tanto ms pequeas
La IBM SSEC tena la capacidad para tratar instruc- como rpidas, lo que llev a algunas evoluciones en su arciones como datos, y se demostr pblicamente el quitectura. Por ejemplo, el mapeado en memoria de E/S
27 de enero de 1948. Esta capacidad fue reivindi- permiti que los dispositivos de entrada y salida sean tracada en una patente estadounidense.[14] Sin embar- tados de la misma como la memoria.[16] Un nico bus de
go, fue parcialmente electromecnica, no totalmen- sistema podra ser utilizado para proporcionar un sistema
te electrnica. En la prctica, las instrucciones eran modular con un menor coste. A veces esto se denomina
10 VASE TAMBIN
Memory
Control bus
Address bus
Data bus
System bus
CPU
Input and
Output
Evolucin de la arquitectura del bus simple del sistema
racionalizacin de la arquitectura.[17] En las dcadas siguientes, los microcontroladores sencillos seran algunas
veces omitir caractersticas del modelo a menor costo y
tamao. Las computadoras ms grandes aaden caractersticas para un mayor rendimiento.
Cuello de botella de von Neumann (von Neumann bottleneck)
El canal de transmisin de los datos compartido entre
CPU y memoria genera un cuello de botella de Von Neumann, un rendimiento limitado (tasa de transferencia de
datos) entre la CPU y la memoria en comparacin con
la cantidad de memoria. En la mayora de computadoras modernas, la velocidad de comunicacin entre la memoria y la CPU es ms baja que la velocidad a la que
puede trabajar esta ltima, reduciendo el rendimiento del
procesador y limitando seriamente la velocidad de proceso ecaz, sobre todo cuando se necesitan procesar grandes cantidades de datos. La CPU se ve forzada a esperar
continuamente a que lleguen los datos necesarios desde o
hacia la memoria. Puesto a que la velocidad de procesamiento y la cantidad de memoria han aumentado mucho
ms rpidamente que el rendimiento de transferencia entre ellos, el cuello de botella ha vuelto ms que un problema, un problema cuya gravedad aumenta con cada nueva
generacin de CPU.
la vez en vez de fomentarnos el pensar en unidades conceptuales mayores. Entonces la programacin es bsicamente la planicacin del
enorme trco de palabras que cruzan el cuello
de botella de von Neumann, y gran parte de ese
trco no concierne a los propios datos, sino a
dnde encontrar stos.[18][19]
El problema de rendimiento puede ser aliviado (hasta
cierto punto) utilizando diversos mecanismos. Ofreciendo una memoria cach entre la CPU y la memoria principal, proporcionando cachs separadas o vas de acceso independientes para datos e instrucciones (la llamada arquitectura Harvard modicada), utilizando algoritmos y lgica de predictor de saltos y proporcionando
una limitada pila de CPU u otro en el chip de memoria
reutilizable para reducir el acceso a memoria, son cuatro de las maneras que se dispone para aumentar el rendimiento. El problema tambin se puede eludirse, cierta medida, usando computacin paralela, utilizando por
ejemplo la arquitectura de acceso a memoria no uniforme (NUMA), este enfoque es comnmente empleado
por las supercomputadoras. Est menos claro si el cuello de botella intelectual que criticaba Backus ha cambiado mucho desde 1977. La solucin que propuso Backus
no ha tenido inuencia importante.[cita requerida] La moderna programacin funcional y la programacin orientada a
objetos se preocupan mucho menos de empujar un gran
nmero de palabras hacia un lado a otro que los lenguajes anteriores como era Fortran, pero internamente, esto
sigue siendo lo que las computadoras pasan gran parte
del tiempo haciendo, incluso las supercomputadoras altamente paralelas.
A partir de 1996, un estudio de referencia de base de datos se encontr que tres de cada cuatro ciclos de CPU se
dedican a la espera de memoria. Los investigadores esperan que el aumento del nmero de instrucciones simultneas arroye con el multihilo o el multiprocesamiento de
un solo chip har que este cuello de botella an peor. [20]
9 Procesadores no von Neumann
El National Semiconductor (Semiconductor nacional)
en 1986; tiene una arquitectura HarEl trmino cuello de botella de von Neumann fue acu- COP8 se introdujo
[21][22]
vard
modicada.
ado por John Backus en su conferencia de la concesin
del Premio Turing ACM de 1977. Segn Backus:
Tal vez el tipo ms comn de estructura no von Neumann
se utiliza en las computadoras modernas es la memoria de
contenido direccionable (CAM).
Seguramente debe haber una manera menos primitiva de realizar grandes cambios en la
memoria, que empujando tantas palabras hacia
un lado y otro del cuello de botella de von Neumann. No solo es un cuello de botella para el
trco de datos, sino que, ms importante, es
un cuello de botella intelectual que nos ha mantenido atados al pensamiento de una palabra a
Cach (informtica)
Memoria
Principal
ndice
0
1
2
3
Datos
xyz
pdq
abc
rgf
Memoria
Cach
computadoras (por ejemplo, las traducciones de libros de
Andrew S. Tanenbaum, John L. Hennessy y David A. Patterson) se emplea siempre la palabra sin tilde, por ser anglosajona, y debe por ello escribirse en cursiva (cache).
ndice Marca Datos
0
1
2 abc
0 xyz
2 RAM cach y cach de disco
Diagrama de una memoria cach de CPU.
La unidad cach es un sistema especial de almacenamiento de alta velocidad. Puede ser tanto un rea reservada de
En informtica, la cach es la memoria de acceso rpido la memoria principal como un dispositivo de almacenade una computadora, que guarda temporalmente los datos miento de alta velocidad independiente.
recientemente procesados (informacin).[1]
Hay dos tipos de cach frecuentemente usados en
computadoras personales: memoria cach y cach de disco.
La memoria cach es un bfer especial de memoria que
poseen las computadoras, que funciona de manera semejante a la memoria principal, pero es de menor tamao y
de acceso ms rpido. Es usada por el microprocesador
para reducir el tiempo de acceso a datos ubicados en la
memoria principal que se utilizan con ms frecuencia.
Una memoria cach, a veces llamada RAM cach,
es una parte de RAM esttica (SRAM) de alta velocidad, ms rpida que la RAM dinmica (DRAM) usada
como memoria principal. La memoria cach es efectiLa cach es una memoria que se sita entre la unidad cen- va dado que los programas acceden una y otra vez a los
tral de procesamiento (CPU) y la memoria de acceso alea- mismos datos o instrucciones. Guardando esta informacin en SRAM, la computadora evita acceder a la lenta
torio (RAM) para acelerar el intercambio de datos.
DRAM.
Cuando se accede por primera vez a un dato, se hace una
copia en la cach; los accesos siguientes se realizan a di- Cuando se encuentra un dato en la cach, se dice que se
cha copia, haciendo que sea menor el tiempo de acceso ha producido un acierto, siendo un cach juzgado por su
medio al dato. Cuando el microprocesador necesita leer o tasa de aciertos (hit rate). Los sistemas de memoria caescribir en una ubicacin en memoria principal, primero ch usan una tecnologa conocida por cach inteligente
verica si una copia de los datos est en la cach; si es as, en la cual el sistema puede reconocer cierto tipo de datos
el microprocesador de inmediato lee o escribe en la me- usados frecuentemente. Las estrategias para determinar
moria cach, que es mucho ms rpido que de la lectura qu informacin debe ser puesta en la cach constituyen
uno de los problemas ms interesantes en la informtica.
o la escritura a la memoria principal.[2]
Algunas memorias cach estn construidas en la arquitectura de los microprocesadores. Por ejemplo, el microprocesador Pentium II: tiene 32 KiB de cach de primer
1 Etimologa y ortografa
nivel (level 1 o L1) repartida en 16 KiB para datos y 16
KiB para instrucciones; la cach de segundo nivel (level
La palabra procede de la voz inglesa cache (/k/; es- 2 o L2) es de 512 KiB y trabaja a mitad de la frecuencia
condite secreto para guardar mercancas, habitualmente del microprocesador. La cach L1 est en el ncleo del
de contrabando), y esta a su vez de la francesa cache, microprocesador, y la L2 est en una tarjeta de circuito
(/ka/; escondrijo o escondite). A menudo, en espaol impreso junto a ste.
se escribe con tilde sobre la e, del mismo modo como La cach de disco trabaja sobre los mismos principios
se vena escribiendo con anterioridad el neologismo ca- que la memoria cach, pero en lugar de usar SRAM de alch (distincin o elegancia o cotizacin de un artis- ta velocidad, usa la convencional memoria principal. Los
ta), proveniente tambin del francs, pero no de la mis- datos ms recientes del disco duro a los que se ha accema palabra, sino de cachet, (/ka'/; sello o salario). dido (as como los sectores adyacentes) se almacenan en
La Real Academia Espaola, en su Diccionario de la un bfer de memoria. Cuando el programa necesita aclengua espaola, slo reconoce la palabra con tilde,[1] ceder a datos del disco, lo primero que comprueba es la
aunque en la literatura especializada en arquitectura de cach de disco para ver si los datos ya estn ah. La cach
1
DISEO
de disco puede mejorar notablemente el rendimiento de 4 Diseo
las aplicaciones, dado que acceder a un byte de datos en
RAM puede ser miles de veces ms rpido que acceder a En el diseo de la memoria cach se deben considerar vaun byte del disco duro.
rios factores que inuyen directamente en el rendimiento
de la memoria y por lo tanto en su objetivo de aumentar la velocidad de respuesta de la jerarqua de memoria.
Estos factores son las polticas de ubicacin, extraccin,
3 Composicin interna
reemplazo y escritura.
Los datos en la memoria cach se alojan en distintos niveles segn la frecuencia de uso que tengan, estos niveles
4.1
son los siguientes:
3.1
Memoria cach nivel 1 (Cach L1)
Tambin llamada memoria interna, se encuentra en el ncleo del microprocesador. Es utilizada para acceder a datos importantes y de uso frecuente, es el nivel en el que el
tiempo de respuesta es menor. Su capacidad es de hasta
128 kb. Este nivel se divide en dos:
Nivel 1 Data Cache: Se encarga de almacenar datos
usados frecuentemente y cuando sea necesario volver a utilizarlos, accede a ellos en muy poco tiempo,
por lo que se agilizan los procesos.
Nivel 1 Instruction Cache: Se encarga de almacenar
instrucciones usadas frecuentemente y cuando sea
necesario volver a utilizarlas, inmediatamente las recupera, por lo que se agilizan los procesos.
3.2
Memoria cach nivel 2 (Cach L2)
Se encarga de almacenar datos de uso frecuente. Es ms
lenta que la cach L1, pero ms rpida que la memoria
principal (RAM). Se encuentra en el procesador, mas no
en su ncleo. Genera una copia del nivel 1.
Cach Exclusivo: Los datos solicitados se eliminan
de la memoria cach L2.
Poltica de ubicacin
Decide dnde debe colocarse un bloque de memoria principal que entra en la memoria cach. Las ms utilizadas
son:
Directa: al bloque i-simo de memoria principal le
corresponde la posicin i mdulo n, donde n es el nmero de bloques de la memoria cach. Cada bloque
de la memoria principal tiene su posicin en la cach y siempre en el mismo sitio. Su inconveniente
es que cada bloque tiene asignada una posicin ja
en la memoria cach y ante continuas referencias a
palabras de dos bloques con la misma localizacin
en cach, hay continuos fallos habiendo sitio libre
en la cach.
Asociativa: Los bloques de la memoria principal
se alojan en cualquier bloque de la memoria cach,
comprobando solamente la etiqueta de todos y cada
uno de los bloques para vericar acierto. Su principal inconveniente es la cantidad de comparaciones
que realiza.
Asociativa por conjuntos: Cada bloque de la memoria principal tiene asignado un conjunto de la cach, pero se puede ubicar en cualquiera de los bloques que pertenecen a dicho conjunto. Ello permite
mayor exibilidad que la correspondencia directa y
menor cantidad de comparaciones que la totalmente
asociativa.
Cach Inclusivo: Los datos solicitados se quedan en 4.2 Poltica de extraccin
la memoria cach L2.
La poltica de extraccin determina cundo y qu bloque de memoria principal hay que traer a memoria cach.
3.3 Memoria cach nivel 3 (Cach L3)
Existen dos polticas muy extendidas:
Esta memoria se encuentra en algunos procesadores modernos y genera una copia a la L2. Es ms rpida que la
memoria principal (RAM), pero ms lenta que L2. En
esta memoria se agiliza el acceso a datos e instrucciones
que no fueron localizadas en L1 o L2.
Es generalmente de un tamao mayor y ayuda a que el
sistema guarde gran cantidad de informacin agilizando
las tareas del procesador.
Por demanda: un bloque slo se trae a memoria cach cuando ha sido referenciado y no se encuentre
en memoria cach.
Con prebsqueda: cuando se referencia el bloque
i-simo de memoria principal, se trae adems el bloque (i+1)-simo. Esta poltica se basa en la propiedad de localidad espacial de los programas.
5.1
4.3
Mejorar el rendimiento.
Poltica de reemplazo
3
tomado en cuenta distintas tcnicas que ayudarn a que
haya menos reincidencia de fallos.
Determina qu bloque de memoria cach debe abandonarla cuando no existe espacio disponible para un bloque
5.1
entrante. Bsicamente hay cuatro polticas:
Aleatoria: el bloque es reemplazado de forma
aleatoria.
FIFO: se usa el algoritmo First In First Out (FIFO)
(primero en entrar primero en salir) para determinar
qu bloque debe abandonar la cach. Este algoritmo
generalmente es poco eciente.
Mejorar el rendimiento.
Reducir fallos en la cach (miss rate).
Reducir penalizaciones por fallo (miss penalti).
Reducir el tiempo de acceso en caso de acierto
(hit time).
Menos recientemente usado (LRU): Sustituye el 5.2 Reduccin de fallos
bloque que hace ms tiempo que no se ha usado en
la cach, traeremos a cach el bloque en cuestin y 5.2.1 Tipos de fallos
lo modicaremos ah.
Existen 3 tipos de fallos en una memoria cach:
Menos frecuencias usadas (LFU): Sustituye el
bloque que ha experimentado menos referencias.
Forzosos (Compulsory o Cold): En el primer ac-
4.4
Poltica de Actualizacin o Escritura
Determinan el instante en que se actualiza la informacin
en memoria principal cuando se hace una escritura en la
memoria cach.
Escritura Inmediata: Se escribe a la vez en Memoria cach y Memoria principal. Desventaja: genera
cuello de botella.
ceso a un bloque ste no se encuentra en la cach
(fallos de arranque en fro o de primera referencia).
Capacidad (Capacity): La cach no puede contener todos los bloques necesarios durante la ejecucin
de un programa.
Conicto (Conict): Diferentes bloques deben ir
necesariamente al mismo conjunto o lnea cuando
la estrategia es asociativa por conjuntos o de correspondencia directa (fallos de colisin).
Escritura Aplazada: Actualiza nicamente la Memoria cach luego de la modicacin de sus datos. 5.2.2 Tcnicas para reducir fallos
Cuando el bus de sistema se encuentra libre, actualiza la memoria principal. Esto puede generar que Existen diversas tcnicas para reducir esos fallos en la calos perifricos lean datos errneos, pero es poco fre- ch, algunas son:
cuente.
Incrementar el tamao del bloque. Ventajas: Se
Escritura Obligada: Actualiza nicamente la Mereducen los fallos forzosos como sugiere el princimoria cach luego de la modicacin de sus datos.
pio de localidad espacial. Inconvenientes: Aumentan
Cuando no hay otra alternativa, actualiza la memolos fallos por conicto al reducirse el nmero de bloria principal. Esto puede producirse por cualquiera
ques de la cach y los fallos de capacidad si la cach
de estas causas:
es pequea. La penalizacin por fallo aumenta al incrementarse el tiempo de transferencia del bloque.
1. Se accede a la posicin de memoria principal
modicada en la cach. Antes de permitir la
lectura/escritura, debe actualizarse el dato en la
memoria principal.
2. Debe eliminarse una lnea de la cach, entonces se
actualiza la memoria principal (en caso de ser necesario) antes de proceder a la eliminacin.
Optimizacin
Para una optimizacin en la manera en que se ingresa a la
memoria cach y cmo se obtienen datos de ella, se han
Incremento de la asociatividad. Ventajas: Se reducen los fallos por conicto. Inconveniente: Aumenta el tiempo de acceso medio al incrementarse el
tiempo de acierto (multiplexin). Tambin aumenta
el coste debidos a los comparadores
Cach vctima. Consiste en aadir una pequea cach totalmente asociativa (1-5 bloques) para almacenar bloques descartados por fallos de capacidad
o conicto. En caso de fallo, antes de acceder a la
memoria principal se accede a esta cach. Si el bloque buscado se encuentra en ella se intercambian los
bloques de ambas cachs.
8
Optimizacin del compilador. El compilador
re-ordena el cdigo de manera que por la forma en
cmo se hacen los accesos se reducen los fallos de
cach.
ENLACES EXTERNOS
INTRODUCCIN
El subsistema de ENTRADA/SALIDA (E/S) suministra al computador un mecanismo eficiente de
comunicacin entre el procesador central y el entorno exterior.
La conexin de dispositivos perifricos a un computador no puede llevarse a cabo de forma directa
haciendo uso del bus del procesador, esta restriccin es debida fundamentalmente a tres razones:
Existe una gran variedad de dispositivos con distintos modos de operacin.
El ritmo de transferencia de datos es, en casi todos los casos, mucho menor que hay entre la CPU y
la memoria principal.
En ocasiones, el perifrico requiere que los datos le sean suministrados en formatos distintos al
utilizado por la CPU.
Los perifricos de almacenamiento, llamados tambin perifricos de memoria auxiliar, son unos
dispositivos en los que se almacenan, temporal o permanente, los datos que va a manejar la CPU
durante el proceso en curso, y que no es posible mantener en la memoria principal. Suponen un
apoyo fundamental a la computadora para realizar su trabajo habitual.
Los perifricos de almacenamiento se pueden clasificar de acuerdo al modo de acceso a los datos
que contienen:
Acceso secuencial.
Acceso aleatorio.
La Interfaz de E/S de las aplicaciones es la que define el modelo de E/S que ven los usuarios, por lo
que cuando se disea el Sistema Operativo se debe tener en cuenta decisiones relativas a la
funcionalidad que se va ha ofrecer al exterior: Nombres Independientes de los Dispositivos, E/S No
Bloquean o Asncronas, Control de Acceso a Dispositivos, Indicadores de Error y Uso de Estndares.
DESARROLLO
1.- QUE SE REFIERE EL TRMINO INTERFACE (E/S)
La interfaces de entrada y de salida proporciona un mtodo para transferir informacin entre
dispositivos de (E/S) de almacenamiento interno y de (E/S) externas. Los perifricos conectados a
una computadora necesitan enlac de comunicacin especial para funcionar como una interfaces con
la unidad de procesamiento central.
El propsito del enlace de comunicacin es resolver las diferencias que existen en la computadora
central y de cada perifrico.
Se llama interfaces porque se comunica tanto con el canal del procesador como con el dispositivo
perifrico.
Las funciones de la interfase son almacenar los datos y realizar las conversiones que se le requieran.
Tambin detecta errores en la transmisin y es capaz de reiniciar la transaccin en casos de error.
Ms an, la interfase puede testear, arrancar y detener el dispositivo segn las directivas impartidas
por la CPU. En algunos casos la interfase puede consultar a la CPU si algn dispositivo est
requiriendo atencin urgente.
Existen distintos tipos de comandos que circulan por el bus, a saber:
- De control: son para activar el perifrico y decirle que debe hacer (por ej. rebobinar una cinta);
varan segn cada tipo de perifrico.
- De verificacin: verifican las diversas condiciones de estado en la interfase o en el perifrico (por ej.,
una vez seleccionada la ruta la CPU puede desear verificarla para ver si existe energa (power on) o
que el perifrico est en lnea (on line).
- Salida de datos: Hace que la interfase responda tomando un tem de datos del bus.
- Entrada de datos: la interfase recibe un tem de datos del perifrico y lo coloca en su propio registro
separador, avisa a la CPU, la que emite el comando de entrada de datos el cual transfiere el
contenido de ese registro al bus de donde es tomado por la CPU y almacenado en su registro
acumulador. Ejemplo: Salida de datos a una unidad de cinta.
El computador arranca la unidad de cinta emitiendo un comando de control. El procesador entonces
monitorea el estado de la cinta por medio de comandos de verificacin. Cuando la cinta est en
posicin correcta, el computador emite un comando de salida de datos. La interfase responde a la
direccin y a las lneas de comando y transfiere los datos de la lnea de datos del bus de E/S a su
registro separador. La interfase se comunica entonces para aceptar un nuevo tem de datos para
almacenar en la cinta.
2.- DIGA 2 DIFERENCIAS ENTRE E/S AISLADA Y E/S MAPEADA EN MEMORIA
E/S AISLADA
1) En la configuracin E/S aislada, la Cpu tiene instrucciones distintas de entrada y salida, y cada una
de estas instrucciones se asocia con la direccin de un registro de interfase.
Cuando la CPU recupera y decodifica el cdigo de operacin de una instruccin de entrada y salida
coloca la direccin asociada con la instruccin dentro de las lneas de direccin comunes.
2) El mtodo E/S aislada separa la memoria y las direcciones de E/S para que los valores de la
direccin de memoria no se afecten con la asignacin de direccin de interfaces, porque cada una
tiene espacio de direccionamiento.
E/S MAPEADA EN MEMORIA
1) En una organizacin de E/S mapeada de memoria no hay instrucciones especifica de entrada o
salida. La CPU puede manipular datos de entrada y salida que residen en registros de interfaces con
la misma instruccin que se utiliza para manipular palabras de memoria: Cada interfase se organiza
como un conjunto de registros que responden a peticiones de lectura y escritura en el espacio de
direccionamiento normal.
2) La computadora emplea solo un conjunto de seales de lectura y escritura y no hacen diferencia
entre direcciones de memoria y entrada y salida. La computadora trata a un registro de interfaces
como parte del sistema de memoria las direcciones asignadas para registro de interfaces no pueden
utilizarse para palabras de memoria lo cual reducen rango de direcciones de memoria disponible.
3.-DIGA 2 DIFERENCIAS ENTRE CONTROL DE HABILITACION Y RECONOCIMIENTO MUTUO
CONTROL DE HABILITACION
Diferencias:
Pulso de Habilitacin
Durante una transmisin asncrona, las dos unidades que desean comunicarse no comparten
una frecuencia de reloj comn, por lo que requieren el envo de una seal que avise a la unidad
receptora cuando se ests transmitiendo los datos. Esto se puede lograr a travs del mtodo del
pulso de habilitacin, el cual es provedo de una unidad a otra con el fin de anunciar cuando se
realiza la transferencia de los datos.
Este mtodo emplea una lnea de control (estroboscopio) que permitir temporizar la
transferencia asncrona de los datos. El pulso puede ser enviado tanto por la unidad fuente como por
la unidad destino de manera indiferente.
1) Cuando el pulso es enviado por la unidad fuente, sta coloca los datos en el canal de los
datos y seguido de un breve retraso procede a activar la habilitacin, tanto la seal como la
informacin permanecen en el canal el tiempo necesario para que la unidad destino los reciba y
almacene. Luego la fuente retira el contenido para dejar libre el canal de datos y as desactivar el
pulso de habilitacin.
2) Cuando la seal es enviada por la unidad destino es para avisarle a la unidad fuente que
ya puede transmitir la informacin, sta responder colocando los datos en el canal, los cuales
debern permanecer all durante un tiempo que se considere suficiente para que la unidad destino los
acepte, inmediatamente la unidad destino activa el pulso de habilitacin y la unidad fuente retira los
datos de la lnea de transmisin.
En la mayor parte de las computadoras el pulso de reloj est bajo el control del la Unidad central de
procesamiento la cual se encarga de informar a los dispositivos perifricos de entrada como debern
transmitir la informacin necesaria.
RECONOCIMIENTO MUTUO
Diferencias:
Reconocimiento Mutuo.
A travs del mtodo del pulso de habilitacin las unidades a comunicarse pueden
temporizarse, sin embargo no existe una seal que le indique a la unidad fuente que la unidad destino
recibi los datos, ni una que le indique a la unidad destino que la unidad fuente coloc la informacin
en el canal. De all surge la tcnica de reconocimiento mutuo que emplea una doble lnea de
transmisin con el objetivo de enviar un mensaje de confirmacin entre los dos entes que les brinden
seguridad e integridad en la transmisin. Una lnea (de fuente a destino) le anuncia a la unidad
receptora que existen datos vlidos en el canal; la otra lnea (destino-fuente) avisa a la unidad
emisora que los datos sern aceptados.
1) Cuando la seal es enviada por la unidad fuente las dos lneas de transmisin se separan
en: datos vlidos (direccin: fuentedestino) y datos aceptados (en direccin destino- fuente). El
proceso que se lleva a cabo es el siguiente: la fuente coloca los datos en el canal y activa la seal de
datos vlidos, una vez que el destino recibe la informacin devuelve la seal de datos aceptados
culminando la transferencia. La fuente retira los datos de las lneas de transmisin y deshabilita su
seal dejando as libre el canal. El destino deshabilita su seal de datos aceptados lo que anuncia la
disponibilidad de la misma para un prximo envo.
2) Cuando la transmisin se realiza desde la unidad destino la lnea de reconocimiento mutuo
datos aceptados cambia su nombre por preparada para datos. La secuencia seguida es la siguiente:
la unidad receptora habilita la seal preparada para datos lo que da pie a que la unidad fuente
coloque los datos en el canal y active su seal de datos vlidos. Una vez que el receptor recibe los
bits de carcter deshabilita su seal para finalizar la transferencia; la unidad fuente desactiva la lnea
datos vlidos devolviendo al canal a su estado inicial.
El mtodo de reconocimiento mutuo proporciona confiabilidad en la transmisin ya que hay
mayor comunicacin entre las unidades, adems si se produce un error en alguna de ellas no hay
problema ya que cuenta con un mecanismo de tiempo transcurrido que alarma si la transferencia no
se realiza en tiempo transcurrido predeterminado, el cual es implantado por un reloj interno que
inicializa el conteo cuando alguna de las unidades activa sus seales de habilitacin y reconocimiento
mutuo.
4.- DIGA UNA DIFERENCIA Y UNA SEMEJANZA ENTRE TRASFERENCIA SINCRONA Y
ASICRONA SERIA DE DATOS
Diferencia
TRANSMISIN ASNCRONA
La manera ms fcil de conseguir sincronismo es enviando pequeas cantidades de bits a la vez,
sincronizndose al inicio de cada cadena. Esto tiene el inconveniente de que cuando no se transmite
ningn carcter, la lnea est desocupada .Para detectar errores, se utiliza un bit de paridad en cada
cadena. Usando la codificacin adecuada , es posible hacer corresponder un 0 ( por ejemplo ) a
cuando la lnea est parada ( con NRZ , cada vez que se quiera comenzar a transmitir una cadena ,
se usa un 1 como seal ) .Si el receptor es un tanto ms rpido o lento que el emisor , es posible que
incluso con cadenas cortas ( o tramas , que son las cadenas ms los bits adicionales de paridad y de
comienzo y parada ) se produzcan errores como el error de delimitacin de trama ( se leen datos
fuera de la trama al ser el receptor ms lento que el emisor ) o el error que se produce al introducirse
ruido en la transmisin de forma que en estado de reposo , el receptor crea que se ha emitido un dato
( el ruido ) .
TRANSMISIN SNCRONA
En este tipo de transmisin no hay bits de comienzo ni de parada, por lo que se transmiten bloques
de muchos bits. Para evitar errores de delimitacin, se pueden sincronizar receptor y emisor mediante
una lnea aparte (mtodo utilizado para lneas cortas) o incluyendo la sincronizacin en la propia
seal (codificacin Manchester o utilizacin de portadoras en seales analgicas). Adems de los
datos propios y de la sincronizacin, es necesaria la presencia de grupos de bits de comienzo y de
final del bloque de datos, adems de ciertos bits de correccin de errores y de control. A todo el
conjunto de bits y datos se le llama trama.
SEMEJANZA
Ambas trasmiten en bloques, cada una detecta errores de delimitacin, para sincronizar el receptor y
el emisor, ambas leen datos de trama, comparten una frecuencia de reloj comn y los bits se
trasmiten en forma contina a la velocidad que dictan los pulsos de reloj.
5.- COMO SE MIDE LA VELOCIDAD DE BAUDIOS
Las computadoras y sus diversos dispositivos perifricos, incluyendo los mdems, usan el mismo
alfabeto. Este alfabeto esta formado por solo dos dgitos, cero y uno; es por ello que se conoce como
sistema de dgito binario. A cada cero o uno se le llama bit, termino derivado de BInary digiT (dgito
binario).
BAUDIOS
Un baudio es una seal elctrica analgica o una onda. El ciclo de una onda analgica equivale a un
baudio. Una ciclo completo comienza en el cero voltios, va al voltaje ms alto baja hasta el voltaje
ms bajo pasando por el cero, y regresa a cero voltios de nuevo. Es una Unidad de medida utilizada
en comunicaciones. Hace referencia al nmero de intervalos elementales por segundo que supone
una seal. Velocidad con que se mide un mdem. <p>Velocidad de sealizacin de una lnea. Es la
velocidad de conmutacin, o el nmero de transiciones (cambios de voltaje o de frecuencia) que se
realiza por segundo. Slo a velocidades bajas, los baudios son iguales a los bits por segundo; por
ejemplo, 300 baudios equivalen a 300 bps. Sin embargo, puede hacerse que un baudio represente
ms de un bit por segundo.
Por ejemplo, el modem V.22bis genera 1,200 bps a 600 baudios.
Es una medida de la velocidad de modulacin, correspondiente al nmero de cambios en una seal
por segundo. Se suele hablar indistintamente de 'bits por segundo' y de 'baudios' habindose
convertido de hecho en falsos sinnimos. El nmero de bits por segundo dividido por el nmero de
bits de datos por seal da como resultado el nmero de baudios.
DIGA 2 DIFERENCIAS ENTRE LOS MODUS DE TRANSFERENCIA (E/S PROGRAMADA, E/S
POR INTERRUPCION Y DMA)
Mdulo de E/S
Cada controlador est a cargo de un tipo especfico de dispositivo.
Dependiendo del controlador, pueden estar varios dispositivos conectados al mismo
controlador.
El controlador se encarga de mover datos entre el dispositivo perifrico que controla y el
buffer de almacenamiento local. El tamao del buffer vara de un controlador a otro y depende
del dispositivo que controla.
DIFERENCIAS
E/S Programada
1)
Los datos se intercambian entre el CPU y el mdulo de E/S. El CPU ejecuta
un programa que controla directamente la operacin de E/S, incluyendo la
comprobacin del estado del dispositivo, el envo de la orden de lectura o
escritura y la transferencia del dato. Cuando el CPU enva la orden debe
esperar hasta que la operacin de E/S concluya. Si el CPU es ms rpido,
ste estar ocioso. El CPU es el responsable de comprobar peridicamente
el estado del mdulo de E/S hasta que encuentre que la operacin ha
finalizado.
2)
El dispositivo de E/S no tiene acceso directo a la memoria, una transferencia
de un dispositivo de E/S a memoria que la CPU ejecute varias instrucciones,
incluyendo una instruccin de entrada.
E/S MEDIANTE INTERRUPCIONES
1) El problema con E/S programada es que el CPU tiene que esperar un tiempo considerable
a que el mdulo de E/S en cuestin est preparado para recibir o transmitir los datos. El CPU debe
estar comprobando continuamente el estado del mdulo de E/S. Se degrada el desempeo del
sistema.
Una alternativa es que el CPU tras enviar una orden de E/S continu realizando algn trabajo
til. El mdulo de E/S interrumpir al CPU para solicitar su servicio cuando est preparado para
intercambiar datos. El CPU ejecuta la transferencia de datos y despus contina con el
procesamiento previo.
Se pueden distinguir dos tipos: E/S sncrona y E/S asncrona
E/S Sncrona: cuando la operacin de E/S finaliza, el control es retornado al proceso que la
gener. La espera por E/S se lleva a cabo por medio de una instruccin wait que coloca al
CPU en un estado ocioso hasta que ocurre otra interrupcin. Aquellas mquinas que no
tienen esta instruccin utilizan un loop. Este loop contina hasta que ocurre una interrupcin
transfiriendo el control a otra parte del sistema de operacin. Slo se atiende una solicitud de
E/S por vez. El sistema de operacin conoce exactamente que dispositivo est
interrumpiendo. Esta alternativa excluye procesamiento simultneo de E/S.
E/S Asncrona: retorna al programa usuario sin esperar que la operacin de E/S finalice. Se
necesita una llamada al sistema que le permita al usuario esperar por la finalizacin de E/S (si
es requerido). Tambin es necesario llevar un control de las distintas solicitudes de E/S. Para
ello el sistema de operacin utiliza una tabla que contiene una entrada por cada dispositivo de
E/S (Tabla de Estado de Dispositivos).
2) La ventaja de este tipo de E/S es el incremento de la eficiencia del sistema.
Mientras se lleva a cabo E/S, el CPU puede ser usado para procesar o para
planificar otras E/S. Como la E/S puede ser bastante lenta comparada con la
velocidad del CPU, el sistema hace un mejor uso de las facilidades.
DMA (Direct Memory Access)
La E/S con interrupciones, aunque ms eficiente que la E/S programada, tambin requiere la
intervencin del CPU para transferir datos entre la memoria y el mdulo de E/S.
Consideren el siguiente ejemplo. Cuando se va a leer una lnea desde un Terminal, el primer
carcter escrito es enviado al computador. Cuando el carcter es recibido por el controlador, ste
interrumpe al CPU. El CPU le da servicio a la interrupcin y luego continua con el proceso que estaba
ejecutando. Esto es posible cuando el dispositivo es muy lento comparado con el CPU. Entre un
carcter y otro el CPU lleva a cabo gran cantidad de procesamiento. Pero qu sucede cuando
estamos trabajando con dispositivos de E/S ms veloces; Tendramos interrupciones muy seguidas y
se estara desperdiciando mucho tiempo.
1) Se utiliza DMA para dispositivos de E/S de alta velocidad. E1 controlador del dispositivo
transfiere un bloque de datos desde o para sus buffers de almacenamiento a memoria directamente
sin intervencin del CPU. Solo se produce una interrupcin por bloque en lugar de tener una
interrupcin por cada byte (o palabra).
Por ejemplo, un programa solicita una transferencia de datos. El Sistema de Operacin busca
un buffer disponible. El controlador de DMA tiene sus registros actualizados con las direcciones de la
fuente y del destino y la longitud de la transferencia. Por lo general esta actualizacin es realizada por
el manejador de dispositivo (rutina). Se indica al controlador de DMA a travs de bits de control en un
registro de control pare que inicie la operacin de E/S. Mientras tanto el CPU puede llevar a cabo
otras operaciones. El controlador de DMA interrumpe el CPU cuando la transferencia ha sido
terminada. El CPU interviene solo al comienzo y al final de la transferencia.
2) la transferencia de datos bajo E/S programada es entre la CPU y un perifrico transfiere
datos hacia adentro y hacia fuera de la unidad de memoria por medio del canal de memoria, DMA
solicita ciclos de memoria concede la solicitud, el DMA transfiere los datos directamente a la
memoria. La CPU solo retrasa su operacin de acceso de memoria para transferencia directa.
7.-DIGA UNA DIFERENCIA Y UNA SEMEJANZA ENTRE TRASFERENCIA POR RFAGA Y POR
ROBO DE CICLO
POR ROBO DE CICLO: se basa en usar uno o ms ciclos de CPU por cada instruccin que
se ejecuta (de ah el nombre). De esta forma se consigue una alta disponibilidad del bus del
sistema para la CPU, aunque, en consecuencia, la transferencia de los datos ser
considerablemente lenta. Este mtodo es el que se usa habitualmente ya que la interferencia
con la CPU es muy baja.
POR RFAGAS: consiste en enviar el bloque de datos solicitado mediante una rfaga,
ocupando el bus del sistema hasta finalizar la transmisin. As se consigue la mxima
velocidad, sin embargo la CPU no podr usar el bus durante todo ese tiempo, por lo que
permanecera inactiva
SEMEJANZAS:
Ambas transfieren al DMA en palabras de memorias en el cual debe de retornar el control a los
canales de memoria, donde permite la transferencia de E/S de la memoria directa en un ciclo de
memoria.
CONCLUSIN
Se dice que los dispositivos que tienen control directo de la unidad de procesamiento estn
conectados en lnea. Estos dispositivos transfieren informacin binaria dentro y fuera de la unidad de
memoria cuando se recibe un comando de la CPU.
Los perifricos conectados a una computadora necesitan enlaces de comunicacin especiales para
conectarlos con la CPU. El objetivo de un enlace de comunicacin consiste en resolver las diferencias
que existen entre la computadora central y cada dispositivo perifrico. Las diferencias principales son:
Los perifricos son dispositivos electromagnticos y su forma de operacin es diferente de
la CPU y la memoria los cuales son dispositivos electrnicos. Por lo tanto, quiz se requiera
una conversin de valores de seales.
La velocidad de transferencia de datos de los dispositivos perifricos suele ser menor que la
CPU. En consecuencia, puede necesitarse un mecanismo de sincronizacin.
Los cdigos y formatos de datos en los dispositivos perifricos difieren del formato de
palabras en la CPU y la memoria.
La transferencia de datos entre dispositivos de almacenamiento veloz como un disco magntico y la
memoria, a menudo se ve limitada por la velocidad del CPU. Durante la transferencia DMA la CPU
esta desocupada y no tiene control de los buses de la memoria
Memoria de acceso aleatorio
La memoria de acceso aleatorio (Random Access Memory, RAM) se utiliza como memoria de trabajo de
computadoras para el sistema operativo, los programas y
la mayor parte del software. En la RAM se cargan todas
las instrucciones que ejecuta la unidad central de procesamiento (procesador) y otras unidades del computador.
Se denominan de acceso aleatorio porque se puede leer
o escribir en una posicin de memoria con un tiempo de
espera igual para cualquier posicin, no siendo necesario seguir un orden para acceder (acceso secuencial) a la
4MiB de memoria RAM para un computador VAX de nales
informacin de la manera ms rpida posible.
de los 70. Los integrados de memoria DRAM estn agrupados
Durante el encendido de la computadora, la rutina POST arriba a derecha e izquierda.
verica que los mdulos de RAM estn conectados de
manera correcta. En el caso que no existan o no se detecten los mdulos, la mayora de tarjetas madres emiten
una serie de sonidos que indican la ausencia de memoria principal. Terminado ese proceso, la memoria BIOS
puede realizar un test bsico sobre la memoria RAM indicando fallos mayores en la misma.
Historia
Mdulos de memoria tipo SIPP instalados directamente sobre la
placa base.
dispositivos con una capacidad de memoria muy pequea. Antes que eso, las computadoras usaban rels y lneas
de retardo de varios tipos construidas para implementar
las funciones de memoria principal con o sin acceso aleatorio.
En 1969 fueron lanzadas una de las primeras memorias
RAM basadas en semiconductores de silicio por parte de
Intel con el integrado 3101 de 64 bits de memoria y para el siguiente ao se present una memoria DRAM de
1024 bytes, referencia 1103 que se constituy en un hito, ya que fue la primera en ser comercializada con xito,
Integrado de silicio de 64 bits sobre un sector de memoria de lo que signic el principio del n para las memorias de
ncleo magntico. En comparacin con los integrados de
ncleo magntico (nales de los 60).
memoria DRAM actuales, la 1103 es primitiva en varios
Uno de los primeros tipos de memoria RAM fue la me- aspectos, pero tena un desempeo mayor que la memomoria de ncleo magntico, desarrollada entre 1949 y ria de ncleos.
1952 y usada en muchos computadores hasta el desarrollo En 1973 se present una innovacin que permiti otra
de circuitos integrados a nales de los aos 60 y princi- miniaturizacin y se convirti en estndar para las
pios de los 70. Esa memoria requera que cada bit estuvie- memorias DRAM: la multiplexacin en tiempo de la
ra almacenado en un toroide de material ferromagntico direcciones de memoria. MOSTEK lanz la referencia
de algunos milmetros de dimetro, lo que resultaba en MK4096 de 4096 bytes en un empaque de 16 pines,[1]
1
2 TIPOS DE RAM
mientras sus competidores las fabricaban en el empaque
DIP de 22 pines. El esquema de direccionamiento[2] se
convirti en un estndar de facto debido a la gran popularidad que logr esta referencia de DRAM. Para nales de
los 70 los integrados eran usados en la mayora de computadores nuevos, se soldaban directamente a las placas base o se instalaban en zcalos, de manera que ocupaban un
rea extensa de circuito impreso. Con el tiempo se hizo
obvio que la instalacin de RAM sobre el impreso principal, impeda la miniaturizacin , entonces se idearon
los primeros mdulos de memoria como el SIPP, aprovechando las ventajas de la construccin modular. El formato SIMM fue una mejora al anterior, eliminando los
pines metlicos y dejando unas reas de cobre en uno de
los bordes del impreso, muy similares a los de las tarjetas
de expansin, de hecho los mdulos SIPP y los primeros
SIMM tienen la misma distribucin de pines.
decir el nmero de la calle nicamente seguir la misma.
Se fabricaban con tiempos de acceso de 70 60 ns y fueron muy populares en sistemas basados en el 486 y los
primeros Pentium.
1.2 EDO RAM
Extended Data Output RAM (EDO-RAM) fue lanzada al
mercado en 1994 y con tiempos de accesos de 40 o 30 ns
supona una mejora sobre FPM, su antecesora. La EDO,
tambin es capaz de enviar direcciones contiguas pero direcciona la columna que va utilizar mientras que se lee la
informacin de la columna anterior, dando como resultado una eliminacin de estados de espera, manteniendo
activo el bfer de salida hasta que comienza el prximo
ciclo de lectura.
A nales de los 80 el aumento en la velocidad de los procesadores y el aumento en el ancho de banda requerido,
1.3 BEDO RAM
dejaron rezagadas a las memorias DRAM con el esquema
original MOSTEK, de manera que se realizaron una serie
Burst Extended Data Output RAM (BEDO-RAM) fue
de mejoras en el direccionamiento como las siguientes:
la evolucin de la EDO-RAM y competidora de la
SDRAM, fue presentada en 1997. Era un tipo de memoria que usaba generadores internos de direcciones y
acceda a ms de una posicin de memoria en cada ciclo de reloj, de manera que lograba un desempeo un 50
% mejor que la EDO. Nunca sali al mercado, dado que
Intel y otros fabricantes se decidieron por esquemas de
memoria sincrnicos que si bien tenan mucho del direccionamiento MOSTEK, agregan funcionalidades distintas como seales de reloj.
2 Tipos de RAM
Las dos formas principales de RAM moderna son:
1. SRAM (Static Random Access Memory), RAM esttica, memoria esttica de acceso aleatorio.
Mdulos formato SIMM de 30 y 72 pines, los ltimos fueron utilizados con integrados tipo EDO-RAM.
1.1
FPM RAM
Fast Page Mode RAM (FPM-RAM) fue inspirado en tcnicas como el Burst Mode usado en procesadores como el
Intel 486.[3] Se implant un modo direccionamiento en el
que el controlador de memoria enva una sola direccin y
recibe a cambio esa y varias consecutivas sin necesidad de
generar todas las direcciones. Esto supone un ahorro de
tiempos ya que ciertas operaciones son repetitivas cuando se desea acceder a muchas posiciones consecutivas.
Funciona como si deseramos visitar todas las casas en
una calle: despus de la primera vez no sera necesario
voltiles.
no voltiles:
NVRAM (non-volatile random access
memory), memoria de acceso aleatorio no
voltil
MRAM (magnetoresistive random-access
memory), memoria de acceso aleatorio
magnetorresistiva o magntica
2. DRAM (Dynamic Random Access Memory), RAM
dinmica, memoria dinmica de acceso aleatorio.
(a) DRAM Asincrnica (Asynchronous Dynamic
Random Access Memory, memoria de acceso
aleatorio dinmica asincrnica)
FPM RAM (Fast Page Mode RAM)
3
EDO RAM (Extended Data Output
RAM)
(b) SDRAM (Synchronous Dynamic RandomAccess Memory, memoria de acceso aleatorio
dinmica sincrnica)
Rambus:
RDRAM (Rambus Dynamic Random Access Memory)
XDR DRAM (eXtreme Data Rate
Dynamic Random Access Memory)
XDR2 DRAM (eXtreme Data Rate two Dynamic Random Access Memory)
SDR SDRAM (Single Data Rate Synchronous Dynamic Random-Access Memory, SDRAM de tasa de datos simple)
DDR SDRAM (Double Data Rate Synchronous Dynamic Random-Access Memory, SDRAM de tasa de datos doble)
DDR2 SDRAM (Double Data Rate type
two SDRAM, SDRAM de tasa de datos
doble de tipo dos)
DDR3 SDRAM (Double Data Rate type
three SDRAM, SDRAM de tasa de datos
doble de tipo tres)
DDR4 SDRAM (Double Data Rate type
four SDRAM, SDRAM de tasa de datos
doble de tipo cuatro)
Nomenclatura
Mdulos de RAM
Formato SO-DIMM.
integrados de cientos o miles de megabits. Adems de
DRAM, los mdulos poseen un integrado que permiten
la identicacin de los mismos ante la computadora por
medio del protocolo de comunicacin Serial Presence Detect (SPD).
La conexin con los dems componentes se realiza por
medio de un rea de pines en uno de los los del circuito
impreso, que permiten que el mdulo al ser instalado en
un zcalo o ranura apropiada de la placa base, tenga buen
contacto elctrico con los controladores de memoria y las
fuentes de alimentacin.
La necesidad de hacer intercambiable los mdulos, y de
utilizar integrados de distintos fabricantes, condujo al esLa expresin memoria RAM se utiliza frecuentemente tablecimiento de estndares de la industria como los Joint
para describir a los mdulos de memoria utilizados en Electron Device Engineering Council (JEDEC).
las computadoras personales y servidores.
1. Paquete DIP (Dual In-line Package, paquete de piLa RAM es solo una variedad de la memoria de accenes en-lnea doble).
so aleatorio: las ROM, memorias Flash, cach (SRAM),
los registros en procesadores y otras unidades de procesa2. Paquete SIPP (Single In-line Pin Package, paquete
miento tambin poseen la cualidad de presentar retardos
de pines en-lnea simple): fueron los primeros mde acceso iguales para cualquier posicin.
dulos comerciales de memoria, de formato propietario, es decir, no haba un estndar entre distintas
Los mdulos de RAM son la presentacin comercial de
marcas.
este tipo de memoria, que se compone de circuitos integrados soldados sobre un circuito impreso independiente,
3. Mdulos RIMM (Rambus In-line Memory Module,
en otros dispositivos como las consolas de videojuegos,
mdulo de memoria en-lnea rambus): Fueron otros
la RAM va soldada directamente sobre la placa principal.
mdulos propietarios bastante conocidos, ideados
por la empresa RAMBUS.
Los mdulos de RAM son tarjetas o placas de circuito
impreso que tienen soldados chips de memoria DRAM,
por una o ambas caras.
La implementacin DRAM se basa en una topologa de
circuito elctrico que permite alcanzar densidades altas de memoria por cantidad de transistores, logrando
4. Mdulos SIMM (Single In-line Memory Module,
mdulo de memoria en-lnea simple): formato usado
en computadoras antiguas. Tenan un bus de datos
de 16 32 bits.
5. Mdulos DIMM (Dual In-line Memory Module, mdulo de memoria en-lnea dual): usado en
computadoras de escritorio. Se caracterizan por tener un bus de datos de 64 bits.
TECNOLOGAS DE MEMORIA
6. Mdulos SO-DIMM (Small Outline DIMM): usado 5.2 RDRAM
en computadoras porttiles. Formato miniaturizado
Se presentan en mdulos RIMM de 184 contactos. Fue
de DIMM.
utilizada en los Pentium 4 . Era la memoria ms rpida
7. Mdulos FB-DIMM (Fully-Buered Dual Inline en su tiempo, pero por su elevado costo fue rpidamente
Memory Module): usado en servidores.
cambiada por la econmica DDR. Los tipos disponibles
son:
Tecnologas de memoria
La tecnologa de memoria actual usa una seal de sincronizacin para realizar las funciones de lectura/escritura
de manera que siempre est sincronizada con un reloj del
bus de memoria, a diferencia de las antiguas memorias
FPM y EDO que eran asncronas.
Toda la industria se decant por las tecnologas sncronas,
porque permiten construir integrados que funcionen a una
frecuencia superior a 66 MHz.
Tipos de DIMM segn su cantidad de contactos o pines:
PC600: RIMM RDRAM, funciona a un mximo de
300 MHz.
PC700: RIMM RDRAM, funciona a un mximo de
356 MHz.
PC800: RIMM RDRAM, funciona a un mximo de
400 MHz.
PC1066: RIMM RDRAM, funciona a un mximo
de 533 MHz.
PC1200: RIMN RDRAM, funciona a un mximo
de 600 MHz.
5.3 DDR SDRAM
Memoria sncrona, enva los datos dos veces por cada ciclo de reloj. De este modo trabaja al doble de velocidad
del bus del sistema, sin necesidad de aumentar la frecuencia de reloj. Se presenta en mdulos DIMM de 184 contactos en el caso de ordenador de escritorio y en mdulos
de 144 contactos para los ordenadores porttiles.
Memorias RAM con tecnologas usadas en la actualidad.
5.1
SDR SDRAM
La nomenclatura utilizada para denir a los mdulos
de memoria de tipo DDR (esto incluye a los formatos
DDR2, DDR3 y DDR4) es la siguiente: DDRx-yyyy
PCx-zzzz; donde x representa a la generacin DDR en
cuestin; yyyy la frecuencia aparente o efectiva, en Megaciclos por segundo (MHz); y zzzz la mxima tasa de
transferencia de datos por segundo, en Megabytes, que
se puede lograr entre el mdulo de memoria y el controlador de memoria. La tasa de transferencia depende de
dos factores, el ancho de bus de datos (por lo general 64
bits) y la frecuencia aparente o efectiva de trabajo. La
frmula que se utiliza para calcular la mxima tasa de
transferencia por segundo entre el mdulo de memoria y
su controlador, es la siguiente:
Memoria sncrona, con tiempos de acceso de entre 25 y
10 ns y que se presentan en mdulos DIMM de 168 contactos. Fue utilizada en los Pentium II y en los Pentium
III , as como en los AMD K6, AMD Athlon K7 y Duron.
Est muy extendida la creencia de que se llama SDRAM a
secas, y que la denominacin SDR SDRAM es para diferenciarla de la memoria DDR, pero no es as, simplemente se extendi muy rpido la denominacin incorrecta. El Tasa de transferencia en MB/s = (Frecuencia DDR efec[4]
nombre correcto es SDR SDRAM ya que ambas (tanto la tiva) x (64 bits / 8 bits por cada byte)
SDR como la DDR) son memorias sncronas dinmicas. Por ejemplo:
Los tipos disponibles son:
1 GB DDR-400 PC-3200: Representa un mdulo de 1
GB (Gigabyte) de tipo DDR; con frecuencia aparente o
PC66: SDR SDRAM, funciona a un mx de 66,6 efectiva de trabajo de 400 MHz; y una tasa de transferenMHz.
cia de datos mxima de 3200 MB/s.
PC100: SDR SDRAM, funciona a un mx de 100
MHz.
PC133: SDR SDRAM, funciona a un mx de 133,3
MHz.
4 GB DDR3-2133 PC3-17000: Representa un mdulo
de 4 GB de tipo DDR3; frecuencia aparente o efectiva de
trabajo de 2133 MHz; y una tasa de transferencia de datos
mxima de 17000 MB/s.
Los tipos disponibles son:
5.5
DDR3 SDRAM
PC1600 o DDR 200: funciona a un mx de 200
MHz.
PC2100 o DDR 266: funciona a un mx de 266,6
MHz.
PC2700 o DDR 333: funciona a un mx de 333,3
MHz.
PC3200 o DDR 400: funciona a un mx de 400
MHz.
PC4500 o DDR 500: funciona a una mx de 500
MHz.
5.4
DDR2 SDRAM
5.5 DDR3 SDRAM
Las memorias DDR 3 son una mejora de las memorias
DDR 2, proporcionan signicantes mejoras en el rendimiento en niveles de bajo voltaje, lo que lleva consigo una
disminucin del gasto global de consumo. Los mdulos
DIMM DDR 3 tienen 240 pines, el mismo nmero que
DDR 2; sin embargo, los DIMMs son fsicamente incompatibles, debido a una ubicacin diferente de la muesca.
Los tipos disponibles son:
PC3-6400 o DDR3-800: funciona a un mx de 800
MHz.
PC3-8500 o DDR3-1066: funciona a un mx de
1066,6 MHz.
PC3-10600 o DDR3-1333: funciona a un mx de
1333,3 MHz.
PC3-12800 o DDR3-1600: funciona a un mx de
1600 MHz.
PC3-14900 o DDR3-1866: funciona a un mx de
1866,6 MHz.
PC3-17000 o DDR3-2133: funciona a un mx de
2133,3 MHz.
PC3-19200 o DDR3-2400: funciona a un mx de
2400 MHz.
Mdulos de memoria instalados de 256 MiB cada uno en un sistema con doble canal.
PC3-21300 o DDR3-2666: funciona a un mx de
2666,6 MHz.
5.6 DDR4 SDRAM
Las memorias DDR 2 son una mejora de las memorias
DDR (Double Data Rate), que permiten que los bferes
de entrada/salida trabajen al doble de la frecuencia del 6 Relacin con el resto del sistema
ncleo, permitiendo que durante cada ciclo de reloj se
realicen cuatro transferencias. Se presentan en mdulos Dentro de la jerarqua de memoria, la RAM se encuentra
en un nivel despus de los registros del procesador y de
DIMM de 240 contactos. Los tipos disponibles son:
las cachs en cuanto a velocidad.
PC2-3200 o DDR2-400: funciona a un mx de 400
MHz.
Los mdulos de RAM se conectan elctricamente a un
controlador de memoria que gestiona las seales entrantes
y salientes de los integrados DRAM. Las seales son de
PC2-4200 o DDR2-533: funciona a un mx de tres tipos: direccionamiento, datos y seales de control.
533,3 MHz.
En el mdulo de memoria esas seales estn divididas en
dos buses y un conjunto miscelneo de lneas de control
PC2-5300 o DDR2-667: funciona a un mx de y alimentacin. Entre todas forman el bus de memoria
666,6 MHz.
que conecta la RAM con su controlador:
PC2-6400 o DDR2-800: funciona a un mx de 800
MHz.
PC2-8600 o DDR2-1066: funciona a un mx de
1066,6 MHz.
PC2-9000 o DDR2-1200: funciona a un mx de
1200 MHz.
Bus de datos: son las lneas que llevan informacin
entre los integrados y el controlador. Por lo general,
estn agrupados en octetos siendo de 8, 16, 32 y 64
bits, cantidad que debe igualar el ancho del bus de
datos del procesador. En el pasado, algunos formatos de mdulo, no tenan un ancho de bus igual al del
procesador. En ese caso haba que montar mdulos
CPU
Generador
de reloj
Tarjeta
grca
Transporte (bus)
delantero (FSB)
Chipset
Transporte (bus)
grco de alta
velocidad (AGP
o PCI Express)
Ranuras de
memoria
Puente
Norte
Transporte
de memoria
(concentrador
controlador de
memoria)
Transporte
Interno
Transporte
PCI
Puente
Sur
Transporte
PCI
(Concentrador
controlador
IDE
de E/S) SATA
USB
Ethernet
Interfaz de audio
Memoria CMOS
Interfaz
grca
integrada
Cables y
puertos
externos
Ranuras PCI
Transporte
LPC
(heredado)
Flash ROM
(BIOS)
Super I/O
Puerto serial
Puerto paralelo
Disco exible
Teclado
Ratn
Diagrama de la arquitectura de un ordenador.
en pares o en situaciones extremas, de a 4 mdulos,
para completar lo que se denominaba banco de memoria, de otro modo el sistema no funciona. Esa fue
la principal razn para aumentar el nmero de pines
en los mdulos, igualando al ancho de bus de procesadores como el Pentium a 64 bits, a principios de
los aos 1990.
Bus de direcciones: es un bus en el cual se colocan
las direcciones de memoria a las que se requiere acceder. No es igual al bus de direcciones del resto del
sistema, ya que est multiplexado de manera que la
direccin se enva en dos etapas. Para ello, el controlador realiza temporizaciones y usa las lneas de
control. En cada estndar de mdulo se establece un
tamao mximo en bits de este bus, estableciendo un
lmite terico de la capacidad mxima por mdulo.
Seales miscelneas: entre las que estn las de la
alimentacin (Vdd, Vss) que se encargan de entregar
potencia a los integrados. Estn las lneas de comunicacin para el integrado de presencia (Serial Presence Detect) que sirve para identicar cada mdulo.
Estn las lneas de control entre las que se encuentran las llamadas RAS (Row Address Strobe) y CAS
(Column Address Strobe) que controlan el bus de direcciones, por ltimo estn las seales de reloj en las
memorias sincrnicas SDRAM.
DETECCIN Y CORRECCIN DE ERRORES
Algunos controladores de memoria en sistemas como
PC y servidores se encuentran embebidos en el llamado
puente norte (North Bridge) de la placa base. Otros sistemas incluyen el controlador dentro del mismo procesador
(en el caso de los procesadores desde AMD Athlon 64 e
Intel Core i7 y posteriores). En la mayora de los casos
el tipo de memoria que puede manejar el sistema est limitado por los sockets para RAM instalados en la placa
base, a pesar que los controladores de memoria en muchos casos son capaces de conectarse con tecnologas de
memoria distintas.
Una caracterstica especial de algunos controladores de
memoria, es el manejo de la tecnologa canal doble o
doble canal (Dual Channel), donde el controlador maneja
bancos de memoria de 128 bits, siendo capaz de entregar
los datos de manera intercalada, optando por uno u otro
canal, reduciendo las latencias vistas por el procesador.
La mejora en el desempeo es variable y depende de la
conguracin y uso del equipo. Esta caracterstica ha promovido la modicacin de los controladores de memoria,
resultando en la aparicin de nuevos chipsets (la serie 865
y 875 de Intel) o de nuevos zcalos de procesador en los
AMD (el 939 con canal doble , reemplazo el 754 de canal
sencillo). Los equipos de gamas media y alta por lo general se fabrican basados en chipsets o zcalos que soportan
doble canal o superior, como en el caso del zcalo (socket) 1366 de Intel, que usaba un triple canal de memoria,
o su nuevo LGA 2011 que usa cudruple canal.
7 Deteccin y correccin de errores
Existen dos clases de errores en los sistemas de memoria,
las fallas (Hard fails) que son daos en el hardware y los
errores (soft errors) provocados por causas fortuitas. Los
primeros son relativamente fciles de detectar (en algunas
condiciones el diagnstico es equivocado), los segundos
al ser resultado de eventos aleatorios, son ms difciles de
hallar. En la actualidad la conabilidad de las memorias
RAM frente a los errores, es sucientemente alta como
para no realizar vericacin sobre los datos almacenados,
por lo menos para aplicaciones de ocina y caseras. En
los usos ms crticos, se aplican tcnicas de correccin y
deteccin de errores basadas en diferentes estrategias:
La tcnica del bit de paridad consiste en guardar un
bit adicional por cada byte de datos y en la lectura
se comprueba si el nmero de unos es par (paridad
par) o impar (paridad impar), detectndose as el
error.
Una tcnica mejor es la que usa cdigo de autochequeo y autocorrector (error-correcting code, ECC),
que permite detectar errores de 1 a 4 bits y corregir
errores que afecten a un slo bit. Esta tcnica se usa
slo en sistemas que requieren alta abilidad.
7
Por lo general, los sistemas con cualquier tipo de proteccin contra errores tiene un coste ms alto, y sufren de pequeas penalizaciones en desempeo, con respecto a los
sistemas sin proteccin. Para tener un sistema con ECC o
paridad, el chipset y las memorias deben tener soporte para esas tecnologas. La mayora de placas base no poseen
dicho soporte.
Para los fallos de memoria se pueden utilizar herramientas de software especializadas que realizan pruebas sobre
los mdulos de memoria RAM. Entre estos programas
uno de los ms conocidos es la aplicacin Memtest86+
que detecta fallos de memoria.
Joint Electron Device Engineering Council
Memoria (informtica)
Memoria de solo lectura
Memoria FRAM
Memoria grca de acceso aleatorio
Memoria principal
Memoria voltil
Ranura de expansin
RDRAM
RAM registrada
Es un tipo de mdulo usado frecuentemente en servidores, posee circuitos integrados que se encargan de repetir
las seales de control y direcciones: las seales de reloj
son reconstruidas con ayuda del PLL que est ubicado
en el mdulo mismo. Las seales de datos se conectan
de la misma forma que en los mdulos no registrados: de
manera directa entre los integrados de memoria y el controlador. Los sistemas con memoria registrada permiten
conectar ms mdulos de memoria y de una capacidad
ms alta, sin que haya perturbaciones en las seales del
controlador de memoria, permitiendo el manejo de grandes cantidades de memoria RAM. Entre las desventajas
de los sistemas de memoria registrada estn el hecho de
que se agrega un ciclo de retardo para cada solicitud de
acceso a una posicin no consecutiva y un precio ms alto que los mdulos no registrados. La memoria registrada es incompatible con los controladores de memoria que
no soportan el modo registrado, a pesar de que se pueden
instalar fsicamente en el zcalo. Se pueden reconocer visualmente porque tienen un integrado mediano, cerca del
centro geomtrico del circuito impreso, adems de que
estos mdulos suelen ser algo ms altos.[5]
Durante el ao 2006 varias marcas lanzaron al mercado
sistemas con memoria FB-DIMM que en su momento se
pensaron como los sucesores de la memoria registrada,
pero se abandon esa tecnologa en 2007 dado que ofreca pocas ventajas sobre el diseo tradicional de memoria
registrada y los nuevos modelos con memoria DDR3.[6]
Serial Presence Detect
SRAM
Tecnologa de montaje supercial
Zcalo (electrnica)
Es una tcnica de manejo de memoria, en la cual el
espacio de memoria se divide en secciones fsicas de
igual tamao, denominadas marcos de pgina. Los
programas se dividen en unidades lgicas:
denominadas pginas
que tienen el mismo
tamao que los marcos de pginas.
De esta forma se puede cargar una pgina de
informacin en cualquier marco de pgina.
Las paginas
sirven
Como unidad de almacenamiento de informacion y
transferencia
memoria principal
memoria secundaria
Las pginas de un programa necesitan estar
contiguamente en:
memoria
Los mecanismos de paginacin permiten la
correspondencia correcta entre las direcciones
virtuales (dadas por los programas) y las direcciones
reales de la memoria que se reverencien.
Cada pagina consiste :
En z palabras contiguas; un espacio de direcciones N
de un programa consiste de n paginas (0,1,2,3n-1)
(n*z direcciones virtuales) y el espacio de memoria
consiste de m marcos de paginas (0,z,2z,,(m1)z)(m*z posiciones).
MEMORIA_PRINCIPAL
d
i
v
MARCOS O
PAGINAS
FISICAS
DEL
MISMO
TAMAO
PARA TENER EL CONTROL DE LAS PGINAS:
Debe mantenerse una tabla en memoria que se
denomina tabla de Mapas de Pagina (PMT) para cada
uno de los procesos.
TABLAS DE PGINAS
CADA PGINA TIENE UN NMERO QUE SE
UTILIZA COMO NDICE EN LA TABLA DE
PGINAS, LO QUE DA POR RESULTADO EL
NMERO DEL MARCO CORRESPONDIENTE
A ESA PGINA VIRTUAL. SI EL BIT
PRESENTE / AUSENTE ES 0, SE PROVOCA
UN SEALAMIENTO (TRAP) HACIA EL
SISTEMA OPERATIVO. SI EL BIT ES 1, EL
NMERO DE MARCO QUE APARECE EN LA
TABLA DE PGINAS SE COPIA EN LOS BITS
DE MAYOR ORDEN DEL REGISTRO DE
SALIDA.
SU FINALIDAD DE LAS TABLAS
ES ASOCIAR LAS
PGINAS VIRTUALES
CON LOS MARCOS.
CARACTERISTICAS DE LA PAGINACION
EL ESPACIO DE DIRECCIONES LGICO DE UN PROCESO
PUEDE SER NO CONTIGUO.
SE DIVIDE LA MEMORIA FSICA EN BLOQUES DE TAMAO
FIJO LLAMADOS MARCOS (FRAMES).
SE DIVIDE LA MEMORIA EN BLOQUES DE TAMAO
LLAMADOS PAGINAS.
SE MANTIENE INFORMACIN EN LOS MARCOS LIBRES.
PARA CORRER UN PROGRAMA DE N PAGINAS DE TAMAO,
SE NECESITAN ENCONTRARA N MARCOS Y CARGAR EL
PROGRAMA.
SE ESTABLECE UNA TABLA DE PAGINAS PARA TRASLADAR
LAS DIRECCIONES LGICAS A FSICAS.
SE PRODUCE FRAGMENTACIN INTERNA.
VENTAJAS
Es posible comenzar a ejecutar un programa,
cargando solo una parte del mismo en memoria, y el
resto se cargara bajo la solicitud.
No es necesario que las paginas estn contiguas en
memoria, por lo que no se necesitan procesos de
compactacin cuando existen marcos de paginas
libres dispersos en la memoria.
Es fcil controlar todas las pginas, ya que tienen el
mismo tamao.
DESVENTAJAS
El costo de hardware y software se incrementa, por la
nueva informacin que debe manejarse y el mecanismo
de traduccin de direcciones necesario. Se consume
mucho mas recursos de memoria, tiempo en el CPU para
su implantacin.
Se deben reservar reas de memoria para las PMT de
los procesos. Al no ser fija el tamao de estas, se crea un
problema semejante al de los programas (como asignar
un tamao ptimo sin desperdicio de memoria, u
"ovearhead" del procesador).
LA DIRECCIN GENERADA POR LA CPU SE DIVIDE
EN:
Numero de pagina (p): utilizado como indice en la
tabla de pagins que contiene la direccin base de cada
pagina en la memoria fisica.
de la pagina (d): combinado con la direccin base
dfine la direccion fisica que ser enviada a la unidad de
memoria.
EXISTEN 2 FUNCIONES
LLEVAR A CABO LA
TRANSFORMACIN DE UNA
DIRECCIN VIRTUAL A FSICA,
O SEA, LA DETERMINACIN DE
LA PGINA A LA QUE
CORRESPONDE UNA
DETERMINADA DIRECCIN DE
UN PROGRAMA.
TRANSFERIR, CUANDO HAGA
FALTA, PGINAS DE LA
MEMORIA SECUNDARIA A LA
MEMORIA PRINCIPAL, Y DE LA
MEMORIA PRINCIPAL A LA
MEMORIA SECUNDARIA
CUANDO YA NO SEAN
NECESARIAS.
SEGMENTACIN DE MEMORIA
DIVIDE LA MEMORIA EN SEGMENTOS, CADA UNO
DE LOS CUALES TIENE UNA LONGITUD VARIABLE,
QUE EST DEFINIDA INTRNSECAMENTE POR EL
TAMAO DE ESE SEGMENTO DEL PROGRAMA.
LOS ELEMENTOS DENTRO DE UN SEGMENTO
SE IDENTIFICAN POR
SU
DESPLAZAMIENTO
ESTO CON RESPECTO
AL INICIO DEL
SEGMENTO
DEFINICIN Y ASPECTOS GENERALE
LA SEGMENTACIN DE MEMORIA ES UN
ESQUEMA DE MANEJO DE MEMORIA MEDIANTE
EL CUAL LA ESTRUCTURA DEL PROGRAMA
REFLEJA SU DIVISIN LGICA.
LLEVNDOSE A CABO UNA AGRUPACIN LGICA
DE LA INFORMACIN EN BLOQUES DE TAMAO
VARIABLE DENOMINADOS SEGMENTOS.
CADA UNO DE ELLOS TIENEN INFORMACIN
LGICA DEL PROGRAMA:
subrutina, arreglo, etc.
DESPUS CADA ESPACIO DE DIRECCIONES DE
PROGRAMA CONSISTE DE UNA COLECCIN DE
SEGMENTOS, QUE GENERALMENTE REFLEJAN LA
DIVISIN LGICA DEL PROGRAMA.
OBVIAMENTE ESTE SISTEMA DE GESTIN DE
MEMORIA ES UTILIZADO
EN SISTEMAS OPERATIVOS AVANZADOS
PERO YA EXISTAN MUESTRAS DE SU ACTIVIDAD
DESDELOS S.O.S UNIX Y D.O.S.
OBJETIVOS ALCANZADOS CON LA
SEGMENTACIN DE MEMORIA
MODULARIDAD DE PROGRAMAS: CADA RUTINA
DEL PROGRAMA PUEDE SER UN BLOQUE SUJETO A
CAMBIOS Y RECOPILACIONES, SIN AFECTAR POR
ELLO AL RESTO DEL
PROGRAMA.
ESTRUCTURAS DE DATOS DE LARGO
VARIABLE: DONDE CADA ESTRUCTURA TIENE SU
PROPIO TAMAO Y ESTE PUEDE VARIAR.
(STACK)
PROTECCIN: SE PUEDE PROTEGER LOS MDULOS
DEL SEGMENTO CONTRA ACCESOS NO
AUTORIZADOS.
COMPARTICIN: DOS O MS PROCESOS PUEDEN
SER UN MISMO SEGMENTO, BAJO REGLAS DE
PROTECCIN; AUNQUE NO SEAN PROPIETARIOS DE
LOS MISMOS.
ENLACE DINMICO ENTRE SEGMENTOS: PUEDE
EVITARSE REALIZAR TODO EL PROCESO DE ENLACE
ANTES DE COMENZAR A EJECUTAR UN PROGRAMA.
LOS ENLACES SE ESTABLECERN SOLO CUANDO SEA
NECESARIO
LA SEGMENTACIN PAGINADA AYUDA AL
PROCESO DE GESTIN DE MEMORIA
PUEDE HACERSE UNA COMBINACIN DE
SEGMENTACIN Y PAGINACIN PARA OBTENER
LAS VENTAJAS DE AMBAS.
CADA SEGMENTO PUEDE SER DESCRITO POR SU
PROPIA TABLA DE PGINAS.
LOS SEGMENTOS SON USUALMENTE MLTIPLOS
DE PGINAS EN TAMAO, Y NO ES NECESARIO QUE
TODAS LAS PGINAS SE ENCUENTREN EN MEMORIA
PRINCIPAL ALA VEZ;
ADEMS LAS PGINAS DE UN MISMO SEGMENTO,
AUNQUE SE ENCUENTREN CONTIGUAS EN MEMORIA
VIRTUAL; NO NECESITAN ESTARLO EN MEMORIA
REAL.
LA SEGMENTACIN PAGINADA TIENE SU
PROPIO ESQUEMA
LAS PGINAS DE ALMACENAMIENTO VIRTUAL, QUE
SON CONTIGUAS EN ESTE ALMACENAMIENTO, NO
NECESITAN SER CONTIGUAS EN EL
ALMACENAMIENTO REAL.
EL DIRECCIONAMIENTO ES TRIDIMENSIONAL CON
UNA DIRECCIN DE ALMACENAMIENTO VIRTUAL
V=(S,P,D). S= nm.. Segmento , P= [Link].
D= desplazamiento.
COMPARTICIN DE SEGMENTOS
1.
En un sistema de segmentacin, una vez
que un segmento ha sido declarado como
compartido, entonces las estructuras que lo
integran pueden cambiar de tamao.
Dos procesos pueden compartir un
segmento con solo tener entradas en sus
tablas generales que apunten al mismo
segmento del
almacenamiento primario.
2.
LAS VENTAJAS DE LA SEGMENTACIN
El programador puede conocer las unidades lgicas
de su programa, dndoles un tratamiento particular.
Es posible compilar mdulos separados como
segmentos el enlace entre los segmentos puede
suponer hasta tanto se haga una referencia entre
segmentos.
Es fcil el compartir segmentos.
Es posible que los segmentos crezcan
dinmicamente segn las necesidades del programa
en ejecucin.
LAS DESVENTAJAS
Hay un incremento en los costos de hardware y de
software para llevar a cabo la implantacin, as como
un mayor consumo de recursos: memoria, tiempo de
CPU, etc.
Debido a que los segmentos tienen un tamao
variable se pueden presentar problemas de
fragmentacin externas, lo que puede ameritar un
plan de reubicacin de segmentos en memoria
principal.
FFFFF
Direccin lgica
Direccin fsica
SEGMENTO
Desplaz
amiento
Registro de segmento
Direccin de segmento
CPU
0
Memoria
FFFFF
UN SEGMENTO ES UN REA
CONTINUA DE MEMORIA QUE PUEDE
TENER HASTA 64K-BYTES, QUE
DEBE COMENZAR EN UNA
LOCALIDAD DE MEMORIA CUYA
DIRECCIN SEA LMITE DE 16
BYTES (CANTIDAD DENOMINADA
PRRAFO) Y QUE PUEDE
TRASLAPARSE CON OTROS
SEGMENTOS.
SEGMENTO
Memoria
El
segmento de cdigo (tiene como base el
contenido del registro CS).
En este segmento se encuentran las
instrucciones que forman el programa. Para
acceder a los datos contenidos en l, se usa el
registro IP como desplazamiento.
El
segmento de datos (que tiene como base el
registro DS).
Contiene los datos que utiliza el programa
(variables, etc.) Para acceder a los datos
contenidos en l, se suele utilizar los registros SI
y DI como desplazamiento.
El segmento de pila (con SS como base).
En l se desarrolla la pila del programa, utilizada para
almacn temporal de datos, llamadas a funciones, etc.
Debe estar presente en todos los programas EXE de forma
obligada. Se utiliza el registro SP para acceder a los datos
de este segmento.
El segmento extra (con ES como base).
Su uso es opcional, y en l se encuentra un segmento
definido por el usuario y que, regularmente, contiene datos
adicionales. Al igual que ocurre con el segmento de datos,
para acceder a los datos contenidos en l, se suelen utilizar
los registros SI y DI.
-
TRASLAPE DE SEGMENTOS
CS
CS
SEGMENTO DE
CDIGO
PROGRAMA
SEGMENTO DE
CDIGO
DS
SEGMENTO DE
DATOS
OTRO SEGMENTO
ES
SEGMENTO EXTRA DE
DATOS
SS
STACK
MEMORIA
MEMORIA
RELOCALIZACIN DE UN PROGRAMA USANDO EL REGISTRO CS
02000
600
PROGRAMA
SEGMENTO DE
CDIGO EN CURSO
nuevo (CS)=1A30
1A300
600
PROGRAMA
MEMORIA
SEGMENTO DE
CDIGO
RELOCALIZADO
Unidad 1:
Gestin de Procesos
Tema 1, Concurrencia:
Exclusin mutua y sincronizacin.
1.1 Problema de la seccin crtica, alternativas al uso de semforos:
- Regiones crticas, Monitores, Variables de condicin y Paso de
mensajes.
1.2 Problemas clsicos de sincronizacin:
- Productor consumidor usando monitores y paso de mensajes.
Problema de los Lectores /escritores.
Escuela Universitaria de
Informtica (Segovia)
1.1 Problema de la seccin crtica.
El problema de la seccin crtica (Conceptos generales):
Concurrencia: Existencia simultnea de varios procesos en
ejecucin.
IMPORTANTE: EXISTENCIA SIMULTNEA NO IMPLICA
EJECUCIN SIMULTNEA.
Necesidad de sincronizacin y comunicacin.
Comunicacin: Necesidad de transmisin de informacin
entre procesos concurrentes.
Sincronizacin: Necesidad de que las ejecuciones de los
procesos concurrentes se produzcan segn una secuenciacin
temporal, conocida y establecida entre los propios procesos.
Escuela Universitaria de
Informtica (Segovia)
1.1 Problema de la seccin crtica.
El problema de la seccin crtica (Conceptos generales):
Exclusin mutua: Para que el acceso a ciertos recursos
sea exclusivo de un proceso cada vez. A la parte del
programa que los utiliza se le llama seccin crtica.
Seccin crtica:
Cada proceso tiene un segmento de cdigo llamado seccin
crtica.
No est permitido que varios procesos estn
simultneamente en su seccin crtica.
Un protocolo rige la forma de entrar y salir de la seccin crtica.
Escuela Universitaria de
Informtica (Segovia)
1.1 Problema de la seccin crtica.
El problema de la seccin crtica (Conceptos generales):
Cualquier solucin al problema de la seccin crtica debe
satisfacer los tres requisitos:
Exclusin Mutua: Slo un proceso ejecuta simultneamente su
seccin crtica.
Progreso: Cuando ningn proceso ejecuta su seccin crtica,
algn proceso que lo solicite podr entrar utilizando un protocolo,
que impida la entrada simultnea de varios. La decisin de quin
entra no se puede posponer indefinidamente.
Espera limitada: Ningn proceso debe esperar ilimitadamente la
entrada en la seccin crtica.
Escuela Universitaria de
Informtica (Segovia)
1.1 Problema de la seccin crtica.
Problemas al uso de semforos:
Semforos: mecanismo cmodo y efectivo para lograr la
sincronizacin.
Problemas:
Pueden ocasionar errores de temporizacin difciles de
detectar, puesto que slo se producen con ciertas secuencias de
ejecucin especficas.
El uso desordenado de las primitivas podra producir que no
se consiga la exclusin mutua, ya que dos procesos podran
estar simultneamente en sus secciones crticas.
La construccin de grandes programas resulta muy rduo
porque las primitivas wait() y signal() se distribuyen por todo
el cdigo y no es fcil advertir su efecto global sobre el valor de
los semforos.
Bloqueos mutuos.
Escuela Universitaria de
Informtica (Segovia)
1.1 Problema de la seccin crtica.
Alternativas al uso de semforos:
Regin crtica.
Monitor y Variables condicin.
Paso de mensajes.
Escuela Universitaria de
Informtica (Segovia)
1.1 Problema de la seccin crtica.
Regin crtica (RC):
Mecanismo de sincronizacin de alto nivel.
Requiere declarar una variable que puede ser compartida
entre muchos procesos, pero a la que slo podr acceder
un nico proceso, a travs de un mecanismo booleano de
control de acceso.
Si el nmero de procesos dentro de esa RC es igual a 0, un
proceso que lo desee puede entrar a dicha RC.
Si el nmero de procesos dentro de una RC es igual a 1 y N
procesos quieren entrar, esos N procesos deben esperar.
Cuando un proceso sale de una RC se permite que entre uno
de los procesos que esperan.
Escuela Universitaria de
Informtica (Segovia)
1.1 Problema de la seccin crtica.
Regin crtica condicional (RCC):
Funcionamiento similar a la RC, slo que adems, para que
un proceso ejecute su seccin crtica la condicin de acceso
debe de ser cierta.
La evaluacin de la condicin de acceso se considera parte de
la regin crtica.
En caso de que el resultado de la evaluacin sea falso,
abandona la RC para permitir a otros procesos entrar en
ella.
Un proceso que haya evaluado la condicin a falso no vuelve
a entrar a su RC hasta que otro proceso abandone sta
(espera activa):
Se vuelve a ejecutar cuando posiblemente alguien haya
modificado dicha condicin.
Escuela Universitaria de
Informtica (Segovia)
1.1 Problema de la seccin crtica.
Regin crtica condicional (RCC):
Limitaciones de las RCC:
Aunque mejoran algunos aspectos negativos de los
semforos, tienen algunas limitaciones:
Pueden aparecer a lo largo de todo el programa.
No se garantiza la integridad de las estructuras de datos
compartidas.
Realizar una implementacin eficiente de las mismas es
una tarea difcil.
Escuela Universitaria de
Informtica (Segovia)
1.1 Problema de la seccin crtica.
Monitor:
Mecanismo de sincronizacin de alto nivel.
Funcionalidad equivalente a la de los semforos pero ms
fciles de controlar.
Tipo abstracto de datos que conjuga:
Estructuras de datos.
Conjunto de operaciones asociadas a tales estructuras.
Exclusin mutua
Sincronizacin (variables de condicin).
Escuela Universitaria de
Informtica (Segovia)
10
1.1 Problema de la seccin crtica.
Monitor:
Es un mdulo de software:
Consta de uno o varios procedimientos.
Secuencia de inicio.
Datos locales.
Caractersticas bsicas:
Variables locales slo accesibles para los procedimientos
del monitor y no para procedimientos externos.
Un proceso entra en el monitor al invocar uno de sus
procedimientos.
Slo un proceso se puede estar ejecutando en el monitor en
un instante dado.
Escuela Universitaria de
Informtica (Segovia)
11
1.1 Problema de la seccin crtica.
Monitor:
Deben incluir herramientas de sincronizacin:
Un monitor proporciona sincronizacin por medio de las variables
de condicin que se incluyen dentro del monitor y que son
accesibles slo desde dentro.
Dos funciones operan con las variables de condicin:
cwait(c): suspende (bloquea) la ejecucin del proceso que
llama a la condicin c. El monitor estar disponible para ser
usado por otro proceso.
csignal(c): reanuda la ejecucin de un proceso que fue
suspendido por un cwait(). Si hubiera varios elige uno de entre
ellos y si no hay ninguno no hace nada.
Escuela Universitaria de
Informtica (Segovia)
12
1.1 Problema de la seccin crtica.
Estructura de un monitor:
Escuela Universitaria de
Informtica (Segovia)
13
1.1 Problema de la seccin crtica.
Monitor, Variables condicin:
Qu ocurre cuando un proceso P realiza una operacin
csignal() sobre una variable condicin y existe un proceso
suspendido Q asociado a dicha variable?
Si varios procesos estn suspendidos por la concicin c y
algn proceso ejecuta csignal(c ) qu proceso se reanuda?.
Escuela Universitaria de
Informtica (Segovia)
14
1.1 Problema de la seccin crtica.
Soluciones al problema del productor/consumidor con
buffer acotado:
Por medio de Monitores con seales (monitor de Hoare).
Por medio de Monitores con notificacin y difusin
(monitor de Lampson y Redell).
Escuela Universitaria de
Informtica (Segovia)
15
1.1 Problema de la seccin crtica.
Solucin al P/C con monitores con seales:
El procedimiento comprueba primero la condicin no_lleno,
para saber si hay espacio libre en el buffer. De no haberlo el
proceso que est ejecutando el monitor se suspende cualquier otro
proceso (P o C) puede entrar ahora al monitor.
Cuando el buffer ya no est lleno el proceso suspendido puede
ser retirado de la cola y reactivado y el proceso podra
reanudarse.
Tras introducir un carcter en el buffer, el proceso activa la
condicin no_vaco.
Conclusiones: Como vemos la propia estructura del monitor
garantiza la EM, no es posible que P y C accedan simultneamente
al buffer. Lo nico que tiene que hacer el programador es situar
correctamente las primitivas cwait() y csignal() en el monitor
controlando que no se depositen elementos en un buffer lleno o no se
extraigan de uno vaco.
Escuela Universitaria de
Informtica (Segovia)
16
1.1 Problema de la seccin crtica.
Inconvenientes de los monitores con seales:
Posible error de sincronizacin de monitores: Si
olvidamos cualquiera de los csignal(), los procesos que entran
en la cola de la condicin se quedan colgados
permanentemente.
Si un proceso ejecuta un csignal() y no ha terminado en el
monitor, hacen falta dos cambios de proceso adicionales
para continuar la ejecucin del programa:
Uno para suspender el proceso.
Otro para reanudarlo cuando el monitor quede disponible.
La planificacin debe de ser muy fiable. Cuando se
ejecuta un csignal() se activar inmediatamente un proceso
de la cola de la condicin correspondiente y el planificador
debe asegurarse de que ningn otro proceso entre al monitor
antes de la activacin.
Escuela Universitaria de
Informtica (Segovia)
17
1.1 Problema de la seccin crtica.
Soluciones al P/C con monitores de notificacin y difusin:
Notifican los procesos en vez de reactivarlos a la fuerza.
Se puede aadir una primitiva de difusin cbroadcast(), que
provoca que todos los procesos que estn esperando por una
condicin se sitan en el estado de listos. Esto es conveniente en
situaciones donde un proceso no sabe cuantos procesos deben
reactivarse.
Ventajas sobre los monitores con seales:
1. Menor propensin a errores, cada procedimiento comprueba la variable
del monitor despus de ser despertado, por medio del while.
2. Ms modulable en cuanto a la construccin de programas.
3. Hace cumplir la EM y concluye la operacin de E/S antes de permitir
cualquier otra operacin sobre el buffer.
4. Dispone de suficiente memoria para que este proceso pueda completar
su solicitud de asignacin.
Escuela Universitaria de
Informtica (Segovia)
18
1.1 Problema de la seccin crtica.
Paso de mensajes:
Refuerzo de la Exclusin Mutua.
Intercambio de informacin.
Se caracteriza por dos primitivas:
send(destino, mensaje): enva mensaje a proceso de destino.
receive(origen, mensaje): informacin indicando el proceso
emisor y el mensaje.
Escuela Universitaria de
Informtica (Segovia)
19
1.1 Problema de la seccin crtica.
Implementacin de paso de mensajes:
Sincronizacin: Entre procesos, P1 no puede recibir un
mensaje hasta que lo enve P0.
Emisor y receptor pueden ser bloqueantes o no bloqueantes
(esperando un mensaje). Posibles combinaciones:
send() bloqueante y receive() bloqueante:
Tanto el emisor como el receptor se bloquean hasta que se
entrega el mensaje.
send() no bloqueante y receive() bloqueante:
Permite que un proceso enve uno o ms mensajes a varios
destinos tan rpido como sea posible.
El receptor se bloquea hasta que llega el mensaje solicitado.
send() no bloqueante y receive() no bloqueante:
Ninguno debe esperar.
Escuela Universitaria de
Informtica (Segovia)
20
1.1 Problema de la seccin crtica.
Direccionamiento:
Debemos especificar en el send() que proceso va a recibir el
mensaje, y tambin que el receive() conozca el origen del
mensaje que va a recibir dos esquemas:
Direccionamiento directo:
Send() incluye una identificacin del proceso de destino.
Receive() puede conocer de antemano de qu proceso espera un
mensaje.
Direccionamiento implcito: receive() puede utilizar el parmetro
origen para devolver un valor cuando se haya realizado la operacin
de recepcin.
Direccionamiento indirecto:
Los mensajes no van directamente del emisor al receptor.
Los mensajes se envan a una estructura de datos compartida
formada por colas (buzones o mailboxes).
P0 enva mensajes al buzn apropiado y P1 los recoge del buzn.
Escuela Universitaria de
Informtica (Segovia)
21
1.1 Problema de la seccin crtica.
Relaciones de direccionamiento:
Uno a uno: enlace privado de comunicacin entre P0 y P1.
Uno a varios: aplicaciones en los que el mensaje se difunde a un
conjunto de procesos.
Varios a uno: interacciones cliente/ servidor, un proceso ofrece un
servicio a un conjunto de procesos.
Varios a varios:
Escuela Universitaria de
Informtica (Segovia)
22
1.1 Problema de la seccin crtica.
Formato de mensajes:
Tipo de longitud
ID de destino
Cabecera
ID de origen
Longitud de mensaje
Informacin de control
Cuerpo
Contenido del mensaje
Escuela Universitaria de
Informtica (Segovia)
23
1.1 Problema de la seccin crtica.
Implementacin de la EM mediante paso de mensajes:
/* programa exclusion mutua */
void main(){
const int n= /*numero de procesos*/;
crear_buzon(excmut);
void P(int i){
send(excmut, null);
mensaje msj;
while (cierto){
parbegin(P(1),P(2), ..., P(n));
}
receive (exmut, msj);
/* seccin crtica */
send (exmut, msj);
/*resto*/
}
}
Escuela Universitaria de
Informtica (Segovia)
24
1.1 Problema de la seccin crtica.
Implementacin de la EM mediante paso de mensajes:
Un proceso (P) que desea entrar en su seccin crtica intenta
primero el receive(), si el buzn est vaco P se
bloquea. Si el proceso consigue el mensaje, ejecuta su
seccin crtica y despus devuelve el mensaje al buzn el
mensaje funciona como un testigo que se pasa de un proceso
a otro.
Esta tcnica implica que si hay varios procesos ejecutando
simultneamente el receive():
Si hay un mensaje, se entrega slo a uno de los procesos y los
otros se bloquean.
Si el buzn est vaco, todos los procesos se bloquean. Cuando
haya un mensaje disponible slo se activar y tomar el mensaje
uno de los procesos bloqueados.
Escuela Universitaria de
Informtica (Segovia)
25
1.2 Problema de los lectores/escritores.
Enunciado:
Tenemos un rea de datos (que puede ser un archivo, un
bloque de memoria principal o un banco de registros del
procesador) compartida entre varios procesos. Algunos
procesos slo leen los datos (lectores) y otros slo escriben
(escritores). Se puede satisfacer que:
1. Cualquier nmero de lectores puede leer el archivo
simultneamente.
2. Slo puede escribir en el archivo un nico escritor en cada
instante.
3. Si un escritor est accediendo al archivo, ningn lector puede
leerlo.
Escuela Universitaria de
Informtica (Segovia)
26
Unidad central de procesamiento
(SoC).
Dos componentes tpicos de una CPU son la unidad aritmtico lgica (ALU), que realiza operaciones aritmticas
y lgicas, y la unidad de control (CU), que extrae instrucciones de la memoria, las decodica y las ejecuta, llamando a la ALU cuando sea necesario.
No todos los sistemas computacionales se basan en una
unidad central de procesamiento. Una matriz de procesador o procesador vectorial tiene mltiples elementos
cmputo paralelo, sin una unidad considerada el centro.
En el modelo de computacin distribuido, se resuelven
problemas mediante un conjunto interconectado y distribuido de procesadores.
1 Historia
La unidad central de procesamiento o unidad de procesamiento central (conocida por las siglas CPU, del
ingls: central processing unit), es el hardware dentro de
una computadora u otros dispositivos programables, que
interpreta las instrucciones de un programa informtico
mediante la realizacin de las operaciones bsicas aritmticas, lgicas y de entrada/salida del sistema. El trmino, y su acrnimo, han estado en uso en la industria
de la Informtica por lo menos desde el principio de los
aos 1960.[1] La forma, el diseo de CPU y la implementacin de las CPU ha cambiado drsticamente desde los
primeros ejemplos, pero su operacin fundamental sigue
siendo la misma.
Una computadora puede tener ms de una CPU; esto se
llama multiprocesamiento. Todas las CPU modernas son
microprocesadores, lo que signica que contienen un solo circuito integrado (chip). Algunos circuitos integrados
pueden contener varias CPU en un solo chip; estos son
denominados procesadores multincleo. Un circuito integrado que contiene una CPU tambin puede contener los
dispositivos perifricos, y otros componentes de un sistema informtico; a esto se llama un sistema en un chip
El EDVAC, una de las primeras computadoras de programas almacenados electrnicamente.
Los primeros ordenadores, como el ENIAC, tenan que
ser fsicamente recableados para realizar diferentes tareas, lo que hizo que estas mquinas se denominaran ordenadores de programa jo. Dado que el trmino CPU
generalmente se dene como un dispositivo para la eje1
2
cucin de software (programa informtico), los primeros
dispositivos que con razn podramos llamar CPU vinieron con el advenimiento del ordenador con programa almacenado.
La idea de un ordenador con programa almacenado ya
estaba presente en el diseo de John Presper Eckert y en
el ENIAC de John William Mauchly, pero esta caracterstica se omiti inicialmente para que el aparato pudiera
estar listo antes. El 30 de junio de 1945, antes de que
se construyera la ENIAC, el matemtico John von Neumann distribuy el trabajo titulado First Draft of a Report
on the EDVAC (Primer Borrador de un Reporte sobre el
EDVAC). Fue el esbozo de un ordenador de programa
almacenado, que se termin en agosto de 1949.[2] EDVAC fue diseado para realizar un cierto nmero de instrucciones (u operaciones) de varios tipos. Signicativamente, los programas escritos para el EDVAC se crearon
para ser almacenados en la memoria de alta velocidad del
ordenador y no para que los especicara el cableado fsico del ordenador. Esto super una severa limitacin del
ENIAC, que era el importante tiempo y esfuerzo requerido para volver a congurar el equipo para realizar una
nueva tarea. Con el diseo de von Neumann, el programa
o software que corra EDVAC podra ser cambiado simplemente cambiando el contenido de la memoria. Sin embargo, EDVAC no fue el primer ordenador de programa
almacenado; la Mquina Experimental de Pequea Escala de Mnchester, un pequeo prototipo de ordenador de
programa almacenado, ejecut su primer programa el 21
de junio de 1948[3] y la Manchester Mark I ejecut su
primer programa en la noche del 16 al 17 junio de 1949.
HISTORIA
seo de programa almacenado usando cinta de papel perforada en vez de memoria electrnica. La diferencia clave
entre las arquitecturas de von Neumann y la de Harvard
es que la ltima separa el almacenamiento y tratamiento
de instrucciones de la CPU y los datos, mientras que el
primero utiliza el mismo espacio de memoria para ambos. La mayora de los CPU modernos son de diseo von
Neumann, pero los CPU con arquitectura Harvard se ven
as, sobre todo en aplicaciones embebidas; por ejemplo,
los microcontroladores Atmel AVR son procesadores de
arquitectura Harvard.
Los rels elctricos y los tubos de vaco (vlvulas termoinicas) eran usados comnmente como elementos de conmutacin; un ordenador til requiere miles o decenas de
miles de dispositivos de conmutacin. La velocidad global de un sistema depende de la velocidad de los conmutadores. Los ordenadores de tubo, como el EDVAC,
tendieron en tener un promedio de ocho horas entre fallos, mientras que los ordenadores de rels, (anteriores
y ms lentos), como el Harvard Mark I, fallaban muy
raramente.[1] Al nal, los CPU basados en tubo llegaron a
ser dominantes porque las signicativas ventajas de velocidad producidas generalmente pesaban ms que los problemas de conabilidad. La mayor parte de estas tempranas CPU sncronas corran en frecuencias de reloj bajas
comparadas con los modernos diseos microelectrnicos.
Eran muy comunes en este tiempo las frecuencias de la
seal del reloj con un rango desde 100 kHz hasta 4 MHz,
limitado en gran parte por la velocidad de los dispositivos
de conmutacin con los que fueron construidos.
Las primeras CPU fueron diseadas a medida como par- 1.1 CPU de transistores y de circuitos inte de un ordenador ms grande, generalmente un ordetegrados discretos
nador nico en su especie. Sin embargo, este mtodo de
disear las CPU a medida, para una aplicacin particular, ha desaparecido en gran parte y se ha sustituido por
el desarrollo de clases de procesadores baratos y estandarizados adaptados para uno o varios propsitos. Esta tendencia de estandarizacin comenz generalmente en la
era de los transistores discretos, computadoras centrales
y microcomputadoras y fue acelerada rpidamente con
la popularizacin del circuito integrado (IC), este ha permitido que sean diseados y fabricados CPU ms complejas en espacios pequeos en la orden de nanmetros).
Tanto la miniaturizacin como la estandarizacin de las
CPU han aumentado la presencia de estos dispositivos
digitales en la vida moderna mucho ms all de las aplicaciones limitadas de mquinas de computacin dedicadas. Los microprocesadores modernos aparecen en todo,
desde automviles hasta telfonos mviles o celulares y CPU, memoria de ncleo e interfaz de bus externo de un MSI
PDP-8/I. Hecho de circuitos integrados de mediana escala.
juguetes de nios.
Si bien von Neumann muchas veces acreditado por el diseo de la computadora con programa almacenado debido a su diseo del EDVAC, otros antes que l, como
Konrad Zuse, haban sugerido y aplicado ideas similares.
La denominada arquitectura Harvard del Harvard Mark I,
que se complet antes de EDVAC, tambin utiliz un di-
La complejidad del diseo de las CPU aument junto con
facilidad de la construccin de dispositivos electrnicos
ms pequeos y conables. La primera de esas mejoras
vino con el advenimiento del transistor. Las CPU transistorizadas durante los aos 1950 y los aos 1960 no tuvieron que ser construidos con elementos de conmutacin
1.2
Microprocesadores
abultados, no ables y frgiles, como los tubos de vaco y
los rels elctricos. Con esta mejora, fueron construidas
CPU ms complejas y ms conables sobre una o varias
tarjetas de circuito impreso que contenan componentes
discretos (individuales).
3
tacin de un transistor en comparacin a un tubo o rel.
Gracias tanto a esta creciente abilidad como al dramtico incremento de velocidad de los elementos de conmutacin que por este tiempo eran casi exclusivamente
transistores, se fueron alcanzando frecuencias de reloj de
la CPU de decenas de megahercios. Adems, mientras
que las CPU de transistores discretos y circuitos integrados se usaban comnmente, comenzaron a aparecer los
nuevos diseos de alto rendimiento como procesadores
vectoriales SIMD (single instruction multiple data instruccin nica, datos mltiples). Estos primeros diseos
experimentales dieron lugar ms adelante a la era de los
superordenadores especializados, como los hechos por
Cray Inc.
Durante este perodo, gan popularidad un mtodo de fabricar muchos transistores en un espacio compacto. El
circuito integrado (IC) permiti que una gran cantidad
de transistores fueran fabricados en una simple oblea basada en semiconductor o chip. Al principio, solamente
circuitos digitales muy bsicos, no especializados, como
las puertas NOR fueron miniaturizados en IC. Las CPU
basadas en estos IC de bloques de construccin generalmente son referidos como dispositivos de pequea escala
de integracin small-scale integration (SSI). Los circuitos integrados SSI, como los usados en el computador
gua del Apollo (Apollo Guidance Computer), usualmen- 1.2
te contenan transistores que se contaban en nmeros de
mltiplos de diez. Construir un CPU completo usando
IC SSI requera miles de chips individuales, pero todava consuma mucho menos espacio y energa que diseos anteriores de transistores discretos. A medida que la
tecnologa microelectrnica avanz, en los IC fue colocado un nmero creciente de transistores, disminuyendo as
la cantidad de IC individuales necesarios para una CPU
completa. Los circuitos integrados MSI y el LSI (de mediana y gran escala de integracin) aumentaron el nmero
de transistores a cientos y luego a miles.
En 1964, IBM introdujo su arquitectura de ordenador
System/360, que fue usada en una serie de ordenadores
que podan ejecutar los mismos programas con velocidades y desempeos diferentes. Esto fue signicativo en
un tiempo en que la mayora de los ordenadores electrnicos eran incompatibles entre s, incluso las hechas
por el mismo fabricante. Para facilitar esta mejora, IBM
utiliz el concepto de microprograma, a menudo llamado microcdigo, ampliamente usado an en las CPU
modernas.[4] La arquitectura System/360 era tan popular que domin el mercado del mainframe durante las siguientes dcadas y dej una herencia que todava an perdura en los ordenadores modernos, como el IBM zSeries.
En el mismo ao de 1964, Digital Equipment Corporation
(DEC) introdujo otro ordenador que sera muy inuyente, dirigido a los mercados cientcos y de investigacin,
el PDP-8. DEC introducira ms adelante la muy popular lnea del PDP-11, que originalmente fue construido
con IC SSI pero eventualmente fue implementado con
componentes LSI cuando se convirtieron en prcticos. En
fuerte contraste con sus precursores hechos con tecnologa SSI y MSI, la primera implementacin LSI del PDP11 contena una CPU integrada nicamente por cuatro
circuitos integrados LSI.[5]
Los ordenadores basados en transistores tenan varias
ventajas frente a sus predecesores. Aparte de facilitar una
creciente abilidad y un menor consumo de energa, los
transistores tambin permitan que CPU operara a velocidades mucho ms altas debido al corto tiempo de conmu-
Microprocesadores
Oblea de un
microprocesador Intel 80486DX2 (tamao: 126,75
mm) en su empaquetado.
CPU
Intel
Core i5 en una placa madre del ordenador porttil Vaio
serie E (a la derecha, debajo del tubo termosifn bifsico.
En la dcada de 1970 los inventos fundamentales de
Federico Faggin (ICs Silicon Gate MOS con puertas autoalineadas junto con su nueva metodologa de diseo
de lgica aleatoria) cambi el diseo e implementacin
de las CPU para siempre. Desde la introduccin del primer microprocesador comercialmente disponible, el Intel
4004, en 1970 y del primer microprocesador ampliamente usado, el Intel 8080, en 1974, esta clase de CPU ha
desplazado casi totalmente el resto de los mtodos de
implementacin de la Unidad Central de procesamiento.
Los fabricantes de mainframes y miniordenadores de ese
tiempo lanzaron programas de desarrollo de IC propietarios para actualizar sus arquitecturas de computadoras
OPERACIN
ms viejas y eventualmente producir microprocesadores car, ejecutar y escribir).
con conjuntos de instrucciones que eran retrocompatibles
con sus hardwares y softwares ms viejos. Combinado
MIPS32 Add Immediate Instruction
con el advenimiento y el eventual vasto xito de la ahora
ubicua computadora personal, el trmino CPU es apli001000 00001 00010 0000000101011110
cado ahora casi exclusivamente[nota 1] a los microprocesaOP Code Addr 1 Addr 2
Immediate value
dores.
Equivalent mnemonic:
addi $r1, $r2 , 350
Las generaciones previas de CPU fueron implementadas
como componentes discretos y numerosos circuitos integrados de pequea escala de integracin en una o ms
tarjetas de circuitos. Por otro lado, los microprocesadores son CPU fabricados con un nmero muy pequeo
de IC; usualmente solo uno. El tamao ms pequeo del
CPU, como resultado de estar implementado en una simple pastilla, signica tiempos de conmutacin ms rpidos debido a factores fsicos como el decrecimiento de
la capacitancia parsita de las puertas. Esto ha permitido
que los microprocesadores sncronos tengan tiempos de
reloj con un rango de decenas de megahercios a varios gigahercios. Adicionalmente, como ha aumentado la capacidad de construir transistores excesivamente pequeos
en un IC, la complejidad y el nmero de transistores en
un simple CPU tambin se ha incrementado dramticamente. Esta tendencia ampliamente observada es descrita
por la ley de Moore, que ha demostrado hasta la fecha,
ser una prediccin bastante exacta del crecimiento de la
complejidad de los CPUs y otros IC.[6]
Mientras que, en los pasados sesenta aos han cambiado
drsticamente, la complejidad, el tamao, la construccin
y la forma general de la CPU, es notable que el diseo
y el funcionamiento bsico no ha cambiado demasiado.
Casi todos los CPU comunes de hoy se pueden describir
con precisin como mquinas de programa almacenado
de von Neumann.[nota 2] A medida que la ya mencionada ley del Moore contina mantenindose verdadera,[6]
se han presentado preocupaciones sobre los lmites de la
tecnologa de transistor del circuito integrado. La miniaturizacin extrema de puertas electrnicas est causando
los efectos de fenmenos que se vuelven mucho ms signicativos, como la electromigracin y el subumbral de
prdida. Estas nuevas preocupaciones estn entre los muchos factores que hacen a investigadores estudiar nuevos
mtodos de computacin como la computacin cuntica,
as como ampliar el uso de paralelismo y otros mtodos
que extienden la utilidad del modelo clsico de von Neumann.
Operacin
La operacin fundamental de la mayora de las CPU es
ejecutar una secuencia de instrucciones almacenadas llamadas programa. El programa es representado por una
serie de nmeros que se mantienen en una cierta clase de
memoria de ordenador. Hay cuatro pasos que casi todos
las CPU de arquitectura de von Neumann usan en su operacin: fetch, decode, execute, y writeback, (leer, decodi-
Diagrama mostrando como es decodicada una instruccin del
MIPS32. (MIPS Technologies 2005)
2.1
Fetch
El primer paso, leer, implica el recuperar una instruccin,
(que es representada por un nmero o una secuencia de
nmeros), de la memoria de programa. La localizacin en
la memoria del programa es determinada por un contador
de programa (PC), que almacena un nmero que identica la direccin de la siguiente instruccin que se debe
buscar. Despus se lee una instruccin, el PC es incrementado por la longitud de la instruccin en trminos
de unidades de memoria de modo que contendr la direccin de la siguiente instruccin en la secuencia.[nota 3]
Frecuentemente, la instruccin a ser leda debe ser recuperada de memoria relativamente lenta, haciendo detener
al CPU mientras espera que la instruccin sea devuelta.
Esta cuestin se trata en gran medida en los procesadores
modernos por los cachs y las arquitecturas pipeline (ver
abajo).
2.2
Decode
En el paso de decodicacin, la instruccin es dividida
en partes que tienen signicado para otras unidades de
la CPU. La manera en que el valor de la instruccin numrica es interpretado est denida por la arquitectura
del conjunto de instrucciones (el ISA) de la CPU.[nota 4]
A menudo, un grupo de nmeros en la instruccin, llamados opcode, indica qu operacin realizar. Las partes
restantes del nmero usualmente proporcionan informacin requerida para esa instruccin, como por ejemplo,
operandos para una operacin de adicin. Tales operandos se pueden dar como un valor constante (llamado valor
inmediato), o como un lugar para localizar un valor, que
segn lo determinado por algn modo de direccin, puede ser un registro o una direccin de memoria. En diseos
ms viejos las unidades del CPU responsables de decodicar la instruccin eran dispositivos de hardware jos.
Sin embargo, en CPUs e ISAs ms abstractos y complicados, es frecuentemente usado un microprograma para
ayudar a traducir instrucciones en varias seales de conguracin para el CPU. Este microprograma es a veces
reescribible de tal manera que puede ser modicado para
cambiar la manera en que el CPU decodica instrucciones incluso despus de que haya sido fabricado.
2.3
Execute
Instruction
Fetcher
Instruction
Decoder
Memory
Interface
directamente producir datos de resultado. Estas son llamadas generalmente saltos (jumps) y facilitan comportamientos como bucles, la ejecucin condicional de programas (con el uso de saltos condicionales), y funciones
en programas.[nota 5] Muchas instrucciones tambin cambiarn el estado de dgitos en un registro de banderas.
Estas banderas pueden ser usadas para inuenciar cmo
se comporta un programa, puesto que a menudo indican
el resultado de varias operaciones. Por ejemplo, un tipo
de instruccin de comparacin considera dos valores y
ja un nmero, en el registro de banderas, de acuerdo a
cul es el mayor. Entonces, esta bandera puede ser usada
por una posterior instruccin de salto para determinar el
ujo de programa.
to
memory
Despus de la ejecucin de la instruccin y la escritura
de los datos resultantes, el proceso entero se repite con
Registers
el siguiente ciclo de instruccin, normalmente leyendo
la siguiente instruccin en secuencia debido al valor incrementado en el contador de programa. Si la instruccin completada era un salto, el contador de programa
ser modicado para contener la direccin de la instruccin a la cual se salt, y la ejecucin del programa conALU
tina normalmente. En CPUs ms complejos que el descrito aqu, mltiples instrucciones pueden ser ledas, decodicadas, y ejecutadas simultneamente. Esta seccin
describe lo que es referido generalmente como el entubado RISC clsico (Classic RISC pipeline), que de
hecho es bastante comn entre los CPU simples usados
Diagrama de bloques de un CPU simple.
en muchos dispositivos electrnicos, a menudo llamados
[nota 6]
Despus de los pasos de lectura y decodicacin, es lle- microcontroladores.
vado a cabo el paso de la ejecucin de la instruccin.
Durante este paso, varias unidades del CPU son conectadas de tal manera que ellas pueden realizar la operacin 3 Diseo e implementacin
deseada. Si, por ejemplo, una operacin de adicin fue solicitada, una unidad aritmtico lgica (ALU) ser conec- 3.1 Rango de enteros
tada a un conjunto de entradas y un conjunto de salidas.
Las entradas proporcionan los nmeros a ser sumados, y La manera en que un CPU representa los nmeros es una
las salidas contendrn la suma nal. La ALU contiene la opcin de diseo que afecta las ms bsicas formas en que
circuitera para realizar operaciones simples de aritmti- el dispositivo funciona. Algunas de las primeras calculaca y lgica en las entradas, como adicin y operaciones de doras digitales usaron, para representar nmeros internabits (bitwise). Si la operacin de adicin produce un re- mente, un modelo elctrico del sistema de numeracin
sultado demasiado grande para poder ser manejado por decimal comn (base diez). Algunas otras computadoras
el CPU, tambin puede ser ajustada una bandera (ag) han usado sistemas de numeracin ms exticos como el
de desbordamiento aritmtico localizada en un registro ternario (base tres). Casi todos los CPU modernos reprede banderas (ver abajo la seccin sobre rango de nme- sentan los nmeros en forma binaria, en donde cada dros enteros).
gito es representado por una cierta cantidad fsica de dos
valores, como un voltaje alto o bajo.[nota 7]
2.4
Writeback
El paso nal, la escritura, simplemente escribe los resultados del paso de ejecucin a una cierta forma de memoria. Muy a menudo, los resultados son escritos a algn
registro interno del CPU para acceso rpido por subsecuentes instrucciones. En otros casos los resultados pueden ser escritos a una memoria principal ms lenta pero ms barata y ms grande. Algunos tipos de instrucciones manipulan el contador de programa en lugar de
Con la representacin numrica estn relacionados el tamao y la precisin de los nmeros que un CPU puede
representar. En el caso de un CPU binario, un bit se reere a una posicin signicativa en los nmeros con que
trabaja un CPU. El nmero de bits (o de posiciones numricas, o dgitos) que un CPU usa para representar los
nmeros, a menudo se llama tamao de la palabra, ancho de bits, ancho de ruta de datos, o precisin del
nmero entero cuando se ocupa estrictamente de nmeros enteros (en oposicin a nmeros de coma otante).
DISEO E IMPLEMENTACIN
de propsito general donde se requiere un razonable equilibrio entre la capacidad de nmeros enteros y de coma
otante.
3.2 Frecuencia de reloj
Microprocesador MOS 6502 en un dual in-line package (encapasulado en doble lnea), un diseo extremadamente popular de
8 bits.
La mayora de los CPU, y de hecho, la mayora de
los dispositivos de lgica secuencial, son de naturaleza
sncrona.[nota 9] Es decir, estn diseados y operan en funcin de una seal de sincronizacin. Esta seal, conocida
como seal de reloj, usualmente toma la forma de una
onda cuadrada peridica. Calculando el tiempo mximo
en que las seales elctricas pueden moverse en las varias
bifurcaciones de los muchos circuitos de un CPU, los diseadores pueden seleccionar un perodo apropiado para
la seal del reloj.
Este nmero diere entre las arquitecturas, y a menudo
dentro de diferentes unidades del mismo CPU. Por ejemplo, un CPU de 8 bits maneja un rango de nmeros que
pueden ser representados por ocho dgitos binarios, cada
dgito teniendo dos valores posibles, y en combinacin los
8 bits teniendo 28 o 256 nmeros discretos. En efecto, el
tamao del nmero entero ja un lmite de hardware en Este perodo debe ser ms largo que la cantidad de tiempo
el rango de nmeros enteros que el software corre y que que toma a una seal moverse, o propagarse en el peor de
los casos. Al jar el perodo del reloj a un valor bastante
el CPU puede usar directamente.[nota 8]
El rango del nmero entero tambin puede afectar el n- mayor sobre el retardo de la propagacin del peor caso,
mero de posiciones en memoria que el CPU puede direc- es posible disear todo el CPU y la manera que mueve
cionar (localizar). Por ejemplo, si un CPU binario utiliza los datos alrededor de los bordes de la subida y baja32 bits para representar una direccin de memoria, y ca- da de la seal del reloj. Esto tiene la ventaja de simplida direccin de memoria representa a un octeto (8 bits), car el CPU signicativamente, tanto en una perspectiva
la cantidad mxima de memoria que el CPU puede di- de diseo, como en una perspectiva de cantidad de comreccionar es 232 octetos, o 4 GB. Esta es una vista muy ponentes. Sin embargo, esto tambin tiene la desventaja
simple del espacio de direccin del CPU, y muchos di- que todo el CPU debe esperar por sus elementos ms lenseos modernos usan mtodos de direccin mucho ms tos, an cuando algunas unidades de la misma son mucho
complejos como paginacin para localizar ms memoria ms rpidas. Esta limitacin ha sido compensada en gran
que su rango entero permitira con un espacio de direc- parte por varios mtodos de aumentar el paralelismo del
CPU (ver abajo).
cin plano.
Niveles ms altos del rango de nmeros enteros requieren ms estructuras para manejar los dgitos adicionales,
y por lo tanto, ms complejidad, tamao, uso de energa,
y generalmente costo. Por ello, no es del todo infrecuente, ver microcontroladores de 4 y 8 bits usados en aplicaciones modernas, aun cuando estn disponibles CPU con
un rango mucho ms alto (de 16, 32, 64, e incluso 128
bits). Los microcontroladores ms simples son generalmente ms baratos, usan menos energa, y por lo tanto
disipan menos calor. Todo esto pueden ser consideraciones de diseo importantes para los dispositivos electrnicos. Sin embargo, en aplicaciones del extremo alto, los
benecios producidos por el rango adicional, (ms a menudo el espacio de direccin adicional), son ms signicativos y con frecuencia afectan las opciones del diseo.
Para ganar algunas de las ventajas proporcionadas por las
longitudes de bits tanto ms bajas, como ms altas, muchas CPUs estn diseadas con anchos de bit diferentes
para diferentes unidades del dispositivo. Por ejemplo, el
IBM System/370 us un CPU que fue sobre todo de 32
bits, pero us precisin de 128 bits dentro de sus unidades
de coma otante para facilitar mayor exactitud y rango de
nmeros de coma otante.[4] Muchos diseos posteriores
de CPU usan una mezcla de ancho de bits similar, especialmente cuando el procesador est diseado para usos
Sin embargo, las mejoras arquitectnicas por s solas, no
solucionan todas las desventajas de CPUs globalmente
sncronas. Por ejemplo, una seal de reloj est sujeta a los
retardos de cualquier otra seal elctrica. Velocidades de
reloj ms altas en CPUs cada vez ms complejas hacen
ms difcil de mantener la seal del reloj en fase (sincronizada) a travs de toda la unidad. Esto ha conducido que
muchos CPU modernos requieran que se les proporcione
mltiples seales de reloj idnticas, para evitar retardar
una sola seal lo suciente como para hacer al CPU funcionar incorrectamente. Otro importante problema cuando la velocidad del reloj aumenta dramticamente, es la
cantidad de calor que es disipado por el CPU. La seal
del reloj cambia constantemente, provocando la conmutacin de muchos componentes (cambio de estado) sin
importar si estn siendo usados en ese momento. En general, un componente que est cambiando de estado, usa
ms energa que un elemento en un estado esttico. Por
lo tanto, a medida que la velocidad del reloj aumenta, as
lo hace tambin la disipacin de calor, causando que el
CPU requiera soluciones de enfriamiento ms efectivas.
Un mtodo de tratar la conmutacin de componentes innecesarios se llama el clock gating, que implica apagar la
seal del reloj a los componentes innecesarios, efectivamente desactivndolos. Sin embargo, esto es frecuente-
3.3
Paralelismo
mente considerado como difcil de implementar y por lo
tanto no ve uso comn fuera de diseos de muy baja potencia. Un notable diseo de CPU tardo que utiliza una
amplia compuerta del reloj para reducir los requisitos de
potencia de la consola de videojuegos es la de la Xbox
360 basada en la PowerPC de IBM.[7] Otro mtodo de
tratar algunos de los problemas de una seal global de reloj es la completa remocin de la misma. Mientras que
quitar la seal global del reloj hace, de muchas maneras,
considerablemente ms complejo el proceso del diseo,
en comparacin con diseos sncronos similares, los diseos asincrnicos (o sin reloj) tienen marcadas ventajas
en el consumo de energa y la disipacin de calor. Aunque se trate de algo infrecuente, las CPUs completas se
han construido sin utilizar una seal global de reloj. Dos
notables ejemplos de esto son el AMULET, que implementa la arquitectura del ARM, y el MiniMIPS, compatible con el MIPS R3000. En lugar de remover totalmente la seal del reloj, algunos diseos de CPU permiten que ciertas unidades del dispositivo sean asincrnicas,
como por ejemplo, usando ALU en conjuncin con pipelining superescalar para alcanzar algunas ganancias en
el desempeo aritmtico. Mientras que no est completamente claro si los diseos totalmente asincrnicos pueden
desempearse a un nivel comparable o mejor que sus contrapartes sncronas, es evidente que por lo menos sobresalen en las operaciones matemticas ms simples. Esto,
combinado con sus excelentes caractersticas de consumo
de energa y disipacin de calor, los hace muy adecuados
para sistemas embebidos.[8]
3.3
7
solamente una instruccin a la vez, solo puede, posiblemente, alcanzar el desempeo escalar (una instruccin
por ciclo de reloj). Sin embargo, el desempeo casi siempre es subescalar (menos de una instruccin por ciclo).
Las tentativas de alcanzar un desempeo escalar y mejor,
han resultado en una variedad de metodologas de diseo
que hacen comportarse al CPU menos linealmente y ms
en paralelo. Cuando se reere al paralelismo en los CPU,
generalmente son usados dos trminos para clasicar estas tcnicas de diseo.
El paralelismo a nivel de instruccin, en ingls instruction level parallelism (ILP), busca aumentar la
tasa en la cual las instrucciones son ejecutadas dentro de un CPU, es decir, aumentar la utilizacin de
los recursos de ejecucin en la pastilla.
El paralelismo a nivel de hilo de ejecucin, en ingls thread level parallelism (TLP), que se propone
incrementar el nmero de hilos (efectivamente programas individuales) que un CPU pueda ejecutar simultneamente.
Cada metodologa se diferencia tanto en las maneras en
las que estn implementadas, como en la efectividad relativa que producen en el aumento del desempeo de la
CPU para una aplicacin.[nota 10]
3.3.1 ILP: Segmentacin y arquitectura superescalar
Paralelismo
Modelo de un CPU subescalar. Note que toma quince ciclos para
terminar tres instrucciones.
Tubera bsica de cinco etapas. En el mejor de los casos, esta
tubera puede sostener un ratio de completado de una instruccin
por ciclo.
La descripcin de la operacin bsica de un CPU ofrecida en la seccin anterior describe la forma ms simple
que puede tomar un CPU. Este tipo de CPU, usualmente Uno de los mtodos ms simples para lograr incremenreferido como subescalar, opera sobre y ejecuta una sola tar el paralelismo es comenzar los primeros pasos de leer
y decodicar la instruccin antes de que la instruccin
instruccin con una o dos piezas de datos a la vez.
Este proceso da lugar a una inecacia inherente en CPU anterior haya terminado de ejecutarse. Esta es la forma
subescalares. Puesto que solamente una instruccin es ms simple de una tcnica conocida como segmentacin
ejecutada a la vez, todo el CPU debe esperar que esa ins- (instruction pipelining en ingls), y es utilizada en casi totruccin se complete antes de proceder a la siguiente ins- das los CPU de propsito general modernos. Al dividir
truccin. Como resultado, la CPU subescalar queda pa- la ruta de ejecucin en etapas discretas, la tubera permiralizado en instrucciones que toman ms de un ciclo de te que ms de una instruccin sea ejecutada en cualquier
reloj para completar su ejecucin. Incluso la adicin de tiempo. Esta separacin puede ser comparada a una lnea
una segunda unidad de ejecucin (ver abajo) no mejora de ensamblaje, en la cual una instruccin es hecha ms
mucho el desempeo. En lugar de un camino quedando completa en cada etapa hasta que sale de la tubera de
congelado, ahora dos caminos se paralizan y aumenta el ejecucin y es retirada.
nmero de transistores no usados. Este diseo, en donde Sin embargo, la tubera introduce la posibilidad de una
los recursos de ejecucin de la CPU pueden operar con situacin donde es necesario terminar el resultado de la
8
operacin anterior para completar la operacin siguiente; una condicin llamada a menudo como conicto de
dependencia de datos. Para hacer frente a esto, debe ser
tomado un cuidado adicional para comprobar estas clases de condiciones, y si esto ocurre, se debe retrasar una
porcin de la tubera de instruccin. Naturalmente, lograr esto requiere circuitera adicional, los procesadores
entubados son ms complejos que los subescalares, pero no mucho. Un procesador entubado puede llegar a ser
casi completamente escalar, solamente inhibido por las
abruptas paradas de la tubera (una instruccin durando
ms de un ciclo de reloj en una etapa).
Segmentacin superescalar simple. Al leer y despachar dos instrucciones a la vez, un mximo de dos instrucciones por ciclo
pueden ser completadas.
Una mejora adicional sobre la idea del entubado de instruccin (instruction pipelining) condujo al desarrollo de
un mtodo que disminuye incluso ms el tiempo ocioso
de los componentes del CPU. Diseos que se dice que son
superescalares incluyen una larga tubera de instruccin y
mltiples unidades de ejecucin idnticas.[9] En una tubera superescalar, mltiples instrucciones son ledas y pasadas a un despachador, que decide si las instrucciones se
pueden o no ejecutar en paralelo (simultneamente). De
ser as, son despachadas a las unidades de ejecucin disponibles, dando por resultado la capacidad para que varias instrucciones sean ejecutadas simultneamente. En
general, cuanto ms instrucciones un CPU superescalar
es capaz de despachar simultneamente a las unidades de
ejecucin en espera, ms instrucciones sern completadas
en un ciclo dado.
La mayor parte de la dicultad en el diseo de una arquitectura superescalar de CPU descansa en crear un despachador ecaz. El despachador necesita poder determinar
rpida y correctamente si las instrucciones pueden ejecutarse en paralelo, tan bien como despacharlas de una
manera que mantenga ocupadas tantas unidades de ejecucin como sea posible. Esto requiere que la tubera de
instruccin sea llenada tan a menudo como sea posible
y se incrementa la necesidad, en las arquitecturas superescalares, de cantidades signicativas de cach de CPU.
Esto tambin crea tcnicas para evitar peligros como la
prediccin de bifurcacin, ejecucin especulativa, y la
ejecucin fuera de orden, cruciales para mantener altos
niveles de desempeo. Tratando de predecir qu rama (o
DISEO E IMPLEMENTACIN
trayectoria) tomar una instruccin condicional, la CPU
puede minimizar el nmero de veces que todo el canal
debe esperar hasta que se complete una instruccin condicional. Frecuentemente, la ejecucin especulativa proporciona aumentos modestos del desempeo al ejecutar
porciones de cdigo que no puede ser necesario despus
de completarse una operacin condicional. Fuera de la orden de ejecucin cambia de algn modo el orden en que
se ejecutan las instrucciones para reducir retardos debido a las dependencias de datos. Tambin en el caso de
instrucciones individuales de datos mltiples los procesadores modernos, en caso de que se hayan procesado una gran cantidad de datos del mismo tipo, pueden
desactivar partes de la tubera de manera que cuando se
ejecuta una sola sentencia muchas veces, la CPU salta la
captacin y decodica fases y por lo tanto aumenta considerablemente el rendimiento en ciertas ocasiones, sobre
todo en los motores de programas altamente montonos
como el software de creacin de video y procesamiento
de fotografas.
En el caso donde una porcin de la CPU es superescalar
y una parte no lo es, la parte que no es superescalar sufre
en el desempeo debido a las paradas de horario. El Intel
Pentium original (P5) tena dos ALUs superescalares que
podan aceptar, cada una, una instruccin por ciclo de reloj, pero su FPU no poda aceptar una instruccin por
ciclo de reloj. As el P5 era superescalar en la parte de
nmeros enteros pero no era superescalar de nmeros de
coma (o punto [decimal]) otante. El sucesor a la arquitectura del Pentium de Intel, el P6, agreg capacidades
superescalares a sus funciones de coma otante, y por lo
tanto produjo un signicativo aumento en el desempeo
de este tipo de instrucciones.
Tanto el diseo superescalar como el entubado simple aumentan el ILP de una CPU al permitir a un solo procesador completar la ejecucin de instrucciones en ratios
que sobrepasan una instruccin por ciclo (IPC).[nota 11] La
mayora de los modernos diseos de CPU son por lo menos algo superescalares, y en la ltima dcada, casi todos
los diseos de CPU de propsito general son superescalares. En los ltimos aos algo del nfasis en el diseo de
computadores de alto ILP se ha movido del hardware del
CPU hacia su interfaz de software, o ISA. La estrategia
very long instruction word o VLIW, causa a algn ILP a
ser implcito directamente por el software, reduciendo la
cantidad de trabajo que el CPU debe realizar para darle
un empuje signicativo al ILP y por lo tanto reducir la
complejidad del diseo.
3.3.2 Paralelismo a nivel de hilos
Otra estrategia para lograr el rendimiento es ejecutar varios programas o hilos en paralelo. Esta rea de investigacin se conoce como computacin paralela. En la taxonoma de Flynn, esta estrategia se conoce como mltiples
instrucciones de varios datos o MIMD.
9
Una tecnologa utilizada para este propsito fue el
multiprocesamiento (MP). El puntapi inicial de esta tecnologa se conoce como multiprocesamiento simtrico
(SMP), donde un pequeo nmero de CPU comparten
una visin coherente de su sistema de memoria. En este esquema, cada CPU tiene un hardware adicional para mantener una visin constantemente actualizada de la
memoria. Para evitar visitas rancias de la memoria, las
CPU pueden cooperar en el mismo programa y los programas pueden migrar desde una CPU a otra. Para aumentar el nmero de CPUs que cooperan ms all de unas
pocas, se introdujeron en 1990, los esquemas tales como
el non-uniform memory Access (acceso no uniforme a
memoria) (NUMA) y los protocolos de coherencia basados en directorios. Los sistemas SMP se limitan a un
pequeo nmero de CPU mientras que los sistemas NUMA se han construido con miles de procesadores. Inicialmente, el multiprocesamiento se construy usando mltiples CPUs discretas y tableros para implementar la interconexin entre los procesadores. Cuando los procesadores y su interconexin hayan sido implementadas en un
nico chip de silicio, la tecnologa se conoce como un
procesador multincleo.
Posteriormente, se reconoci que exista un paralelismo
muy estrecho con un nico programa. Un nico programa podra tener varios hilos (o funciones) que podran
ser ejecutadas por separado o en paralelo. Algunos de los
primeros ejemplos de esta tecnologa implementaba procesamiento de entrada/salida tales como el acceso directo a memoria como un hilo separado del hilo computado.
En la dcada de 1970, se introdujo un enfoque ms general a esta tecnologa, cuando se disearon sistemas para
ejecutar mltiples hilos de computacin en paralelo. Esta
tecnologa se conoce como multihilo (MT).
Este enfoque se considera ms rentable que la del multiprocesamiento, ya que solo se replica un pequeo nmero
de componentes dentro de una CPU para soportar MT en
oposicin a la totalidad de la CPU en el caso de MP. En
MT, las unidades de ejecucin y el sistema de memoria
incluyendo los cachs son compartidos entre varios hilos.
La desventaja de MT es que el soporte de hardware para
multihilo es ms visible para el software que la de MP y
por lo tanto el software supervisor como el de los sistemas operativos tienen que someterse a los cambios ms
grandes para apoyar MT. Un tipo de MT que se implement es conocido como bloque multihilo, donde se ejecuta un hilo hasta que se paralice esperando que regresen
los datos desde la memoria externa. En este esquema, la
CPU tendra luego que cambiar rpidamente a otro hilo
que est listo para funcionar, el interruptor muchas veces
realiza un ciclo de reloj de la CPU, como la tecnologa
UltraSPARC. Otro tipo de MT se denomina multihilo simultneo, en donde las instrucciones de mltiples hilos
se ejecutan en paralelo dentro de un ciclo de reloj de la
CPU.
3.3.3 Paralelismo de datos
Un menos comn pero cada vez ms importante paradigma de CPU (y de hecho, de computacin en general) trata
con vectores. Los procesadores de los que se ha hablado anteriormente son todos referidos como cierto tipo de
dispositivo escalar.[nota 12] Como implica su nombre, los
procesadores vectoriales se ocupan de mltiples piezas de
datos en el contexto de una instruccin, esto contrasta con
los procesadores escalares, que tratan una pieza de dato
por cada instruccin. Estos dos esquemas de ocuparse de
los datos son generalmente referidos respectivamente como SISD (single instruction, single data) y SIMD (single
instruction, multiple data). La gran utilidad en crear CPU
que se ocupen de vectores de datos radica en la optimizacin de tareas que tienden a requerir la misma operacin, por ejemplo, una suma, o un producto escalar, a ser
realizado en un gran conjunto de datos. Algunos ejemplos clsicos de este tipo de tareas son las aplicaciones
multimedia (imgenes, vdeo, y sonido), as como muchos tipos de tareas cientcas y de ingeniera. Mientras
que una CPU escalar debe completar todo el proceso de
leer, decodicar, y ejecutar cada instruccin y valor en un
conjunto de datos, una CPU vectorial puede realizar una
simple operacin en un comparativamente grande conjunto de datos con una sola instruccin. Por supuesto,
esto es solamente posible cuando la aplicacin tiende a
requerir muchos pasos que apliquen una operacin a un
conjunto grande de datos.
La mayora de las primeras CPU vectoriales, como el
Cray-1, se asociaron casi exclusivamente a aplicaciones
de investigacin cientca y criptografa. Sin embargo,
a medida que la multimedia se desplaz en gran parte a
medios digitales, ha llegado a ser signicativa la necesidad de una cierta forma de SIMD en CPUs de propsito general. Poco despus de que comenzara a ser comn
incluir unidades de coma otante en procesadores de uso
general, tambin comenzaron a aparecer especicaciones
e implementaciones de unidades de ejecucin SIMD para
las CPU de uso general. Algunas de estas primeras especicaciones SIMD, como el MMX de Intel, fueron solamente para nmeros enteros. Esto demostr ser un impedimento signicativo para algunos desarrolladores de
software, ya que muchas de las aplicaciones que se beneciaban del SIMD trataban sobre todo con nmeros de
coma otante. Progresivamente, estos primeros diseos
fueron renados y rehechos en alguna de las comunes,
modernas especicaciones SIMD, que generalmente estn asociadas a un ISA. Algunos ejemplos modernos notables son el SSE de Intel y el AltiVec relacionado con el
PowerPC (tambin conocido como VMX).[nota 13]
4 Desempeo
El desempeo (performance) o la velocidad de un procesador depende de, entre muchos otros factores, la velo-
10
cidad del reloj (generalmente dada en mltiplos de hertz)
y las instrucciones por ciclo de reloj (IPC), que juntos
son los factores para las instrucciones por segundo (IPS)
que el CPU puede rendir.[10] Muchos reportes de valores IPS han representado tasas de ejecucin pico en
secuencias de instrucciones articiales con pocas ramas,
mientras que las cargas de trabajo realistas consisten en
una combinacin de instrucciones y de aplicaciones, algunas de las cuales requieren ms tiempo para ejecutar que
otras. El rendimiento de la jerarqua de memoria tambin
afecta en gran medida al rendimiento del procesador, un
tema muy poco tenido en cuenta en los clculos de MIPS.
Debido a estos problemas, para este n, se han desarrollado varios exmenes estandarizados, tales como SPECint
muchas veces llamados "puntos de referencia" - para tratar de medir el rendimiento real efectivo en aplicaciones
de uso cotidiano.
El desempeo de procesamiento de las computadoras se
incrementa utilizando procesadores multincleo, que en
esencia es conectar dos o ms procesadores individuales
(llamados ncleos en este sentido) en un solo circuito integrado.[11] Idealmente, un procesador de doble ncleo
sera casi dos veces tan potente como un procesador de
ncleo nico. En la prctica, la ganancia de desempeo
es mucho menor, solo alrededor del 50%, [cita requerida] debido a la implementacin de algoritmos imperfectos de
software.[12] El aumento del nmero de ncleos en un
procesador (es decir, dual-core, quad-core, etc) aumenta la carga de trabajo que se puede manejar. Esto signica que el procesador ahora puede manejar numerosos
eventos asncronos, interrupciones, etc que pueden tomar
un peaje en la CPU (Central Processing Unit) cuando
se abruma. Estos ncleos pueden considerarse como diferentes plantas en una planta de procesamiento, con el
manejo de cada piso una tarea diferente. En ocasiones,
estos ncleos se manejan las mismas tareas que los ncleos adyacentes a ellos si un solo ncleo no es suciente
para manejar la informacin.
Debido a las capacidades especcas de las CPU modernas, como Hyper-Threading y Uncore, que implican el
intercambio de recursos reales de la CPU mientras que
el objetivo de una mayor utilizacin, supervisar los niveles de rendimiento y la utilizacin del hardware se fue
convirtiendo gradualmente en una tarea ms compleja.
Como respuesta, algunas CPUs implementan lgica de
hardware adicional que controla la utilizacin real de las
diversas partes de una CPU y proporciona varios contadores accesibles a software; un ejemplo es la tecnologa
Performance Counter Monitor (Monitor de contador de
rendimiento) de Intel.[13]
6 NOTAS
5 Vase tambin
6 Notas
[1] Integrated circuits are now used to implement all CPUs,
except for a few machines designed to withstand large
electromagnetic pulses, say from a nuclear weapon.
[2] The so-called 'von Neumann' memo expounded the idea
of stored programs, stored say, on punch cards, paper tape,
or magnetic tape
[3] Since the program counter counts memory addresses and
not instructions, it is incremented by the number of memory units that the instruction word contains. In the case
of simple xed-length instruction word ISAs, this is always the same number. For example, a xed-length 32bit instruction word ISA that uses 8-bit memory words
would always increment the PC by 4 (except in the case
of jumps). ISAs that use variable length instruction words
increment the PC by the number of memory words corresponding to the last instructions length.
[4] Because the instruction set architecture of a CPU is fundamental to its interface and usage, it is often used as a
classication of the type of CPU. For example, a PowerPC CPU uses some variant of the PowerPC ISA. A
system can execute a dierent ISA by running an emulator.
[5] Some early computers like the Harvard Mark I did not
support any kind of jump instruction, eectively limiting the complexity of the programs they could run. It is
largely for this reason that these computers are often not
considered to contain a CPU proper, despite their close
similarity as stored program computers.
[6] This description is, in fact, a simplied view even of the
Classic RISC pipeline. It largely ignores the important role of CPU cache, and therefore the access stage of the
pipeline. See the respective articles for more details.
[7] The physical concept of voltage is an analog one by its
nature, practically having an innite range of possible values. For the purpose of physical representation of binary
numbers, set ranges of voltages are dened as one or zero. These ranges are usually inuenced by the operational
parameters of the switching elements used to create the
CPU, such as a transistor's threshold level.
[8] While a CPUs integer size sets a limit on integer ranges, this can (and often is) overcome using a combination
of software and hardware techniques. By using additional memory, software can represent integers many magnitudes larger than the CPU can. Sometimes the CPUs
ISA will even facilitate operations on integers larger that
it can natively represent by providing instructions to make large integer arithmetic relatively quick. While this
method of dealing with large integers is somewhat slower than utilizing a CPU with higher integer size, it is a
reasonable trade-o in cases where natively supporting the
full integer range needed would be cost-prohibitive. See
Arbitrary-precision arithmetic for more details on purely
software-supported arbitrary-sized integers.
11
[9] In fact, all synchronous CPU use a combination of
sequential logic and combinatorial logic. (See boolean logic)
[7] Brown, Jeery (2005). Application-customized CPU
design (en ingls). IBM developerWorks. Consultado el
17 de diciembre de 2005.
[10] Neither ILP nor TLP is inherently superior over the other; they are simply dierent means by which to increase
CPU parallelism. As such, they both have advantages and
disadvantages, which are often determined by the type of
software that the processor is intended to run. High-TLP
CPUs are often used in applications that lend themselves
well to being split up into numerous smaller applications,
so-called "embarrassingly parallel problems. Frequently,
a computational problem that can be solved quickly with
high TLP design strategies like SMP take signicantly more time on high ILP devices like superscalar CPUs, and
vice versa.
[8] Garside, J. D., Furber, S. B., & Chung, S-H (1999).
AMULET3 Revealed (en ingls). University of Manchester Computer Science Department. Archivado desde el
original el 28 de noviembre de 2015.
[11] Best-case scenario (or peak) IPC rates in very superscalar
architectures are dicult to maintain since it is impossible
to keep the instruction pipeline lled all the time. Therefore, in highly superscalar CPU, average sustained IPC is
often discussed rather than peak IPC.
[12] Earlier the term scalar was used to compare most the
IPC (instructions per cycle) count aorded by various ILP
methods. Here the term is used in the strictly mathematical sense to contrast with vectors. See scalar (mathematics) and vector (spatial).
[13] Although SSE/SSE2/SSE3 have superseded MMX in Intels general purpose CPU, later IA-32 designs still support MMX. This is usually accomplished by providing
most of the MMX functionality with the same hardware that supports the much more expansive SSE instruction
sets.
Referencias
[1] Weik, Martin H. (1961). A Third Survey of Domestic Electronic Digital Computing Systems (en ingls). Ballistic Research Laboratories.
[2] First Draft of a Report on the EDVAC (en ingls). Moore
School of Electrical Engineering, Universidad de Pennsylvania. 1945.
[3] Enticknap, Nicholas (Verano de 1998), Computings
Golden Jubilee [Jubileo de Oro de la computacin], Resurrection (en ingls) (The Computer Conservation Society) 20, ISSN 0958-7403, consultado el 19 de abril de
2008
[4] Amdahl, G. M., Blaauw, G. A., & Brooks, F. P. Jr. (1964).
Architecture of the IBM System/360 (en ingls). IBM Research. Archivado desde el original el 28 de noviembre de
2015.
[5] Digital Equipment Corporation (noviembre de 1975).
LSI-11 Module Descriptions. LSI-11, PDP-11/03 users
manual (en ingls) (2da edicin). Maynard, Massachusetts: Digital Equipment Corporation. pp. 4-3.
[6] Excerpts from A Conversation with Gordon Moore: Moores Law (PDF) (en ingls). Intel. 2005. Consultado el 25
de julio de 2012.
[9] Huynh, Jack (2003). The AMD Athlon XP Processor
with 512KB L2 Cache (en ingls). University of Illinois
Urbana-Champaign. pp. 6-11. Consultado el 6 de octubre de 2007.
[10] CPU Frequency. CPU World Glossary (en ingls). CPU
World. 25 de marzo de 2008. Consultado el 1 de enero de
2010.
[11] What is (a) multi-core processor?. Data Center Denitions (en ingls). [Link]. 27 de marzo de
2007. Consultado el 1 de enero de 2010.
[12] Quad Core Vs. Dual Core. [Link]
Consultado el 26 de noviembre de 2014.
[13] Thomas Willhalm; Roman Dementiev; Patrick Fay (18 de
diciembre de 2014). Intel Performance Counter Monitor A better way to measure CPU utilization (en ingls).
Consultado el 17 de febrero de 2015.
8 Bibliografa
Amdahl, G. M., Blaauw, G. A., & Brooks, F. P.
Jr. (1964). Architecture of the IBM System/360. IBM
Research. Archivado desde el original el 28 de noviembre de 2015.
Brown, Jeery (2005). Application-customized
CPU design. IBM developerWorks. Consultado el
17 de diciembre de 2005.
Digital Equipment Corporation (noviembre de
1975). LSI-11 Module Descriptions. LSI-11,
PDP-11/03 users manual (2da edicin edicin).
Maynard, Massachusetts: Digital Equipment Corporation. pp. 4-3.
Garside, J. D., Furber, S. B., & Chung, S-H
(1999). AMULET3 Revealed. University of Manchester Computer Science Department. Archivado
desde el original el 28 de noviembre de 2015.
Hennessy, John A.; Goldberg, David (1996). Computer Architecture: A Quantitative Approach. Morgan Kaufmann Publishers. ISBN 1-55860-329-8.
MIPS Technologies, Inc. (2005). MIPS32 Architecture For Programmers Volume II: The MIPS32
Instruction Set. MIPS Technologies, Inc.
Smotherman, Mark (2005). History of Multithreading. Consultado el 19 de diciembre de 2005.
Introduccin a los
Sistemas de Entrada/Salida
Arquitectura de Sistemas Paralelos (1)
Introduccin a los sistemas de entrada/salida
ndice y bibliografa
Introduccin
Mdulos de Entrada/Salida
Mapa de Entrada/Salida: comn y separado
Mtodos de Entrada/Salida
E/S programada
E/S por interrupciones
Acceso directo a memoria
Ejemplo de dispositivo de E/S
Operaciones de E/S desde el SO
Bibliografa
Organizacin y Arquitectura de Computadores, William Stalling
Linux Device Drivers, Alessandro Rubini and Jonathan Corbet, OReilly
Arquitectura de Sistemas Paralelos (2)
Introduccin a los sistemas de entrada/salida
Introduccin (I)
Un computador no puede estar formado slo por la CPU y la memoria.
Para darle alguna utilidad debe de poder comunicarse con el mundo
exterior. Esto se realiza a travs del subsistema de entrada/salida
(mdulos de E/S)
La misin principal del subsistema de E/S es la adaptacin de los
dispositivos externos para su conexin al bus del sistema. Por qu no
pueden conectarse directamente?
A menudo, la velocidad de transmisin de datos de los perifricos es
mucho menor que la de la memoria y la CPU (es necesario amortiguar esa
diferencia de velocidades)
Debido a la gran variedad de perifricos existentes no es posible incorporar
toda la lgica necesaria para controlar tal diversidad de dispositivos dentro
del procesador
Los formatos y tamaos de datos de los perifricos suelen ser diferentes a
los utilizados por el computador a los que se conectan
Arquitectura de Sistemas Paralelos (3)
Entrada/Salida
Introduccin (II)
Existen dos esquemas diferentes para la
implementacin del subsistema de E/S:
a) Disearlo a medida utilizando
componentes bsicos
b) Utilizar dispositivos genricos de E/S y
programarlos convenientemente
(b)
(a)
Arquitectura de Sistemas Paralelos (4)
Mdulos de E/S
Definiciones
Dispositivo externo: elementos que permiten la transferencia de informacin
entre la CPU y el mundo exterior. Funcionan a modo de interface
transformando la informacin asncrona y analgica del mundo exterior a la
informacin sncrona y codificada del computador
Mdulo de E/S: elementos que permiten la conexin de un dispositivo externo
al bus del sistema. Los trminos controlador, procesador de E/S y mdulo
de E/S son equivalentes desde el punto de vista funcional:
Los controladores son mdulos de E/S muy sencillos que tienen el
hardware necesario para que funcione el dispositivo externo
Los procesadores de E/S son autnticos procesadores con un juego
especializado de instrucciones orientado a operaciones de E/S, que son
programados por la CPU, permitiendo un funcionamiento autnomo
Un dispositivo externo conectado a un mdulo de E/S se denomina dispositivo
perifrico o simplemente perifrico
Arquitectura de Sistemas Paralelos (5)
Mdulos de E/S
Diagrama de bloques de un dispositivo externo
Arquitectura de Sistemas Paralelos (6)
Mdulos de E/S
Diagrama de bloques de un mdulo de E/S
Arquitectura de Sistemas Paralelos (7)
Mdulos de E/S
Funciones (I)
Las funciones de un mdulo de E/S son:
Control y temporizacin
Comunicacin con el procesador
Comunicacin con los dispositivos
Almacenamiento temporal
Deteccin de errores
Arquitectura de Sistemas Paralelos (8)
Mdulos de E/S
Funciones (II)
Control y temporizacin
Son necesarios para coordinar el trfico entre dispositivos internos y externos
Por ejemplo, el control de la transferencia de datos desde un dispositivo
externo al procesador podra implicar la siguiente secuencia de pasos:
1. El procesador pregunta por el estado del dispositivo
2. El mdulo de E/S devuelve el estado del dispositivo
3. Si el dispositivo est listo, el procesador solicita la transferencia al mdulo de E/S
4. El mdulo de E/S obtiene los datos
5. Los datos se transfieren del mdulo de E/S al procesador
La comunicacin con el procesador implica:
Decodificacin de rdenes
Datos
Informacin de estado
Reconocimiento de direccin
Arquitectura de Sistemas Paralelos (9)
Mdulos de E/S
Funciones (III)
La comunicacin con el dispositivo implica:
rdenes
Informacin de estado
Datos
Almacenamiento temporal de datos
Los datos se envan en rfagas rpidas desde la memoria al mdulo de E/S y
despus se envan al perifrico a la velocidad de ste (el proceso inverso es
semejante)
Los datos se almacenan para no mantener ocupada a la memoria en una
operacin de transferencia lenta (evitar una cada en el rendimiento)
Deteccin de errores
Errores debidos a defectos mecnicos o elctricos
Errores en la transmisin de informacin (cdigos de deteccin de errores)
Arquitectura de Sistemas Paralelos (10)
Mdulos de E/S
Funciones (IV)
Velocidades tpicas de transferencia en dispositivos de E/S (bps)
(Almacenamiento temporal de datos)
Arquitectura de Sistemas Paralelos (11)
Mapa de Entrada/Salida: comn y separado
Definicin
A la hora de integrar el subsistema de E/S (seleccin del dispositivos y
acceso a sus registros) en un computador existen dos posibilidades:
E/S comn o asignada/mapeada en memoria: en la que el procesador no
contempla el acceso a mdulos de E/S. El acceso a los perifricos se hace
como si se accediese a un dato almacenado en la memoria principal. A los
perifricos se le asigna posiciones de memoria como si fueran variables. Ej:
el procesador Motorola 68000
E/S aislada o separada: el acceso a la E/S est contemplado en la
arquitectura. Existen dos mapas de memoria separados: uno para memoria y
otro para E/S. Esto implica que existen instrucciones especficas de E/S
(inport/outport) y tambin seales especficas. Ej: la familia i80x86
Aunque el sistema soporte espacios de direcciones separados no todos los
dispositivos tienen porqu usar los puertos de E/S: mientras que el uso de
los puertos de E/S eran comn en las tarjetas ISA, los dispositivos PCI
suelen mapear sus registros en memoria
Arquitectura de Sistemas Paralelos (12)
Mapa de Entrada/Salida: comn y separado
Ejemplo: Esquema de direcciones de E/S en un PC
Arquitectura de Sistemas Paralelos (13)
Mapa de Entrada/Salida: comn y separado
Ventajas e inconvenientes
Mapear la E/S en memoria tiene como ventajas:
no utilizar instrucciones de propsito especfico y aprovechar
toda la potencia del juegos de instrucciones, permitiendo una
mejor programacin
el acceso a memoria es mucho ms eficiente
el compilador tiene mas libertad para elegir el lugar y el modo de
direccionamiento en el acceso a memoria
Y como inconveniente:
se desperdicia parte del espacio de direcciones
Arquitectura de Sistemas Paralelos (14)
Mapa de Entrada/Salida: comn y separado
Los problemas de la E/S en memoria
Hay que tener en cuenta que las operaciones de E/S suelen tener
efectos colaterales (ej: bandera desactivada cuando se produce
una lectura) mientras que la operaciones con memoria no
Cuando existen efectos colaterales las operaciones de E/S
mapeada en memoria pueden ser problemticas
Como la velocidad de acceso a memoria es crtica en el
rendimiento de la CPU, el acceso a memoria (sin efectos
colaterales) es optimizado: cach, optimizaciones del
compilador y reordenacin hardware de instrucciones
Para evitar el uso de la cach el espacio de memoria del
dispositivo puede ser configurado como memoria no cacheable
Para evitar la optimizacin del compilador y la reordenacin
harware de instrucciones cuando se programa deben utilizarse
memory barriers
Arquitectura de Sistemas Paralelos (15)
Mtodos de Entrada/Salida
Clasificacin
Debido a la diferencia de velocidad entre procesador y
perifricos es necesario proporcionar mecanismos para
sincronizar las operaciones de E/S
A la hora de clasificar los diferentes mtodos para llevar
a cabo las operaciones de E/S hay que tener en cuenta los
siguientes factores:
Inicio de la transferencia (quin comienza la transferencia?)
Transferencia (quin realiza la transferencia?)
Existen tres tcnicas para realizar las operaciones de E/S:
E/S programada
E/S por interrupciones
Acceso directo a memoria
Arquitectura de Sistemas Paralelos (16)
Mtodos de Entrada/Salida
E/S programada
Tambin llamada por sondeo o encuesta (polling)
La CPU tiene el control absoluto de la operacin de E/S: inicia
y lleva a cabo la transferencia
El procesador ejecuta un programa que controla directamente
la operacin de E/S :
Comprobacin del estado
Envo de una orden de lectura o escritura
Transferencia de datos
Esta tcnica tiene la ventaja de utilizar un hardware mnimo
aunque malgasta tiempo de proceso ya que ha de interrogar
continuamente al perifrico (espera activa,
en sistemas
multiproceso)
Arquitectura de Sistemas Paralelos (17)
E/S programada
Ejemplo de programacin
void main ()
{
unsigned char estado;
...
inicializar_periferico_X();
...
while (!fin_operacion) {
estado = inportb (PUERTO_REG_ESTADO_X);
if ((estado & MASCARA_BIT_LISTO)!= 0)
hacer_operacion(); activo en alta
}
}
((estado | ~ MASCARA_BIT_LISTO)!= 0xFFFF)
activo en baja
Arquitectura de Sistemas Paralelos (18)
Mtodos de Entrada/Salida
E/S por interrupciones
Para evitar la degradacin en las prestaciones del sistema que supone la
espera activa, en este caso es el dispositivo el que solicita la operacin de
E/S cuando se encuentra preparado para realizarla (interrupcin)
La transferencia es llevada a cabo por la CPU de forma semejante a como
se haca en la E/S programada
El esquema bsico de funcionamiento de la E/S por interrupciones es:
1. El procesador ejecuta instrucciones de un programa
2. Al finalizar cada instruccin comprueba si se ha producido una interrupcin
3. En caso afirmativo el procesador enva una seal de reconocimiento al
dispositivo, guarda el estado actual del proceso (contador del programa y
registros) y comienza a ejecutar la rutina que sirve la interrupcin
(manejador de interrupcin o rutina de servicio de interrupcin)
4. Al finalizar la ejecucin de la rutina de servicio, se recupera el estado de la
mquina y se contina ejecutando el proceso que se abort
Arquitectura de Sistemas Paralelos (19)
E/S por interrupciones
Esquema de funcionamiento
PSW=Program Status Word
PC=Program Counter
Arquitectura de Sistemas Paralelos (20)
E/S por interrupciones
Implementacin
En la implementacin de la E/S mediante interrupciones aparecen dos
cuestiones:
cmo se determina el procesador qu dispositivo ha provocado la
interrupcin?
si se han producido varias interrupciones, cmo decide el
procesador la que debe atender?
Hay cuatro tcnicas utilizadas comnmente para implementar la E/S
por interrupciones:
Mltiples lneas de interrupcin
Consulta software (software polling)
Conexin en cadena (daisy chain)
Arbitraje de bus
Tcnicas que usan interrupciones vectorizadas
Arquitectura de Sistemas Paralelos (21)
Implementacin de la E/S por interrupciones
Mltiples lneas de interrupcin
Consiste en proporcionar varas lneas de interrupcin entre el
procesador y los mdulos de E/S
Es poco prctico porque malgasta terminales del procesador y adems
de existir ms perifricos que lneas no se resolvera el problema
La prioridad viene fijada por el procesador
CPU
Perifrico 0
Perifrico 1
INT0
INT1
...
INTN
Arquitectura de Sistemas Paralelos (22)
Perifrico N
Implementacin de la E/S por interrupciones
Consulta software
Todos los mdulos de E/S comparten una lnea comn para solicitar
interrupciones
Cuando el procesador detecta una interrupcin, se produce un salto a
una subrutina de servicio de interrupcin que se encarga de consultar a
cada mdulo de E/S para determinar cul ha producido la interrupcin
La desventaja de la consulta software est en el tiempo que consume
La prioridad viene determinada por el orden en que se hace la encuesta
Arquitectura de Sistemas Paralelos (23)
Implementacin de la E/S por interrupciones
Conexin en cadena (I)
Se trata de una consulta o polling hardware
Todos los mdulos de E/S comparten una lnea comn para solicitar
interrupciones
La lnea de reconocimiento de interrupcin se conecta encadenando los
mdulos uno tras otro
Cuando el procesador recibe una interrupcin, activa la seal de
reconocimiento, la cual se propaga a travs de la secuencia de mdulos de
E/S hasta que alcanza al que solicit la interrupcin
El mdulo correspondiente responde colocando una palabra que lo identifica
en las lneas de datos (vector)
El procesador utiliza el vector de interrupcin como puntero a la rutina de
servicio (as se evita ejecutar una rutina de servicio general)
La prioridad viene determinada por el orden en que se conectan los mdulos
en la cadena
Arquitectura de Sistemas Paralelos (24)
Implementacin de la E/S por interrupciones
Conexin en cadena (II)
Arquitectura de Sistemas Paralelos (25)
Implementacin de la E/S por interrupciones
Arbitraje de bus
Con esta tcnica, un mdulo de E/S antes de poder activar la lnea de
peticin de interrupcin debe disponer del control del bus
Mediante el arbitrador de bus se garantiza que slo un mdulo puede
activar la seal de peticin en un determinado instante
Es una tcnica que usa interrupciones vectorizadas como el daisy chain
La prioridad viene determinada por el arbitrador
Arquitectura de Sistemas Paralelos (26)
Implementacin de la E/S por interrupciones
Ejemplo de arbitrador: PIC 8259 (I)
Los 80x86 disponen de una sola lnea de peticin de interrupcin
(INTR) y una sola lnea de reconocimiento de interrupcin (INTA)
Para manejar cierta variedad de dispositivos y estructuras de prioridad,
se configura un rbitro de interrupciones externo (PIC 8259)
El 8259 permite manejar hasta 8 mdulos. Si se precisan ms pueden
conectarse en cascada permitiendo manejar hasta 64 mdulos
El esquema de funcionamiento de un sistema basado en el 8259 es el
siguiente:
El 8259 acepta las solicitudes de interrupcin de los dispositivos
conectados a l
El 8259 determina qu interrupcin tiene la prioridad ms alta e
indica la peticin al procesador activando la seal INTR
El procesador reconoce la solicitud activando la seal INTA
El 8259 sita el vector de interrupcin apropiado en el bus
El procesador comienza la ejecucin de la rutina de servicio
Arquitectura de Sistemas Paralelos (27)
Implementacin de la E/S por interrupciones
Ejemplo de arbitrador: PIC 8259 (II)
El esquema de prioridades es configurable en el 8259. Se
permiten los siguientes modos:
Completamente anidados: las solicitudes de interrupcin se
ordenan segn un nivel de prioridad desde 0 (IR0) hasta 7(IR7)
Rotatorio: un dispositivo pasa a tener la menor prioridad del grupo
despus de ser servido (aplicaciones en las que hay dispositivos con
igual prioridad de interrupcin)
Con mscara especial: se permite que el procesador pueda inhibir
selectivamente las interrupciones de determinados dispositivos
Arquitectura de Sistemas Paralelos (28)
Implementacin de la E/S por interrupciones
Ejemplo de arbitrador: PIC 8259 (III)
Arquitectura de Sistemas Paralelos (29)
E/S por interrupciones
Habilitacin/Deshabilitacin de interrupciones
Las interrupciones pueden ser:
enmascarables: se pueden dejar de atender por software
no enmascarables: siempre son atendidas
Existen 3 niveles en los que habilitar/deshabilitar las interrupciones:
A nivel de procesador: se deshabilitan todas las interrupciones
enmascarables
A nivel de controlador de interrupciones (PIC): se pueden
habilitar/deshabilitar todas las interrupciones asociadas a un canal de
interrupcin
A nivel del dispositivo: los dispositivo perifricos suelen tener bits en sus
registros de E/S para habilitar/deshabilitar las diferentes interrupciones que pueden
generar
Arquitectura de Sistemas Paralelos (30)
E/S por interrupciones
Ejemplo de programacin
void main () {
void interrupt (*manejador_antiguo)();
...
inicializar_periferico_X();
antiguo=getvect(INT_X);
disable(); /* Se deshabilitan mientras se manipulan
los vectores de interrupcion */
setvect(INT_X, manejador_intr_periferico_X);
enable ();
...
disable();
setvect(INT_X, manejador_antiguo);
enable (); }
void interrupt manejador_intr_periferico_X() {
... /* Se realizan las operaciones necesarias */}
Arquitectura de Sistemas Paralelos (31)
Acceso directo a memoria
Concepto
Tanto la E/S por interrupciones como la E/S programada requieren la
intervencin activa del procesador para transferir datos entre la
memoria y los mdulos de E/S
Ambos mtodos tienen un impacto negativo sobre la actividad del
procesador y la velocidad de E/S
Utilizando la E/S programada, el procesador puede transferir datos a
alta velocidad al precio de no hacer nada ms
La E/S con interrupciones libera en parte al procesador a expensas de
reducir la velocidad de E/S (debido a la sobrecarga que supone el
cambio de contexto)
Cuando hay que transferir grandes volmenes de datos, se requiere una
tcnica ms eficiente: el Acceso Directo a Memoria (DMA)
En el DMA tanto el inicio de la transferencia como la transferencia en
s estn gobernadas por el dispositivo (se libera a la CPU)
Arquitectura de Sistemas Paralelos (32)
Acceso directo a memoria
El controlador de DMA
El acceso directo a memoria requiere un mdulo adicional en el bus
del sistema: el Controlador de DMA (DMAC)
La nica tarea de la CPU es programar el DMAC. Hay que enviarle al
menos la siguiente informacin:
Direccin del perifrico de E/S
Posicin inicial de memoria de donde se lee o se escribe
El tipo transferencia: lectura o escritura
El tamao de la transferencia (nmero de palabras a transferir)
El DMAC transfiere el bloque de datos completo, palabra a palabra,
directamente desde, o hacia, la memoria, sin que tenga que pasar a
travs del procesador
Cuando la transferencia ha concluido el DMAC enva una seal de
interrupcin al procesador (TC, Terminal Count)
Arquitectura de Sistemas Paralelos (33)
Acceso directo a memoria
Implementacin (I)
Existen varias formas de realizar el acceso directo a memoria:
Memoria multipuerto: la memoria permite realizar transferencias
simultneas por parte de la CPU y el DMAC. La memoria tiene dos
puertos: uno para la CPU y otro para el DMAC. Es posible el acceso
concurrente a un mismo bloque de memoria por lo que hay que
establecer mecanismos de control
Acceso a memoria por robo de ciclo: es una solucin ms
econmica y es la utilizada habitualmente. El DMAC cada vez que
quiere tomar el control del bus del sistema para realizar una
transferencia, lo solicita a la CPU activando una seal (HOLD). La
CPU concede el control del bus (se activa la seal HLDA), el DMAC
se hace dueo del bus y realiza la transferencia. Ejemplo 80x86 y
8237:
Transferencia en bloque o rfaga
Transferencia bajo demanda
Transferencia simple
Arquitectura de Sistemas Paralelos (34)
Acceso directo a memoria
Implementacin (II)
Acceso a memoria por robo de ciclo
Arquitectura de Sistemas Paralelos (35)
Acceso directo a memoria
Implementacin (III)
La conexin del DMAC al sistema puede realizarse de varias formas
diferentes:
Bus nico, DMA independiente: El mdulo de DMA acta como un
procesador suplementario. Es econmica pero ineficiente: la
transferencia de cada palabra consume dos ciclos de bus
Bus nico, DMA-E/S: El nmero de ciclos de bus necesarios puede
reducirse sustancialmente si se integran las funciones de DMA y E/S
(el camino entre el DMA y los mdulos de E/S no incluye al bus del
sistema)
Bus de E/S: El concepto anterior puede llevarse algo ms lejos
conectado los mdulos de E/S a un mdulo de DMA mediante un bus
de E/S. Se reduce a uno el nmero de interfaces de E/S en el mdulo de
DMA y es una configuracin fcilmente ampliable
Arquitectura de Sistemas Paralelos (36)
Acceso directo a memoria
Implementacin (IV)
Bus nico,
DMA independiente
Bus nico,
DMA-E/S
Bus de E/S
Arquitectura de Sistemas Paralelos (37)
Acceso directo a memoria
Ejemplo de mdulo de DMA: DMAC 8237 (I)
El 8237 es un controlador de DMA de 4 canales programables en 3 modos
diferentes, con posibilidad de ser conectado en cascada y que adems de las
funciones tradicionales soporta tambin transferencias memoria-memoria
El bus de datos es de 8 bits y el de direcciones de 16 bits (requiere un latch
externo porque est multiplexado para ahorrar pines)
Cuando se usa con la familia 80x86 es necesario un latch (registro de pgina) que
almacene los 4 bits superiores de la direccin del 80x86 en modo real (20 bits)
Modos de transferencia:
Transferencia nica: El dispositivo es programado para realizar una nica
transferencia
Transferencia de bloque: Se transfieren todas las palabras de las que consta
la transferencia
Transferencia bajo demanda: la transferencia se realiza slo mientras el
dispositivo siga solicitando el canal de DMA. Esta modalidad permite dejar
ciclos a la CPU cuando no es realmente necesario que el DMA opere
Arquitectura de Sistemas Paralelos (38)
Acceso directo a memoria
Ejemplo de mdulo de DMA: DMAC 8237 (II)
El controlador de DMA es realmente un circuito secuencial generador de
seales de control y direcciones que permite la transferencia directa de los
datos sin necesidad de registros temporales intermedios (transferencia al vuelo)
Las operaciones memoria-memoria precisan de un registro temporal
intermedio, por lo que son al menos dos veces ms lentas que las de E/S
(permiten chequeos para finalizar transferencias)
Cuando el 8237 est inactivo permanece desconectado de los buses del
sistema; cuando se produce una peticin de DMA por parte de un dispositivo
(con DREQi se pide y con DACKi se confirma), genera una solicitud para
apropiarse del bus (HRQ), espera confirmacin (HLDA) y a continuacin
genera las seales necesarias para realizar la transferencia. Cuando acaba
genera una interrupcin (TC, Terminal Count)
Dispone de esquemas de prioridad fija (DREQ0 ms prioritaria) y rotativa
La operacin que realiza el 8237 es consecuencia de la programacin realizada
previamente en los registros de comando, modo, base de direccin y contador
de palabras a transferir
Arquitectura de Sistemas Paralelos (39)
Ejemplo de mdulo de DMA: DMAC 8237
Sistema basado en un 8237
Arquitectura de Sistemas Paralelos (40)
Acceso directo a memoria
Ejemplo de programacin
void main () {
void interrupt (*manejador_antiguo)();
...
inicializar_periferico_X();
inicializar_DMA (dir, tam, tipo, ...);
antiguo=getvect(INT_FIN_TRANS);
disable(); /* Se deshabilitan mientras se manipulan
los vectores de interrupcion */
setvect(INT_FIN_TRANS, manejador_fin_trans);
enable ();
...
disable();
setvect(INT_FIN_TRANS, manejador_antiguo);
enable (); }
void interrupt manejador_fin_trans () {
/* Se comprueban los posibles errores de la transferencia */ ...}
Arquitectura de Sistemas Paralelos (41)
Mtodos de E/S
Resumen
Arquitectura de Sistemas Paralelos (42)
Ejemplo de dispositivo de E/S
Interfaz Perifrico Programable 8255
Caractersticas
Diagrama de bloques
Direcciones y registros de control
Modos de funcionamiento:
Modo 0 (E/S programada)
Modo 1 (E/S por interrupciones)
Modo 2 (E/S bidireccional)
Emulacin interfaz centronics (puerto paralelo impresora)
mediante un 8255
Arquitectura de Sistemas Paralelos (43)
Interfaz Perifrico Programable 8255
Caractersticas
Dispone de tres puertos de E/S (A, B y C):
dos de tamao byte (A y B) y uno de tamao
2x4 bits (C) con control bit a bit
Los puertos pueden ser configurados como
entrada, salida o bidireccionales
Dispone de lneas de protocolo
Arquitectura de Sistemas Paralelos (44)
Interfaz Perifrico Programable 8255
Diagrama de bloques
Arquitectura de Sistemas Paralelos (45)
Interfaz Perifrico Programable 8255
Direcciones y registros de control
Arquitectura de Sistemas Paralelos (46)
Interfaz Perifrico Programable 8255
Modo 0 (E/S Programada)
Se utilizan los tres puertos (A,B,C) como simples registros
donde leer y escribir. La CPU y el/los dispositivo/s externo/s
correspondiente/s se encarga/n de leer/escribir de acuerdo a un
determinado protocolo previamente definido
El puerto A (8 bits) se configura como entrada o salida con el bit
D4 del registro de control
El puerto B (8 bits) se configura como entrada o salida con el bit
D1 del registro de control
El puerto C alto (4 bits) se configura como entrada o salida con el
bit D3 del registro de control
El puerto C bajo (4 bits) se configura como entrada o salida con el
bit D0 del registro de control
Arquitectura de Sistemas Paralelos (47)
Interfaz Perifrico Programable 8255
Cronograma Modo 0
Arquitectura de Sistemas Paralelos (48)
Interfaz Perifrico Programable 8255
Modo 1 (E/S por interrupciones)
En este modo se utiliza el protocolo Handshake
El puerto A (8 bits) se configura como entrada o salida con el
bit D4 del registro de control
El puerto B (8 bits) se configura como entrada o salida con el
bit D1 del registro de control
El puerto C contiene las seales del protocolo
Arquitectura de Sistemas Paralelos (49)
Interfaz Perifrico Programable 8255
Modo 1 (E/S por interrupciones). Configuracin de entrada
Seales de protocolo cuando el puerto est configurado como entrada
STBA (strobe input): Un cero en esta lnea de entrada indica
que hay dato disponible en el puerto A (activada por el
dispositivo externo)
IBFA (input buffer full): Un uno en esta lnea de salida indica
que el dato ya ha sido cargado en el registro del puerto A.
IBFA se desactiva cuando se desactiva STBA (el dispositivo
externo da su confirmacin) y se produce el flanco de subida
de la seal RD (dato ledo por la CPU)
Las seales STBB , IBFB son funcionalmente equivalentes
Arquitectura de Sistemas Paralelos (50)
Interfaz Perifrico Programable 8255
Modo 1 (E/S por interrupciones) Configuracin de salida
Seales de protocolo cuando el puerto est configurado como salida
OBFA (output buffer full): esta lnea de salida se pone a cero
(activa en baja) para indicarle al dispositivo que la CPU ha
escrito un dato en el puerto A. Se activa con el flanco de
subida de la seal WR (escritura finalizada) y se desactiva
con la confirmacin del dispositivo (ACKA)
ACKA (acknowledge input): un cero en esta entrada indica
que los datos del puerto A han sido ledos por el
dispositivo externo. Esencialmente es una respuesta del
dispositivo perifrico indicando que ha sido recibido el
dato enviado por la CPU
Las seales OBFB y ACKB son funcionalmente equivalentes
Arquitectura de Sistemas Paralelos (51)
Interfaz Perifrico Programable 8255
Modo 1 (E/S por interrupciones). Interrupciones
Seales de interrupcin se pueden generar en los puertos A y B tanto si
estn configurados como entrada (la CPU debe leer un dato) como si lo
estn como salida (la CPU ya puede escribir un nuevos dato)
El bit 4 del puerto C (PC4) es el bit de habilitacin de interrupcin del
puerto A (INTEA) cuando est configurado como entrada y el PC6 cuando
lo est como salida. El del puerto B (INTEB) es el bit 2 (PC2).
Para que el 8255 genere una interrupcin asociada al puerto A (seal
INTRA) cuando est configurado como entrada, se debe cumplir que:
STBA es 1, IBFA es 1 e INTEA es 1
(semejante para el puerto B)
Para que el 8255 genere una interrupcin asociada al puerto A (seal
INTRA) cuando est configurado como salida, se debe cumplir que:
ACKA es 1, OBFA es 1 e INTEA es 1
(semejante para el puerto B)
Arquitectura de Sistemas Paralelos (52)
Interfaz Perifrico Programable 8255
Modo 1 (E/S por interrupciones). Registros y seales
Arquitectura de Sistemas Paralelos (53)
Interfaz Perifrico Programable 8255
Cronograma Modo 1
1
2
5
3
4
Comienzo de la
ejecucin de los
manejadores de
interrupcin
Arquitectura de Sistemas Paralelos (54)
1
2
4
5
3
Interfaz Perifrico Programable 8255
Modo 2 (E/S bidireccional)
El PUERTO A funciona de forma bidireccional. Es como un doble
modo 1. El PUERTO B no tiene este modo
Los cinco lneas superiores del puerto C contienen las seales de
protocolo
Seales de protocolo
(semejantes a las descritas en el modo 1)
STB (strobe input)
IBF (input buffer full)
ACK (acknowledge)
OBF (output buffer full)
INTR
Arquitectura de Sistemas Paralelos (55)
Interfaz Perifrico Programable 8255
Modo 2 (E/S bidireccional). Registro y seales
Arquitectura de Sistemas Paralelos (56)
Interfaz Perifrico Programable 8255
Cronograma Modo 2
Arquitectura de Sistemas Paralelos (57)
Interfaz Perifrico Programable 8255
Emulacin interfaz centronics (puerto paralelo impresora)
Arquitectura de Sistemas Paralelos (58)
Operaciones de E/S desde el SO
El S.O. Linux y la programacin de drivers
El kernel de Linux ofrece una interfaz de programacin que facilita la
creacin de drivers, de manera que el diseador debe mapear llamadas al
sistema independientes del driver de carcter estndar con operaciones
especficas del driver
Una caracterstica interesante de esta interfaz de programacin es que los
drivers pueden ser implementados fuera del kernel y aadidos a ste en
tiempo de ejecucin
La distincin entre mecanismos (capacidades que se ofrecen) y poltica (uso
de esas capacidades) es una de las mejores ideas aplicadas al diseo de
sistemas UNIX
Esta idea se aplica al diseo de drivers: drivers libres de poltica (driver para
un floppy). El objetivo es programar cdigo para el kernel que permita el
acceso al dispositivo sin forzar ninguna poltica puesto que diferentes
usuarios pueden tener necesidades diferentes (acceso flexible, sin
restricciones)
Arquitectura de Sistemas Paralelos (59)
El S.O. Linux y la programacin de drivers
El kernel de Linux
Arquitectura de Sistemas Paralelos (60)
El S.O. Linux y la programacin de drivers
Programacin del kernel: Mdulos
Una de las caractersticas ms significativas de Linux es la
posibilidad de ampliar la funcionalidad del kernel en
tiempo de ejecucin
El cdigo que se aade al kernel en tiempo de ejecucin se
denomina mdulo
El kernel de Linux ofrece soporte para diferentes tipos de
mdulos incluido los drivers, aunque no limitados a ellos
Clases de dispositivos y mdulos
Dispositivos de caracteres
Dispositivos de bloque
Interfaces de red
Arquitectura de Sistemas Paralelos (61)
Programacin del kernel: Mdulos
Mdulos vs Aplicacin
Aplicacin
Mdulo
Ejecuta una tarea desde que
comienza hasta que acaba
Puede utilizar funciones que
no han sido definidas por
ella, linkando con las
libreras adecuadas (printf)
Se ejecutan en el espacio de
usuario
Permite atender solicitudes
de procesos en ejecucin
Puede usar slo las funciones
que el kernel exporta (printk)
Se ejecuta en el espacio del
kernel
Los mdulos que se encuentran cargados en un momento dado pueden conocerse con el
comando lsmod o cat /proc/modules
Los dispositivos del sistema pueden conocerse con el comando cat /proc/devices
Arquitectura de Sistemas Paralelos (62)
Programacin del kernel: Mdulos
Espacio de usuario y espacio del kernel
Una de las tareas de un S.O. es proteger de accesos no autorizados a los
diferentes recursos del sistema
Esta tarea del S.O. requiere un componente hardware de proteccin en el
procesador: diferentes niveles con funciones diferentes y operaciones no
permitidas en niveles inferiores (todos los actuales procesadores disponen de
al menos dos niveles)
Los sistemas Unix utilizan dos niveles de proteccin:
Modo superusuario: en el que se ejecuta el kernel (todo est permitido)
Modo usuario: en el que se ejecutan las aplicaciones (se evitan accesos
directos al hardware y accesos a memoria no autorizados)
Habitualmente se denominan espacio del kernel y espacio de usuario
La aplicaciones y los mdulos del kernel tienen mapas de memoria diferentes.
Se requieren funciones para realizar transferencias de datos de uno a otro. Ej:
copy_to_user y copy_from_user
El espacio del kernel a diferencia del de usuario es nonswappable (no
paginable) y nonpreemptive (de ejecucin no concurrente)
Arquitectura de Sistemas Paralelos (63)
El S.O. Linux y la programacin de drivers
Puertos de E/S y E/S mapeada en memoria
Un dispositivo perifrico es controlado mediante operaciones de
lectura/escritura sobre sus registros internos
Desde el punto de vista del hardware no hay diferencias conceptuales entre que
estos registros estn mapeados en E/S o en memoria (cat /proc/ioport y cat
/proc/iomem)
Para evitar los problemas de los efectos colaterales en la E/S mapeada en
memoria:
el espacio de memoria del dispositivo debe ser configurado como memoria no
cacheable (ej: opcin en el espacio de configuracin de los dispositivos PCI)
deben utilizarse memory barriers (ej: rmb, wmb, y mb)
Existen funciones para leer y escribir en los puertos una palabra (operaciones
simples) o ms (operaciones complejas). Ej: inb, outb, insb, ..
Existen funciones para leer y escribir en memoria (operaciones simples y
complejas). Ej: readb, writeb, memcpy_fromio, memcpy_toio,
Algunas plataformas reservan un espacio de memoria no paginable para la E/S
mapeada en memoria (no ocurre en ISA/PCI x86). Si el acceso a la memoria
asignada est virtualizado se requiere el uso de funciones especiales (ioremap y
iounmap)
Arquitectura de Sistemas Paralelos (64)
El S.O. Linux y la programacin de drivers
Gestin de interrupciones (I)
El Linux existen dos tipos de interrupciones:
Rpidas: Deben ser rpidamente atendidas, pues su ejecucin se realiza con
todas las interrupciones deshabilitadas (interrupcin de un timer)
Lentas: Se ejecutan con todas las interrupciones habilitadas excepto la que
est siendo servida, por lo que su tratamiento puede consumir ms tiempo
Para que un mdulo pueda atender las solicitudes de interrupcin de un
determinado canal debe asignarle un manejador de interrupcin cuando
se carga el mdulo (request_irq) y desasignrselo cuando se descarga
(free_irq)
Mediante el comando cat /proc/interrupts se saben las IRQs asociadas a
cada dispositivo
Mediante el comando cat/proc/stat se sabe las veces que se ha ejecutado
una IRQ
Existen funciones para habilitar y deshabilitar las interrupciones: sti, cli,
enable_irq, diable_irq,
Arquitectura de Sistemas Paralelos (65)
El S.O. Linux y la programacin de drivers
Gestin de interrupciones (II)
El problema que presenta la gestin de interrupciones es que no pueden
realizarse tareas demasiado largas en el manejador
El manejador necesita acabar cuanto antes para desbloquear las
interrupciones (sobre todo en las rpidas)
Solucin: Dividir la funcionalidad del manejador en dos rutinas: top-half
y bottom-half
La diferencia principal entre ellas es que todas las interrupciones estn
habilitadas durante la ejecucin de la rutina bottom-half
La rutina top-half (manejador) realizar lo qu debe hacerse de manera
inmediata (operacin de E/S) mientras que la rutina bottom-half har el
resto (procesado de la informacin)
Existen diferentes formas de que el kernel comience la ejecucin de la
rutina bottom-half (se establecen colas)
En la rutina de interrupcin (top-half) hay que insertar la tarea
planificada (rutina bottom-half) en una de las colas de tareas e indicarle
al kernel que la tarea est lista para su ejecucin
Arquitectura de Sistemas Paralelos (66)
Algoritmos de Planificacin
FIFO (Fisrt In First Out, primero en entrar, perimero en salir ): Tambin denominado FCFS (Fisrt Come First
Served).
Esquema mas simple de planificacn
Los procesos se atienden por orden de llegada
Usan los recurosos hasta terminar su ejecuin
Generalemnte se mezcla con otros algoritmos
Round Robin (Rueda).
Busca dar buena respuesta tanto a procesos cortos como
largos
Los procesos se ejecutan regidos por un Quantum (Tiempo de ejecucin estimado en Milisegundos). Si en el
tiempo determinado el proceso no finaliza su ejecucin este vuelve al final de la cola de proceso, en donde se
encuentran los procesos nuevos.
SPN (Shortest Process Next, El proceso mas corto a continuacin).
Similar a FCFS (En su simplicidad)
Usan los recurosos hasta terminar su ejecuin
Se ejecutara primero el proceso que requiera menos tiempo de servicio y este listo para ejecutar en cola
No utiliza Quantum (Se predice su tiempo de ejecucin)
SRR (Selfish Round Robin, Ronda Egoista)
Favorece a los procesos que llevan tiempo ejecutandose por sobre los recien llegados ( El despachador ejecuta
solo los procesos aceptados, mientras que los procesos nuevos se quedan en cola)
Se prueden cambiar las prioridades tanto de los procesos nuevos como de los aceptados
Cuando un proceso nuevo alcanza la prioridad de un proceso aceptado, este se acepta y por ende, puede ser
despachado y ejecutado.
FB (Multilevel Feedback, Retroalimentacin multinivel)
Se crean varias colas de procesos listos para ejecutar (Cada cola con una prioridad diferente)
Despues de cierta cantidad de ejecuciones, el proceso adquiere mas prioridad
Favorece procesos cortos ( Termina ejecucin y no son marcados con prioridad menor)
Hoydasepuededecirquetodaslascomputadorasdesdelaptopspasandoporcomputadorasdeescritoriohastaservidores,
[Link]
utilizandiscosrgidos,porejemplolasmodernascmarasdevideo.
Lafuncinquetienenlosdiscosrgidosesmuyimportante,inclusoindispensableperotambinmuysimpleladealmacenar
informacindigitalpermanentementeenotraspalabras,ladeguardardatoseinformacindelacomputadorasinquestos
desaparezcanluegodeapagarlamquina.
Acontinuacinveremoscmoseguardanlosarchivoseneldiscorgidoycmoserealizanlosprocesosdelecturayescritura
dedatos.
Historiadelosdiscosrgidos
ElprimerdiscorgidofueintroducidoporIBMen1956tenaeltamaodedosrefrigeradores,pesabaaproximadamente900kgy
tenaunacapacidaddealmacenamientode3,75MB(aproximadamenteeltamaodeunacancinenformatoMP3).
En1961IBMintrodujoeldiscorgidomodelo1311,elcualtenaeltamaodeunlavarropas,ylaparticularidaddeincluir
mdulosdediscosquepodanalmacenar2MBcadaunoypodanintercambiarseoagregarsemdulosadicionales.
Conelpasodelosaoslosdiscosrgidosfuerondisminuyendoendimensionesfsicasyaumentandoenespaciode
almacenamientodisponible.
Haciaprincipiosdelosaos1980erararoencontrardiscosrgidosenlascomputadoraspersonalesPCyaquesetratabaan
deundispositivomuycarosinembargoparafinalesdeaquelladcadaloscostossehabanreducidoconvirtindoseen
dispositivosestndarenlamayoradelascomputadoraspersonales,salvoenloscasosdelosmodelosmseconmicos.
Desdequeen1983laIBMPCXTcomenzaincluirundiscorgidode10MB(Megabytes)steseconvirtienundispositivo
estndardelascomputadoraspersonales.
Desde1956hastaelao2011lacapacidaddelosdiscosrgidosaumentde3,75MBa4TB(Terabytes),oseaquecrecieron
[Link]
perododesdeaproximadamente2millonesdecm3 a20cm3 [Link]
[Link]
costodelosmismospasarondetenerunvalorde15.000dlarespormegabytea0,0001dlarespormegabyteo100dlares
porterabyte,unareduccinenelpreciodemsde150millonesdeveces.
Estructuradelosdiscosrgidos
Losdiscosrgidoscontienendentrodeunacajametlicaselladaunoomsdiscosoplatosunidosporunejequegiraaaltas
revolucionesporminuto(RPM),aproximadamenteentre4.200RPMencomputadorasporttilesenmododeahorrodeenerga
hasta15.000RPMencomputadorasdeservidoresdealtorendimiento.
Estosplatosodiscossonlosquealmacenanlainformacinguardadayporlogeneralsondealuminioovidrio,loscualesestn
[Link]
1020nm(nanmetros)deespesoroseaentreunaydos100millonsimasdemetrooentreunaydosmillonsimasde
[Link].
Paraleeryescribirlainformacindeyenlosplatosdeundiscorgidohayunbrazoconcabezalesquepuedenmoversedeun
[Link]
cabezalesestnunidosporunbrazonicodemovimiento.
Loscabezalesnuncatocaneldisco,yaqueflotansobrelasuperficiedelosplatosgiratoriosaunapequeadistanciadeapenas
decenasdenanmetros(millonsimasdecentmetro).
Losplatosendiscosrgidosdecomputadorasdeescritoriogiranentre5.400y10.000RPMsegnelmodeloenlaptopsporlo
generalentre4.200y7.200RPMsiendo5.400RPMlavelocidadmscomn.
1/9
Discoduroabierto,dondesepuedenverlosplatos,losbrazosdeloscabezalesyelactuador
Procesodelecturayescrituraendiscosrgidos
Eninformticatodalainformacinesrepresentadaatravsdenmerosbinarioscompuestosporunosyceros(1y0).Elmotivo
porelcualseutilizaestesistemadenumeracinpararepresentarabsolutamentetodoencomputacin,esporqueesmuysimple
yfcilderepresentarmediantepulsoselctricos,[Link]
pantalla,oloqueescribimosalniveldelamquinaysuscomponenteselectrnicossetraducenenpulsoselctricosque
representanunosyceros.
Porejemplopararepresentarlaletra"A"enlamemoriadelacomputadoraensistemabinarioseutilizaelsiguientecdigo
01000001(65endecimal).Porlotantolacomputadoralorepresentamediantepulsoselctricosdedostensionesdiferentes,
unapararepresentarlosunosyotraparalosceros.Cadapulsoelctricoquerepresentalos1y0sedenominabitasuvezcada
byte(launidaddemedidautilizadaparamedireltamaodelosarchivosycapacidaddealmacenamientodediscos,memoria,
etc)estcompuestopor8bitsosea8pulsoselctricosdeunosyceros.
Lomismoocurreconlosdiscosrgidos,enloscualeslosunosycerosdecadadatodeinformacinguardadoserepresentan
mediantediminutaspartculasmagnetizadas.
Lassuperficiesdelosplatosdeundiscorgidoestndivididosenmicroscpicasregionesdenominadasdominiosmagnticos
loscualesestncompuestosporpequeosgranosocristalesdematerialmagnticodeaproximadamente10nm(nanmetros)
[Link]
haciaunladooelotroformandoundipolomagnticoelcualgenerauncampomagnticoasualrededorsegnhaciala
[Link].
Alpasarelcabezaldeescrituraporencimadelplatoconlaspartculasmagnticas,lasmagnetizahaciendoquestassean
alineadashaciaunladooelotroporejemplosieldatoaguardaresunaletra"A"staserepresentamedianteelcdigobinario
deochodgitos01000001porlotantoelcabezalharquedosdelosdominiosmagnticosapuntenhaciaunlado
[Link]
manerasealmacenanlosdatosqueguardamoseneldiscorgido.
Cuandocompramosundiscorgidonuevo,lostomosdecadacristalopartculadeunplatoapuntanaleatoriamentehacia
cualquierdireccin,haciendoquedeestamaneralapartculaestdesmagnetizadaalescribirseundatoestostomosson
alineadostodoshaciaunmismolado,[Link]
magnticoyochodominiosmagnticosdan1bytedeinformacincomoenelcasodelaletra"A"delejemploanterior
representadaporelnmerobinario01000001.
Antessecubranlosplatosdelosdiscosconpartculasdexidofrricocomomaterialamagnetizarparaelalmacenamientode
datosperoahoraseutilizanpartculasdeunaaleacindecobalto.
Hastaelao2005laspartculasseposicionabanendireccinparalelaalasuperficiedecadaplato,peroapartirdeentonces
comenzaronaposicionarseenformaperpendicular(vertical)parapodercolocarmayorcantidaddedominiosmagnticosya
2/9
menordistanciaunodeotrosaprovechandoelespaciodisponibleenelplato.
Loscabezalesdelecturayescrituraseencuentranenlapuntadeunbrazoactuadorquesemueveradialmentehaciaadelantey
haciaatrsalolargodelradiodelplatomientrasesteltimogira.
Elpequeocabezalqueseencuentranenlapuntadelbrazoactuador,contienedoselementosseparados,unoencargadode
realizarlaescrituradedatosyelotrolalecturadelosmismos.
Elelementodeescriturarealizalaescrituradedatosmedianteunmetododeinduccinmagnticaquemagnetizalaspartculas
dealeacindecobaltoquerecubrenelplato,[Link]
memoriadelacomputadora,magnetizacadapartculaalinendolahaciaunladooelotrogenerandocamposmagnticosde
distintadireccinloscualesrepresentanlos1y0queformanlosdatos.
Paralalecturadedatoselelementodelecturadelcabezalpasaporencimadelaspartculasmagnetizadascuyoscampos
magnticosgeneranpulsoselctricossegnlafuerzadelcampomagnticodecadapartculavaraelnivelderesistencia
elctricadelelementodelecturadelcabezalafectandoalpulsoelctricogeneradoparadecirloconpalabrassimples,variarla
[Link]
odiferenciadevoltajeconquecirculacadapulsoelctricorepresentarnlos1y0quesernenviadosalamemoria.
Loscabezalesseencuentran"flotando"aunapequeadistanciadelassuperficiesdelosplatosdeapenasdecenasde
nanmetros(millonsimasdecentmetro)porlotantonolostocan,sinofueraaslafriccinentreloscabezalesylosplatosal
giraramilesderevolucionesporminutos,[Link]
permitequeloscabezales"floten"sobrelassuperficiesdelosplatossintocarlasesuncolchndeairequesegeneraalgirarlos
platosaaltsimasvelocidades,produciendoelmovimientodelairequeseencuentrasobrelosplatosavelocidadescercanaso
[Link]
mantienealcabezalflotandosobreelplato.
[Link]
partculasperpendicularesalplatoparamayoraprovechamientodelespacio.
Cmoseguardalainformacinenlosdiscosduros
Hastaahorahemosvistoelprocesofsicodeescrituraylecturadedatosenlosplatosdeundiscoduro,perofaltaentenderel
ordenamientodelainformacinenundiscoduro,oseacmoseguardanlosarchivos.
Cadaplatoenundiscoduroestdivididoencrculosconcntricosllamadospistas(trackseningls)yasuvezcadapistaest
[Link],dos
[Link],unsectoreslainterseccinentreunapistayunsector.
[Link]
sectoreslaunidadmnimadealmacenamientodearchivos.Cadasectortieneuntamaode512bytesporlotantositenemos
3/9
unarchivode400bytes,ocuparunsectorsitenemosunarchivode20.000bytessteocupar40sectores(20.000/512=
39,0625Oseaqueocupar39sectoresporcompletoyunapartedelsector40).Apartirde2008deapococomenzarona
fabricarsediscosdurosconsectoresde4096bytes.
Dadoqueporlogenerallosdiscosduroscontienenmsdeunplato,yloscabezalesestnmontadosenbrazosquese
encuentranunidosunodebajodelotroenunaestructuraquelosmueveatodosjuntos,elefectodetenerunapistadebajodela
otraenlosdistintosplatosformauncilindroporesoparamedirlacapacidaddeundiscodurosemultiplicalacantidadde
cilindros(pistas)porlacantidaddecabezales(porlogeneralhay2porplato,unoparacadaladodelmismo),porlacantidadde
sectoresporpistaocilindroporlacapacidadenbytesdecadasector(512bytes).
Pistas(tracks)ysectoresdelplatodeundiscoduro
Brazodelactuadorquemueveloscabezales
Loscabezalesseencuentranenlapuntadebrazosquelosmuevenlateralmenteatravsdelradiodelcrculodecadaplato
mientrasstosgiran.
Losbrazosquesostienenloscabezalessonmetlicosysemueventodosjuntoshaciaelmismolado,haciendoquetodoslos
[Link]
motordepasosodemovimientolineal,elcualestabaconectadoalosbrazosdeloscabezalesmovindoloshaciaadentroo
[Link],enloscualeselnmerodesectoresporpistaerainferior,ylas
pistaseranmsanchashaciendoquepequeasfallasenelposicionamientodeloscabezales,pordistintasrazones,no
afectaranlalecturaoescrituradedatos.
Sinembargoestesistematenaalgunosinconvenientesporejemploavecesporelcalentamientocausadoporlaoperacin
normaldelosplatosalgirar,losbrazosycabezalespodanquedardesalineadosenrelacinalaspistastampocoselospoda
movermuchomientrastrabajaban,especialmenteduranteprocesosdelicadoscomoelformateo,yaqueesotambinpoda
desalinearloscabezalesafectandolosresultados.
Ademsconeldesarrollodelastecnologasdediscosdurosyelaprovechamientodelespacioenlosplatossefueaumentando
lacantidaddesectoresporpistaascomolacantidaddepistasdandocomoresultadopistasmsangostasysectoresms
pequeosydensos,haciendoqueunerrorenelposicionamientodelcabezal,pormspequeoquefuera,afectaraelproceso
delecturayescritura.
Porlotantosetuvoquedesarrollarunsistemademovimientodebrazosmspreciso,elsistemadebobinadevoz.
[Link]
altamenteprecisoquecuentaconunabobinaelctricalacualseencuentraenelactuadorquesostienelosbrazosde
cabezales,porencimadeunosmagnetospermanentesdealeacindeneodimiohierroboro(eltipodemagnetopermanente
msfuertequeexiste),[Link]
4/9
delosbrazosdelactuador,yporlotantodeloscabezales,esgeneradocuandounacorrienteelctricacalculadacirculaporla
bobinaenvueltaporelcampomagntico,creandounafuerzatangencialquemuevealabobinayalosbrazosquesostienenlos
cabezales.
Segnlacantidaddecorrientequecirculaporlabobinasecreaunacantidaddemovimientoacordeporlotantolacontroladora
deldiscoduropuedecontrolaryrealizarloscambiosdeposicindebrazosconaltsimaprecisinymaneramedida,resultando
[Link]
sirvenalsistemadeposicionamientodecabezalesparadetectarsiestncorrectamentealineadosconlapista,encasoqueel
cabezaldetectaraqueestincorrectamenteposicionadoseenvanpequeasvariacionesalacorrienteelctricaquecirculapor
labobinacorrigiendolaposicindeloscabezales.
Graciasaestesistematansofisticadolosdiscosdurosdehoypuedenresistirmovimientosmientrasleenoescribeninformacin,
inclusogolpesdevariosG(lafuerzade1Geslaaceleracinejercidaporlagravedad)ademsgraciasalsistemade
autocorreccindeposicionamientodecabezales,fueposibleeldesarrollodeplatosconpistasmsangostaspermitiendoas
hacerdiscosdemayorcapacidadconmspistasymenorcantidaddeplatos.
Esasombrosovertrabajarenconjuntoalosplatosgirandoamilesderevolucionesporminutoyalosbrazosdelactuador
movindoseradialmenteporsobrelosplatoshaciaunladoyelotrohasta50vecesporsegundo.
Peroqupasacuandolosdiscosdejandegiraryelefectodelcolchndeairequemantienealoscabezalesflotando
desaparece?Deberancaersobrelosplatosmientrasdansusltimasrevoluciones,causandodaos,rayandolafinacapaque
[Link]
aterrizajedecabezales(landingzoneeningls)ubicadacercadelcentrodelosplatosendondeloscabezalespuedencaero
aterrizaralapagarselacomputadoramientraslosplatossiguendandolosltimosgirosporinercia.
Supongamosquerepentinamentesecortalacorrienteelctricaelmotorquehacegirarlosplatosseapaga,stoscomienzana
bajarlavelocidadrpidamente,elcolchndeairedesapareceyloscabezalescaensobreelreadedatoscausandograves
[Link]
aterrizajeunoesmedianteelusodeunresorteelotromsrecienteysofisticadoalcortarselacorrienteelctrica,utilizala
[Link]
mododegeneradorelctrico,paraproducirporfraccionesdesegundolaenergasuficienteparamoverelcabezalhastalazona
deaterrizajesindaarlazonadedatos.
Apesarquenosecausaningndaoenlosplatosyporlotantoenlazonadedatos,coneltiempoyluegodeaoslos
[Link]
aproximadamente50.000aterrizajesenlazonadecontactoseguraoenotraspalabras50.000ciclosdeapagado/encendido.
Igualmentequdensetranquilosqueporlogeneralserequierenmuchosaosparallegaraesacifra.
Ademsdelmtododeaterrizajedepistastambinexisteunsegundomtododealejamientodeloscabezalesdelazonade
datosllamadoHeadLoad/Unload(carga/descargadecabezal).Cuandolacontroladoradeldiscodurodetectaquelosplatos
hanreducidosuvelocidad,inmediatamenteunsistemalevantalosbrazosdeloscabezalesylosmueveaunarampaubicada
[Link]
velocidadparagenerarelcolchndeairequemantienealoscabezalessuspendidosenelaire,losbrazossealejandelas
rampasvolviendoaposicionarsesobrelosplatos.
Enlosdiscosdurosdemuchascomputadorasmodernas,principalmenteencomputadorasporttilescomolasnoteboksse
incluyeunacelermetroquedetectamovimientosbruscosenlamquina,encasodesucederalgoasinmediatamenteactivael
sistemaLoad/Unload,[Link]
resistirmovimientosbruscosdehasta350G(fuerzaG)encasosdediscosqueestnoperandoy1000Gsieldiscoseencuentra
enestadonooperacional.
Hoydaseutilizanambosmtodosdealejamientodeloscabezalesdelazonadedatos,tantoeldeaterrizajedelosmismosen
unazonadecontactocercadelcentrodelosplatos,ascomoelderampasLoad/Unload.
Esmuyimportantemencionartambinqueantesdelaexistenciadeestosmtodosdealejamientodeloscabezales
automticos,cuandosequeraapagarlacomputadoralosusuariosdebanestacionarprimeromedianteuncomandolos
cabezalesyluegopodanapagarlacomputadoradelocontrarioloscabezalesentraranencontactoconlosplatos.
5/9
Procesodedesplazamientodelosbrazosdeloscabezalesmedianteelusodebobinasdevozymagnetosdeneodimio
hierroboro
Lacontroladoradeldiscoduro
Todaslasactividadesquerealizaeldiscoduro,sonadministradasporunaplacadecircuiteraintegradaubicadaenlapartede
afuera,[Link]
desdeyhacialaplacamadre(motherboard),dondesederivanhacialamemoriayelmicroprocesadorlacodificaciny
decodificacindelosdatosquesegrabanenlosplatoselcontroldelavelocidaddegirodelosplatoselcontroldelacantidad
decorrienteelctricaquecirculaporlabobinadevozquemuevelosbrazosdelactuadorquesostienenaloscabezalesla
verificacindequetodosloselementosycomponentesdeldiscofuncionencorrectamentecontarconunbloquedememoria
intermediodeentre8y64MB,conocidocomobufferparaalmacenardatostemporalmentequeviajanentrelosplatosylaplaca
madreyviceversa.
Antiguamentelasplacascontroladorasdeldiscodurovenanseparadasdeldiscoydebanconectarseenlaplacamadre.
Ademssenecesitabantrescablesdosdeellosconectabaneldiscoduroconlaplacacontroladora(uncableparatransferirlos
datosyotroparatranferirlassealesdecontroldelfuncionamientodeldisco)eltercercableeraparaproveerenergaaldisco
[Link]
placasdecontroldediscoduroseparadasdeldiscoeranlosST506,ST412yESDI.
Luegoen1986sedesarrollunsistemaenelquelacontroladoradeldiscodurovenaintegradaenelmismodisco,comohoy
[Link](IntegratedDriveElectronicsocircuiteraelectrnicadediscointegrada).
Estetipodecontroladorarequeraelusode2cablesunoparadatos(enrealidaduncabledecintade40hilos)yelotroparala
energaconectadoalafuentedeenergadelgabinetedelacomputadora.
LuegoeltipodeinterfaseIDEpasallamarseATA(AdvancedTechnologyAttachmentdelinglsAccesoriodeTecnologa
Avanzada).ConeltiempolasplacasmadrescomenzaronaincluiradaptadoresATA,parapoderconectardiscosduros,ascomo
[Link]
ejemploenunacomputadoracondosadaptadoresATA,puedenhaberhastacuatrodiscosdurosocombinacionesdelectoras
deCDoDVDcondiscosduros.
Apartirdelao2003comenzaronasustituirseporeltipodeinterfaseSATA(SerialATA),queutilizauncablededatosms
pequeo.
Nuevaconfiguracindesectores(Zonebitrecording)
Antestodaslaspistasdeunplatocontenanlamismacantidaddesectoresporpistarecordemosquecadasectortieneuna
[Link],lossectoresmscercanosalcentrodecadaplatoeranms
pequeosensuperficiequelosubicadosmslejosdelmismo,peroigualmentecontenanlamismacantidaddepartculas
[Link]
6/9
estabanms"apretadas"mientrasqueenlaspistasdemsafuera,cuyascircunferenciaseranmayores,lossectoreseran
menosdensosyaqueenunasuperficiedemayortamaohabaunamismacantidaddepartculasmagnticas
desaprovechandoasungranespacioquepodraestarocupadopormssectores.
PoresolosingenierosdesarrollaronunsistemadeorganizacindesectoresllamadoZonebitRecordingmedianteelcualse
[Link]
[Link]
contienenunamayorcantidaddesectoresporpistaaprovechandomejorelespaciodisponibleenlaspistasqueseencuentran
mslejosdelcentro.
Otrapuntointeresantedeestesistemadeconfiguracindesectoresesquealleerlossectoresdecilindrosmsexternosse
obtieneunamayortasadetransferenciadebitsporsegundoquealleercilindrosmsinternosestosedebealhechoquela
velocidadangulardelosplatosessiemprelamismaentodaslaspistasdelosmismos(lavelocidadangularesparadecirlocon
palabrassimpleselnguloquerecorreporsegundounobjetocircularalgirar)assiporejemploenunaciertacantidadde
tiempounplatorealizaunvueltacompleta,seleenunamayorcantidaddesectoresenloscilindrosmsexternosqueenlosms
internos,dadoquehayunamayorcantidaddestosenlosmslejanosdelcentrodelosplatos.
Encadazonapuedenhabercientosomilesdepistasagrupadasylastasasdetransferenciaenbitsporsegundoaumentan
cuantomsnosalejamosdelcentro.
Porestemotivoaltenerundiscoduronuevo,losprogramastratandellenarprimerolossectoresdepistasmsexternas
[Link]
tiempodespusdellenarselossectoresdepistasmsexternas,losprogramasnotienenotraalternativamsqueinstalarseen
lossectoresdecilindrosmsinternostraslocualpuedenllegaradetectarseunmayortiempodecargadeestosprogramas.
OrdenamientodeigualcantidaddesectoresporpistavsZonebitrecordingparaelmayoraprovechamientodelespaciode
losplatos
Medidasqueindicanelrendimientodeundiscoduro
TIEMPODEBUSQUEDA(SEEKTIME)
[Link]
bsquedavaraacordealadistanciaqueseencuentralapistadeseadadelaposicinenqueseencuentraelcabezal,noeslo
[Link]
sueletomareltiemporequeridopararecorrerunterciodelradiodelreadedatos.
Lostiemposdebsqueda(seektimes)semidenenmilisegundos(ms).Losprimerosdiscosdurostenanuntiempodebsqueda
promediode600msyaparalapocaenquecomenzabanacomercializarselasprimerasPC,stascontabancondiscosduros
contiempodebsquedade100120msyahacialosaos'80coneldesarrollodelossistemasdemovimientodebrazosde
cabezalesconbobinadevoz,lostiemposdebsquedapromedioseredujerona20ms.
HoydaenlasPCdeescritorio,eltiempopromediodebsquedaoscilaenlos12msmientrasqueendiscosdecomputadoras
deservidorespromedialos4ms.
LATENCIAROTACIONAL(ROTATIONALLATENCY)
Unavezqueelcabezalseencuentrasobrelapistacorrecta,stesequedaquietoesperandoaqueelsectordeseadopasepor
[Link]
latenciarotacionalvarasegnlavelocidadderotacindeldiscosiendomenorendiscosquepresentanmayoresnivelesde
[Link]
[Link].
TASADETRANSFERENCIADEDATOS
Latasadetransferenciaeslacantidaddeinformacinquesepuedetransmitirporsegundo,medidaenbitsporsegundoosea
7/9
pulsoselctricosquerepresentan1y0porsegundo.Recordemosque8bitsequivalena1bytedeinformacinlaunidadde
medidautilizadaparamedireltamaodearchivos.
Latasadetransferenciavarasegnmuchosparmetroslavelocidadderotacindelosplatos,laubicacindelossectores
(comosemencionantes,siseleen/escribensectoresdepistasmsexternasdeunplatoseobtienenmayorestasasde
transferenciadadoquealamismavelocidadderotacinpasaunamayorcantidaddesectorespordebajodelcabezalqueen
unapistamscercanaalcentrodelplato).Sesueletomarcomomedidalacantidaddedatosqueviajanentrelosplatosyla
memoriaintermedia(buffer)deldiscolacualhacia2011superabalos1000Mbit/segundo(1Gbit/segundo)oaproximadamente
125MB/segundo(megabytes).
Tambinsemidelatasadetransferenciadedatosdesdelamemoriaintermediadelacontroladoradeldiscoalaplacamadre
(buffermotherboard).
[Link]/IDElastasas
detransferenciaerande25MB/segundo(200Mbit/sec),mientrasqueenlosltimosmodelosdeestetipodeinterfasellegabana
167MB/segundo(porejemplolosATAUltraDMA/167).
YaenlosdiscosmsmodernosconinterfasedetipoSATAlatasadetransferenciallegabaa1.5Gbit/shaciaelao2011la
mayoradelosdiscosenelmercadocontabanconinterfasesdetipoSATA2.0contasasdetransferenciade3Gbit/sydeapoco
seestestandarizandoelSATA3.0contasasde(6Gbit/s).
Cmoadministraelsistemaoperativoaldiscoduro
Comosemencionantes,losarchivossealmacenanensectoresde512bytes,porlotantounarchivode20.000bytesocupar
40sectores(20.000/512=39,062539sectoresporcompletoyunapartedelsector40).
Sinembargolossistemaoperativosparamejorarelrendimientodeldiscoduroutilizanunmtododeagrupamientodesectores,
estosgruposdesectoressedenominanclusters.
[Link]
informacinqueindicaenculessectoresseencuentraunarchivoseencuentraensectoresunbicadosenunaseccin
reservadadeldisco,separadadelreadondesealmacenanlosarchivosdelusuarioahseindicatodotipodeinformacin
[Link]
dealmacenararchivos,moverlos,guardarinformacinacercadelosmismosenbasesdedatos,ordenamientodelainformacin,
etcporlotantosisetienemayorcantidaddesectoresloscualesdebensermanipuladosunoauno,estastareastardaranms
tiempo,[Link]
sectores,elsistemaoperativoenlugardeoperarconcadasectoroperaconvariosalavez,aumentandodeestamanerael
rendimiento.
Losclusterstambinsonllamadosunidadesdeasignacin,yaqueaniveldelsistemaoperativoolgico,sonlamenorunidad
dealmacenamientodedatos.Asporejemploenundiscoconclustersde8sectoresconuntamaode4KB(kilobytes)cada
uno,sisetieneunarchivodetextodeconunapalabrade4caractereselarchivoocupar4bytessinembargodadoquela
unidaddeasignacinmnimaesunclusterde4KB,estearchivode4bytesocuparunespaciodediscode4KB,
desperdiciandomilesdebytesnoutilizadosporotroladositenemosunarchivode4400bytes,steocupar1clustercompleto
mspartedeunsegundocluster,dejandoespaciosinutilizarenelsegundo.
Siquierencomprobarloanteriormenteexplicado,puedencrearunarchivodetextodeunapalabraconelblocdenotasyluego
fijarseenlapropiedadesdelmismo(presionandoelbotnderechodelmousesobreelarchivo)dondediceTamaode
ArchivoyTamaoendiscounoindicaeltamaoenbytesquetieneelarchivoyelotrocuantoespaciodeldiscoocupa.
Eltamaodelosclusterspuedevariarentre1sector(512bytes)y128sectores(64KB)estoseindicaenelmomentodela
[Link],mientrasqueclustersdemayortamao
[Link]
[Link]
declusterporomisinqueutilizaelsistemaoperativoWindowsesde4KB,oseade8sectores.
CMOSEELIMINANLOSARCHIVOS
Cuandoeliminamosunarchivoyloenviamosalapapeleradereciclaje,apesarquecreemosquestehasidoeliminadopara
siempreyyalainformacinqueformapartedelmismonoseencuentraeneldiscolarealidadesotra.
Cuandoseeliminaunarchivo,losclustersquesteocupabanosonvaciadosoparaverlodesdeunpuntodevistamstcnico,
[Link]?
Enrealidadcuandoseeliminaunarchivoloquehaceelsistemaoperativoesmarcarlosclustersquesteocupabacomo
sobrescribiblesquedandoasdisponiblesparaserocupadosporalgnnuevoarchivoperohastaentoncessusdatosquedarn
8/9
intactosapesarqueelusuarionolopuedaver.
Porejemplosiseeliminaunarchivoqueocupaba40.000clustersyluegosealmacenaunarchivonuevode30.000clusters,el
sistemaoperativoprobablementeaprovechareseespaciosobrescribible,colocandoelnuevoarchivoenaquellosclustersy
[Link],elcual
deberserocupadopordatosquerequieranmenorcantidaddeespacio.
QUESLAFRAGMENTACINDEDISCOS
Comoseexplicantes,cuandoelsistemaoperativoencuentraespaciosvacososobrescribibleslosuficientementegrandes
[Link]
intentarbuscarclusterssobrescribiblesdearchivoseliminados,[Link]
escribiresmsgrandequeelmayorespaciodisponibledeldisco,stedeberserfragmentadoysuspartesdebernser
[Link]
separados,debamoversedeunapartealaotradeldisco,reduciendodemaneraimportanteelrendimientodeldisco.
Enundiscodondeseescribenyeliminancontinuamentearchivos,elresultadoluegodeciertotiemposerunareduccinen
rendimientoyeficiencia.
Elproblemadelafragmentacinpuedesersolucionadomedianteelusodeundefragmentadorcomoelquevieneincluidoenel
[Link],perosisenotaunadisminucindedesempeose
recomiendadefragmentareldiscorgido.
[Link]
9/9
Caractersticas de rendimiento de disco duro
elctricas a la memoria de estado slido y no de la velocidad de partes en movimiento por lo que el tiempo de
acceso es muy rpido y consistente.[6] La mayora de las
aplicaciones de examinacin y de puntos de referencia no
distinguen entre discos rotatorios y SSDs por lo que ambos tipos de dispositivo se someten al mismo proceso de
evaluacin.
El rendimiento ms alto de discos duros viene de dispositivos que tienen un desempeo ms rpido en cada una
de sus caractersticas de rendimiento.[1][2] Estos dispositivos incluyen a aquellos con un medio rotatorio, llamados
aqu discos rotatorios, i.e., unidad de disco duro (HDD),
unidad de disquete (FDD), discos pticos (DVD-RW /
CD-RW), y tambin cubre dispositivos que no cuentan
con partes en movimiento es como los son las unidades
de estado slido (SSD). En cuanto a los SSDs, la mayora de los atributos relacionados con el movimiento de
componentes mecnicos no son aplicables, pero el dispositivo es afectado en la realidad por otros elementos con
principios elctricos que generan un retraso apreciable
cuando se aslan y se examinan.[3] Estas caractersticas
de rendimiento pueden ser agrupadas en dos categoras:
tiempo de acceso y tiempo de transferencia de datos (o tasa
de transferencia de datos).[4]
Los componentes clave que tpicamente son acumulados
para obtener el tiempo de acceso son:[2][7]
Tiempo de bsqueda
Latencia rotacional
Otros
Tiempo de procesamiento de comandos
Tiempo de estabilizacin
Tiempo de Acceso
1.1 Tiempo de bsqueda
En los discos rotatorios, el tiempo de bsqueda es el
tiempo que le toma, al cabezal en el brazo del actuador,
viajar a la pista del disco donde se escribirn o leern
los datos.[7] Los datos son almacenados en el medio en
sectores que son que son organizados en pistas paralelas circulares (pueden ser concntricas o espirales dependiendo del tipo de dispositivo), hay un brazo del actuador
que suspende un cabezal que puede transferir datos con
ese medio. Cuando el dispositivo necesita leer o escribir
algn sector en especco, este determina en que pista se
localiza el sector. Posteriormente se usa el actuador para
mover el cabezal a una pista en particular. Si la posicin
inicial del cabezal era la pista deseada, el tiempo de bsqueda sera igual a cero. Si la pista en la que se ubic el
actuador se encontraba en la orilla externa del sector y la
pista deseada se ubica en la orilla interior, el tiempo de
bsqueda ser el mximo para esa unidad.[8][9] Los tiempos de bsqueda no son lineares en comparacin con la
distancia de bsqueda viajada por el actuador debido a
factores como la aceleracin desaceleracin del brazo del
actuador.[10]
Un cabezal y el brazo del actuador sobre el plato de un disco
duro.
El tiempo de acceso o tiempo de respuesta de un disco rotatorio es una medida del tiempo que se toma antes de que
la unidad pueda transferir datos. Los factores que controlan este tiempo en un disco rotatorio son, en su mayora,
relacionados con la naturaleza mecnica de los discos rotatorios y cabezales en movimiento. Se compone de unos
cuantos elementos independientemente mensurables que
son acumulados para obtener un solo valor al evaluar el
rendimiento de la unidad de almacenamiento. El tiempo
de acceso puede variar signicantemente por lo que, tpicamente, el fabricante provee este valor o es medido como un promedio por medio de puntos de referencia.[4][5]
En los SSDs, el tiempo de acceso depende de conexiones
El tiempo de bsqueda promedio de un disco rotatorio es
el promedio de todas las bsquedas posibles, tcnicamente signica el tiempo que tarda la unidad en realizar todas
las bsquedas dividido por el nmero de bsquedas posibles, pero en la prctica se determina usando mtodos
estadsticos o simplemente aproximado como el tiempo
1
de bsqueda de un tercio del nmero de pistas existentes en la unidad.[7][8][11] El tiempo de bsqueda promedio vara entre 4 ms para unidades de servidores de gama
alta,[12] hasta 15 ms para unidades en movimiento. Las
unidades en movimiento ms comunes tienen un tiempo
de bsqueda de 12 ms[13] mientras que las unidades de
escritorio rondan los 9 ms.
TIEMPO DE ACCESO
1.1.2 Efecto del ruido audible y en control de la vibracin
Medido en dBA, el ruido audible es relevante para ciertas aplicaciones como los DVRs, grabacin de audio digital y computadoras silenciosas. Los discos de bajo ruido
usan soportes de uidos, velocidades de rotacin menores (normalmente 5,400 RPM) y reducen la velocidad de
[14]
El primer HDD HDD tena un promedio de tiempo de
bsqueda para evitar clics audibles entre otros ruidos. Las
bsqueda de aproximadamente 600 ms, y para mediados
unidades cuyo factor de forma es menor (e.g. 2.5 pulgade la dcada de los 70s, los HDDs se encontraban dispodas) son frecuentemente ms silenciosas que aquellas de
[15]
nibles con tiempos de bsqueda de alrededor 25 ms.
mayor tamao.[17]
Las unidades de las primeras PCs usaban motores paso
a paso para mover los cabezales y como resultado tenan Algunos discos para PCs de escritorio o porttiles permitiempos de bsqueda de 80 a 120 ms, esto mejor rpi- ten al usuario modicar el balance entre rendimiento de
damente por la introduccin de la actuacin por medio de bsqueda y ruido producido por la unidad. Por ejemplo,
una bobina de voz en la dcada de los 80s, reduciendo los Seagate ofrece un conjunto de funciones en ciertas unidatiempos de bsqueda a un promedio de 20 ms. El tiempo des llamadas Sound Barrier Technology (Tecnologa de
de bsqueda ha continuado su mejora lentamente con el Barrera de Sonido) que incluye la capacidad de reducir
el ruido y la vibracin ya sea por el usuario o el sistetiempo.
ma mismo. Tiempos de bsqueda ms rpidos requieren
Otras dos medidas de bsqueda menormente comunes
ms energa para poder mover los cabezales rpidamente
son pista por pista y movimiento completo. La medida de
a travs del plato, esto genera ruidos fuertes desde el eje
pista por pista captura el tiempo que le toma a la unidad
del actuador y vibraciones ms intensas en el dispositivo
[7]
moverse de una pista a otra adyacente, este es el tiemya que los cabezales son rpidamente acelerados al iniciar
po de bsqueda menor posible y toma de .2 a .8 ms en
la bsqueda y desacelerados al nal de esta. La operacin
[6]
HDDs. La medida de movimiento completo se basa en
silenciosa reduce la velocidad de movimiento junto con
el movimiento desde la pista en la orilla de un extremo
la tasa de aceleracin pero con el costo de un rendimiento
del sector hasta la pista del extremo opuesto, este es el
reducido.[18]
[8]
movimiento ms lento posible.
En los SSDs no hay partes en movimiento por lo que
la medicin del tiempo de bsqueda es simplemente la
prueba de circuitos electrnicos preparando una ubicacin particular del dispositivo de almacenamiento. Un
SSD comn tendr un tiempo de bsqueda entre 0.08 y
0.16 ms.[6]
1.1.1
Short stroking
Short Stroking es un trmino usado en los entornos de almacenamiento industriales para describir un HDD que
esta intencionalmente restringido en su capacidad total
para que el brazo del actuador no tenga que recorrer grandes distancias y solo cubra un nmero menor de pistas.
Esto limita la distancia mxima que separa a cualquier
ubicacin de memoria en el HDD de los cabezales y como resultado reduce los tiempos de bsqueda promedio
al igual que la capacidad total de la unidad. Esta reduccin del tiempo de bsqueda resulta en un nmero mayor
de IOPS (operaciones de entrada/salida por segundo por
sus siglas en ingls) disponibles por la unidad. La tasa de
costo y energa por cada byte usable de almacenamiento
incrementa segn se reduce el rango mximo de pistas.[16]
1.2 Latencia rotacional
La latencia rotacional (a veces llamada retraso rotacional
o simplemente latencia) es el retraso que se da mientras
se espera la rotacin del disco para que se tenga al alcance el sector deseado bajo el cabezal.[19] Esto depende de
la velocidad rotacional de un plato (o del motor de giro)
medida en revoluciones por minuto (RPM).[7][20] Para la
mayora de las unidades de almacenamiento con medios
basados en magnetismo, la latencia rotacional promedio
esta, tpicamente, basada en la relacin emprica que la
latencia promedio en milisegundos para cualquier unidad
es un medio de su periodo rotacional. La latencia rotacional mxima es el tiempo que toma al plato hacer una rotacin completa excluyendo el proceso de aceleracin (esto
es debido a que la parte relevante del plato puede haber
pasado el cabezal cuando se hizo la solicitud).[21] Por lo
tanto, la latencia rotacional y el tiempo de acceso resultante pueden ser mejorados (disminuidos) al aumentar la
velocidad rotacional de los platos.[7] Esto trae consigo de
incrementar la tasa de transferencia de datos (discutida
ms adelante en este artculo).
La velocidad del motor de giro puede usar uno de dos mtodos de rotacin de disco: 1) Velocidad linear constante
(VLC) usado principalmente en almacenamiento ptico,
vara la velocidad rotacional del disco ptico dependiendo de la posicin del cabezal y 2) Velocidad angular constante (VAC), usada en HDDs, FDDs standard, unos cuan-
3
tos sistemas de discos pticos y discos de vinilo, se gira cabezal estabilizarse en la pista destino y detener su viel medio a una velocidad constante independientemente bracin para que no lea informacin de otra pista. Este
tiempo es muy pequeo con un valor menor a 0.1 ms, los
de donde se encuentre posicionado el cabezal.
modernos lo toman en cuenta en su
La densidad de la supercie es importante ya que la den- fabricantes de HDDs[25]
tiempo
de
bsqueda.
sidad de bits puede ser constante o no. Normalmente, al
usarse el mtodo VAC, las densidades no son constantes
por lo que las pistas largas en el extremo exterior del plato tienen el mismo nmero de bits que las pistas ms cortas en el extremo opuesto. Cuando la densidad de bits es
constante, las pistas del extremo exterior tienen ms bits
y generalmente est combinado con el mtodo VLC. En
ambos casos la tasa de transferencia entre bits contiguos
es constante. Este no es el caso con otros casos cuando se
usa una densidad de bits constante y el mtodo VAC.
1.2.1
Efecto de la reduccin en el consumo de poder.
El consumo de poder se ha vuelto cada vez ms importante, no solo en el mundo de los dispositivos mviles como
las laptops pero tambin en el mercado de los servidores y los equipos de escritorio. El incremento de densidad de equipos en un centro de datos ha llevado a conicto al proveer energa suciente a los dispositivos (especialmente en el spin-up), y al deshacerse del calor residual subsecuentemente producido junto con preocupaciones sobre cuestiones ambientales y de costo elctrico
(ver Green Computing). La mayora de las unidades de
disco duro operan con alguna de forma de administracin de poder que utiliza un nmero especco de modos de poder que ahorran poder por medio de la reduccin de rendimiento. Al implementarse, un HDD cambiara entre uno o ms de los modos ahorradores de poder
en funcin del uso de la unidad. La recuperacin desde
el estado ahorrador ms profundo, comnmente llamado
reposo, es cuando el HDD se encuentra detenido (o spundown), puede tomar varios segundos para alcanzar un estado completamente funcional por lo que se incrementa
la latencia.[22] Los fabricantes de unidades de almacenamiento han comenzado a producir unidades verdes que
incluyen funciones adicionales para reducir el consumo
de poder, estas pueden afectar adversamente la latencia
incluyendo velocidades ms lentas en el motor de giro y
deteniendo los cabezales fuera del rea del medio para
reducir friccin.[23]
2 Tasa de transferencia de datos
La tasa de transferencia de datos (throughput en ingls)
de una unidad de almacenamiento cubre tanto la tasa interna (el movimiento de datos entre la supercie del plato
y el controlador de la unidad) y la tasa externa (el movimiento de datos entre el controlador de la unidad y el
sistema antrin). La tasa de transferencia de informacin mensurable ser la menor de las dos tasas. La tasa
de transferencia de datos sostenida de una unidad ser la
ms lenta entre las tasas sostenida interna y la sostenida
externa. La tasa sostenida es menor o igual a la mxima o
tasa rfaga porque no tiene el benecio de una memoria
cache o buer en la unidad. La tasa interna es determinada con ayuda de la tasa de medio, tiempo de adicional de
sector, tiempo de cambio de cabezal y tiempo de cambio
de cilindro. Ninguno de estos conceptos aplica para los
SSDs.[7][26]
Tasa de medio Tasa a la que la unidad puede leer bits
de la supercie del medio.
Tiempo adicional de sector Tiempo adicional (bytes
entre sectores) necesitados para control de estructuras y dems informacin necesaria para administrar
la unidad, localizar y validar informacin y realizar
otras funciones de soporte.[27]
Tiempo de cambio de cabezal Tiempo adicional es necesitado para elctricamente cambiar un cabezal a
otro y comenzar la lectura; solo aplica a las unidades con mltiples cabezales y suele ser entre 1 y 2
ms.[27]
Tiempo de cambio de cilindro Tiempo adicional es
necesitado para moverse a la primera pista del
siguiente cilindro y comenzar la lectura; el nombre
de cilindro es usado comnmente debido a que
todas las pistas de una unidad con ms de un cabezal
o plato son ledas antes de que el brazo del actuador
1.3 Otros
se mueva. Este tiempo suele ser el doble del tiempo
de bsqueda pista por pista. En el 2001 era entre 2
El tiempo de procesamiento de comandos es el tiempo que
y 3 ms.[28]
le toma a los electrnicos de la unidad de almacenamiento para congurar la comunicacin necesaria entre los La tasa de transferencia de datos (lectura/escritura) puevarios componentes en el dispositivo para que se pue- de ser medida al escribir un archivo de gran tamao en el
dan leer o escribir datos. Esto toma alrededor de 0.003 disco usando herramientas especiales para generar archims, signicativamente menos que otros tiempos de espe- vos, luego se lee el archivo.
ra por lo que generalmente es ignorado en las pruebas de
hardware.[2][24]
Desde el ao 2001, un disco duro tpico de 7200
El tiempo de estabilizacin es el tiempo que le toma al
RPM de una PC de escritorio cuenta con una tasa de
3
transferencia de datos de disco-a-buer de ms de
1030 Mbit/s.[29] Esta tasa depende de la ubicacin
de la pista por lo que ser mayor en las zonas exteriores (donde hay ms sectores por pista) y menor
en las zonas interiores (donde hay menos sectores
por pista); generalmente es ms alta para discos de
unidades de 10,000 RPM.
Los FDDs cuentan con una tasa de transferencia de
datos disco-a-buer sostenida que son uno o dos
rdenes de magnitud ms lentos que la tasa de los
HDDs.
La tasa transferencia de datos disco-a-buer sostenida vara entre familias de unidades de discos pticos con la ms lenta siendo 1x CDs con 1.23 Mbit/s
siendo un rendimiento similar a los FDDs, por otro
lado est Unidad de Blu-ray 12x con 432 Mbit/s, valor cercano a un HDD normal.
Un estndar usado ampliamente en la actualidad para la
interfaz buer-a-computadora es 3.0 Gbit/s SATA, este
puede enviar un aproximado de 300 megabyte/s (codicacin de 10 bits) desde el buer a la computadora por
lo que lleva una gran ventaja a las tasas de transferencia
de disco-a-buer de la actualidad.
CONSUMO DE PODER
2.2 Efecto de la densidad del rea
La tasa de transferencia de datos de un HDD depende de
la velocidad rotacional de los platos y de la densidad de
la grabacin de informacin. Debido a que el calor y la
vibracin limitan la velocidad rotacional, el incremento
de la densidad se ha vuelto el mtodo principal para mejorar tasas de transferencia secuencial.[33] La densidad de
rea (el nmero de bits que pueden ser guardados en un
rea especca del plato) ha ido aumentando con el tiempo por medio del incremento en el nmero de pistas a
travs del plato y el nmero de sectores por pista. Este
ltimo incrementa la tasa de transferencia de datos para
cierta frecuencia de RPM. Si nicamente se incrementa
el nmero de pistas en un plato se puede ver afectado el
tiempo de bsqueda pero no la tasa de transferencia bruta. Segn analistas y observadores de la industria, para los
aos desde el 2011 al 2016,[34][35] El camino que se sigue en la actualidad predice una mejora no mayor al 20%
cada ao en cuanto a densidad de bits.[36] Los tiempos
de bsqueda no se han podido mantener a la par de los
incrementos de la tasa de transferencia y estos ltimos
con el crecimiento en la densidad de bits y capacidad de
almacenamiento.
Los SSDs no tienen los mismos lmites internos que los
2.3 Intercalado
HDDs, por esto, sus tasas de transferencia interna y externa, estn constantemente maximizando las capacidades
El intercalado de sectores es una caracterstica de disde la interfaz de unidad-a-antrin.
positivos casi obsoleta en cuanto a su tasa de datos, en
los tiempos en los que las computadoras eran demasiado
lentas como para poder leer largos ujos de informacin
2.1 Efecto de sistema de archivos
continuamente. El intercalado introdujo espacios entre
La tasa de transferencia puede ser inuenciada por la sectores para darle tiempo, a los equipos lentos, de prepafragmentacin en el sistema de archivos y la presentacin rarse para leer el siguiente bloque de informacin. Sin el
de los archivos. La desfragmentacin es un procedimien- intercalado, el siguiente sector lgico llegara al cabezal
to usada para minimizar en retardo al recuperar informa- antes de que el equipo estuviera listo, esto requerira que
cin por medio del movimiento de objetos relacionados el sistema esperara una revolucin entera del plato antes
entre s a reas cercanas en el disco.[30] Algunos sistemas de poder realizar la lectura.
operativos llevan a cabo esta desfragmentacin autom- Sin embargo, como el intercalado introduce retardos fticamente. Aunque la desfragmentacin automtica fue sicos intencionalmente entre bloques de datos disminudiseada para reducir los retardos en el acceso, el pro- yendo la tasa de transferencia, congurar el intercalado a
cedimiento puede entorpecer la repuesta del dispositivo una proporcin mayor de la requerida causara retardos
mientras la computadora esta en uso.[31]
innecesarios a equipos que tienen el desempeo necesaLos SSDs basados en memoria Flash no necesitan ser desfragmentados, sin embargo, debido a que los SSDs escriben pginas de informacin mucho ms grandes que los
bloques de informacin que maneja el sistema de archivos, con el paso del tiempo, el rendimiento de un SSD
al escribir informacin se degrada debido a la cantidad
de pginas parcialmente llenas o que no se necesitan ms
que ocupan espacio. El proceso de degradacin se puede
mejorar usando el comando TRIM del sistema o por coleccin de basura interna. La memoria ash se desgasta
con el tiempo debido a las continuas escrituras en ella;
las escrituras necesitadas al hacer una desfragmentacin
desgastan la memoria sin ninguna ventaja de velocidad
como resultado.[32]
rio para leer sectores ms rpidamente. La proporcin de
intercalado era denida por el usuario para acomodarse
a las necesidades de su equipo.
La tecnologa moderna es capaz de leer datos tan rpido
como puede ser obtenida de los platos girando, por eso los
HDDs usualmente tienen una proporcin de intercalado
ja de 1:1 que efectivamente elimina el intercalado
3 Consumo de poder
El consumo de poder se ha vuelto cada vez ms importante, no solo en el mundo de los dispositivos mviles como
5
las laptops pero tambin en el mercado de los servidores y los equipos de escritorio. El incremento de densidad de equipos en un centro de datos ha llevado a conicto al proveer energa suciente a los dispositivos (especialmente en el spin-up), y al deshacerse del calor residual subsecuentemente producido junto con preocupaciones sobre cuestiones ambientales y de costo elctrico
(ver Green Computing). La disipacin del calor est relacionada directamente con el consumo de poder, y segn envejece una unidad, la tasa de fallas de discos incrementa a ms altas temperaturas.[37] Problemas similares
existen para largas compaas con miles de PCs de escritorio. Unidades de factor de forma menor generalmente
usan menos poder que las unidades de mayor tamao. Un
desarrollo interesante en esta rea es el control activo de
la velocidad de bsqueda con el propsito de que el cabezal llegue a su destino justo a tiempo para leer el sector
en vez de llegar lo ms rpido posible y luego tener que
esperar a que el sector llegue al cabezal (i.e. la latencia
rotacional).[38] Muchos de los fabricantes de discos duros
estn produciendo unidades verdes que necesitan mucho menos poder y enfriamiento. Muchas de estas unidades tienen platos girando ms lentamente (<5,400 RPM
comparado con 7,200, 10,000 o 15,000 RPM) por lo que
generan menos calor. El consumo de poder puede ser reducido deteniendo los cabezales cuando el disco no est
en uso reduciendo su friccin, ajustando las velocidades
de rotacin,[39] velocidades de rotacin y deshabilitando
componentes internos mientras no se usen.[40]
Los HDDs usan ms poder, brevemente, cuando estn
arrancando (spin-up). Aunque el efecto que tiene en el
consumo total de energa es mnimo, el mximo poder
exigido a la fuente de alimentacin, y por lo tanto su ndice pedido, puede ser reducido en sistemas con mltiples
unidades de almacenamiento controlando cuando los discos arrancan.
En discos duros SCSI, el controlador SCSI puede
administrar directamente el arranque y el reposo de
los discos duros.
Algunos discos duros PATA y SATA cuentan con
funciones como PUIS (power-up in standby), esto
no permite a los discos girar hasta que el controlador o el BIOS lo indiquen. Esto permite congurar
el sistema de manera que no se sature la fuente de
alimentacin con la demanda de energa al encender
el equipo.
Algunos SATA II y ms avanzados cuentan con
spin-up escalonado permitiendo a la computadora arrancar los discos duros secuencialmente distribuyendo la demanda de poder al encender el
equipo.[41]
La mayora de las unidades de disco duro operan con
alguna de forma de administracin de poder que utiliza un nmero especco de modos de poder que ahorran poder por medio de la reduccin de rendimiento.
Al implementarse, un HDD cambiara entre uno o ms
de los modos ahorradores de poder en funcin del uso
de la unidad. La recuperacin desde el estado ahorrador
ms profundo, comnmente llamado reposo, es cuando el
HDD se encuentra detenido (o spun-down), puede tomar
varios segundos para alcanzar un estado completamente
funcional.[42]
4 Resistencia a golpes
La resistencia a golpes es especialmente importante para dispositivos mviles. Algunas laptops incluyen proteccin activa del disco duro que detiene los cabezales del
disco duro si se deja caer el equipo, con suerte antes del
impacto, para ofrecer la mejor oportunidad de supervivencia en tal evento. La mxima tolerancia a impactos a
la fecha es de 350 g cuando est funcionando el HDD y
1,000 g cuando no este funcionando.[43]
21/8/2016
DispositivosdeAlmacenamiento
2DispositivosdeAlmacenamiento
2.1IntroduccinAlmacenamientoSecundario
"Eldiseodependerdelaslimitantesdelmedioydelambiente"
Silosarchivossealmacenaranenmemoria(RAM),noexistiraunadisciplinaparaelestudiodelmanejodearchivos
Diferenciasentrememoriaprimariaysecundaria:
Laprimeraesconsiderablementemsrpidaencomparacionconlasegunda
Laprimeraposeeunaccesoaleatorioylasegundano
Laprimeraesdemasiadocara:
256MbRAM>$40usd
120GbDiscoDuro>$95usd
2.2Tiposdedispositivosdealmacenamiento
AccesoSerie:cintas
AccesoDirecto:discos
[Link]
1/20
21/8/2016
DispositivosdeAlmacenamiento
2.2.1CintasMagnticas
Accesoserialosequencial
Compactas,fcilesdetransportaryextremadamentebaratas
Anteriormenteseusaronparaalmacenaraplicaciones,actualmentesolorespaldos
Seusanmuchoencombinacioncon"robots"capacesdecambiarlascintasentreracksdealmacenamiento
2.2.2Discos
2.2.2.1Tiposdediscos
DiskDrives=Discosmagnticos
Peronotodoslosdiscossoniguales:
Magnticos
DiscosDuros(HardDisk)
Diskette(Floppy)3.5",51/4"8"
DiscosRemovibles(DiskCartridges)
IomegaZip(100Mb)
Jaz(1Gb)
Opticos
2.2.2.2PartesdeunDisco
Floppy51/4"
[Link]
2/20
21/8/2016
DispositivosdeAlmacenamiento
Partesdeundiscoduro
Organizacindelossectores
Alprincipionoeranadyacentes,existaunfactordeintercalamientode3o5
Actualmentegraciasalasvelocidadesdelosdiscossipuedenestaradyacentes
[Link]
3/20
21/8/2016
DispositivosdeAlmacenamiento
1platodediscocon2carasyunintercalamientode3
Clusters
RelacionadoacmoveelSistemaOperativoaldisco
Sonunnmerofijodesectorescontinuos(grupo)
Permitenqueselean"clusters"yasievitartenerqueleersectorporsector
ElnmerodesectoresagrupadossepuedeajustarenlamayoradelosOS(165535),default3512
Tip:clustersgrandesparaarchivosgrandesyviceversa
Extents
Cuandounarchivonopuedeestarensectorescontiguosocurreun"extent"
Sihaydemasiadosextentstenemosunproblemaporqueseincrementaeltiempodeaccesoadisco
FragmentacinInterna
Sucedecuandounarchivonoesdelmismotamaoquelossectoresoclusters
Tip:clustersgrandesparaarchivosgrandesyviceversa
Clculosparaconocerinformacindelosdiscosduros
TrackCapacity=numberofsectorspertrackXbytespersector
CylinderCapacity=numberofsectorspercylinderXtrackcapacity
DriveCapacity=numberofcylindersXcylindercapacity
Nmerodebytesporsector=512
Nmerodesectoresportrack=63
Nmerodetracksporcilindro=16
Nmerodecilindros=4092
63*512=32256
16*32256=516096
4092*516096=2,111,864,832=2.1Gb
Nmerodebytesporsector=512
Nmerodesectoresportrack=63
Nmerodetracksporcilindro=16
Nmerodecilindros=6279
63*512=32256
16*32256=516096
59321*516096=30,615,330,816=30Gb
2.2.2.3Velocidadesdediscos
[Link]
4/20
21/8/2016
DispositivosdeAlmacenamiento
InternalMediaTransferRate
Lavelocidadinternadeldisco,paraleerlainformacin,alrededordeuno500Mbits/s(62.5Mb/s)enpromedio.
dleSpeed
(RPM)
3,600
4,200
4,500
4,900
5,200
5,400
7,200
10,000
12,000
15,000
Average
Latency(Half
TypicalCurrentApplications
Rotation)(ms)
8.3
Formerstandard,nowobsolete
7.1
Laptops
6.7
IBMMicrodrive,laptops
6.1
Laptops
5.8
Obsolete
5.6
LowendIDE/ATA,laptops
4.2
HighendIDE/ATA,LowendSCSI
3.0
HighendSCSI
2.5
HighendSCSI
2.0
TopofthelineSCSI
External(Interface)TransferRate
Lavelocidadparatranferirlosdatosdesdeeldiscoalrestodelacomputadoraestevalorsiempresermayorqueel
"internalrate"[Link]
disco,estosemencionaenlasseccionessiguientes.
2.2.2.4Interfacesparatransmisindedatos
TiposdeInterfacesparatransmisindedatos:
IDE:IntegratedDriveElectronics
ATA,FastATA,FastATA2conLBA(LogicalBlockAddressing)
UltraATA(UATA)
DirectMemoryAccess(DMA)30Mb/s
UltraDirectMemoryAccess(UDMA)60100Mb/s
SerialATA150Mb/s
USB:Universalserialbus480Mbits/s
SCSI:SmallComputerSystemInterface5320Mb/s
FiberChannel2Gbits/s
UltraATA
[Link]
5/20
21/8/2016
DispositivosdeAlmacenamiento
DirectMemoryAccess(DMA):eseltrminoparaidentificaralprotocolodetransferenciaatravsdelcualun
dispositivopuedeenviar/recibirinformacindirectamentedememoriasinutilizarelprocesador.
UnconectorIDE/ATAenundisco(arriba)yuncableregularde40conductoresIDE/ATAcable(abajo).
UltraDMA:agregatransicionenambosextremosdelreloj,doblandoaslavelocidadtambinintroduceelusodeCRC
(cyclicalredundancychecking).
[Link]
6/20
21/8/2016
DispositivosdeAlmacenamiento
80conductorUltraDMAIDE/ATAinterfacecable.
Ntenselosconectoresazul,grisynegro,ascomolos80cables.
Lamarcarojaindicandoelcable#1estpresentetambin(aunquenoseaprecieenlafoto)
Comparacinentreloscablesde80conductoresy40conductores.
SCSI(SmallComputerSystemInterface)
SCSInoesnicamenteunainterface,estodounprotocolodecomunicacinquehaidoevolucionandoconeltiempo
hastallegaraconvertirseenlainterfacemsrpidaenelmercado.
Transfer
Mode
Bus
Bus
Defining
Width Speed
Standard
(bits) (MHz)
Through
put
(MB/s)
Maximum
CableLength
(m)
Cabling
"Regular"
SCSI(SCSI
1)
SCSI1
6
50pin
25
WideSCSI
SCSI2
16
10
68pin
25
FastSCSI
SCSI2
10
10
50pin
25
FastWide
[Link]
7/20
21/8/2016
DispositivosdeAlmacenamiento
FastWide
SCSI
SCSI2
16
10
20
3
68pin
25
1.5
UltraSCSI
SCSI3/
SPI
20
20
50pin
25
1.5
WideUltra
SCSI
SCSI3/
SPI
16
20
40
68pin
25
12
Ultra2SCSI
SCSI3/
SPI2
40
40
50pin
25
25
12
WideUltra2
SCSI
SCSI3/
SPI2
16
40
80
68pin
25
25
Ultra3SCSI
SCSI3/
SPI3
40
(DT)
16
160
12
68pin
25
Ultra160(/m)
SCSI
SCSI3/
SPI3
40
(DT)
16
160
12
68pin
25
Ultra160+
SCSI
SCSI3/
SPI3
40
(DT)
16
160
12
68pin
25
Ultra320
SCSI
SCSI3/
SPI4
16
80
(DT)
320
12
68pin
25
Lostiposdeconectoreshanidocambiando,permitiendoprincipalmente:
Enviarmayorcantidaddedatosconmayorvelocidadymayorconfiabilidad
[Link]
8/20
21/8/2016
DispositivosdeAlmacenamiento
Tenerunmenortamaodelconectorparaadecuarloadistintosdispositivos
DShell(DSub,DD):ElprimerSCSIstandard,SCSI1
UnconectormachoDD50SCSI
Seobservaelmetal"Dshaped"alrededordelospins.
Cuidado:ElconectorAppleDB25SCSIesmecnicamenteindnticoalconectorparalelodeunaPC,ungravedao
puedeocurrir.
Centronics:otroconectorSCSI1standardde50pin,tambinllamado"Centronicsconnector"
Conectormacho(arriba)yhembra50pinCentronicsconnectors.
Seobservaquelospinssonplanosylasesquinasposeenpestaasparaconectarse.
HighDensity(HD):ElconectorDshellbasadoenelSCSI1standardfuereemplazadoporunonuevodealta
densidadbasadpenSCSI2.
Machosde50pin(izquierda)y68pinconectoresdealtadensidadexternos.
VeryHighDensityCableInterconnect(VHDCI):ParamejorardemaneranotablelaflexibilidaddelhardwareSCSI
surgeestenuevoconector
Amale68pinVHDCIconnector.
Conectoresinternos(unshielded):
[Link]
9/20
21/8/2016
DispositivosdeAlmacenamiento
RegularDensity:DefinidoparaSCSI1standardparadispositivosde8bits.Esunaconectorrectangularde25
pinsmuysimilaraldelosIDE/ATAexceptoportener5pinsextraencadarengln.
Macho(arriba)yhembra50pinregulardensity.
HighDensity:SCSI2definiestosconectoresquellamadosdealtadensidadporqueelespacioentrepinsesde
lamitaqueenlosantiguosSCSI1hacindolosmuchomspequeos.
Unmachointerno,highdensity68pinconnector.
SingleConnectorAttachment(SCA):EselestandarparaconectoresSCSIinternos,norefirindosealoscables
sinolainterfaceintegradaenalgunatarjeta.
Unconectorhembrade80pinSCAconnector.
SerialATAInterface
[Link]
10/20
21/8/2016
DispositivosdeAlmacenamiento
1stgeneration
Approximate
150MB/s
DataRate
Approximate
1.5GB/s
BusSpeed
Introduction Mid2002
Signal
compatibility
2ndgeneration 2ndgeneration
300MB/s
600MB/s
3.0GB/s
6.0GB/s
Mid2004
Compatible
w/1st
generation
Mid2007
Compatiblew/
2ndgeneration
UniversalSerialBus(USB)
Velocidadde480Mbits/s
Elcablepuedetenerunlargode5metros.
FCFiberChannel
Velocidadde2Gbits/s
Elcablepuedemedirhasta15km
Ejemplosdeconfiguracionesdediscos
[Link]
11/20
21/8/2016
DispositivosdeAlmacenamiento
2.2.2.5DiskHandling
Losdiscospuedensufrirsobrecalentamiento,poresoenalgunoscasosserecomiendanalgunos"DriveCoolers"que
[Link]
disco.
Otramaneradeenfriarlosdiscosesatravsde"BayCoolers"quesongabinetesporejemplode5.25"queenvuelven
aldrivede3.5"yproveenunaexcelenteventilacin.
[Link]
12/20
21/8/2016
DispositivosdeAlmacenamiento
Paratranportarundiscoesimportantemantenerloalejadodealgunadescarga,anlaestticaqueloshumanos
podemostener.
Antistaticbag
SeaShell
2.2.2.6RetailvsOEMdrives
Undisco"Retail"incluye:
HardDiskDrive:Eldiscoconsuempaque
InstruccionesdeInstalacin
Driversy/outileras.
MountingHardware:tornillosy/oplacasparainstalareldiscoenelgabinete
InterfaceCable
TarjetadeGaranta
Cajita
EncontrasteunOEM"originalequipmentmanufacturer"incluye:
[Link]
13/20
21/8/2016
DispositivosdeAlmacenamiento
HardDiskDrive:Eldiscoconsuempaque
Jumpers:jumpersparaconfigurareldisco
2.2.2.7CDROM/DVDROM
Muypopularesdebidoaquesurgieronconfinesmusicales,deahqueseantaneconmicos
Elesquemavistoenlosdiscosduros(sectores,tracks,etc)noaplicaaquyaquelainformacinesalmacenada
enformadeespiral
Escrituradelcentrohaciaafueradeldisco
2.3SubsistemasdeDisco
Problema:
Capacidadlimitadaencuantoalespaciodealmacenamientopordisco.
ExisteuncuellodebotellaenloqueserefiereaI/Oparaaquellossistemasquerequierendegran
performance
Accesoadisco(milisegundos)vsRAM(nanosegundos)
Soluciones:
RAID(RedundantArraysofInexpensive/IndependientDisks)
DiskCatching
2.3.1RAID
Existen6nivelesdiferentesloscualesusanmltiplesdiscosdurosparamejorarlavelocidad,la
fiabilidadoambos.
Losniveles15estnrelacionadosconlafiabilidad(redundanciadedatos)peronoofrecengrandes
mejorasenloqueserefiereaoperacionesdelectura.
Laredundanciapermitetenermltiplescopiasdelosmismosdatosenvariosdiscosdemaneraquesi
algunofallalosdatosnosepierden.
ParaqueunRAIDfuncionequerequiereinvertirenunhardwarequepermitaobtenerlosbeneficios
dedichatcnica,deotramaneraelmaximizarelusodecacheesunabuenasolucin.
RAID0:
Especficoparaaumentarelperformance,noproveeredundancia
Losdatosseenvan(almacenan)enlosdiferentesdiscos
Paralacomputadoravariosdiscosseapreciancomosifueran1solo.
Serequierenalmenos2discosparaimplementarlo
RAID1:
Estenivelproduceun"espejo"(mirror)delosdatos,losmismosdatossonalmacenadosen2discos
Estosdiscospuedenonoestarenlamismamquina
Laslecturastiendenasermsrpidasquesisehicierandeunsolodisco,yaquelosdatospueden
serledossimultneamentedeambos.
Lasescriturassuelensermslentasyaqueseestnescribiendo2copiasdelosdatos.
Serequierenalmenos2discosparaimplementarlo
[Link]
14/20
21/8/2016
DispositivosdeAlmacenamiento
RAID2:
Utilizacdigosdecorreccindeerroresparacompensarlacarenciadedichafuncionalidadenalgunos
discos
Actualmenteyanoesmuyutilizadodebidoaquelamayoradelosdispositivosposeedicha
caracterstica.
RAID3:
Almacenatodalainformacinendiferentesdiscosperoanivelbyte.
Undiscoestdedicadoexclusivamenteaguardarelbitdeparidad,demaneraquesialgundiscofalla
losdatossepuederecuperargraciasaestebit.
Serequierenalmenos3discosparaimplementarlo
RAID4:
SimilaraRAID3conladiferenciaquelaparidadsealmacenaporbloques.
Laparidadtambinsealmacenaenunsolodisco
Enamboscasoseldiscodeparidadsepuedevolveruncuellodebotella
Serequierenalmenos3discosparaimplementarlo
RAID5:
SemejanteaRAID4soloqueconladiferenciadequelaparidadsedivideentretodoslosdiscosdel
arreglo.
[Link]
15/20
21/8/2016
DispositivosdeAlmacenamiento
Resistelacadaofalladeundisco
Lasescriturassonlentasdebidoaqueunsencillaoperacindeescriturarequiereleerlosdatosdel
bloqueascomosuparidad,recalcularlaparidadconlosnuevosdatosyescribirentrelosdiferentes
discosdelraid.
Sinembargolagranmejoraentiempodelecturaminimizaeloverheadquesegastaenlasescrituras.
Elrendimientopuedellegaraserigualomejorquesitrabajramosconunsolodisco.
Serequierenalmenos3discosparaimplementarlo
OtrosNivelesdeRAID,basadosenlasideasgeneralesdelos6nivelesbsicos(noseencuentran
disponiblesentodaslasimplementacionesdisponibles)
RAID6
SimilaraRAID5
Incluyeunesquemadeparidadadicionaldistribuidoatravsdelosdiferentesdiscos
SerequierenalmenosN+2discosparaimplementarlo
RAID7
Principalmenteimplementadoanivelhardware
Aprovechapropiedaddeunsistemaoperativoinmerso(embedded)paratenerlasventajasdelbusde
transferencia
Permitegrandesvelocidadesentransferenciadedatos
MarcaRegistradaporStorageComputerCorporation.
RAID10
Esunarreglodeclases(stripes),cadaunadeellascompuestaporunarreglodediscosconRAID1
Escostodeestaimplementacinesdemasiadoalto,tantoenrecursoscomoendinero
Serequierenalmenos4discosparaimplementarlo
[Link]
16/20
21/8/2016
DispositivosdeAlmacenamiento
RAID53
Esunarreglodeclases(stripes),cadaunadeellascompuestaporunarreglodediscosconRAID3
Estoofrecegranvelocidadperoelcostoesdemasiadoalto
Serequierenalmenos5discosparaimplementarlo
RAID0+1
Esunarreglodediscosespejo
CadasegmentodediscosestconfiguradocomounRAID0
ImplementacionesdeRAID
Conceptosrelacionados:
DiscSpare(HotSpare):discosoparticionesderespaldoqueentran
automticamentesialgunodelosdiscosdelarreglotienealgunafalla
DispositivosHotPlug:mquinas/discosquepuedenseragregadosal
arregloencalientesinnecesidaddereiniciarlamquina.
UnRAIDpuedeestarimplementadoenHardwareoenSoftware
Hardware:Sonmsrpidos,peromscostosos
[Link]
17/20
21/8/2016
DispositivosdeAlmacenamiento
SunStorEdgeT3169Tb
Software:
SolarisVolumeManager(SolsticeDiskSuite)
LinuxKernels
[Link]
WindowsManagementConsole>DiskManagement
2.3.2DiskCatching
[Link]
18/20
21/8/2016
DispositivosdeAlmacenamiento
UtilizalamemoriaRAMdelsistemaounamemoriacachdeldiscopara"cachar"elI/Odeldisco.
Debidoaestasmemoriasmsrpidaselrendimientoaumenta.
Cuandoseleeralgodeldiscolomsrecientesealmacenaenestacachedemaneraquecuandose
haceotrallamadaaldiscostaseinterceptayserevisasilosdatosseencuentranenelbufferde
memoria,siesaslosdatosseutilizandestaynodeldisco.
ImplementacindeCatching
LaconfiguracindelDiskCatchingsuelehacerseenelBIOSdelamquina.
AlgunosSistemasOperativosautomticamenteutilizanlamemoriaRAMlibrepararealizarelcatching
Laincludaeneldisco,actualmente2MBendrivesIDE/ATAydehasta16MBenalgunosSCSI.
2.4NAS(NetworkAttachedStorage)
Esundispositivoqueposeeundiscoduro,unatarjetacontroladora,unatarjetadered,yelsoftware
necesarioqueincluyelosprotocolosparaquelosarchivosseanalcanzablesdesdelasdemsmquinas
(NFS,CIFS,InternetworkPacketExchange)
2.5SAN(StorageAreaNetwork)
Reddedicadacreadaparapermitiraungrupodeservidoreselcompartirsistemasdealmacenamientode
altavelocidad
[Link]
19/20
21/8/2016
DispositivosdeAlmacenamiento
Libro:UsingSANsandNAS,Oreilly
2.6CAS(ContentAddressedStorage)
Referenciastomadasde
[Link]
[Link]
[Link]
[Link]
20/20
Unidad de disco duro
1 Historia
En informtica, la unidad de disco duro o unidad de
disco rgido (en ingls: Hard Disk Drive, HDD) es el
dispositivo de almacenamiento de datos que emplea un
sistema de grabacin magntica para almacenar archivos
digitales. Se compone de uno o ms platos o discos rgidos, unidos por un mismo eje que gira a gran velocidad
dentro de una caja metlica sellada. Sobre cada plato, y
en cada una de sus caras, se sita un cabezal de lectura/escritura que ota sobre una delgada lmina de aire
generada por la rotacin de los discos. Es memoria no
voltil.
El primer disco duro fue inventado por IBM, en 1956. A
lo largo de los aos, han disminuido los precios de los discos duros, al mismo tiempo que han multiplicado su capacidad, siendo la principal opcin de almacenamiento secundario para computadoras personales, desde su aparicin en los aos 1960.[1] Los discos duros han mantenido
su posicin dominante gracias a los constantes incrementos en la densidad de grabacin, que se ha mantenido a la Antiguo disco duro de IBM (modelo 62PC, Piccolo), de 64,5
par de las necesidades de almacenamiento secundario.[1] MB, fabricado en 1979.
Los tamaos tambin han variado mucho, desde los
primeros discos IBM hasta los formatos estandarizados actualmente: 3,5 pulgadas los modelos para PC y
servidores, y 2,5 pulgadas los modelos para dispositivos
porttiles. Todos se comunican con la computadora a travs del controlador de disco, empleando una interfaz estandarizada. Los ms comunes hasta los aos 2000 han
sido IDE (tambin llamado ATA o PATA), SCSI (generalmente usado en servidores y estaciones de trabajo).
Desde el 2000 en adelante ha ido masicndose el uso de
los SATA. Existe adems FC (empleado exclusivamente
en servidores).
Al principio los discos duros eran extrables, sin embargo,
hoy en da tpicamente vienen todos sellados (a excepcin
de un hueco de ventilacin para ltrar e igualar la presin
del aire).
El primer disco duro, aparecido en 1956, fue el Ramac
I, presentado con la computadora IBM 350: pesaba una
tonelada y su capacidad era de 5 MB. Ms grande que un
frigorco actual, este disco duro trabajaba todava con
vlvulas de vaco y requera una consola separada para su
manejo.
Su gran mrito consista en el que el tiempo requerido
para el acceso era relativamente constante entre algunas
posiciones de memoria, a diferencia de las cintas magnticas, donde para encontrar una informacin dada, era
necesario enrollar y desenrollar los carretes hasta encontrar el dato buscado, teniendo muy diferentes tiempos de
acceso para cada posicin.
Para poder utilizar un disco duro, un sistema operativo
debe aplicar un formato de bajo nivel que dena una o
ms particiones. La operacin de formateo requiere el uso
de una fraccin del espacio disponible en el disco, que
depender del sistema de archivos o formato empleado.
Adems, los fabricantes de discos duros, unidades de estado slido y tarjetas ash miden la capacidad de los mismos usando prejos del Sistema Internacional, que emplean mltiplos de potencias de 1000 segn la normativa
IEC e IEEE, en lugar de los prejos binarios, que emplean mltiplos de potencias de 1024, y son los usados por
sistemas operativos de Microsoft. Esto provoca que en algunos sistemas operativos sea representado como mltiplos 1024 o como 1000, y por tanto existan confusiones,
por ejemplo un disco duro de 500 GB, en algunos sistemas operativos ser representado como 465 GiB (es decir
gibibytes; 1 GiB = 1024 MiB) y en otros como 500 GB.
La tecnologa inicial aplicada a los discos duros era relativamente simple. Consista en recubrir con material magntico un disco de metal que era formateado en pistas
concntricas, que luego eran divididas en sectores. El cabezal magntico codicaba informacin al magnetizar diminutas secciones del disco duro, empleando un cdigo
binario de ceros y unos. Los bits o dgitos binarios
as grabados pueden permanecer intactos durante aos.
Originalmente, cada bit tena una disposicin horizontal
en la supercie magntica del disco, pero luego se descubri cmo registrar la informacin de una manera ms
1
3 ESTRUCTURA FSICA
compacta.
El mrito del francs Albert Fert y al alemn Peter
Grnberg (ambos premio Nobel de Fsica por sus contribuciones en el campo del almacenamiento magntico) fue el descubrimiento del fenmeno conocido como
magnetorresistencia gigante, que permiti construir cabezales de lectura y grabacin ms sensibles, y compactar ms los bits en la supercie del disco duro. De estos
descubrimientos, realizados en forma independiente por
estos investigadores, se desprendi un crecimiento espectacular en la capacidad de almacenamiento en los discos
duros, que se elev un 60 % anual en la dcada de 1990.
En 1992, los discos duros de 3,5 pulgadas alojaban 250
MB, mientras que 10 aos despus haban superado 40
GB (40 000 MB). A la fecha (2016), ya se dispone de en
el uso cotidiano con discos duros de ms de 5 TB, esto
es, 5000 GB (5 000 000 MB).
Componentes de una unidad de disco duro. De izquierda a derecha, la superior: tapa, carcasa, plato, eje; la inferior: espuma
aislante, circuito impreso de control, cabezal de lectura/escritura,
actuador e imn, tornillos.
En 2001 fue lanzado el iPod, que empleaba un disco duro
que ofreca una capacidad alta para la poca. Junto a la Cada plato posee dos ojos, y es necesaria una cabeza
simplicidad, calidad y elegancia del dispositivo, este fue de lectura/escritura para cada cara. Si se observa el esun factor clave para su xito.
quema Cilindro-Cabeza-Sector, a primera vista se ven 4
brazos,
uno para cada plato. En realidad, cada uno de los
En 2005 los primeros telfonos mviles que incluan disbrazos
es
doble, y contiene dos cabezas: una para leer la
cos duros fueron presentados por Samsung y Nokia, auncara
superior
del plato, y otra para leer la cara inferior.
que no tuvieron mucho xito ya que las memorias ash los
Por
tanto,
hay
ocho cabezas para leer cuatro platos, aunacabaron desplazando, debido al aumento de capacidad,
que
por
cuestiones
comerciales, no siempre se usan todas
mayor resistencia y menor consumo de energa.
las caras de los discos y existen discos duros con un nmero impar de cabezas, o con cabezas deshabilitadas. Los
cabezales de lectura/escritura no tocan el disco, sino que
2 Estructura lgica
pasan muy cerca (hasta a 3 nanmetros), debido a una
nsima pelcula de aire que se forma entre los cabezaDentro del disco se encuentran:
les y los platos cuando los discos giran (algunos discos
incluyen un sistema que impide que los cabezales pasen
El registro de arranque principal (Master Boot Re- por encima de los platos hasta que alcancen una velocicord, MBR), en el bloque o sector de arranque, que dad de giro que garantice la formacin de esta pelcula).
Si alguna de las cabezas llega a tocar una supercie de un
contiene la tabla de particiones.
plato, causara muchos daos en l, rayndolo gravemen Las particiones de disco, necesarias para poder co- te, debido a lo rpido que giran los platos (uno de 7200
locar los sistemas de archivos.
revoluciones por minuto se mueve a 129 km/h en el borde
de un disco de 3,5 pulgadas).
Estructura fsica
3.1 Direccionamiento
Dentro de la unidad de disco duro hay uno o varios discos
Hay varios conceptos para referirse a zonas del disco:
(de aluminio o cristal) concntricos llamados platos (normalmente entre 2 y 4, aunque pueden ser hasta 6 o 7 segn
Plato: cada uno de los discos que hay dentro de la
el modelo), y que giran todos a la vez sobre el mismo eje,
unidad de disco duro.
al que estn unidos. El cabezal (dispositivo de lectura y
escritura) est formado por un conjunto de brazos para Cara: cada uno de los dos lados de un plato.
lelos a los platos, alineados verticalmente y que tambin
Cabezal: nmero de cabeza o cabezal por cada cara.
se desplazan de forma simultnea, en cuya punta estn las
cabezas de lectura/escritura. Por norma general hay una
Pista: una circunferencia dentro de una cara; la pista
cabeza de lectura/escritura para cada supercie de cada
cero (0) est en el borde exterior.
plato. Los cabezales pueden moverse hacia el interior o el
Cilindro: conjunto de varias pistas; son todas las cirexterior de los platos, lo cual combinado con la rotacin
cunferencias que estn alineadas verticalmente (una
de los mismos permite que los cabezales puedan alcanzar
de cada cara).
cualquier posicin de la supercie de los platos.
3.2
Factor de Forma
Pista/
Cilindro
disco duro. As las pistas se agrupan en zonas de pistas de igual cantidad de sectores. Cuanto ms lejos
del centro de cada plato se encuentra una zona, sta
contiene una mayor cantidad de sectores en sus pistas. Adems mediante ZBR, cuando se leen sectores
de cilindros ms externos la tasa de transferencia de
bits por segundo es mayor; por tener la misma velocidad angular que cilindros internos pero mayor
cantidad de sectores.[3]
Sector geomtrico: son los sectores contiguos pero
de pistas diferentes.
Sector
Clster: es un conjunto contiguo de sectores.
Cabezas
8 cabezas,
4 platos
Cilindro, Cabezal y Sector.
El primer sistema de direccionamiento que se us
fue el Cilindro-Cabezal-Sector (Cylinder-Head-Sector,
CHS), ya que con estos tres valores se puede situar un dato cualquiera del disco. Ms adelante se cre otro sistema
ms sencillo, que actualmente se usa: direccionamiento
de bloques lgicos (Logical Block Addressing, LBA), que
consiste en dividir el disco entero en sectores y asignar a
cada uno un nico nmero.
A
C
3.2 Factor de Forma
B
Estructura de disco magntico:
A es una pista del disco (roja),
B es un sector geomtrico (azul),
C es un sector de una pista (magenta),
D es un grupo de sectores o clster (verde).
Seis unidades de disco duro con carcasas abiertas mostrando platos y cabezales; 8, 5, 3, 2, 1 y 1 pulgadas de dimetro de
los discos que representan.
El ms temprano "factor de forma" de los discos duros,
hered sus dimensiones de las disqueteras. Pueden ser
montados en los mismos chasis y as los discos duros con
Sector : cada una de las divisiones de una pista. El factor de forma, pasaron a llamarse coloquialmente tipos
tamao del sector no es jo, siendo el estndar ac- FDD "oppy-disk drives" (en ingls).
tual 512 bytes, aunque la IDEMA[2] ha creado un
comit que impulsa llevarlo a 4 KiB. Antiguamente La compatibilidad del factor de forma continua siendo
el nmero de sectores por pista era jo, lo cual des- de 3 pulgadas (8,89 cm) incluso despus de haber saaprovechaba el espacio signicativamente, ya que en cado otros tipos de disquetes con unas dimensiones ms
las pistas exteriores pueden almacenarse ms secto- pequeas.
res que en las interiores. As, apareci la tecnolo 8
pulgadas:
241,3117,5362
mm
ga grabacin de bits por zonas (Zone Bit Recording, ZBR) que aumenta el nmero de sectores en
(9,54,62414,25 pulgadas).
las pistas exteriores, y utiliza ms ecientemente el
En 1979, Shugart Associates sac el primer factor
4
de forma compatible con los disco duros, SA1000,
teniendo las mismas dimensiones y siendo compatible con la interfaz de 8 pulgadas de las disqueteras.
Haba dos versiones disponibles, la de la misma
altura y la de la mitad (58,7 mm).
5,25
pulgadas:
146,141,4203
mm
(5,751,638 pulgadas). Este factor de forma
es el primero usado por los discos duros de Seagate
en 1980 con el mismo tamao y altura mxima de
los FDD de 5 pulgadas, por ejemplo: 82,5 mm
mximo.
ste es dos veces tan alto como el factor de 8
pulgadas, que comnmente se usa hoy; por ejemplo:
41,4 mm (1,64 pulgadas). La mayora de los
modelos de unidades pticas (DVD/CD) de 120
mm usan el tamao del factor de forma de media
altura de 5, pero tambin para discos duros. El
modelo Quantum Bigfoot es el ltimo que se us a
nales de los 90'.
CARACTERSTICAS DE UN DISCO DURO
0,85 pulgadas: 24532 mm.
Toshiba anunci este factor de forma el 8 de enero
de 2004 para usarse en mviles y aplicaciones similares, incluyendo SD/MMC slot compatible con
disco duro optimizado para vdeo y almacenamiento para micromviles de 4G. Toshiba actualmente
vende versiones de 4 GB (MK4001MTD) y 8 GB
(MK8003MTD) 5 y tienen el rcord Guinness del
disco duro ms pequeo.
Los principales fabricantes suspendieron la investigacin
de nuevos productos para 1 pulgada (1,3 pulgadas) y 0,85
pulgadas en 2007, debido a la cada de precios de las
memorias ash, aunque Samsung introdujo en el 2008
con el SpidPoint A1 otra unidad de 1,3 pulgadas.
El nombre de pulgada para los factores de forma normalmente no identica ningn producto actual (son especicadas en milmetros para los factores de forma ms
recientes), pero estos indican el tamao relativo del disco,
para inters de la continuidad histrica.
3,5 pulgadas: 101,625,4146 mm (415.75
pulgadas).
Este factor de forma es el primero usado por los dis- 4 Caractersticas de un disco duro
cos duros de Rodine que tienen el mismo tamao
que las disqueteras de 3, 41,4 mm de altura. Hoy
Las caractersticas que se deben tener en cuenta en un
ha sido en gran parte remplazado por la lnea slim
disco duro son:
de 25,4 mm (1 pulgada), o low-prole que es usado en la mayora de los discos duros.
Tiempo medio de acceso: tiempo medio que tarda
la aguja en situarse en la pista y el sector deseado; es
2,5
pulgadas:
69,859,5-15100
mm
la suma del Tiempo medio de bsqueda (situarse
(2,750,374-0,593,945 pulgadas).
en la pista), Tiempo de lectura/escritura y la LaEste factor de forma se introdujo por PrairieTek
tencia media (situarse en el sector).
en 1988 y no se corresponde con el tamao de las
lectoras de disquete. Este es frecuentemente usado
Tiempo medio de bsqueda: tiempo medio que
por los discos duros de los equipos mviles (portarda la aguja en situarse en la pista deseada; es la
ttiles, reproductores de msica, etc...) y en 2008
mitad del tiempo empleado por la aguja en ir desde
fue reemplazado por unidades de 3,5 pulgadas de la
la pista ms perifrica hasta la ms central del disco.
clase multiplataforma. Hoy en da la dominante de
Tiempo de lectura/escritura: tiempo medio que
este factor de forma son las unidades para porttiles
tarda el disco en leer o escribir nueva informacin:
de 9,5 mm, pero las unidades de mayor capacidad
Depende de la cantidad de informacin que se quietienen una altura de 12,5 mm.
re leer o escribir, el tamao de bloque, el nmero
de cabezales, el tiempo por vuelta y la cantidad de
1,8 pulgadas: 54871 mm.
sectores por pista.
Este factor de forma se introdujo por Integral Peripherals en 1993 y se involucr con ATA-7 LIF con
Latencia media: tiempo medio que tarda la aguja en
las dimensiones indicadas y su uso se incrementa en
situarse en el sector deseado; es la mitad del tiempo
reproductores de audio digital y su subnotebook. La
empleado en una rotacin completa del disco.
variante original posee de 2 GB a 5 GB y cabe en una
ranura de expansin de tarjeta de ordenador perso Velocidad de rotacin: Es la velocidad a la que ginal. Son usados normalmente en iPods y discos dura el disco duro, ms exactamente, la velocidad a la
ros basados en MP3.
que giran el/los platos del disco, que es donde se almacenan magnticamente los datos. La regla es: a
1 pulgadas: 42,8536,4 mm.
mayor velocidad de rotacin, ms alta ser la transEste factor de forma se introdujo en 1999 por IBM
ferencia de datos, pero tambin mayor ser el ruido
y Microdrive, apto para los slots tipo 2 de compact
y mayor ser el calor generado por el disco duro. Se
ash, Samsung llama al mismo factor como 1,3 pulmide en nmero revoluciones por minuto (RPM).
gadas.
No debe comprarse un disco duro IDE de menos de
5.1
Tipos de conexin de datos
5400 RPM (ya hay discos IDE de 7200 RPM), a menos que te lo den a un muy buen precio, ni un disco
SCSI de menos de 7200 RPM (los hay de 10.000
RPM). Una velocidad de 5400 RPM permitir una
transferencia entre 10MB y 16MB por segundo con
los datos que estn en la parte exterior del cilindro o
plato, algo menos en el [Link] por minuto de los platos. A mayor velocidad de rotacin,
menor latencia media.
Tasa de transferencia: velocidad a la que puede
transferir la informacin a la computadora una vez
que la aguja est situada en la pista y sector correcDos conectores ATA macho en placa base.
tos. Puede ser velocidad sostenida o de pico.
Otras caractersticas son:
Cach de pista: es una memoria tipo ash dentro
del disco duro.
SCSI
SAS
Cuando se conecta indirectamente con la placa base (por
Interfaz: medio de comunicacin entre el disco du- ejemplo: a travs del puerto USB) se denomina disco duro
ro y la computadora. Puede ser IDE/ATA, SCSI, porttil o externo.
SATA, USB, Firewire, Serial Attached SCSI
Landz: zona sobre las que aparcan las cabezas una 5.1.1 IDE, ATA o PATA
vez se apaga la computadora.
La interfaz ATA (Advanced Technology Attachment) o
PATA (Parallel ATA), originalmente conocido como
IDE (Integrated Device Electronics o Integrated Drive
5 Conectores
Electronics), controla los dispositivos de almacenamiento
masivo de datos, como los discos duros y ATAPI (Advanced Technology Attachment Packet Interface) o unidades
de discos pticos como lectoras o grabadoras de CD y
DVD.
Hasta el 2004, aproximadamente, fue el estndar principal por su versatilidad y asequibilidad.
Son planos, anchos y alargados.
5.1.2 SATA
Serial ATA o SATA es el ms novedoso de los estndares
de conexin, utiliza un bus serie para la transmisin de
datos.
Conector ATA hembra en un cable cinta plano.
Notablemente ms rpido y eciente que IDE.
Fsicamente es mucho ms pequeo y cmodo que los
IDE, adems de permitir conexin en caliente (hot plug).
5.1
Tipos de conexin de datos
Las unidades de discos duros pueden tener distintos tipos
de conexin o interfaces de datos con la placa base. Cada
unidad de disco rgido puede tener una de las siguientes
opciones:
IDE
SATA
Existen tres versiones:
1. SATA 1 con velocidad de transferencia de hasta 150
MB/s (descatalogado),
2. SATA 2 de hasta 300 MB/s, el ms extendido en la
actualidad;
3. SATA 3 de hasta 600 MB/s el cual se est empezando a hacer lugar en el mercado.
5.1.3
SCSI
Las interfaces Small Computer System Interface (SCSI)
son interfaces preparadas para discos duros de gran capacidad de almacenamiento y velocidad de rotacin.
Se presentan bajo tres especicaciones:
1. SCSI Estndar (Standard SCSI),
2. SCSI Rpido (Fast SCSI) y
FUNCIONAMIENTO MECNICO
Motor, que hace girar los platos.
Electroimn, que mueve el cabezal.
Circuito electrnico de control, que incluye: interfaz
con la computadora, memoria cach.
Bolsita desecante (gel de slice), para evitar la humedad.
Caja, que ha de proteger de la suciedad, motivo por
el cual suele traer algn ltro de aire.
3. SCSI Ancho-Rpido (Fast-Wide SCSI).
Su tiempo medio de acceso puede llegar a 7 milisegundos
y su velocidad de transmisin secuencial de informacin
puede alcanzar tericamente los 5 Mbit/s en los discos
SCSI Estndares, los 10 Mbit/s en los discos SCSI Rpidos y los 20 Mbit/s en los discos SCSI Anchos-Rpidos
(SCSI-2).
6.1 Integridad
Debido a la distancia extremadamente pequea entre los
cabezales y la supercie del disco, cualquier contaminacin de los cabezales de lectura/escritura o las fuentes
puede dar lugar a un accidente en los cabezales, un fallo del disco en el que el cabezal raya la supercie de la
Un controlador SCSI puede manejar hasta 7 discos duros fuente, a menudo moliendo la na pelcula magntica y
SCSI (o 7 perifricos SCSI) con conexin tipo margarita causando la prdida de datos. Estos accidentes pueden
(daisy chain). A diferencia de los discos IDE, pueden tra- ser causados por un fallo electrnico, un repentino corte
bajar asincrnicamente con relacin al microprocesador, en el suministro elctrico, golpes fsicos, el desgaste, la
corrosin o debido a que los cabezales o las fuentes sean
lo que posibilita una mayor velocidad de transferencia.
de pobre fabricacin.
5.1.4
SAS
Serial Attached SCSI (SAS) es la interfaz de transferencia
de datos en serie, sucesor del SCSI paralelo, aunque sigue utilizando comandos SCSI para interaccionar con los
dispositivos SAS. Aumenta la velocidad y permite la conexin y desconexin en caliente. Una de las principales
caractersticas es que aumenta la velocidad de transferencia al aumentar el nmero de dispositivos conectados, es
decir, puede gestionar una tasa de transferencia constante
para cada dispositivo conectado, adems de terminar con
la limitacin de 16 dispositivos existente en SCSI, es por
ello que se vaticina que la tecnologa SAS ir reemplazando a su predecesora SCSI.
Adems, el conector es el mismo que en la interfaz SATA
y permite utilizar estos discos duros, para aplicaciones
con menos necesidad de velocidad, ahorrando costes. Por
lo tanto, las unidades SATA pueden ser utilizadas por
controladoras SAS pero no a la inversa, una controladora
SATA no reconoce discos SAS.
5.2
Fuente de alimentacin
Funcionamiento mecnico
Un disco duro suele tener:
Platos, en donde se graban los datos.
Cabezal de lectura/escritura.
El eje del sistema del disco duro depende de la presin
del aire dentro del recinto para sostener los cabezales y
su correcta altura mientras el disco gira. Un disco duro
requiere un cierto rango de presiones de aire para funcionar correctamente. La conexin al entorno exterior y la
presin se produce a travs de un pequeo agujero en el
recinto (cerca de 0,5 mm de dimetro) normalmente con
un ltro en su interior (ltro de respiracin, ver abajo).
Si la presin del aire es demasiado baja, entonces no hay
suciente impulso para el cabezal, que se acerca demasiado al disco, y se da el riesgo de fallos y prdidas de datos.
Son necesarios discos fabricados especialmente para operaciones de gran altitud, sobre 3.000 m. Hay que tener en
cuenta que los aviones modernos tienen una cabina presurizada cuya presin interior equivale normalmente a una
altitud de 2.600 m como mximo. Por lo tanto los discos
duros ordinarios se pueden usar de manera segura en los
vuelos. Los discos modernos incluyen sensores de temperatura y se ajustan a las condiciones del entorno. Los
agujeros de ventilacin se pueden ver en todos los discos
(normalmente tienen una pegatina a su lado que advierte al usuario de no cubrir el agujero). El aire dentro del
disco operativo est en constante movimiento siendo barrido por la friccin del plato. Este aire pasa a travs de un
ltro de recirculacin interna para quitar cualquier contaminante que se hubiera quedado de su fabricacin, alguna
partcula o componente qumico que de alguna forma hubiera entrado en el recinto, y cualquier partcula generada
en una operacin normal. Una humedad muy alta durante
un periodo largo puede corroer los cabezales y los platos.
Para los cabezales resistentes al magnetismo grandes
(GMR) en particular, un incidente minoritario debido a la
7
contaminacin (que no se disipa la supercie magntica
del disco) llega a dar lugar a un sobrecalentamiento temporal en el cabezal, debido a la friccin con la supercie
del disco, y puede hacer que los datos no se puedan leer
durante un periodo corto de tiempo hasta que la temperatura del cabezal se estabilice (tambin conocido como
aspereza trmica, un problema que en parte puede ser
tratado con el ltro electrnico apropiado de la seal de
lectura).
Los componentes electrnicos del disco duro controlan
el movimiento del accionador y la rotacin del disco, y
realiza lecturas y escrituras necesitadas por el controlador
de disco. El rmware de los discos modernos es capaz de
programar lecturas y escrituras de forma eciente en la
supercie de los discos y de reasignar sectores que hayan
fallado.
Mantenimiento y cuidado
Los discos duros tambin necesitan cuidado, siga las siguientes instrucciones para evitar la prdida de datos y
evitar que el disco duro quede inservible:
1. No quitar la etiqueta ligeramente plateada que se encuentra a los lados y/o algunas veces en la parte frontal, esto puede causar que entre polvo y raye el disco,
asimismo el polvo que pueda contener electricidad
puede mover los datos y causar daos.
2. No tapar los agujeros pequeos, ya que son un ltro
de aire y puede causar sobrecalentamiento.
3. Realizar peridicamente copias de seguridad en discos DVD, Blu-ray o en un disco duro externo de la
informacin importante, eventos como apagones o
ataques de virus pueden daar el disco duro o la informacin, si ocurre un apagn desconectar el ordenador. Si se usa un servicio de alojamiento de archivos, no debe ser la nica opcin ni se debe guardar
ah informacin delicada o crtica, pues el servicio
puede fallar, ser clausurado o atacado.
4. Se recomienda crear al menos dos particiones: Una
para el sistema operativo y los programas y otra para los datos del usuario. De esta forma se pueden
facilitar la copia de seguridad y la restauracin, al
posibilitar retroceder o reinstalar completamente el
sistema operativo sin perder los datos personales en
el proceso.
5. Optimizar (desfragmentar) el disco duro regularmente usando la herramienta incluida en el sistema
operativo o un programa de otro fabricante para reducir el desgaste, facilitar la recuperacin en caso
de un problema, y mantener una buena velocidad de
respuesta. Se recomienda una frecuencia de cuatro
a seis meses dependiendo del uso.
6. Descargar y usar un programa que lea los datos de
los sensores del disco duro (S.M.A.R.T.), para vigilar la condicin del disco duro. Si indica que est
en peligro, copiar la informacin importante y reemplazar el disco duro lo ms pronto posible para
evitar la prdida de informacin.
7. Evitar que el disco sufra golpes fsicos, especialmente durante su funcionamiento. Los circuitos, cabezales y discos pueden daarse.
8. Si el disco duro presenta problemas de conabilidad,
un funcionamiento anormalmente lento o aparecen
sin razn aparente archivos daados o ilegibles, analizarlo con un comprobador de disco. Tambin se recomienda realizar una comprobacin de rutina cada
cierta cantidad de meses para detectar errores menores y corregirlos antes de que se agraven.
8 Galera de imgenes
Disco duro de una laptop.
Unidad de disco duro de 2" que est abierto, exponiendo su funcionamiento interno. Disco duro Western Digital Scorpio Blue de 500 GB con conexiones
SATA; es comn en computadoras porttiles.
Interior de un disco duro; se aprecia la supercie de
un plato y el cabezal de lectura/escritura retrado, a
la izquierda.
Interior de la unidad de disco duro; se aprecian dos
platos con sus respectivos cabezales.
Cabezal del disco duro.
Cabezal de disco duro IBM sobre el plato del disco.
Pila de cabezales de disco duro Western Digital
(WD2500JS-00MHB0).
Un peine, 3 brazos, 6 cabezales, 3 platos.
Cabeza de disco duro sobre plato rayado. Rayaduras
en el plato producidas por golpes mientras la unidad
estaba en funcionamiento.
Cables IDE, con 40 pines (izquierda) y 80 pines (derecha).
Cable cinta para conectar la placa base con dos dispositivos IDE (p.e.: disco rgido o lectora de CD).
Comparacin de cables ATA de 40 y 80 pines y SATA.
Zcalo con canal de indexacin para conector IDC
(Insulation-Displacement Connector, conector por
desplazamiento del aislante).
Partes y conexiones de un disco rgido SATA.
10 FABRICANTES
Cable delgado SATA utilizado para conectar una
delgada unidad ptica a la interfaz SATA poder obtener de la placa base, y conector Molex para fuente
de alimentacin.
Presente y futuro
Actualmente la nueva generacin de discos duros utiliza la tecnologa de grabacin perpendicular (PMR), la
cual permite mayor densidad de almacenamiento. Tambin existen discos llamados Ecolgicos (GP Green
Power), los cuales hacen un uso ms eciente de la energa.
9.1
de aplicarse como mtodo general de archivos de datos
informticos energticamente respetuosos con el medio
natural si optimiza su funcin lgica dentro de los sistemas operativos actuales.[10]
9.1.1 Discos que no son discos
Las unidades de estado slido han sido categorizadas repetidas veces como discos, cuando es totalmente incorrecto denominarlas as, porque a diferencia de sus predecesores, sus datos no se almacenan sobre supercies cilndricas ni platos. Esta confusin conlleva habitualmente a
creer, errneamente, que SSD signica Solid State Disk, en
vez del correcto signicado: Solid State Drive, es decir,
unidad de estado slido o dispositivo de estado slido.
Comparativa de SSD y HDD
Las unidades de estado slido tienen el mismo uso que
los discos duros y emplean las mismas interfaces, pero no
estn formadas por discos mecnicos, sino por memorias
de circuitos integrados para almacenar la informacin. El
uso de esta clase de dispositivos anteriormente se limitaba a las supercomputadoras, por su elevado precio, aunque ahora son muchsimo ms asequibles para el mercado
domstico.[4]
La unidad de estado slido o SSD (acrnimo ingls de
Solid-State Drive) es el dispositivo de almacenamiento de
datos que puede estar construido con memoria no voltil o con memoria voltil. Las no voltiles son unidades
de estado slido que como dispositivos electrnicos, estn construidos en la actualidad con chips de memoria
ash. No son discos, pero juegan el mismo papel a efectos prcticos aportando ventajas pero tambin inconvenientes tecnolgicos como la corrupcin de las celdas de
memoria con cada escritura, lo que acorta la vida til de
estos dispositivos y aumenta el riesgo de corrupcin de
los datos[5] . No obstante, la industria est empezando a
vislumbrar en el mercado la posibilidad de que en el futuro ese tipo de unidades de estado slido termine sustituyendo al disco duro para implementar el manejo de
memorias no voltiles en el campo de la ingeniera informtica.
9.2 Unidades hbridas
Las unidades hbridas son aquellas que combinan las ventajas de las unidades mecnicas convencionales con las
de las unidades de estado slido. Consisten en acoplar
un conjunto de unidades de memoria ash dentro de
la unidad mecnica, utilizando el rea de estado slido
para el almacenamiento dinmico de datos de uso frecuente (determinado por el software de la unidad) y el
rea mecnica para el almacenamiento masivo de datos.
Con esto se logra un rendimiento cercano al de unidades
de estado slido a un costo sustancialmente menor. En
2012, Seagate ofreci el modelo Momentus XT, con
esta tecnologa.[11]
10 Fabricantes
Esos soportes son muy rpidos ya que no tienen partes
mviles o mecnicas y consumen menos energa. Todos
esto les hace muy ables y fsicamente duraderos. Sin embargo, su costo por GB es an muy elevado respecto al
mismo coste de GB en un formato de tecnologa de HDD,
siendo un ndice muy importante cuando hablamos de las Un Western Digital de 3,5 pulgadas con 250 GB y SATA HDD.
altas necesidades de almacenamiento que hoy se miden
en orden de Terabytes.[6]
Los recursos tecnolgicos y el saber hacer requeridos paA pesar de ello, la industria apuesta por esta va de solu- ra el desarrollo y la produccin de discos modernos imcin tecnolgica para el consumo domstico[7] aunque se plica que desde 2007, ms del 98 % de los discos duha de considerar que estos sistemas han de ser integrados ros del mundo son fabricados por un conjunto de grandes
correctamente[8] tal y como se est realizando en el cam- empresas: Seagate (que ahora es propietaria de Maxtor
po de la alta computacin.[9] Unido a la reduccin pro- y Quantum), Western Digital (propietaria de Hitachi, a
gresiva de costes, quizs esa tecnologa recorra el camino la que a su vez fue propietaria de la antigua divisin de
9
hacia 1999, aunque despus intent fabricar discos duros
en India. Su vuelta a la fama se debi a la creacin de un
nuevo formato de tamao de 3 para porttiles. Quantum
e Integral tambin investigaron el formato de 3, pero nalmente se dieron por vencidos. Rodime fue tambin un
importante fabricante durante la dcada de 1980, pero
dej de hacer discos en la dcada de 1990 en medio de
la reestructuracin y ahora se concentra en la tecnologa
de la concesin de licencias; tienen varias patentes relacionadas con el formato de 3,5.
1988: Tandon vendi su divisin de fabricacin de
discos duros a Western Digital, que era un renombrado diseador de controladores.
1989: Seagate compr el negocio de discos de alta
calidad de Control Data, como parte del abandono
de Control Data en la creacin de hardware.
1990: Maxtor compr MiniScribe que estaba en
bancarrota, hacindolo el ncleo de su divisin de
discos de gama baja.
Un Seagate de 3,5 pulgadas y 1 TB con SATA HDD.
fabricacin de discos de IBM) y Fujitsu, que sigue haciendo discos porttiles y discos de servidores, pero dej
de hacer discos para computadoras de escritorio en 2001,
y el resto lo vendi a Western Digital. Toshiba es uno de
los principales fabricantes de discos duros para porttiles
de 2,5 pulgadas y 1,8 pulgadas. TrekStor es un fabricante
alemn que en 2009 tuvo problemas de insolvencia, pero
que actualmente sigue en activo. ExcelStor es un pequeo
fabricante chino de discos duros.
Decenas de exfabricantes de discos duros han terminado
con sus empresas fusionadas o han cerrado sus divisiones de discos duros, a medida que la capacidad de los
dispositivos y la demanda de los productos aument, los
benecios eran menores y el mercado sufri una signicativa consolidacin a nales de los aos 1980 y nales de los aos 1990. La primera vctima en el mercado de las PC fue Computer Memories Inc.; despus de
un incidente con 20 MB defectuosos en discos en 1985,
la reputacin de CMI nunca se recuper, y salieron del
mercado de los discos duros en 1987. Otro notable fracaso fue el de MiniScribe, quien quebr en 1990: despus
se descubri que tena en marcha un fraude e inaba el
nmero de ventas durante varios aos. Otras muchas pequeas compaas (como Kalok, Microscience, LaPine,
Areal, Priam y PrairieTek) tampoco sobrevivieron a la
expulsin, y haban desaparecido para 1993; Micropolis
fue capaz de aguantar hasta 1997, y JTS, un recin llegado a escena, dur solamente unos aos y desapareci
1994: Quantum compr la divisin de almacenamiento de Digital Equipment Corporation otorgando al usuario una gama de discos de alta calidad
llamada ProDrive, igual que la gama tape drive de
Digital Linear Tape.
1995: Conner Peripherals, que fue fundada por uno
de los cofundadores de Seagate junto con personal
de MiniScribe, anunciaron un fusin con Seagate, la
cual se complet a principios de 1996.
1996: JTS se fusion con Atari, permitiendo a JTS
llevar a produccin su gama de discos. Atari fue vendida a Hasbro en 1998, mientras que JTS sufri una
bancarrota en 1999.
2000: Quantum vendi su divisin de discos a Maxtor para concentrarse en las unidades de cintas y los
equipos de respaldo.
2003: siguiendo la controversia en los fallos masivos
en su modelo Deskstar 75GXP, Pioneer IBM vendi
la mayor parte de su divisin de discos a Hitachi,
renombrndose como Hitachi Global Storage Technologies, Hitachi GST.
2003: Western Digital compr Read-Rite Corp.,
quien produca los cabezales utilizados en los discos
duros, por 95,4 millones de dlares en metlico.
2005: Seagate y Maxtor anuncian un acuerdo bajo
el que Seagate adquirira todo el stock de Maxtor.
Esta adquisicin fue aprobada por los cuerpos regulatorios, y cerrada el 19 de mayo de 2006.
2007: Western Digital adquiere Komag U.S.A., un
fabricante del material que recubre los platos de los
discos duros.
10
13 BIBLIOGRAFA
2009: Toshiba adquiere la divisin de HDD de
Fujitsu y TrekStor se declara en bancarrota, aunque
ese mismo ao consiguen un nuevo inversor para
mantener la empresa a ote.
2011: Western Digital adquiere Hitachi GST y Seagate compra la divisin de HDD de Samsung.
2014: Seagate anuncia el primer disco duro de 8 TB
en el mercado de consumo general, con formato de
3,5 pulgadas y conectividad tipo SATA III a 6Gbps,
compatible con computadoras de escritorio.[12]
11
Vase tambin
Fragmentacin de un sistema de cheros
Desfragmentacin
Disco duro porttil
Eje (disco duro)
Formato de disco
Jumper (informtica)
Particin de disco
Perifrico (informtica)
Plato (disco duro)
Registro de arranque principal
12 Referencias
[1] C. Dennis Mee, Eric D. Daniel (1996). McGraw-Hill, ed.
Magnetic Storage Handbook 2nd Ed.. ISBN 0-07-0412758.
[2] [Link]
[3] [Link]
5320/como-funcionan-los-discos-rigidos Cmo funcionan los discos rgidos
[4] Toshiba America Electronic Components, Inc. Solid State Drives Memory Products. Consultado el 17 de julio de
2009.
[5] [Link]
Cunto dura un SSD? Qu determina la durabilidad de
los SSD?
[6] [Link]
la-diferencia-de-precio-entre-ssd-y-discos-duros-se-reduce/
Comparativas de precios SSD versus disco duro.
[7] [Link]
discos-de-estado-solido-ssd-o-como-hacer-que-tu-computadora-sea-realmen
utm_source=self&utm_medium=nav&utm_campaign=
Relacionados Dispositivis de estado slido (SSD) o cmo
hacer que tu computadora sea realmente rpida.
[8] [Link]
comparativa-entre-disco-duro-y-disco-ssd-en-video/
#more-755 Comparativa entre disco duro y SSD en
vdeo.
[9] [Link]
noticia/Presentan_la_primera_supercomputadora_
Flash_del_mundo/30931 Presentan la primera supercomputadora Flash del mundo.
Sistema de archivos
Tabla de particiones GUID
Unidad de estado slido
Caractersticas de rendimiento de disco duro
11.1
Fabricantes de discos duros
[10] [Link]
ssd-la-verdad-sobre-el-consumo-de-energia/
la verdad sobre el consumo de energa.
SSD:
[11] [Link]
laptop-hdd/
[12] Oyanedel, Juan Pablo (27 de agosto de 2014). Seagate
estrena el primer disco duro de 8 TB en el mercado. Consultado el 29 de agosto de 2014.
Seagate
Toshiba
Verbatim
Western Digital
Samsung
13 Bibliografa
Ciriaco Garca de Celis (1994). 12.7: El disco duro
del AT (IDE, MFM, BUS LOCAL).. El universo
digital del IBM PC, AT y PS/2 (4 edicin). Facultad
de Ciencias de Valladolid: Grupo Universitario de
Informtica.
11
14
Enlaces externos
Wikimedia Commons alberga contenido multimedia sobre Unidad de disco duro. Commons
Wikilibros
Wikilibros alberga un libro o manual sobre
Mantenimiento y Montaje de Equipos Informticos/Tema 3/Almacenamiento magntico.
Cmo instalar un disco duro interno
Conexin a la unidad de alimentacn
Video de su funcionamiento (en ingls).
Todo sobre el disco duro (en espaol).
Disco duro y particiones (en espaol).
Historia del disco duro (en espaol).
Video explicativo sobre el funcionamiento de los
discos duros (en espaol).
IDEMA (en ingls).
12
15 ORIGEN DEL TEXTO Y LAS IMGENES, COLABORADORES Y LICENCIAS
15
15.1
Origen del texto y las imgenes, colaboradores y licencias
Texto
Unidad de disco duro Fuente: [Link] Colaboradores: Joseaperez, Oblongo, Moriel, Josmanbernal, Abgenis, Sauron, JorgeGG, Lourdes Cardenal, ManuelGR, Sanbec, Head, Zwobot, Dionisio, Bigsus, Aloriel, Rosarino, Dodo, Triku, Sms, Rsg, Tostadora, Jondel, Chvsanchez, Murphy era un optimista, Galio, ChemoWeb, Symonblade, Krous~eswiki,
Robotito, PeiT, Cinabrium, 142857, Robotico, Quistnix, Kordas, MatiasBellone, Mnts, Renabot, Richy, Sonett72~eswiki, Deleatur, Petronas, Javierchiclana, Hispa, Airunp, Jiuck, Edub, Taichi, Emijrp, Rembiapo pohyiete (bot), Marco Regueira, Edtruji, Aliman5040, Magister
Mathematicae, Kokoo, Lechpe, RobotQuistnix, Francosrodriguez, Platonides, Alhen, Superzerocool, Chobot, Palica, Fjjf~eswiki, Caiserbot, Yrbot, BOT-Superzerocool, Oscar ., Martincarr, Jamrojo, Maleiva, Vitamine, .Sergio, YurikBot, Mortadelo2005, Museo8bits, Echani,
GermanX, Equi, Lobillo, Gaijin, KnightRider, Richzendy, Albasmalko, Carlos Humberto, Tigerfenix, Marb, Santiperez, Txo, HECTOR
ARTURO AZUZ SANCHEZ, Eskimbot, Baneld, Gtz, Maldoror, Ciencia Al Poder, Cheveri, Haitike, Tomatejc, Jarke, Filipo, Kaiba0,
Carlosblh, Ivan romero, BOTpolicia, Qwertyytrewqqwerty, CEM-bot, Damifb, Laura Fiorucci, Heavyrock, Tripy, JMCC1, Alexav8, Ignacio Icke, Jjvaca, Baiji, Roberpl, Zendel, CERVANTES JACP, Antur, @IE, Zerosxt, Reginocova, Dorieo, FrancoGG, Thijs!bot, Srengel,
Ricardoramirezj, Mahadeva, Diosa, Bot que revierte, Escarbot, Yeza, Reygecko, Corbacho, RoyFocker, Gilberto IV, Locovich, Cratn,
Isha, Xoneca, Guibuu, Mpeinadopa, El loko, JAnDbot, Estoymuybueno, OceanO, Stifax, Kved, Ciberrojopower, Mansoncc, Segedano, Satin, Marinna, Muro de Aguas, Gaius iulius caesar, Limbo@MX, CommonsDelinker, TXiKiBoT, Cronos x, Mercenario97, AlfaBeta0104,
Sergio.1312, Gustronico, Millars, Humberto, Netito777, HAMM, Fixertool, Phirosiberia, Bedwyr, J aroche, Chabbot, Plux, BL, Galaxy4,
Snakefang, Enrique r25, Manuel Trujillo Berges, Avsurrutia, Biasoli, Snakeeater, Bucephala, Cinevoro, VolkovBot, Snakeyes, Technopat,
Queninosta, Raystorm, Pmontaldo, Belgrano, Josell2, Matdrodes, Synthebot, DJ Nietzsche, BlackBeast, Shooke, Lucien leGrey, AlleborgoBot, Muro Bot, Edmenb, [Link], Andrezitofer, Bucho, Jcprietoc, Racso, YonaBot, MRK2001, SieBot, Mushii, Ctrl Z, Ma259,
Fofo~eswiki, Ensada, Loveless, Carmin, Cobalttempest, Linktroid, Chrihern, Bigsus-bot, BOTarate, Marcelo, Mel 23, Manw, Greek,
Lp-spain, Ratchet, Aleposta, Jim88Argentina, Googleador, XalD, Prietoquilmes, Marcecoro, HUB, Robenauta, Thunderbird2, Piero71,
Nicop, ElOtroJuanjo, DragonBot, Versageek, ReNaiXeR, Eduardosalg, Fanattiq, Leonpolanco, Pan con queso, Alejandrocaro35, Petruss,
Poco a poco, BetoCG, TheNava00, Raulshc, Aipni-Lovrij, Osado, JJSANES, Ravave, Kroji, Camilo, UA31, Shalbat, AVBOT, DayL6,
David0811, Rodolfo cea, Mizukane203, Abuitrago81, [Link], Mann138, Llfernandoll, Angel GN, NjardarBot, Ialad, Ezarate, Enramos, Diegusjaimes, Davidgutierrezalvarez, MelancholieBot, Toncec, Linfocito B, Viejalala, Arjuno3, Pandalive, Saloca, Andreasmperu,
Luckas-bot, Ramon00, Spirit-Black-Wikipedista, Chakal256, Nallimbot, Ptbotgourou, FariBOT, Jotterbot, Vic Fede, Albus Dumbledore~eswiki, Arredobayo, Arredobayin, Yonidebot, Beralmar, Jeepika, [Link], Ficenix, Belial Returns, Rodelar, 1dai, SuperBraulio13,
Manuelt15, Xqbot, Jkbw, Oliverasm, Dreitmen, Dossier2, Irbian, Ricardogpn, Metronomo, David coppereld, XIXO123, Igna, Torrente,
Botarel, Alejandro54, Pableo, Groucho Marx, White Master, Zulucho, BOTirithel, MAfotBOT, Angeldp, Jcdy, Halfdrag, RedBot, Kizar, Abece, Chilreu, Leugim1972, TorQue Astur, El mago de la Wiki, PatruBOT, Ganmedes, KamikazeBot, Pincho76, Humbefa, Tarawa1943, Nachosan, PatricioAlexanderWiki, DivineAlpha, GrouchoBot, HIPATIA2006, Tropick 100, Axvolution, Maxi martin9101,
EmausBot, Savh, AVIADOR, Rizobio, Sergio Andres Segovia, Africanus, Dondervogel 2, Grillitus, JackieBot, Rubpe19, Emiduronte,
ChuispastonBot, MadriCR, Waka Waka, Eze91, WikitanvirBot, Diamondland, Thekinglink, Sitovarela, CocuBot, Movses-bot, Antonorsi,
Abin, Bodhost, KLBot2, Shurmano32425, Renly, Vagobot, Sebrev, Travelour, MetroBot, DerKrieger, Allan Aguilar, Gusama Romero, Chapete123, Maquedasahag, Acratta, Damadafaka, Hugo Marchant Q., Joanknk, Aloha123, Harpagornis, Elvisor, Wiki2012~eswiki,
Creosota, Billydecampana, DanielithoMoya, Helmy oved, Jdiazval, 'fuunieeqz!, Konami~eswiki, Jaime ruiz muoz, Andrea te amo yo angel,
Dilan9, Un Tal Alex.., Daniblue21, EduLeo, ApOlO666xD, Legobot, Langtoolbot, Parra daniel, Balles2601, Hans Topo1993, FESG1234,
Anonimo200W, Churrasco italiano, ERINPATEL, Patelerin, PATELPATELA, Betzalia guadalupe de la cruz araujo, Spectud123, Drude, Lolaoilo, D3c contreras, Lagoset, 123gsmr, Camila405, Timohap, PDROSQUI, Jarould, Souta, Crystallizedcarbon, Papamericano69,
Fernando banderas, BenjaBot, Arshak67, Sfr570, Cupertinogaray, Diegojajaja123, Penes25, Luismiguel78, Fernando2812l, Ks-M9, Josemicohj, Juan D. Guachun A., Danibonilla1, Pakitoelcorcho, Elratata, Valen1704, Krassnine y Annimos: 1113
15.2
Imgenes
Archivo:ATA_on_mainboard.jpg Fuente: [Link] Licencia:
Public domain Colaboradores: ? Artista original: ?
Archivo:Ata_20070127_002.jpg Fuente: [Link] Licencia: Public domain Colaboradores: Photo taken by Jonas Bergsten using a Canon PowerShot G3. Artista original: Jonas Bergsten
Archivo:Cilindro_Cabeza_Sector.svg Fuente: [Link] Licencia: Copyrighted free use Colaboradores: Este archivo deriva de: Cylinder Head [Link]
Artista original: LionKimbro
Archivo:[Link] Fuente: [Link] Licencia: Public domain Colaboradores: This version created by Pumbaa, using a proper partial circle and SVG geometry features. (Former versions used
to be slightly warped.) Artista original: SVG version was created by User:Grunt and cleaned up by 3247, based on the earlier PNG version,
created by Reidab.
Archivo:[Link] Fuente: [Link] Licencia: Public domain
Colaboradores: Trabajo propio Artista original: MistWiz
Archivo:[Link] Fuente: [Link] Licencia: Public domain Colaboradores: No machine-readable source provided. Own work assumed (based on copyright claims). Artista original: No machine-readable
author provided. Rednammoc~commonswiki assumed (based on copyright claims).
Archivo:Hard_drive-[Link] Fuente: [Link] Licencia: CC-BY-SA3.0 Colaboradores:
Hard_drive-[Link] Artista original: Hard_drive-[Link]: Bibi Saint-Pol
Archivo:[Link] Fuente: [Link] Licencia: CC BY 3.0 Colaboradores: Trabajo
propio Artista original: Asim18
15.3
Licencia del contenido
13
Archivo:IBM_old_hdd_mod.jpg Fuente: [Link] Licencia: CCBY-SA-3.0 Colaboradores: ? Artista original: ?
Archivo:[Link] Fuente: [Link] Licencia: CC BY 3.0 Colaboradores: Trabajo propio Artista original: Pbsryan
Archivo:[Link] Fuente: [Link]
jpg Licencia: CC BY-SA 3.0 us Colaboradores: Provided by Author Artista original: Paul R. Potts
Archivo:[Link] Fuente: [Link] Licencia: CC BY-SA
3.0 Colaboradores: Trabajo propio Artista original: User:Bastique, User:Ramac et al.
15.3
Licencia del contenido
Creative Commons Attribution-Share Alike 3.0
Image and Scanner Interface Specication
Para otros usos de este trmino, vase Isis
(desambiguacin).
una trama continua, normalmente sin necesidad de procesar ms que una pequea porcin de la imagen completa. Debido a que los controladores ISIS se disponen
en una pipeline cuando son utilizados, cada controlador
ISIS (Image and Scanner Interface Specication) es una
se especializa en realizar una sola funcin. Los controinterfaz estndar de la industria para tecnologas de
ladores normalmente son pequeos y modulares, lo que
escaneo de imgenes, desarrollado por Pixel Translations
signica que ISIS permite nuevas funcionalidades en una
en 1990 (hoy: EMC captiva).
aplicacin con modicaciones muy pequeas.
General
3 Vase tambin
TWAIN
ISIS es un estndar abierto para el control de escneres
y un entorno de trabajo completo para procesamiento de
imgenes. Est soportado por un amplio nmero de aplicaciones y vendedores de escneres, llegando a convertirse rpidamente en un estndar industrial de facto. ISIS
permite a los desarrolladores de aplicaciones crear complicados sistemas de captura de imgenes de forma rpida y ecaz usando cualquier controlador certicado por
ISIS.
Windows Image Acquisition (WIA)
Scanner Access Now Easy (SANE)
4 Enlaces externos
Pgina de EMC captiva
Conjunto de SDKs proporcionados por EMC Captiva para obtener imgenes usando controladores ISIS
Caractersticas
Comparacin de ISIS vs. TWAIN por EMC captiva
ISIS es modular: permite a las aplicaciones controlar un
escner directamente, o utilizar las rutinas proporcionadas para manejar la mayora de las situaciones de forma
automtica.
ISIS es exible: usando una interfaz basada en mensajes
con etiquetas, puede crecer sin perder compatibilidad.
Esto signica que las caractersticas, operaciones y formatos no existentes en la actualidad pueden aadirse sin
esperar a una nueva versin de la especicacin.
ISIS es una especicacin completa: trata todos los temas
que una aplicacin que usa un escner debe tratar. Esto incluye tareas como seleccionar, instalar y congurar
un escner nuevo, establecer parmetros especcos del
escner, escanear, leer y escribir archivos, escalado de
imgenes, rotacin, visualizacin e impresin. Los controladores ISIS tambin han sido escritos para preprocesar datos realizando operaciones tales como conversin a
escala de grises de forma dinmica.
ISIS sobresale por la velocidad de procesado. Lo hace enlazando controladores entre s en una arquitectura en pipeline para que los datos uyan desde el controlador del
escner al controlador de compresin, al controlador de
empaquetado, al archivo, al visualizador o impresora en
1
5 ORIGEN DEL TEXTO Y LAS IMGENES, COLABORADORES Y LICENCIAS
Origen del texto y las imgenes, colaboradores y licencias
5.1
Texto
Image and Scanner Interface Specication Fuente: [Link]
86578325 Colaboradores: Sabbut, JKD, FlaBot, CEM-bot, Synthebot, Muro Bot, Ugly, [Link], DumZiBoT, WikitanvirBot, KLBot2,
Elvisor y Annimos: 5
5.2
Imgenes
5.3
Licencia del contenido
Creative Commons Attribution-Share Alike 3.0
TWAIN
TWAIN es un estndar destinado a la adquisicin de 2 Origen del nombre
imgenes de un escner de imagen: una API de captura de imgenes para los sistemas operativos Microsoft La palabra TWAIN se tom del refrn de Rudyard KiWindows y Apple Macintosh. La palabra TWAIN no es pling The Ballad of East and West (La Balada del Este
ocialmente un acrnimo; sin embargo, es ampliamen- y el Oeste):
te conocido como un retroacrnimo para "Technology
Without An Interesting Name (Tecnologa Sin Un NomOh, East is East, and West is West, and nebre Interesante).
ver the twain shall meet,
Till Earth and Sky stand presently at Gods
great Judgment Seat;
But there is neither East nor West, Border, nor
Breed, nor Birth,
When two strong men stand face to face, tho
they come from the ends of the earth!
General
El trmino fue elegido para reejar la dicultad experimentada, en su da, para intentar conectar los escneres y
los ordenadores. El retroacrnimo "Technology Without
An Interesting Name surgi durante la actividad temprana del grupo pero no la aceptan como acrnimo.[1]
El estndar fue liberado por primera vez en 1992. Actualmente est raticado en la versin 2.2 el 16 de febrero de
2012 y es mantenido por el Grupo de Trabajo TWAIN.
TWAIN se utiliza normalmente como una interfaz entre
la aplicacin de procesado de imgenes y un escner o Kevin Bier conrma de manera autoritaria que TWAIN,
cmara digital.
mientras que no es ocialmente un acrnimo, fue conLa desventaja de TWAIN como implementacin para cebido como una utilidad sin un nombre importante
una aplicacin tpica (p.e. aplicacin de escaneo) es que (toolkit without an important name). Este no-acrnimo
no siempre separa la interfaz de usuario del controlador fue inspirado por una coleccin de cartas escritas por
de dispositivo (al contrario que SANE). Esto hace difcil Mark Twain que Bier ley. Bier comenta que termin de
proveer servicios TWAIN a programas ajenos al fabri- leer una de esas cartas cerca de medianoche, luego checante del dispositivo. Cada vez que una aplicacin carga que el correo una ltima vez para recibir un conjunto de
un controlador TWAIN, no se puede separar de la GUI nombres potenciales para la tecnologa. Respondi con
(Interfaz grca de usuario). Para ser preciso, no es un una sugerencia sobre el nombre TWAIN y tras una condefecto de la especicacin TWAIN sino de los controla- sulta con Mark Twain (S. L. Clemens) para asegurarse de
dores del dispositivo, porque no son totalmente compati- la legalidad de su uso, el nombre fue ocialmente lanzado el 29 de febrero de 1992 (que Bier vio como fecha
bles con la especicacin TWAIN.
apropiada para el lanzamiento de nuestro esfuerzo).
Kevin Bier, director del Grupo de Trabajo TWAIN y el
co-autor/editor original de TWAIN 1.0, observa que algunos creen que la unin de la interfaz de usuario con el
controlador TWAIN (realmente una porcin de cdigo 3 Vase tambin
de la aplicacin y no un controlador en absoluto) est fallando. l responde que era una meta explcita del diseo
Image and Scanner Interface Specication (ISIS)
del grupo para poner la responsabilidad de presentar la
Windows Image Acquisition (WIA)
funcionalidad del dispositivo en manos del fabricante del
dispositivo.
Scanner Access Now Easy (SANE)
Era nuestra premisa que ninguno otro podra saber todas
las caractersticas del dispositivo o la forma ms apropiada de presentar la funcionalidad al usuario, Bier dice.
Sin importar mi opinin sobre la calidad relativa de esa 4 Notas
premisa, era una fundacin esencial del xito de especicacin. segn ha demostrado la adopcin de la misma. [1] De dnde viene el acrnimo TWAIN? (en ingls)
1
Referencias
Este artculo est originalmente basado en material de
la Free On-line Dictionary of Computing, la cual est
licenciada bajo GFDL, as como la carta de Kevin Bier
en la Wikipedia que trata acerca del nombre.
Enlaces externos
Grupo de Trabajo TWAIN (ingls)
Framework para la Adquisicin de Imgenes para
Java (ingls)
ObjectiveC TWAIN framework para MacOS X (ingls)
Java TWAIN Toolkit (producto comercial)
EZTwain (producto comercial, pero con una versin
libre (EZTwain Classic))
.NET TWAIN Toolkit (producto comercial)
ENLACES EXTERNOS
Origen del texto y las imgenes, colaboradores y licencias
7.1
Texto
TWAIN Fuente: [Link] Colaboradores: Sabbut, Zwobot, Sms, Rudolph, Poniol60, Rembiapo pohyiete (bot), RobotQuistnix, JKD, FlaBot, Mortadelo2005, GermanX, Eskimbot, Basquetteur, Cvmontuy, Rei-bot, Matdrodes,
Muro Bot, SieBot, Diegusjaimes, FariBOT, LordboT, ArthurBot, Xqbot, SassoBot, RedBot, DixonDBot, Mickkafka, PatruBOT, KLBot2,
Elvisor y Annimos: 9
7.2
Imgenes
7.3
Licencia del contenido
Creative Commons Attribution-Share Alike 3.0
Windows Image Acquisition
Windows Image Acquisition (WIA) es un modelo de
controlador e interfaz de programacin de aplicaciones
(API) para las versiones ms modernas del sistema operativo Microsoft Windows que permite a las aplicaciones
de grcos comunicarse con dispositivos de imagen tales como escneres, cmaras digitales y equipos de vdeo
digital. Fue introducido por primera vez en el ao 2000
como parte de Windows Me, y continua siendo el estndar de dispositivos de imagen y modelo API a travs de
las sucesivas versiones de Windows. A partir de Windows
XP, es implementado como un servicio bajo-demanda.
calSystem. Debido a las ramicaciones de seguridad de
ejecutar un servicio como LocalSystem en el que un controlador defectuoso o persona maliciosa tendra un acceso completo al sistema, el servicio WIA en Windows
Server 2003 y Windows Vista opera en el contexto LocalService. Esto puede dar lugar a problemas de compatibilidad si se usa un controlador diseado para Windows
XP.[1]
Windows Vista tiene la biblioteca de Automatizacin
WIA incluida. Tambin, WIA soporta push scanning y
multi-image scanning. Push scanning permite iniciar escaneos y ajustar los parmetros de escaneado directamente
desde el panel de control del escner. Multi-image scan1 General
ning permite escanear varias imgenes a la vez y guardarlas directamente en archivos separados. Sin embarWIA es un conjunto de utilidades signicativo para el so- go, el soporte de vdeo ha sido eliminado de WIA para
[2]
porte de imgenes digitales proporcionado por Still Ima- Windows Vista. Microsoft recomienda utilizar la nuege Architecture (STI) en Windows 2000. Mientras que va API Dispositivos Porttiles de Windows.
STI slo proporciona una interfaz de bajo nivel para realizar transferencias de datos bsicas desde y hacia el dispositivo (y la peticin del proceso de escaneado de ima- 3 Vase tambin
gen en una mquina Windows a travs de un dispositivo
externo), WIA proporciona un entorno de trabajo a travs
Image and Scanner Interface Specication (ISIS)
del cual los dispositivos pueden presentar sus capacidades
TWAIN
nicas al sistema operativo, y las aplicaciones pueden tomar ventaja de esas caractersticas.
Scanner Access Now Easy (SANE)
Segn Microsoft, los controladores WIA estn formados
por un componente de interfaz de usuario (UI) y un componente ncleo del controlador, cargados en dos procesos 4 Referencias
diferentes: UI en el espacio de la aplicacin y el ncleo
del controlador en el servicio WIA.
[1] Microsoft public una hoja en 2003 titulada Las mejores
prcticas relacionadas con la seguridad para el desarrollo
de controladores WIA para ayudar a los desarrolladores
de controladores WIA a escribir controladores que funcionaran en un contexto de menor seguridad, en la que el
servicio WIA opera.
En comparacin con TWAIN, se dice que WIA es ms
exible, porque es una interfaz estandarizada que no requiere una unin fuerte entre el software del escner
y el controlador (los escneres slo-TWAIN a menudo estn limitados a las funciones activadas en su unin
controlador-aplicacin). La mayora de los escneres recientes soportan WIA.
[2] Migrar de WIA a WPD
5 Enlaces externos
2
Informacin adicional
Lista de escneres compatibles con WIA
Windows Image Acquisition (WIA) 1.0
En 2002, Microsoft liber la Herramienta de la Biblioteca de Automatizacin de la Adquisicin de la Imagen
en Windows, la cual proporciona acceso a funcionalidad
WIA a travs de lenguajes de programacin y scripts que
soporten Automatizacin OLE.
Still Image Connectivity for Windows describe
WIA y lo compara con el protocolo de transferencia
de imgenes (PTP) y USB mass storage device class
para transferencia de imgenes entre dispositivos de
imgenes digitales y el ordenador.
En Windows XP, WIA se ejecuta en el contexto Lo1
6 ORIGEN DEL TEXTO Y LAS IMGENES, COLABORADORES Y LICENCIAS
Origen del texto y las imgenes, colaboradores y licencias
6.1
Texto
Windows Image Acquisition Fuente: [Link] Colaboradores: Sabbut, JKD, Jcentel, Biasoli, Muro Bot, Alexbot, CestBOT, LucienBOT, TobeBot, KLBot2 y Annimos: 2
6.2
Imgenes
6.3
Licencia del contenido
Creative Commons Attribution-Share Alike 3.0
Image and Scanner Interface Specication
Para otros usos de este trmino, vase Isis
(desambiguacin).
una trama continua, normalmente sin necesidad de procesar ms que una pequea porcin de la imagen completa. Debido a que los controladores ISIS se disponen
en una pipeline cuando son utilizados, cada controlador
ISIS (Image and Scanner Interface Specication) es una
se especializa en realizar una sola funcin. Los controinterfaz estndar de la industria para tecnologas de
ladores normalmente son pequeos y modulares, lo que
escaneo de imgenes, desarrollado por Pixel Translations
signica que ISIS permite nuevas funcionalidades en una
en 1990 (hoy: EMC captiva).
aplicacin con modicaciones muy pequeas.
General
3 Vase tambin
TWAIN
ISIS es un estndar abierto para el control de escneres
y un entorno de trabajo completo para procesamiento de
imgenes. Est soportado por un amplio nmero de aplicaciones y vendedores de escneres, llegando a convertirse rpidamente en un estndar industrial de facto. ISIS
permite a los desarrolladores de aplicaciones crear complicados sistemas de captura de imgenes de forma rpida y ecaz usando cualquier controlador certicado por
ISIS.
Windows Image Acquisition (WIA)
Scanner Access Now Easy (SANE)
4 Enlaces externos
Pgina de EMC captiva
Conjunto de SDKs proporcionados por EMC Captiva para obtener imgenes usando controladores ISIS
Caractersticas
Comparacin de ISIS vs. TWAIN por EMC captiva
ISIS es modular: permite a las aplicaciones controlar un
escner directamente, o utilizar las rutinas proporcionadas para manejar la mayora de las situaciones de forma
automtica.
ISIS es exible: usando una interfaz basada en mensajes
con etiquetas, puede crecer sin perder compatibilidad.
Esto signica que las caractersticas, operaciones y formatos no existentes en la actualidad pueden aadirse sin
esperar a una nueva versin de la especicacin.
ISIS es una especicacin completa: trata todos los temas
que una aplicacin que usa un escner debe tratar. Esto incluye tareas como seleccionar, instalar y congurar
un escner nuevo, establecer parmetros especcos del
escner, escanear, leer y escribir archivos, escalado de
imgenes, rotacin, visualizacin e impresin. Los controladores ISIS tambin han sido escritos para preprocesar datos realizando operaciones tales como conversin a
escala de grises de forma dinmica.
ISIS sobresale por la velocidad de procesado. Lo hace enlazando controladores entre s en una arquitectura en pipeline para que los datos uyan desde el controlador del
escner al controlador de compresin, al controlador de
empaquetado, al archivo, al visualizador o impresora en
1
5 ORIGEN DEL TEXTO Y LAS IMGENES, COLABORADORES Y LICENCIAS
Origen del texto y las imgenes, colaboradores y licencias
5.1
Texto
Image and Scanner Interface Specication Fuente: [Link]
86578325 Colaboradores: Sabbut, JKD, FlaBot, CEM-bot, Synthebot, Muro Bot, Ugly, [Link], DumZiBoT, WikitanvirBot, KLBot2,
Elvisor y Annimos: 5
5.2
Imgenes
5.3
Licencia del contenido
Creative Commons Attribution-Share Alike 3.0
Scanner Access Now Easy
Scanner Access Now Easy (SANE) es una interfaz de
programacin de aplicaciones (API) que proporciona acceso estandarizado a cualquier dispositivo de escaneo
(escner de sobremesa, escner de mano, cmaras y videocmaras, etc.). El API de SANE es de dominio pblico y su discusin y desarrollo est abierto a todo el mundo.
tadores de documentos que permiten que un gran nmero
de hojas de papel sean escaneadas de forma sucesiva. Utilizando la API de SANE, el frontend simplemente tiene
que ejecutar el mismo conjunto de opciones para cada escaneado, controlando el alimentador de documentos
entre escaneos para cargar la siguiente hoja de papel. El
frontend slo tiene que obtener el conjunto de opciones
del usuario una vez.
2 Estructura
General
SANE diere de TWAIN en que diferencia claramente los frontends (programas de usuario) y los backends
(controladores de los escneres) disminuyendo el tiempo
de desarrollo y la duplicacin de cdigo. Mientras que el
controlador TWAIN maneja tanto la Interfaz de usuario
como las comunicaciones con el escner, el controlador
de SANE slo proporciona una interfaz con el dispositivo y describe un nmero de opciones que controla cada
escaneo.
2.1 Backends de SANE
Los backends son los controladores que implementan las
funciones que proporciona la capa de abstraccin de SANE para la comunicacin de las aplicaciones de usuario
con los diferentes dispositivos de escaneo soportados.
Cada backend puede soportar uno o varios dispositivos
ya que, en realidad, lo que el backend implementa es el
protocolo de comunicacin con el chipset del dispositivo, el cual puede estar integrado en varios escneres. Los
identicadores de los dispositivos soportados pueden estar embebidos en el cdigo fuente del backend o especicados en su archivo de conguracin, el cual se encuentra en el directorio 'sane.d' dentro de '/etc' o bien
'/usr/local/etc' (Puede variar en funcin del sistema operativo). Esto posibilita la inclusin de nuevos escneres
especicando su ID sin necesidad de recompilar el software.
Estas opciones especican parmetros tales como la resolucin de escaneo, el rea de escaneo, modelo de color,
etc. Cada opcin tiene un nombre, y la informacin acerca de su tipo, unidades, y rango o valores posibles (por
ejemplo una lista enumerada). Por convencin hay varias opciones bien conocidas con los que los frontends[1]
pueden interactuar con los GUI convenientes p.e las opciones del rea de escaneo pueden establecerse arrastrando un recuadro sobre una imagen preliminar. Otras opciones pueden ser presentadas utilizando elementos GUI
adecuados a su tipo p.e deslizadores, cajas de listado, bo- Los backends deben aportar las siguientes funciones (al
menos en la versin 1.0.25):[3]
tones, etc.
Una consecuencia de esta separacin es que se implementa fcilmente el escaneado a travs de la red sin un
control especco tanto por parte de los frontends como
de los backends.[2] En un host con un escner, se ejecuta
el demonio saned que maneja las peticiones en red. En
las mquinas clientes, el backend net (controlador) se
conecta al servidor remoto para tomar las opciones del
escner, y realizar tanto el escaneo preliminar como el
escaneo nal. El demonio saned acta como un frontend
localmente, pero simplemente pasa las peticiones y los
datos entre las conexiones de red y el escner local. De
igual manera, el backend net pasa las peticiones y los
datos entre el frontend local y el host remoto.
sane_init
sane_get_devices
Varios tipos de procesamiento por lotes son posibles con
un mnimo de soporte necesario en el backend (controlador). Muchos escneres soportan la utilizacin de alimen-
sane_open
sane_get_option_descriptor
1
UTILIDADES
sane_control_option
sane_get_parameters
sane_start
sane_read
sane_cancel
sane_set_io_mode
sane_get_select_fd
sane_close
sane_exit
Frontend DigiKam.
Estas funciones proporcionan la funcionalidad necesaria
para inicializar el dispositivo, obtener y establecer las opciones de escaneo, comenzar el escaneo, leer la imagen
durante el escaneo, cancelar y realizar las operaciones
previas a la nalizacin del mismo.
La lista de backends con los dispositivos soportados puede encontrarse en SANE Supported devices
2.2
Interfaz DLL
Por encima de los backends se encuentra la interfaz DLL,
una biblioteca de enlace dinmico que puede entenderse Frontend Kooka.
como un backend ms, ya que implementa las mismas
funciones que estos pero proporciona la posibilidad de que ocurre con implementaciones TWAIN proporcionautilizar ms de un backend.
das por los fabricantes para entornos Windows, estas apliPara hacer uso de los backends, estos han de estar regis- caciones perduran a lo largo del tiempo ya que el soporte
trados. Para ello, debe existir la entrada correspondiente de nuevos escneres se realiza de forma transparente para
en el archivo '[Link]' localizado en el directorio 'sane.d' el frontend, permitiendo al usuario utilizar la aplicacin
que le sea ms familiar independientemente del escner
Cuando un frontend inicia la interfaz dll de SANE, esta que adquiera en un futuro.
inicializa los backends registrados en [Link], los cuales
realizan un barrido en busca de los dispositivos soporta- Algunos ejemplos de frontends conocidos son:
dos devolviendo mediante sane_get_devices aquellos que
scanimage: Aplicacin para consola (modo texto)
se han encontrado. Si cualquiera de los encontrados coincide con el deseado por el usuario, continua la carga del
xscanimage: Versin para X11
frontend y se inicializan los datos destinados al control
XSane: Versin para GTK+
del escner seleccionado.
kooka: Aplicacin para entornos KDE
2.3
Frontends de SANE
Otras aplicaciones especializadas hacen uso de mdulos o
plugins que proporcionan la funcionalidad de un frontend
Los frontends son aplicaciones que hacen uso de la ca- para acceso a los escneres mediante SANE, como por
pa de abstraccin proporcionada por SANE para acceder ejemplo GIMP u [Link].
a los dispositivos de escaneo. Estos programas no tienen
por qu conocer el funcionamiento interno de cada dispositivo ya que de ese trabajo se encargan los backends.
3 Utilidades
Esto presenta al menos dos ventajas. Por una parte, los
programadores de frontends pueden dedicar su esfuerzo
en adaptar sus programas a los diferentes entornos de tra- 3.1 sane-nd-scanner
bajo disponibles, a mejorar las prestaciones y a facilitar
el manejo de los escneres mediante interfaces amiga- sane-nd-scanner es una aplicacin incluida en el probles de cara al usuario. Por otro lado, al contrario que lo yecto SANE cuyo propsito es buscar y detectar aquellos
3.2
Botones del escner
dispositivos del sistema que pudieran ser soportados por
alguno de los backends.[4] Para ello, realiza un barrido en
la lista de dispositivos conectados mediante USB, dispositivos SCSI, dispositivos conectados a puertos paralelos
y otras interfaces de comunicacin analizando las propiedades de cada dispositivo encontrado. Adems, enva una
pequea trama de datos especcos a los dispositivos encontrados para, evaluando la respuesta, identicar el chipset integrado en los mismos. Esta forma de identicacin
permite encontrar dispositivos compatibles con un chipset concreto que pueda ser controlado por un backend de
SANE, aadiendo su identicacin en el archivo de conguracin del backend correspondiente, an cuando ste
no est reconocido como soportado de antemano.
Esta aplicacin funciona de forma autnoma, es decir, los
dispositivos encontrados pueden estar o no soportados por
cualquiera de los backends existentes o incluso identicar
errneamente el chipset integrado en un dispositivo.
Algunos usuarios tienden a confundir el propsito de esta
utilidad con el listado de escneres detectados que proporciona el frontend scanimage mediante el comando:
scanimage -L
En este caso, el frontend scanimage muestra los dispositivos compatibles localizados por los backends activados
en el archivo '[Link]'. Si un dispositivo de escaneo no
aparece en dicho listado y s en sane-nd-scanner, hay
que suponer lo siguiente:
El backend que lo controla est desactivado: Es decir,
no aparece el nombre del backend que lo controla o
aparece comentado (precedido del carcter #) en el
archivo '[Link]'
El backend que lo controla no incluye ese dispositivo
en su archivo de conguracin: Si se ha identicado el chipset del escner es posible que el backend
que lo soporta pueda hacerlo funcionar si se le proporciona su identicacin en el archivo de conguracin del backend.
La deteccin del chipset del dispositivo sea errnea:
Normalmente, los controladores grcos incluidos
en los escneres no contienen una identicacin expresa. As pues, la deteccin del chipset se basa en la
espera de una respuesta concreta a un comando o supuesta modicacin de valores en sus registros. Este
mtodo no es del todo able debido a que un chipset totalmente ajeno a las prestaciones de un escner
puede dar una respuesta equivalente a uno soportado. O incluso, detectar un chipset concreto cuando
en realidad es una variante o una versin actualizada
cuyas diferencias de programacin pueden provocar
reacciones imprevistas que ocasionen daos en el escner.
Por ello, la nalidad ms importante de esta utilidad es
permitir a los desarrolladores localizar nuevos dispositi-
3
vos susceptibles de ser controlados por sus respectivos
backends para darles el soporte necesario.
3.2 Botones del escner
La versin 1.0 de la API de SANE no soporta el control
de escneres mediante los botones que incorporan debido
a que, en el momento de su diseo, no exista esa peculiaridad. La versin 1.1 de la API (en desarrollo) s cubre
esa funcionalidad mediante el uso de opciones especcas
para los botones.
Existen dos proyectos ajenos a SANE que s posibilitan
el uso de los botones:
KScannerButtons: Si bien un frontend no tiene acceso estandarizado a los botones de un escner, los
backends pueden realizar ciertos trucos, no ociales,
para lograr esa informacin mediante opciones genricas con un patrn de nombre determinado que
actan como sensores. Cuando un backend detecta
un botn pulsado o liberado altera el estado de dichas opciones. KScannerButtons est formado por
un demonio (sanebuttond) que, instalado en el sistema, monitoriza el estado de esas opciones y tras detectar el cambio en su estado ejecuta la accin congurada por el usuario. Incorpora adems una GUI
para KDE. Debido a que no es un estndar, no todos
los backends soportan esa funcionalidad.
scanbuttond: Esta aplicacin es autnoma. No depende de las libreras de SANE para acceder a los
escneres sino que incorpora sus propios backends,
cuyo cdigo se ha extrado de los existentes en SANE. Dispone de un demonio con la misma funcionalidad.
4 Vase tambin
Portal:Software libre. Contenido relacionado
con Software libre.
Image and Scanner Interface Specication (ISIS)
Windows Image Acquisition (WIA)
TWAIN
5 Referencias
[1] Frontends que usan SANE
[2] [Link]
Seccin 'SANE versus TWAIN'
[3] Operaciones del protocolo SANE
[4] sane-nd-scanner man page
Enlaces externos
Sitio web ocial de SANE
Sitio web donde se aloja el proyecto y donde se puede contactar con sus desarrolladores
XSANE, un frontend para SANE basado en
GTK+ para entornos X, WIN32 (Windows
9x/ME/NT/2000/XP) y OS/2
Image Acquisition Framework for Java
Backends de SANE
ENLACES EXTERNOS
Origen del texto y las imgenes, colaboradores y licencias
7.1
Texto
Scanner Access Now Easy Fuente: [Link] Colaboradores: Sabbut,
JKD, Vitamine, GermanX, CommonsDelinker, TXiKiBoT, Biasoli, VolkovBot, Shooke, Muro Bot, Ensada, Carolingio93, SF007, LucienBOT, MastiBot, SpBot, LordboT, Xqbot, EmausBot, ZroBot, KLBot, KLBot2 y Annimos: 2
7.2
Imgenes
Archivo:DigiKam_ICC_profile.png Fuente: [Link] Licencia: Public domain Colaboradores: Trabajo propio Artista original: Mintz l
Archivo:Heckert_GNU_white.svg Fuente: [Link] Licencia:
CC BY-SA 2.0 Colaboradores: [Link] Artista original: Aurelio A. Heckert <aurium@[Link]>
Archivo:[Link] Fuente: [Link] Licencia: CC-BY-SA-3.0 Colaboradores: Trabajo propio Artista original: Retama
Archivo:[Link] Fuente: [Link] Licencia: CC BY 3.0 Colaboradores: Trabajo propio Artista original: JKD
Archivo:[Link] Fuente: [Link] Licencia: GPL Colaboradores: http://
[Link]/images Artista original: [Link]
7.3
Licencia del contenido
Creative Commons Attribution-Share Alike 3.0
22/8/2016
AYUDANTEADMINISTRATIVO:Teclados
TECLADOSDELMUNDO
El teclado QWERTY es la distribucin de teclado ms comn. Fue diseado y
patentado por Christopher Sholes en 1868 y vendido aRemington en 1873. Su
nombre proviene de las primeras seis letras de su fila superior de teclas.
La mquina de escribir de Sholes originalmente tena las teclas en orden
alfabtico. Cada una accionaba un pequeo martillo que imprima la letra sobre
el papel. Pero la velocidad de retorno del martillo era lenta, pues volva a su
posicin de reposo por simple gravedad. Por ello, al escribir, los martillos
chocaban unos contra otros y la mquina se atascaba. En lugar de perfeccionar el
dispositivo Sholes decidi elegir una distribucin arbitraria de teclas para evitar
ese problema. Lgicamente el resultado fue que las letras ms utilizadas
quedaron ms separadas entre s o en posiciones de ms difcil acceso.
QWERTY
Elteclado QWERTYtiene versiones para diferentes lenguas. En la disposicin en espaol se incluye la letra "".
TecladoQWERTYespaol,conla
Hay pases, como Alemania, que intercambian la tecla "Y" y la tecla "Z", con lo que se convierte en tecladoQWERTZ:
TecladoQWERTZdeAlemaniayAustria
[Link]
1/4
22/8/2016
AYUDANTEADMINISTRATIVO:Teclados
TecladoQWERTZdeSuiza
En Francia y Blgica hay ms cambios y las primeras 6 teclas alfabticas tienen la secuenciaAZERTY:
TecladoAZERTYdeFranciayBlgica
Tecladogriego
Tecladoturco
Tecladorabe
[Link]
2/4
22/8/2016
AYUDANTEADMINISTRATIVO:Teclados
Tecladojapons
Tecladochino
DVORAK
El tecladoDvorako teclado simplificado Dvorak es una distribucin de teclado diseada por los doctores August Dvorak
y William Dealey en los aos 20 y 30 como una alternativa a la popular distribucin de teclado QWERTY. Tambin se le
ha llamado teclado simplificado o teclado simplificado estadounidense, pero se le conoce comnmente como teclado
Dvorak.
Teclado DVORAK
TecladoQWERTYelmseficaz?:
La historia de la supervivencia de QWERTY es un buen ejemplo de los azarosos caminos que sigue a veces nuestra
tecnologa, combinaciones de sucesos y circunstancias fortuitas que marcan a menudo el resultado final.
En primer lugar, Sholes y su mquina QWERTY encontraron el apoyo de Remington (un famoso fabricante de armas),
que decidi comercializarla, pero en aquellos primeros tiempos de evolucin inicial el apoyo de un potente industrial
no parece suficiente para imponerse a las alternativas competidoras, posiblemente superiores. Pero QWERTY tambin
encontr apoyo entre usuarios clave. En 1882 una tal miss Longley, fundadora del Instituto de Taquigrafa y
Mecanografa de Cincinnati, vio clara su oportunidad de negocio ydesarroll y empez a ensear el tecleo a ocho
dedos que los profesionales utilizan hoy en da.
Miss Longley eligi mquinas QWERTY para sus clases, como tambin eran QWERTY, lgicamente, las mquinas que se
usaban en las escuelas de mecanografa que con un claro inters corporativo Remington empezaba a establecer por
aquel entonces. La maquinaria QWERTY estaba en marcha, pero este buen comienzo poda haberse estrellado
perfectamente contra la competencia de un mejor diseo en los duros aos del afianzamiento del patrn
mecanogrfico.
Posiblemente, el impulso definitivo le lleg a QWERTY de una ayuda inesperada, gracias a un acontecimiento crucial
que tuvo lugar en 1888. Miss Longley fue desafiada a probar la superioridad de su mtodo de ocho dedos sobre teclado
[Link]
3/4
22/8/2016
AYUDANTEADMINISTRATIVO:Teclados
QWERTY por Louis Taub, otro profesor de mecanografa, tambin de Cincinnati, que trabajaba con cuatro dedos sobre
un teclado con otra distribucin: seis filas y sin tecla de maysculas.
La competicin, ampliamente divulgada por la prensa, se iba a convertir en una especie de juicio pblico.
Expresamente para esa competicin, miss Langley contrat los servicios deFrank E. McGurrin, un mecangrafo que
haba memorizado el teclado QWERTY y escriba por tanto como los mecangrafos de hoy dia, "al tacto", a diferencia
de sus competidores. Gracias a esta caracterstica y no tanto debido al diseo de las mquinas, McGurrin arras a Taub
en la famosa competicin.
El pblico en general y los profesores de mecanografa en particular tomaron nota de la aparente superioridad de
QWERTY. Poco pudo importar que nunca se llevaran a cabo competiciones cotejadas con mecangrafos en igualdad de
condiciones, con igual nmero de filas, o de dedos, para determinar verdaderamente la importancia del diseo de los
teclados en la eficacia de las mquinas. QWERTY ya haba recibido su impulso imparable y se impona con el
principio de siglo. En algn momento los fabricantes rivales comprendieron que les iba costar menos esfuerzo
reconvertir sus mquinas que los hbitos de la gente y se convirtieron a QWERTY o se extinguieron.
[Link]
4/4
Teclado AZERTY
Para una persona acostumbrada al teclado QWERTY[1]
(preferido en otros pases), el cambio requiere de cierta
prctica, pues existen algunas diferencias entre los mismos:
A y Q estn intercambiadas.
Z y W estn intercambiadas.
M no est a la derecha de N sino a la derecha de L
(en lugar de (ES), de coma/punto y coma (US),
etc.).
Los dgitos 1-0 de la la superior ocupan las mismas teclas, pero para escribirlos debe pulsarse shift
(maysculas). La posicin por defecto se usa para
mostrar vocales acentuadas en minsculas.
1 Disposiciones de teclado
Distribucin geogrca de las diferentes distribuciones de teclado en Europa:
QWERTY QWERTZ AZERTY Disposiciones nacionales (turco
FGIOD, letn GJRMV, lituano ERTY) Teclados no latinos
Echap
&
F1
F2
F3
F4
>
<
Ctrl
S
W
'
" #
F6
F9
O
K
?
,
Alt
F11
F12
Impr
cran
Syst
Arrt
Dl
Inser
M
/
:
F10
+
= }
L
.
;
J
N
F8
H
B
F7
G
V
F
C
F5
6
Suppr
Fin
!
Alt Gr
Pause
Verr
Num
Attn
Verr
Maj
1.1 Por pases
Existen las siguientes disposiciones de teclado AZERTY:
Teclado francs: es el primero de su tipo.
Verr
Dl
Verr
Num
Teclado belga: en la dcada de los 80 se crea esta variante sobre el francs, donde algunos smbolos
cambian de posicin (? ! @ - _ + = ).
Fin
Ctrl
0
Inser
.
Suppr
Lettres standard
Touches Entre
Touche d'chappement
Touches Windows
Caractres spciaux
Touches de suppression
Touches de fonction
Touche de menu contextuel
Ponctuation
Touches modicatrices
Touches pour raccourcis
Mode insertion ou r-criture
Pav numrique
Touches de dplacement
Touches tabulations
autres
Teclado rabe combinado: en muchos pases se usa
con el n de poder escribir en los dos alfabetos, indistintamente para las letras del rabe o para las
latinas.[2] Estas ltimas, se presentan en formato
AZERTY (por ejemplo, en Marruecos y otros pases
francfonos africanos) o QWERTY.
Distribucin de teclado AZERTY
En pases en los que se habla otro idioma adems de francs se usan otras distribuciones de teclado, incluso para
escribir francs.
Canad
AZERTY belga
Teclado francocanadiense, QWERTY. Diseado para escribir principalmente en francs,
y tambin en ingls.
El teclado AZERTY es una distribucin de teclado que se utiliza mayoritariamente en algunos pases
francfonos. Su nombre se forma con las letras ubicadas en la segunda la de arriba del mismo, de izquierda a
derecha.[1]
Teclado canadiense multilinge, QWERTY.
Diseado para escribir principalmente en ingls y secundariamente en francs.
1
4
Suiza
Teclado francosuizo, QWERTZ. Diseado para escribir principalmente en francs y tambin en alemn.
Teclado suizo alemn, QWERTZ. Diseado
para escribir principalmente en alemn y tambin en francs
1.2
Por sistema operativo
El teclado francs rabe AZERTY en Windows no
cumple con los estndares de la lengua francesa. La
Imprimerie Nationale recomienda el uso de maysculas
acentuadas, pero no hay teclas dedicadas para mostrar
, las ligaduras o las marcas de cita francesas (los procesadores de texto en francs mayoritariamente convierten a estos caracteres las comillas dobles). Adems tiene smbolos, tanto en estado normal como presionado maysculas, que raramente se usan (por
ejemplo 2 ), que podran transferirse al mapa de teclado con AltGr pulsado. En un teclado US, la tecla a la
izquierda de 1 viene con acento grave / tilde ( ` / ~ ) ( /
ES, ` / UK), pero un AZERTY belga produce 2 / 3 .
El teclado AZERTY de Linux puede congurarse de distintas maneras, de acuerdo al pas o a los gustos del usuario.
Vase tambin
QWERTY
QWERTZ
HCESAR
Teclado Dvorak
Referencias
[1] Revista PC Magazine "Denition of:AZERTY keyboard". Consultado el 2 de julio de 2013.
[2] Curso de Ayudante Administrativo "Teclados del Mundo". Consultado el 2 de julio de 2013.
Enlaces externos
Norma del Gobierno de Quebec sobre teclados de
ordenador (en francs)
ENLACES EXTERNOS
Origen del texto y las imgenes, colaboradores y licencias
5.1
Texto
Teclado AZERTY Fuente: [Link] Colaboradores: Akhram, Museo8bits, GermanX, Carlos Alberto Carcagno, Siabef, BOTpolicia, CEM-bot, Erick91, Yeza, B25es, Arandu Y.M., Moustique, Nioger, Fremen, VolkovBot, Erl, Mstreet linux, Muro Bot, Loveless, Lunor, Botelln, Alexbot, UA31, AVBOT, Integra2, Diegusjaimes, Arjuno3, Luckas-bot,
Nallimbot, Ptbotgourou, Nyttend, FrescoBot, Panderine!, D'ohBot, BOTirithel, Robot8A, AldanaN, Larin, EmausBot, Grillitus, WikitanvirBot, Zdii, KLBot2, MetroBot, Rotlink, ManuElAvell, Ks-M9, Selertos y Annimos: 27
5.2
Imgenes
Archivo:Azerty_fr.svg Fuente: [Link] Licencia: CC-BY-SA-3.0 Colaboradores: ? Artista original: ?
Archivo:Belgian_keyboard_layout.png Fuente: [Link]
Licencia: CC-BY-SA-3.0 Colaboradores: Trabajo propio Artista original: Draco avus (small x by H92 (t c no))
Archivo:Commons-emblem-question_book_orange.svg
Fuente:
[Link]
Commons-emblem-question_book_orange.svg Licencia: CC BY-SA 3.0 Colaboradores: <a href='//[Link]/wiki/File:
[Link]' class='image'><img alt='[Link]' src='[Link]
commons/thumb/b/bc/[Link]/[Link]' width='25' height='25' srcset='https:
//[Link]/wikipedia/commons/thumb/b/bc/[Link]/[Link]
1.5x,
[Link] 2x'
data-le-width='48' data-le-height='48' /></a> + <a href='//[Link]/wiki/File:Question_book.svg' class='image'><img
alt='Question
[Link]'
src='[Link]
[Link]' width='25' height='20' srcset='[Link]
38px-Question_book.[Link] 1.5x, [Link]
[Link] 2x' data-le-width='252' data-le-height='199' /></a> Artista original: GNOME icon artists, Jorge 2701
Archivo:Latin_keyboard_layouts_by_country_in_Europe_map.PNG Fuente: [Link]
7b/Latin_keyboard_layouts_by_country_in_Europe_map.PNG Licencia: CC BY-SA 3.0 Colaboradores: Windows Keyboard Layouts Artista original:
5.3
Licencia del contenido
Creative Commons Attribution-Share Alike 3.0
Teclado HCESAR
el n de sustituir esta tecla por la letra O, as como el
1 se reemplazaba con la l. Dispona adems de teclas
especcas del idioma luso, como las vocales nasalizadas
"" y "". El asterisco se lograba colocando una x sobre
el signo "+"
Como queda dicho, este teclado fue el nico aceptado en
organismos pblicos en Portugal hasta mediados de los
aos setenta, cuando gradualmente se volvi a usar el teclado AZERTY, especialmente a raz de la Revolucin de
abril de 1974. Durante los aos ochenta se denominaba al
HCESAR teclado nacional y al AZERTY internacional"; despus de un tiempo los teclados HCESAR fueron
retirados del mercado.
Teclado HCESAR.
En la actualidad, los portugueses usan el teclado
QWERTY adaptado a su idioma. Las mquinas HCESAR se han convertido en curiosas y buscadas piezas de
coleccionista.
1 Vase tambin
AZERTY
QWERTZ
QWERTY
Teclado Dvorak
Gracias a Salazar el teclado HCESAR se mantuvo hasta despus
de terminado su gobierno.
Wikimedia Commons alberga contenido multimedia sobre Teclado HCESAR. Commons
2 Notas
El Teclado HCESAR (o segn la pronunciacin AgCsar) fue un teclado instaurado por el Primer Ministro
portugus Doctor Antnio de Oliveira Salazar mediante
un decreto del ao 1937.[1][2][3]
[1] Regulamento da organizao da mocidade portuguesa,
Dirio do Governo n 284, I srie de 4 de Dezembro de
1936 e os Decretos n 27882 e n 27868 de 21 de julho
de 1937
Este teclado, llamado as por la secuencia las seis primeras letras de la primera la, supli al AZERTY francs
por permitir una redaccin dactilogrca ms rpida en
portugus, considerando la frecuencia de uso de las letras en dicho idioma, situndose en la zona central las
de mayor uso. As, desde 1937 las mquinas de escribir
HCESAR eran obligatorias en las dependencias pblicas,
y hasta 1974 eran las habituales, por no decir las nicas,
en los comercios portugueses.
[2] Article by Srgio Lira from Fernando Pessoa University
[3] Fernando Pessoa University: [Link]
Era comn en estos teclados que se omitiera el cero con
1
3 ORIGEN DEL TEXTO Y LAS IMGENES, COLABORADORES Y LICENCIAS
Origen del texto y las imgenes, colaboradores y licencias
3.1
Texto
Teclado HCESAR Fuente: [Link] Colaboradores: Sanbec, Uhanu, Erick91,
Gragry, Luis1970, Muro Bot, Minuanoencapital, Angel GN, Emmagatzematge de Saviesa, Zinneke, Rothorpe, EmausBot, Lotje, Fuegon,
KLBot2, Wikisamurai, Elvisor, EricEnfermero, Selertos y Annimos: 7
3.2
Imgenes
Archivo:Antnio_de_Oliveira_Salazar,_drawing.jpg Fuente: [Link]
B3nio_de_Oliveira_Salazar%2C_drawing.jpg Licencia: CC-BY-SA-3.0 Colaboradores: ? Artista original: ?
Archivo:[Link] Fuente: [Link] Licencia: Public domain Colaboradores: This version created by Pumbaa, using a proper partial circle and SVG geometry features. (Former versions used
to be slightly warped.) Artista original: SVG version was created by User:Grunt and cleaned up by 3247, based on the earlier PNG version,
created by Reidab.
Archivo:[Link] Fuente: [Link] Licencia: CC-BY-SA-3.0 Colaboradores: Transferido desde [Link] a Commons.; transfer was stated to be made by EuTuga. Artista original: The original uploader was
Rotring de Wikipedia en ingls
3.3
Licencia del contenido
Creative Commons Attribution-Share Alike 3.0
Teclado QWERTZ
QWERTZ usado en Serbia, Croacia, Montenegro, Eslovenia y
Bosnia y Herzegovina.
QWERTZ usado en Hungra.
Distribucin geogrca de los diferentes teclados en Europa:
QWERTY QWERTZ AZERTY Disposiciones nacionales (Turqua
FGIOD, Letonia GJRMV, Lituania ERTY) alfabetos no latinos
Teclado QWERTZ.
Strg
(Win) Alt
Alt Gr
el alemn y a que T y Z suelen aparecer una tras otra en
el idioma alemn. Parte del teclado ha sido adaptada para
incluir las vocales con diresis locales, como , , , etc.
Incluye tambin el smbolo del Euro () en la posicin
recomendada por la Unin Europea. Algunos smbolos
especiales ocupan tambin un lugar diferente.
(Win) (Menu) Strg
QWERTZ usado en Alemania y Austria.
Modelos basados en QWERTZ se utilizan en Suiza, y la
mayora de pases de Europa Oriental y Europa Central
que utilizan el alfabeto latino, con la excepcin de Estonia
y Lituania.
Enter
Caps Lock
Shift
Shift
Un teclado QWERTZ es llamado informalmente un kezboard (cambiando la Y del keyboard ingls por la Z), pues
QWERTZ usado en Suiza.
es el resultado de escribir keyboard por una persona acostumbrada a QWERTZ / QWERTY si le cambian la disEl teclado QWERTZ o teclado QWERTZU es una tribucin del teclado.
distribucin de teclado que se usa principalmente en regiones germanohablantes. El nombre proviene de las seis
primeras teclas de la la superior del teclado.
1 Vase tambin
Se diferencia de QWERTY en el intercambio de las teclas
Z e Y, debido a que la Z es mucho ms comn que la Y en
AZERTY
1
1
QWERTY
HCESAR
Teclado Dvorak
Mquina de escribir Blickensderfer
VASE TAMBIN
Origen del texto y las imgenes, colaboradores y licencias
2.1
Texto
Teclado QWERTZ Fuente: [Link] Colaboradores: Museo8bits, GermanX,
Siabef, Erick91, Thijs!bot, Yeza, JAnDbot, CommonsDelinker, Gerwoman, Muro Bot, Lunor, Poco a poco, AVBOT, MastiBot, Emmagatzematge de Saviesa, Arjuno3, Luckas-bot, Nyttend, Sannaj, TjBot, Ripchip Bot, Larin, ZroBot, Grillitus, KLBot2, Thehelpfulbot,
MetroBot, ManuElAvell, Balles2601, Selertos y Annimos: 11
2.2
Imgenes
Archivo:Cherry_keyboard_105_keys.jpg Fuente: [Link]
[Link] Licencia: Public domain Colaboradores: Gamma corrected image of the original Image:Cherry_keyboard.jpg. Artista original:
User:32bitmaschine
Archivo:Commons-emblem-question_book_orange.svg
Fuente:
[Link]
Commons-emblem-question_book_orange.svg Licencia: CC BY-SA 3.0 Colaboradores: <a href='//[Link]/wiki/File:
[Link]' class='image'><img alt='[Link]' src='[Link]
commons/thumb/b/bc/[Link]/[Link]' width='25' height='25' srcset='https:
//[Link]/wikipedia/commons/thumb/b/bc/[Link]/[Link]
1.5x,
[Link] 2x'
data-le-width='48' data-le-height='48' /></a> + <a href='//[Link]/wiki/File:Question_book.svg' class='image'><img
alt='Question
[Link]'
src='[Link]
[Link]' width='25' height='20' srcset='[Link]
38px-Question_book.[Link] 1.5x, [Link]
[Link] 2x' data-le-width='252' data-le-height='199' /></a> Artista original: GNOME icon artists, Jorge 2701
Archivo:Croatian_keyboard_layout.jpg Fuente: [Link]
jpg Licencia: CC-BY-SA-3.0 Colaboradores: Trabajo propio Artista original: <a href='//[Link]/wiki/User:MaGa'
title='User:MaGa'>Ma</a><a href='//[Link]/wiki/User_talk:MaGa' title='User talk:MaGa'>Ga</a>
Archivo:KB_Germany.svg Fuente: [Link] Licencia: CC-BY-SA-3.0
Colaboradores: ? Artista original: ?
Archivo:KB_Hungary.svg Fuente: [Link] Licencia: CC-BY-SA-3.0
Colaboradores: ? Artista original: ?
Archivo:KB_Swiss.svg Fuente: [Link] Licencia: GFDL Colaboradores: ?
Artista original: ?
Archivo:Latin_keyboard_layouts_by_country_in_Europe_map.PNG Fuente: [Link]
7b/Latin_keyboard_layouts_by_country_in_Europe_map.PNG Licencia: CC BY-SA 3.0 Colaboradores: Windows Keyboard Layouts Artista original:
2.3
Licencia del contenido
Creative Commons Attribution-Share Alike 3.0
Thunderbolt
Implementacin de la calidad de servicio
Thunderbolt, antes conocido por su nombre clave Light
Peak, es el nombre utilizado por Intel para designar a
un tipo de conector de alta velocidad que hace uso de
tecnologa ptica.[5][6]
Sustitucin en caliente
Tiene capacidad para ofrecer un gran ancho de banda,
hasta 20 gigabits por segundo, pero podra desarrollarse
en la prxima dcada hasta llegar a los 100 Gbit/s.[7] A
10 Gbit/s un Blu-ray puede ser transferido en menos de
30 segundos.[8][9]
2 Referencias
[1] Thunderbolt Technology. Intel. Consultado el 25 de
febrero de 2011.
[2] Crothers, Brooke (29 de septiembre de 2009). Sources:
'Light Peak' technology not Apple idea. CNet News
(CNet). Consultado el 23 de febrero de 2011.
Ha sido concebido para reemplazar a algunos buses actuales, tales como FireWire y HDMI.[10] Con la tecnologa Light Peak un nico cable de bra ptica podra sustituir a 50 cables de cobre utilizados para la transmisin de
una nica escena en 3 dimensiones. La tecnologa Light
Peak fue mostrada en el Intel Developer Forum el 23 de
septiembre de 2009. Esta tecnologa fue desarrollada por
Intel en colaboracin con Apple Inc[11]
[3] Technology Brief. Intel. Consultado el 25 de febrero de
2011.
[4] Lowensohn, Josh (24 de febrero de 2011). Intels Thunderbolt: What you need to know (FAQ). CNet News (CBS
Interactive). Consultado el 25 de febrero de 2011.
La primera versin (Cactus Ridge) est fabricada enteramente de cobre en vez de bra ptica.
[5] Light Peak technology. Intel. 23 de septiembre de 2009.
Consultado el 27 de septiembre de 2009.
[6] Patel, Nilay (23 de septiembre de 2009). Intel unveils
Light Peak 10Gbps optical interconnect for mobile devices. Engadget. Consultado el 27 de septiembre de 2009.
Caractersticas
[7] Myslewski, Rik (23 de septiembre de 2009). Intel unfurls
copper-killing optical cables. The Register. Consultado el
27 de septiembre de 2009.
[8] Intels priority: A total mobile computing experience.
Intel. 23 de septiembre de 2009. Consultado el 27 de septiembre de 2009.
[9] Shah, Agam (23 de septiembre de 2009). Intel connects
PCs to devices using light. PC World. Consultado el 27
de septiembre de 2009.
[10] Shankland, Stephen (23 de septiembre de 2009). Intels
Light Peak: One PC cable to rule them all. CNET. Consultado el 27 de septiembre de 2009.
[11] . 26 de septiembre de 2009 [Link]
thunderbolt/. Consultado el 27 de septiembre de 2009.
Falta el |ttulo= (ayuda)
Macbook Pro con Interfaz Thunderbolt
Thunderbolt posee las siguientes caractersticas:[12]
[12] Patel, Nilay (24 de septiembre de 2009). Video: Intels
Light Peak running an HD display while transferring les... on a hackintosh. Engadget. Consultado el 27 de septiembre de 2009.
10 Gbit/s sobre cable de cobre a distancias de hasta
3 metros (Light Peak, el prototipo, usaba cables de
bra ptica que funcionaban a distancias de incluso
100 metros).
Conexin simultnea a mltiples dispositivos
3 Enlaces externos
Mltiples protocolos
Light Peak technology en [Link] (en ingls)
Transferencia bidireccional
1
4 ORIGEN DEL TEXTO Y LAS IMGENES, COLABORADORES Y LICENCIAS
Origen del texto y las imgenes, colaboradores y licencias
4.1
Texto
Thunderbolt Fuente: [Link] Colaboradores: Tony Rotondas, Petronas, Pvieito, Jorge, Escarbot, CommonsDelinker, TXiKiBoT, Plux, VolkovBot, Muro Bot, Bjankuloski06es, Bigsus-bot, Nicholasraul, Kikobot, Poco a
poco, Alexbot, David0811, Linfocito B, Saloca, Luckas-bot, Amirobot, Ptbotgourou, Jorge 2701, Finderlog, Xqbot, Jkbw, Irbian, Botarel, D'ohBot, TiriBOT, MAfotBOT, Franbooks, Rajijose, TorQue Astur, PatruBOT, EmausBot, Sergio Andres Segovia, J. A. Glvez,
Dondervogel 2, ChuispastonBot, WikitanvirBot, Apalonso, Rodo9, KLBot2, Invadibot, Apmkeaper, TheNan3, Makecat-bot, Mvivas1988,
Elpollitopio, Makebos, Seorpatata, JacobRodrigues, Cabanur, Jarould y Annimos: 26
4.2
Imgenes
Archivo:[Link] Fuente: [Link] Licencia: CC0 Colaboradores: Trabajo propio Artista original: Heavysilence
Archivo:[Link] Fuente: [Link] Licencia: CC BY 3.0
Colaboradores: Trabajo propio Artista original: Macfan97
4.3
Licencia del contenido
Creative Commons Attribution-Share Alike 3.0
Universal Serial Bus
El Bus Universal en Serie (BUS) (en ingls: Universal Serial Bus), ms conocido por la sigla USB, es un
bus estndar industrial que dene los cables, conectores
y protocolos usados en un bus para conectar, comunicar
y proveer de alimentacin elctrica entre computadoras,
perifricos y dispositivos electrnicos.[2]
dernas van convirtindose en reproductores multimedia
con conector USB o iPod) a los reproductores de Bluray Disc o los modernos juguetes como Pleo. Se han implementado variaciones para su uso industrial e incluso
militar. Pero donde ms se nota su inuencia es en los
telfonos inteligentes (Europa ha creado una norma por
Su desarrollo parti de un grupo de empresas del sector la que todos los mviles debern venir con un cargador
que buscaban unicar la forma de conectar perifricos microUSB), tabletas, PDA y videoconsolas, donde ha rea sus equipos, por aquella poca poco compatibles entre emplazado a conectores propietarios casi por completo.
s, entre las que estaban Intel, Microsoft, IBM, Compaq, Algunos dispositivos requieren una potencia mnima, as
DEC, NEC y Nortel. La primera especicacin completa que se pueden conectar varios sin necesitar fuentes de ali1.0 se public en 1996, pero en 1998 con la especica- mentacin extra. Para ello existen concentradores (llamacin 1.1 comenz a usarse de forma masiva.
dos USB hubs) que incluyen fuentes de alimentacin para
aportar
energa a los dispositivos conectados a ellos, pero
El USB es utilizado como estndar de conexin de
algunos
dispositivos consumen tanta energa que necesiperifricos como: teclados, ratones, memorias USB,
tan
su
propia
fuente de alimentacin. Los concentradojoysticks, escneres, cmaras digitales, telfonos mviles,
res
con
fuente
de alimentacin pueden proporcionarle coreproductores multimedia, impresoras, dispositivos mulrriente
elctrica
a otros dispositivos sin quitarle corriente
tifuncionales, sistemas de adquisicin de datos, mdems,
al
resto
de
la
conexin
(dentro de ciertos lmites).
tarjetas de red, tarjetas de sonido, tarjetas sintonizadoras
de televisin y grabadoras de DVD externa, discos duros
externos y disqueteras externas. Su xito ha sido total,
habiendo desplazado a conectores como el puerto serie,
puerto paralelo, puerto de juegos, Apple Desktop Bus o
PS/2 a mercados-nicho o a la consideracin de dispositivos obsoletos a eliminar de las modernas computadoras,
pues muchos de ellos pueden sustituirse por dispositivos
USB que implementen esos conectores.
En el caso de los discos duros, slo una selecta minora
implementan directamente la interfaz USB como conexin nativa, siendo los discos externos mayoritariamente
IDE o Serial ATA con un adaptador en su interior. Incluso
existen cajas externas y cunas que implementan conectores eSATA y USB, incluso USB 3.0. Estas y las mixtas
USB/FireWire han expulsado del mercado de discos externos a SCSI y las conexiones por puerto paralelo.
2.1 Versiones previas
Resea
El estndar USB evolucion a travs de varias versiones
El USB fue diseado para economizar y estandarizar la
antes de su lanzamiento ocial en 1996:
conexin de perifricos.
Fue desarrollado a mediados de los aos 1990; y en 1996,
el Foro de Implementadores de BUS (USB Implementers
Forum, USB-IF)[3] lanz la impopular primera especicacin USB 1.0, hasta que en 1998 lanz la famosa
especicacin USB 1.1.[4]
USB 0.7: lanzado en noviembre de 1994.
Desde 2004, aproximadamente 6 mil millones de dispositivos se encuentran actualmente en el mercado global,
y alrededor de 2 mil millones se venden cada ao.[5]
USB 0.99: lanzado en agosto de 1996.
USB 0.8: lanzado en diciembre de 1994.
USB 0.9: lanzado en abril de 1995.
USB 1.0 Release Candidate: lanzado en noviembre
de 1995.
Uso
3 Velocidades de transmisin
El campo de aplicacin del USB se extiende en la actualidad a cualquier dispositivo electrnico o con componen- Los dispositivos USB se clasican en cuatro tipos segn
tes, desde los automviles (las radios de automvil mo- su velocidad de transferencia de datos:
1
3
Baja velocidad (1.0): Tasa de transferencia de hasta
1,5 Mbit/s (188 kB/s). Utilizado en su mayor parte
por dispositivos de interfaz humana (Human Interface Device, en ingls) como los teclados, los ratones
(mouse), las cmaras web, etc.
Velocidad completa (1.1): Tasa de transferencia de
hasta 12 Mbit/s (1,5 MB/s) segn este estndar, pero se dice en fuentes independientes que habra que
realizar nuevamente las mediciones. sta fue la ms
rpida antes de la especicacin USB 2.0. Estos dispositivos dividen el ancho de banda de la conexin
USB entre ellos, basados en un algoritmo de impedancias LIFO.
VELOCIDADES DE TRANSMISIN
mV en alta velocidad (2.0). En las primeras versiones, los
alambres de los cables no estn conectados a tierra, pero
en el modo de alta velocidad se tiene una terminacin de
45 a tierra o un diferencial de 90 para acoplar la impedancia del cable. Este puerto slo admite la conexin
de dispositivos de bajo consumo, es decir, que tengan un
consumo mximo de 100 mA por cada puerto; sin embargo, en caso de que estuviese conectado un dispositivo
que permite 4 puertos por cada salida USB (extensiones
de mximo 4 puertos), entonces la energa del USB se
asignar en unidades de 100 mA hasta un mximo de 500
mA por puerto. Con la primera fabricacin de un PC con
USB 3.0 en 2009, ahora tenemos 1 A (un amperio) por
puerto, lo cual da 5 W (cinco vatios) en lugar de 0,5 A
(500 mA, 2,5W) como mximo.
3.1 Comparativa de velocidades
Logotipo del USB 2.0
Alta velocidad (2.0): Tasa de transferencia de hasta
480 Mbit/s (60 MB/s) pero con una tasa real prctica
mxima de 280 Mbit/s (35 MB/s). El cable USB 2.0
dispone de cuatro lneas, un par para datos, y otro
par de alimentacin.
Superalta velocidad (3.0): Tiene una tasa de trans- Mini ventiladores USB
ferencia de hasta 4,8 Gbit/s (600 MB/s). La velocidad del bus es diez veces ms rpida que la del USB
2.0, debido a que han incluido 5 contactos adiciona- Conexiones de dispositivos externos
les, desechando el conector de bra ptica propuesto inicialmente, y ser compatible con los estndares
Firewire 800: 800 Mb/s (100 MB/s)
anteriores. En octubre de 2009 la compaa taiwa Firewire s1600: 1.6 Gb/s (200 MB/s)
nesa ASUS lanz la primera placa base que inclua
puertos USB 3.0, tras ella muchas otras le han segui Firewire s3200: 3.2 Gb/s (300 MB/s)
do y actualmente se ve cada vez ms en placas base
y porttiles nuevos, conviviendo junto con el USB
USB 1.0: 190 KB/s
2.0.[6][7]
USB 1.1: 12 Mb/s (1.5 MB/s)
Las seales del USB se transmiten en un cable de par tren USB 2.0: 480 Mb/s (60 MB/s)
zado con impedancia caracterstica de 90 15%, cuyos hilos se denominan D+ y D-.[8] stos, colectivamen USB 3.0: 4.8 Gb/s (600 MB/s)
te, utilizan sealizacin diferencial en half dplex excep USB 3.1: 10 Gb/s (1.2 GB/s)
to el USB 3.0 que utiliza un segundo par de hilos para
realizar una comunicacin en full dplex. La razn por
la cual se realiza la comunicacin en modo diferencial Conexiones de dispositivos externos de alta velocidad
es simple, reduce el efecto del ruido electromagntico en
enlaces largos. D+ y D- suelen operar en conjunto y no
son conexiones simples. Los niveles de transmisin de la
e-SATA: 2,4 Gb/s[9]
seal varan de 0 a 0,3 V para bajos (ceros) y de 2,8 a 3,6
USB 3.0: 4,8 Gb/s[10]
V para altos (unos) en las versiones 1.0 y 1.1, y en 400
3
Thunderbolt: 10 Gb/s[11]
Thunderbolt 2: 20 Gb/s
USB 3.1: 10 Gb/s
Conexiones para tarjetas de expansin
PCI Express 1.x (x1): 250 MB/s
PCI Express 2.0 (x1): 500 MB/s
PCI Express 3.0 (x1): 1 GB/s
PCI Express 1.x (x8): 2 GB/s
PCI Express 2 (x8): 4 GB/s
PCI Express 3.0 (x8): 8 GB/s
PCI Express 1.x (x16): 4 GB/s
PCI Express 2 (x16): 8 GB/s
PCI Express 3.0 (x16): 16 GB/s
Conexiones de almacenamiento interno
ATA: 100 MB/s (UltraDMA 5)
PATA: 133 MB/s (UltraDMA 6)
enviar, otras dos para recibir, y una quinta se encarga de
suministrar la corriente. As, el trco es bidireccional
(Full dplex).
A nales de 2009, fabricantes como Asus o Gigabyte presentaron placas base con esta nueva revisin del bus. La
versin 3.0 de este conector universal es 10 veces ms rpida que la anterior. Aquellos que tengan un teclado o un
ratn de la versin anterior no tendrn problemas de compatibilidad, ya que el sistema lo va a reconocer al instante,
aunque no podrn beneciarse de los nuevos adelantos de
este puerto usb serial bus.
En la feria Consumer Electronics Show (CES), que se
desarroll en Las Vegas, Estados Unidos, se presentaron
varios aparatos que vienen con el nuevo conector. Tanto
Western Digital como Seagate anunciaron discos externos equipados con el USB 3.0, mientras que Asus, Fujitsu
y HP anunciaron que tendrn modelos porttiles con este
puerto.
Principales diferencias entre USB 2.0 y 3.0 La principal diferencia apreciable, es la velocidad de transferencia
de datos, que es muy superior en el estndar USB 3.0. El
soporte de formatos HD es casi nulo en USB 2.0, pero
es ampliamente soportado por USB 3.0. Los dispositivos
USB 3.0 se pueden conectar en conectores USB 2.0 y viceversa, si es de tipo A. Si es de tipo B o micro-B, los
dispositivos USB 2.0 se pueden conectar en conectores
USB 3.0, pero no al revs.
SATA I: 1.5 Gb/s (187.5 MB/s)
SATA II: 3 Gb/s (375 MB/s)
SATA III: 6 Gb/s (750 MB/s)
USB 3.0
Caractersticas de USB 3.0 A diferencia del USB 2.0,
esta nueva tecnologa (USB 3.0 Super Speed), es casi diez
veces ms rpida, ya que transere datos a 600 MB/s.
Tambin, podemos notar que cuenta con soporte para dispositivos HD externos, lo que aumenta su rendimiento.
La principal caracterstica es la multiplicacin por 10 de
la velocidad de transferencia, que pasa de los 480 Mbit/s
a los 4,8 Gbit/s (600 MB/s).
Otra de las caractersticas de este puerto es su regla de
inteligencia": los dispositivos que se enchufan y despus
de un rato quedan en desuso, pasan inmediatamente a un
estado de bajo consumo.
Principales diferencias entre los puertos:
A la vez, la intensidad de la corriente se incrementa de
los 500 a los 900 miliamperios, que sirve para abastecer
a un telfono mvil o un reproductor audiovisual porttil
en menos tiempo.
Por otro lado, aumenta la velocidad en la transmisin de
datos, ya que en lugar de funcionar con tres lneas, lo hace con cinco. De esta manera, dos lneas se utilizan para
USB 1.1 - 2.0
USB 3.0
Mini-A
Mini-B
Micro-A
Micro-B
Micro-B
5 USB On-The-Go
USB On-The-Go, frecuentemente abreviado como USB
OTG, es una especicacin que permite a los dispositivos USB como reproductores digitales de audio, telfonos
mviles o tabletas actuar como servidores, facilitando que
se puedan conectar memorias y discos duros USB, ratones o teclados.[12]
CARACTERSTICAS FSICAS
Caractersticas fsicas
A diferencia de otros cables de datos (Ethernet, HDMI,
etc), cada extremo de un cable USB utiliza un tipo de
conector diferente; una de tipo A o de tipo B. Este tipo
6.1 Compatibilidad y conectores
de diseo fue elegido para evitar las sobrecargas elctricas
y no daar el equipo, ya que slo la hembra de tipo A se
El estndar USB especica tolerancias mecnicas relatipresenta la carga elctrica.
vamente amplias para sus conectores, intentando maximizar la compatibilidad entre los conectores fabricados
por la compaa una meta a la que se ha logrado llegar. 6.3 Patillaje de los Tipos A y B
El estndar USB, a diferencia de otros estndares tambin
dene tamaos para el rea alrededor del conector de un
6.4 Patillaje de los tipos Mini y Micro
dispositivo, para evitar el bloqueo de un puerto adyacente
por el dispositivo en cuestin.
Las especicaciones USB 1.0, 1.1 y 2.0 denen dos tipos de conectores para conectar dispositivos al servidor:
A y B. Sin embargo, la capa mecnica ha cambiado en
algunos conectores. Por ejemplo, el IBM UltraPort es un
conector USB privado localizado en la parte superior del
LCD de los ordenadores porttiles de IBM. Utiliza un conector mecnico diferente, mientras mantiene las seales
y protocolos caractersticos del USB. Otros fabricantes de
artculos pequeos han desarrollado tambin sus medios
de conexin pequeos, y ha aparecido una gran variedad
de ellos, algunos de baja calidad.
Una extensin del USB llamada USB On The Go (sobre la marcha) permite a un puerto actuar como servidor
o como dispositivo; esto se determina por qu lado del
cable est conectado al aparato. Incluso despus de que
el cable est conectado y las unidades se estn comunicando, las 2 unidades pueden cambiar de papel bajo
el control de un programa. Esta facilidad est especcamente diseada para dispositivos como PDA, donde el
enlace USB podra conectarse a un PC como un dispositivo, y conectarse como servidor a un teclado o ratn.
El USB-On-The-Go tambin ha diseado 3 conectores pequeos, el mini-A y el mini-B, as que esto debera
detener la proliferacin de conectores miniaturizados de
entrada.
6.5 USB 3.1 con conectores Tipo-C reversibles
En agosto de 2014, la (USB-IF), organizacin formada
por empresas como Intel, Microsoft, HP y Apple entre
muchas otras y que decide sobre el estndar del USB, public la especicacin del nuevo conector USB, tambin
conocido como Tipo C, que implementa un nuevo tipo
de conector reversible tanto en extremos como en posicin. Este tipo de conector, adems de ofrecer comodidad
por su diseo reversible, ofrece una velocidad de hasta 10
Gbit/s de rendimiento mientras que a la vez hasta 2A se
pueden extraer sobre 5V, y opcionalmente, tambin 5A
sobre 12V (60W) o 20V (100W). Esta es la razn por
la cual la nueva MacBook puede ser alimentada simplemente a travs de su conexin USB basndose tambin
en la nueva especicacin USB 3.1.
El nuevo tipo de conector est pensado para ser el sucesor de todos los anteriores (Tipo A y B), que quedarn
obsoletos cuando el nuevo se implemente en todo tipo de
dispositivos mviles y de sobremesa. An no se ha dado
a conocer el patillaje de los nuevos conectores USB que
saldrn a produccin a nales de 2014. Por los bocetos
de la especicacin se sabe que cada conector tendr un
total de 12 pines.
El estndar USB 3.1 es retrocompatible con USB 3.0 y
USB 2.0. Esto quiere decir que un dispositivo con USB
3.1 conectado a otro con USB 2.0 la velocidad de transfe6.2 Conectores tipo A y B
rencia de datos ser la del dispositivo con USB 2.0 hasta
La especicacin clsica del USB contempla varios tama- un mximo de 480 Mbit/s. Tambin, habr que tener en
os y tipos de conectores compatibles con distintas espe- cuenta la versin USB del cable que permita esa mxima transferencia de datos, se puede tener dos dispositicicaciones:
vos con USB 3.1 pero si se utiliza un cable USB 2.0 la
transferencia se limita a ese estndar.[13]
el estndar de tamao mayor, por ejemplo, en disLa especicacin USB Tipo-C trae un nuevo conector repositivos de Memoria USB.
versible para dispositivos USB 3.1. El conector Tipo-C
el tamao mini (sobre todo para el extremo del ser usado en ambos dispositivos sea antrin o husped,
reemplazando as mltiple conectores tipo-A y tipo-B y
conector B, como en muchas cmaras digitales)
cables con un stndar future-proof similares al Lightning
el tamao micro, en sus variantes USB 1.1/2.0 y de Apple y al Thunderbolt. El conector de doble lado de
USB 3.0 (por ejemplo, en la mayora de los telfonos 24 pines provee 4 pares power/ground, dos pares diferenciales para el puerto de datos USB 2.0 (aunque solo un par
inteligentes)
es implementado en el cable tipo-C), cuatro pares para el
el esquema verstil USB On-The-Go, en tamaos puerto de datos high-speed, dos pines de uso de banmini y micro.
da lateral y dos pines de conguracin para la deteccin
5
de orientacin del cable, canal de datos con conguracin BMC dedicada (biphase mark code) y VCONN +5
V de potencia para cables activos. Los cables/adaptadores
Tipo-A y Tipo-B sern requeridos para dispositivos heredados con el n de conectar a antriones Tipo-C, Sin
embargo adaptadores/cables con un receptculo de TipoC no estn permitidos.
por radio con gran ancho de banda que combina la sencillez de uso de USB con la versatilidad de las redes inalmbricas. Utiliza como base de radio la plataforma UltraWideBand desarrollada por WiMedia Alliance, que puede lograr tasas de transmisin de hasta 480 Mbit/s (igual
que USB 2.0) en rangos de tres metros y 110 Mbit/s en
rangos de diez metros y opera en los rangos de frecuencia
de 3,1 a 10,6 GHz. Actualmente se est en plena transicin y an no existen muchos dispositivos que incorporen
este protocolo, tanto clientes como antriones. Mientras
dure este proceso, mediante los adaptadores y/o cables
adecuados se puede convertir un equipo WUSB en uno
USB y viceversa.
Los cables USB 3.1 de tipo-C con todas las caractersticas son cables activos electrnicamente marcados y contienen un chip con una funcin de identicacin basado
en el canal de conguracin de datos y mensajes denidos por el proveedor (VDM) de la especicacin USB
Power Delivery 2.0. Los dispositivos USB 3.1 de TipoC tambin soportan corrientes de alimentacin de 1.5 A
y 3.0 A travs del bus de 5 V de tensin, adems de la
lnea de base 900 mA; los dispositivos pueden o bien ne- 9 Lista de perifricos que es posible
gociar un aumento de corriente USB a travs de la lnea
conectar a un puerto USB y USB
de conguracin, o pueden apoyar opcionalmente la esOTG
pecicacin completa Power Delivery utilizando tanto
la lnea de conguracin con cdigo de BMC y la lnea
VBUS codicado-BFSK legado.
El puerto USB es un estndar que permite la transferencia
El modo alterno dedica algunos de los cables fsicos en el de informacin desde o hacia otro perifrico. Esta lista
cable Tipo-C para la transmisin directa de dispositivo- detalla los perifricos que es posible conectar a un puerto
a-antrin de una gran cantidad de protocolos de datos USB. Por orden alfabtico.
alternos. Los cuatro carriles de alta velocidad, dos pines
de banda lateral, y -para puerto, dispositivo desmontable y aplicaciones de cable permanentes solamente - dos
clavijas USB 2.0 y un pin de conguracin se pueden utilizar para la transmisin de modo alternativo. Los modos
se conguran mediante VDM a travs del canal de conguracin. A diciembre de 2014, las implementaciones
Modo Alt incluyen DisplayPort 1.3 y MHL 3.0; Otros
protocolos seriales como PCI Express y Base-T Ethernet
son posibles
En marzo de 2015, Apple lanza un nuevo modelo MacBook ms no que MacBook Air y que equipa un conector USB Type-C.[14] Por otro lado, Google anuncia este
tipo de conector para prximas tabletas y mviles Android.
Cmaras de fotos
Cmaras de video
Disqueteras externas
Discos duros externos
Grabadoras de DVD externas
Impresoras USB
Lector de tarjetas de memoria
Multifunciones
Ratones USB
Teclados USB
Almacenamiento masivo USB
USB implementa conexiones a dispositivos de almacenamiento usando un grupo de estndares llamado USB
mass storage device class (abreviado en ingls MSC o
UMS). ste se dise inicialmente para memorias pticas y magnticas, pero ahora sirve tambin para soportar una amplia variedad de dispositivos, particularmente
memorias USB.
Telfonos mviles
Sintonizadoras de TV USB
Pendrives
Mdems USB
Monitores USB
PDA
Reproductor de audio digital
Wireless USB
Wireless USB (normalmente abreviado W-USB o
WUSB) es un protocolo de comunicacin inalmbrica
Reproductor de MP4
Volantes USB
Ventiladores USB
12 ENLACES EXTERNOS
Joysticks USB
Webcams USB
Tocadiscos para la transferencia de msica
Tarjetas de video USB
Tarjetas de sonido USB
Tarjetas Wi USB
Tarjetas de red USB
Mini altavoces
Hubs USB o concentradores de puertos USB
mini amplicadores usb (muy extrao)
10
Vase tambin
Aplicacin porttil
[8] USB in a NutShell - Chapter 2 - Hardware. Beyond [Link]. Consultado el 25 de agosto de 2007.
[9] en:Serial ATA#eSATA
[10] [Link]
[11] [Link]
[12] en:USB_On-The-Go (en ingls)
[13] USB Tipo C - Compatibilidad entre versiones del USB
(en espaol de Espaa). Consultado el 18 de julio de 2016.
[14] Fayerwayer USB-C Qu es, qu puede hacer y por qu lo
vamos a ver por todos lados
12 Enlaces externos
Wikilibros
Wikilibros en ingls alberga un libro o manual
sobre Serial Programming:USB Technical Manual.
Wikimedia Commons alberga contenido multimedia sobre Universal Serial BusCommons.
Firewire
Hub USB
Enlace de Alta Denicin Mvil (MHL)
PC 99
MSC
UMS
MTP
PTP
11
Referencias
[1] USB inventor is techs unlikely 'rock star' - CNN. [Link]. 4 de febrero de 2010. Archivado desde el
original el 22 de noviembre de 2015. Consultado el 12 de
diciembre de 2011.
[2] Boston Globe Online / Business / USB deserves more
support. [Link]. 31 de diciembre de 1995. Consultado el 12 de diciembre de 2011.
[3] About USB Implementers Forum, Inc. (en ingls). Consultado el 1 de agosto de 2014.
[4] Por qu es difcil conectar un USB y otros secretos de su
nacimiento. Consultado el 25 de julio de 2013.
[5] SuperSpeed USB 3.0: More Details Emerge. 6 de enero
de 2009.
[6] Shankland, Stephen. USB 3.0 brings optical connection in
2008. CNET [Link]. Retrieved on 2007-09-19.
[7] Demerjian, Charlie. Gelsinger demos USB 3.0, PICe 3.0
and other new toys. The Inquirer. Consultado el 2007-0919.
USB,incluyendo documentacin (en ingls)
Puertos E/S: Puertos USB
US Ecolgico ENLACE ROTO
Linux USB Project (en ingls)
13
13.1
Origen del texto y las imgenes, colaboradores y licencias
Texto
Universal Serial Bus Fuente: [Link] Colaboradores: Joseaperez, Oblongo,
Moriel, JorgeGG, ManuelGR, Angus, Zwobot, Dodo, Crescent Moon, Miuler, Triku, Sms, SimnK, Antonio Pramo, Sefer, Barcex, Galio,
PeiT, Troodon, Rondador, Erik Streb, Almorca, Balderai, Edupedro, Mnts, Deleatur, Petronas, Orgullomoore, GuillermoP, Xuankar, Airunp, JMPerez, Natrix, Taichi, Emijrp, Rembiapo pohyiete (bot), RobotQuistnix, Byj2000, Pvieito, Veltys, Alhen, Superzerocool, Chobot,
Yrbot, Amads, BOT-Superzerocool, Adrruiz, FlaBot, Xavimetal, Vitamine, YurikBot, Dark512, Museo8bits, Icvav, GermanX, Beto29,
Gaijin, KnightRider, YoaR, Albasmalko, Marb, Sargentgarcia89, Eskimbot, Baneld, Nowadays, Gtz, Swazmo, Morza, Cadeop, Cheveri, Tomatejc, Jarke, Filipo, BOTpolicia, Ricard Delgado Gonzalo, Throtmax, CEM-bot, Kojie, Antur, Jorge, Montgomery, FrancoGG,
Resped, Thijs!bot, Giovannidarkmaster, Bot que revierte, Daaxe, RoyFocker, Max Changmin, Rrecillas, Botones, JAnDbot, Maca eglarest, Jugones55, Miguelo on the road, Flayrisse, Mansoncc, Heeque, Satin, Muro de Aguas, Elrond 3097~eswiki, CommonsDelinker,
TXiKiBoT, Ricardo Moctezuma, Yoques, Humberto, Netito777, Chabbot, Idioma-bot, Plux, Galaxy4, Biasoli, AlnoktaBOT, Cinevoro,
VolkovBot, Snakeyes, Queninosta, Libertad y Saber, Adruki, Pejeyo, Matdrodes, Synthebot, BlackBeast, Shooke, Lucien leGrey, AlleborgoBot, 3coma14, Muro Bot, Jcprietoc, Racso, YonaBot, SieBot, Mushii, Ctrl Z, DaBot~eswiki, Bola2, KDash Extreme, Loveless, Emilyum,
Rambito08, Bigsus-bot, BOTarate, MaQy, Correogsk, Anthony Gutirrez, Furado, Greek, Ratchet, Gunner 1, Chico512, Tirithel, Mutari,
XalD, Prietoquilmes, Marcecoro, Nicholasraul, HUB, Antn Francho, Nicop, DragonBot, Brayan Jaimes, Kandroschen, McMalamute,
Estirabot, Veon, Pan con queso, Alejandrocaro35, [Link], LordT, Poco a poco, Alexbot, CestBOT, Goldorak, Angel verde, PhoneixS,
SAS0217, Dddurey, Asasia, UA31, Ucevista, HombreDHojalata, AVBOT, Miik Ezdanitof, David0811, Jorghex, RuslanBer, LucienBOT,
MastiBot, Igbf, NicolasAlejandro, Map-94, MarcoAurelio, SpBot, Diegusjaimes, Sapientisimo, MelancholieBot, Linkcisco, Javu61, Divadal, Kevinpulido8001, Madalberta, Luckas-bot, Amirobot, MystBot, Elvitor, Chakal256, Nallimbot, Supersamuel~eswiki, Ptbotgourou,
Jotterbot, Rodolfo4, Elsonido, Mgpa, Alex Muoz1, Mara Tobas, Vivaelcelta, Deimonk, ArthurBot, Jordiko13, SuperBraulio13, Ortisa,
Manuelt15, Xqbot, Jkbw, Carlos Molina Fisico, Dreitmen, FrescoBot, Josemariasaldana, Torrente, Javier Castaneda, Botarel, BenzolBot,
Zulucho, MAfotBOT, Blacki4, Halfdrag, RedBot, Kizar, Leugim1972, Judero01, PatruBOT, Redmind007, Canyq, Fran89, Ripchip Bot,
Tarawa1943, HermanHn, Ferna 22, Foundling, HIPATIA2006, Axvolution, EmausBot, Savh, [Link], HRoestBot, Sergio Andres Segovia, Dondervogel 2, Grillitus, Rubpe19, ChuispastonBot, MadriCR, WikitanvirBot, Diamondland, Ruos, Faust87~eswiki, MerlIwBot,
KLBot2, LuisGab, MetroBot, Invadibot, Ninrouter, 5truenos, Gusama Romero, Elvisor, Creosota, Uulo95, Helmy oved, Zerabat, Rauletemunoz, MaKiNeoH, IOSEF348, DanielDLRG, Alemozuelo, Ivanretro, Addbot, De3iti, Annimo10000, Eltruque, Luisedwin2105, Jarould, BenjaBot, 4lextintor, Sapristi1000, Carlitoscarlos, Luisangellopezmascaraque, Pancho507, Auxal3000, OoMELDONoo, Cabe-raul,
Pedro10001picapedrero, Joanroy, Rssl y Annimos: 492
13.2
Imgenes
Archivo:Certified_Hi-Speed_USB.svg Fuente: [Link]
Licencia: Public domain Colaboradores: [Link]
Artista original: Certied Hi-Speed USB
Archivo:Certified_USB.svg Fuente: [Link] Licencia: Public domain
Colaboradores: [Link] Artista original: ?
Archivo:[Link] Fuente: [Link] Licencia: Public domain Colaboradores: This version created by Pumbaa, using a proper partial circle and SVG geometry features. (Former versions used
to be slightly warped.) Artista original: SVG version was created by User:Grunt and cleaned up by 3247, based on the earlier PNG version,
created by Reidab.
Archivo:Types-usb_new.svg Fuente: [Link] Licencia: CC-BY-SA3.0 Colaboradores: Esta es una imagen retocada, lo que signica que ha sido alterada digitalmente de su versin original. Modicaciones: Added Micro USB Images. La original se puede ver aqu: [Link]. Las modicaciones las hizo Darx. Artista original: Darx~commonswiki
Archivo:USB2.0_PCI_Card_Asus-[Link] Fuente: [Link]
jpg Licencia: CC BY-SA 2.0 Colaboradores: ? Artista original: ?
Archivo:USB3.0_connectors.svg Fuente: [Link] Licencia: CC
BY-SA 3.0 Colaboradores: Trabajo propio Artista original: [Link]
Archivo:USB_Male_Plug_Type_A.jpg Fuente: [Link]
Licencia: CC BY-SA 2.5 Colaboradores: Trabajo propio Artista original: Andr Karwath aka Aka
Archivo:USB_Twisted_Pair.svg Fuente: [Link] Licencia: Public domain Colaboradores: self-made, Inkscape, rebuild in Notepad Artista original: User:WolfWings and User:Inductiveload
Archivo:USB_connectors.jpg Fuente: [Link] Licencia: CC BYSA 3.0 Colaboradores: Trabajo propio Artista original: Cjp24
Archivo:USB_fans_1.jpg Fuente: [Link] Licencia: CC BY-SA 3.0 Colaboradores: Trabajo propio Artista original:
Archivo:USB_flash_drive.jpg Fuente: [Link] Licencia: Public
domain Colaboradores: Photograph taken by Dori Artista original: Photograph taken by Dori
Archivo:USB_types_2.jpg Fuente: [Link] Licencia: Public domain
Colaboradores: Edited from USB [Link] Artista original: Techtonic
Archivo:[Link] Fuente: [Link] Licencia: CC BY 3.0 Colaboradores:
Trabajo propio Artista original: Mgpa
Archivo:[Link] Fuente: [Link] Licencia: CC BY-SA
3.0 Colaboradores: Trabajo propio Artista original: User:Bastique, User:Ramac et al.
13 ORIGEN DEL TEXTO Y LAS IMGENES, COLABORADORES Y LICENCIAS
13.3
Licencia del contenido
Creative Commons Attribution-Share Alike 3.0
Digital Visual Interface
Digital Visual Interface, conocida por las siglas tambin
en ingls DVI, que signican Interfaz Visual Digital,
es una interfaz de video diseada para obtener la mxima calidad de visualizacin posible en pantallas digitales, tales como los monitores LCD de pantalla plana y los
proyectores digitales. Fue desarrollada por el consorcio
industrial Digital Display Working Group. Por extensin
del lenguaje, al conector de dicha interfaz se le llama conector tipo DVI.
sincroniza la transmisin). La sincronizacin de la seal
es casi igual que la de una seal analgica de vdeo. La
imagen se transmite lnea por lnea con intervalos de borrado entre cada lnea y entre cada fotograma. No se usa
compresin ni transmisin por paquetes y no admite que
slo se transmitan las zonas cambiadas de la imagen. Esto signica que la pantalla entera se transmite constantemente.
Con un solo enlace DVI (o Single Link), la mxima resolucin posible a 60 Hz es de 2,6 megapxeles. Por esto,
el conector DVI admite un segundo enlace (Dual Link),
con otro conjunto de pares trenzados para el rojo, el verde y el azul. Cuando se requiere un ancho de banda mayor
que el que permite un solo enlace, el segundo se activa,
y los dos pueden emitir pxeles alternos. El estndar DVI
especica un lmite mximo de 165 MHz para los enlaces
nicos, de forma que los modos de pantalla que requieran
una frecuencia inferior deben usar el modo de enlace nico, y los que requieran ms deben establecer el modo de
enlace doble. Cuando se usan los dos enlaces, cada uno
puede sobrepasar los 165 MHz. El segundo enlace tambin se puede usar cuando se necesiten ms de 24 bits por
pxel, en cuyo caso transmite los bits menos signicativos.
Perspectiva general
Los estndares anteriores, como el VGA, son analgicos
y estn diseados para dispositivos CRT (tubo de rayos
catdicos o tubo catdico). La fuente vara su tensin de
salida con cada lnea que emite para representar el brillo
deseado. En una pantalla CRT, esto se usa para asignar
al rayo la intensidad adecuada mientras ste se va desplazando por la pantalla. Este rayo no est presente en
pantallas digitales; en su lugar hay una matriz de pxeles,
y se debe asignar un valor de brillo a cada uno de ellos. El
decodicador hace esta tarea tomando muestras del voltaje de entrada a intervalos regulares. Cuando la fuente es
tambin digital (como un ordenador), esto puede provocar distorsin si las muestras no se toman en el centro de
cada pxel, y, en general, el grado de ruido entre pxeles
adyacentes es elevado.
Al igual que los conectores analgicos VGA modernos, el
conector DVI tiene pines para el canal de datos de pantalla, versin 2 (DDC 2) que permite al adaptador grco leer los datos de identicacin de pantalla extendidos
(EDID, Extended Display Identication Data).
DVI adopta un enfoque distinto. El brillo de los pxeles
se transmite en forma de lista de nmeros binarios. Cuando la pantalla est establecida a su resolucin nativa, slo
tiene que leer cada nmero y aplicar ese brillo al pxel
apropiado. De esta forma, cada pxel del buer de salida
de la fuente se corresponde directamente con un pxel en
la pantalla, mientras que con una seal analgica el aspecto de cada pxel puede verse afectado por sus pxeles
adyacentes, as como por el ruido elctrico y otras formas
de distorsin analgica.
3 Monitores DVI importantes
El monitor T221 de IBM debut a principios de
2003, y cuenta con cuatro conectores DVI de enlace nico y una resolucin de 38202400, o casi 9,2
millones de pxeles. Conectado a una tarjeta grca de enlace nico, su frecuencia de actualizacin
es de slo 13 Hz. Puede alcanzar 41 Hz conectando
los cuatro conectores a tarjetas grcas. Hay modelos posteriores que se pueden conectar a una tarjeta
grca DVI de doble enlace, obteniendo as una frecuencia de 24 Hz, aunque esto se consigue usando
una caja separadora externa que convierte la seal
de doble enlace en dos seales de enlace nico para
el monitor.
Caractersticas tcnicas
El formato de datos de DVI est basado en el formato de
serie PanelLink, desarrollado por el fabricante de semiconductores Silicon Image Inc. Emplea TMDS (Transition Minimized Dierential Signaling, Seal Diferencial
con Transicin Minimizada). Un enlace DVI consiste en
un cable de cuatro pares trenzados: uno para cada color
primario (rojo, verde, y azul) y otro para el reloj (que
La pantalla Cinema HD Display de 30 pulgadas de
Apple Computer debut a mediados de 2004 y fue
una de las primeras pantallas del mercado en usar
1
CONECTOR
una conexin DVI de doble enlace. Su resolucin
nativa es 25601600, unos 4,1 millones de pxeles.
Conector
DVI-I (Single Link)
Una conexin DVI puede ser recableada a VGA con un adaptador (las seales analgicas deben existir en el zcalo DVI)
DVI-I (Dual Link)
DVI-D (Single Link)
DVI-D (Dual Link)
DVI-A
Conector DVI (vista del enchufe macho).
Una conexin DVI puede ser recableada a HDMI con un adaptador (las seales de audio deben existir en el zcalo DVI)
Tambin puede tener pins para transmitir las seales
analgicas del estndar VGA. Esta caracterstica se incluy para dar un carcter universal a DVI: los conectores
que la implementan admiten monitores de ambos tipos
(analgico o digital).
Los conectores DVI se clasican en tres tipos en funcin
de qu seales admiten:
DVI-D (slo digital)
DVI-A (slo analgica)
DVI-I (digital y analgica)
DVI M1-DA (Dual Link+USB)
Conector M1-DA (vista del conector macho)
A veces se denomina DVI-DL a los conectores que admiten dos enlaces.
DVI es el nico estndar de uso extendido que proporciona opciones de transmisin digital y analgica en el
El conector DVI normalmente posee pins para transmi- mismo conector. Los estndares que compiten con l son
tir las seales digitales nativas de DVI. En los sistemas exclusivamente digitales: entre ellos estn el sistema de
de doble enlace, se proporcionan pins adicionales para la seal diferencial de bajo voltaje (LVDS, Low-Voltage
Dierential Signalling) conocido por sus marcas FPD
segunda seal.
5.2
Analgico
(Flat-Panel Display, monitor de pantalla plana) Link y 5.2 Analgico
FLATLINK, as como sus sucesores, el LDI (LVDS Dis Ancho de banda RGB: 400 MHz a 3 dB
play Interface, interfaz de pantalla LVDS) y OpenLDI.
Las seales USB no se incorporaron al conector DVI. Este descuido se ha resuelto en el conector VESA M1-DA
usado por InFocus en sus proyectores, y en el conector
Apple Display Connector de Apple Computer, que ya no
se produce. El conector VESA M1 es bsicamente el conector VESA Plug & Display (P&D), cuyo nombre original es EVC (Enhanced Video Connector, conector de
vdeo mejorado). El conector de Apple es elctricamente compatible con el VESA P&D/M1 y la estructura de
los pins es la misma, pero la forma fsica del conector es
distinta.
Los reproductores de DVD modernos, televisores (equipos HDTV entre ellos) y proyectores de vdeo tienen conectores HDMI. Las computadoras con conectores DVI
pueden usar equipos HDTV como pantallas pero se necesita un cable DVI a HDMI.
6 Vase tambin
DIIVA
DisplayPort
HDBaseT
HDMI
UDI
Video
VGA
7 Enlaces externos
5
Especicaciones
5.1
Digital
Frecuencia mnima de reloj: 21 Hz
Frecuencia mxima de reloj para enlace nico: 165
MHz
Frecuencia mxima de reloj para doble enlace: limitada slo por el cable
Pxeles por ciclo de reloj: (enlace nico) o 2 (doble
enlace)
Bits por pxel: 24
Ejemplos de modos de pantalla (enlace nico):
HDTV (1920 1080) a 60 Hz con 5% de borrado LCD (131 MHz)
1920 x 1200 a 60 Hz (154 MHz)
UXGA (1600 1200) a 60 Hz con borrado
GTF (161 MHz)
SXGA (1280 1024) a 85 Hz con borrado
GTF (159 MHz)
Ejemplos de modos de pantalla (doble enlace):
QXGA (2048 1536) a 75 Hz con borrado
GTF (2170 MHz)
HDTV (1920 1080) a 85 Hz con borrado
GTF (2126 MHz)
2560 1600 (en pantallas LCD de 30 pulgadas)
GTF: (Generalized Timing Formula, Frmula de Sincronizacin Generalizada) es un estndar VESA.
Sitio web del Digital Display Working Group (en ingls)
8 ORIGEN DEL TEXTO Y LAS IMGENES, COLABORADORES Y LICENCIAS
Origen del texto y las imgenes, colaboradores y licencias
8.1
Texto
Digital Visual Interface Fuente: [Link] Colaboradores: Oblongo, Alberto Salguero, Zwobot, Tano4595, Felipealvarez, Niqueco, Digigalos, Boticario, Mescalier, JMPerez, Taichi, RobotQuistnix, Alhen, Yrbot, Amads, BOT-Superzerocool, BOTijo, YurikBot, GermanX, TC~eswiki, Gaijin, KnightRider, Santiperez, Tomatejc, BOTpolicia,
Qwertyytrewqqwerty, CEM-bot, Roberpl, Pompilos, Mr. Moonlight, Thijs!bot, Edu-im, Mpeinadopa, JAnDbot, Mansoncc, Biasoli, Technopat, Electro07, Loveless, Fstefoni, Marcelo, Elimedina, Dartz90rafaedu, GabEstCor, Marcecoro, HUB, Alejandrocaro35, Txarlitos,
UA31, AVBOT, Diegusjaimes, Luckas-bot, Ptbotgourou, FariBOT, Mcapdevila, Busilis, Obersachsebot, Xqbot, Jkbw, Zulucho, PatruBOT, GrouchoBot, EmausBot, Savh, Arielmansur, ChuispastonBot, Ruos, Carrousel, KLBot2, Thehelpfulbot, InselarALGABA, Elvisor,
Addbot, Perrito12, Jarould y Annimos: 81
8.2
Imgenes
Archivo:DVI_Connector.jpg Fuente: [Link] Licencia: CC BY-SA
3.0 Colaboradores: Trabajo propio Artista original: Greg Ebdon (Vanderdecken)
Archivo:DVI_Connector_Pinout.svg Fuente: [Link] Licencia: Public domain Colaboradores: No machine-readable source provided. Own work assumed (based on copyright claims). Artista
original: No machine-readable author provided. Mobius assumed (based on copyright claims).
Archivo:DVI_Connector_Types.svg Fuente: [Link] Licencia: Public domain Colaboradores: No machine-readable source provided. Own work assumed (based on copyright claims). Artista original:
No machine-readable author provided. Mobius assumed (based on copyright claims).
Archivo:_Adapter_dvi_hdmi_S7302224_wp.jpg Fuente: [Link]
S7302224_wp.jpg Licencia: FAL Colaboradores: Trabajo propio Artista original: Smial
Archivo:_DVI-[Link] Fuente: [Link] Licencia: Public domain Colaboradores: Trabajo propio Artista original: Evan-Amos
Archivo:_M1-[Link] Fuente: [Link] Licencia: Public domain Colaboradores:
DVI_Connector_M1-[Link] Artista original: DVI_Connector_M1-[Link]: User:adaviel:
8.3
Licencia del contenido
Creative Commons Attribution-Share Alike 3.0
Escaneo progresivo
La exploracin progresiva o escaneo progresivo es el
mtodo de exploracin secuencial de las lneas de una
imagen de televisin, un barrido sucesivo de una lnea
despus de otra que efectan los aparatos reproductores
de televisin para componer la imagen. Este sistema fue
originalmente conocido como escaneo secuencial cuando fue utilizado por primera vez por Baird en transmisiones experimentales usando 30 lneas en el ao 1926. El
mtodo contrario es denominado entrelazado.
Otra forma de compensar los defectos del PAL se apoya en convertir la exploracin entrelazada en progresiva
a travs de una visualizacin a 50 Hz. Las lneas de los
campos se interpolan con el n de obtener las 575 lneas
del cuadro PAL contenidas en el cuadro. Para evitar el
parpadeo, notable a 25 Hz, se utiliza una memoria con
el n de presentar la informacin a una frecuencia de refresco de 50 Hz o 100 Hz. Hay que destacar que, con
exploracin progresiva, una velocidad de refresco de 50
Hz es ms que suciente para evitar el parpadeo. De todas formas, la reconversin de los campos para obtener
un cuadro siempre es origen de errores temporales.
Descripcin
El escaneo progresivo consiste en la exploracin secuencial de cada lnea de la imagen. En contra del escaneo
entrelazado no se divide el cuadro de video en dos campos secuenciales haciendo un doble barrido de la imagen
(siendo ledas primero las lneas impares seguidas de las
pares), sino que muestra de una sola vez el cuadro completo. Para ello, se captura la imagen de transmisin y se
muestran de una forma similar a la lectura de un libro, es
decir, lnea a lnea y de arriba abajo.
Ejemplo de escaneo progresivo sobre una imagen.
Cuando se dene un sistema de TV son un par de carac1.1 Caractersticas
tersticas las cuales convienen que sean lo ms adecuadas
posibles con el n de que el espectador visualice las imLas caractersticas que ofrece la exploracin progresiva
genes correctamente. Dichas caractersticas o limitaciose pueden resumir de la siguiente forma:
nes a nivel temporal son una resolucin temporal entre
40-60 Hz para evitar parpadeos y una continuidad en el
Calidad cinematogrca sin parpadeos caracterstimovimiento de entre 25 Hz. Los receptores con sistema
cos de la intercalacin de los campos.
progresivo compensan los dos grandes defectos de la TV
PAL entrelazada: el parpadeo y la baja resolucin.
Compresin ms eciente que la exploracin entrelazada.
En sus inicios la exploracin entrelazada se implant en la
televisin analgica para reducir el ancho de banda. El en Tasa de bits menor para una buena calidad de imatrelazado es una forma prctica de comprimir la imagen
gen.
ya que, en vez de transmitir cuadros a 25 Hz, se transmi Mximas facilidades de conversin bidireccional de
ten campos o semicuadros a 50 Hz. De ese modo se redula resolucin (hacia arriba o hacia abajo).
ce el ancho de banda, se evitan parpadeos pero tambin
se reduce la denicin vertical, con lo que la visualizacin
Mximas facilidades para reducir el ruido (moscas
de la imagen empeora.
y escalados).
Con la llegada de la exploracin progresiva, normalmente
Totalmente compatible con la nueva generacin de
utilizada en sistema de TV digitales, se compensa el parvisualizadores (plasma, LCD, D-ILA, DMD, etc.).
padeo, utilizando una frecuencia de refresco de 100 Hz.
En el televisor, una memoria digital almacena el campo
Mejor resolucin vertical percibida (mejor factor de
y, al cabo de 1/50 de segundo, lo transere a una velociKell) y parpadeo con velocidades de 24, 25 o 30 cuadad de 1/100 segundo, y as sucesivamente. Por tanto, en
dros por segundo (se solventa con memorias de cuala pantalla se visualizan los campos a una velocidad de
dro en los visualizadores).
refresco de 100 Hz. Algunos procesadores de memoria
Mtodo utilizado en la mayora de los formatos de
toman en consideracin las lneas de ambos campos, con
vdeo.
el n de incrementar la resolucin vertical de la imagen.
1
Aplicacin
Este sistema es utilizado en la mayora de los monitores de
PC, en todos los LCD y en la mayora de HDTV. Tambin
son usados en las pantallas de plasma. Estas pantallas no
usan una trama de barrido para crear la imagen con lo
que no pueden beneciarse del sistema entrelazado y s
del progresivo.
Ventajas e inconvenientes del escaneo progresivo
La entrada a la era digital est dando ms protagonismo a la exploracin progresiva que a la entrelazada. A
continuacin detallaremos una lista con las principales
ventajas e inconvenientes de este sistema.
3.1
Ventajas
Mayor resolucin vertical de video subjetiva, con la
misma cantidad de lneas.
La resolucin vertical de la percepcin de una
imagen es normalmente equivalente a la multiplicacin de las lneas activas por un factor
de 0.6 (factor de Kell) en el caso entrelazado.
Esto signica que, al ver el material escaneado
de forma progresiva, la pantalla mostrar una
imagen ms detallada en comparacin con otra
que haya sido escaneada de forma entrelazada,
aunque ambos tienen exactamente la misma resolucin de pantalla.
Elimina el efecto peine (combing eect) as como la prdida de calidad y/o claridad introducidos
por el sistema entrelazado para evitar ese efecto.
Ofrece unos resultados mucho mejores a la hora de
convertir a una mayor resolucin, como podra ser
de 480p a 1080p. Esto es debido a que el proceso
de desentrelazado se omite, lo que se traduce en
mayor rapidez de procesamiento desde la fuente de
video a mostrar.
3.2
Inconvenientes
Para una misma resolucin de pantalla, esta exploracin necesita un mayor ancho de banda debido a que
requiere el doble de Frecuencia Horizontal o de lnea
(FH) con todos los inconvenientes que ello conlleva.
Una imagen entrelazada de 576 lneas activas (576i)
usa una FH de 15625 Hz, la misma imagen en progresivo (576p) requiere una FH de 31250 Hertz.
VASE TAMBIN
Fluidez en el movimiento, normalmente por el problema de ancho de banda mencionado en el punto
anterior los videos progresivos tienen un mximo
de 30 cuadros por segundo para NTSC y 25 para
PAL (720x480 30p - 720x576 25p - 1280x720 30p
- etc.); esta es una de las ventajas ms notorias que
tiene el video entrelazado ya que es capaz de reproducir un mximo de 60 imgenes por segundo (60
campos) para NTSC y 50 para PAL (720x480 60i
- 720x576 50i - 1280x720 60i - etc.) utilizando el
mismo ancho de banda que utilizara el sistema progresivo para reproducir la mitad de cuadros, de todas formas, si el ancho de banda no es problema,
el formato progresivo es superior, ya que se pueden
producir videos a 50 y 60 cuadros progresivos individuales, pero con la desventaja de que se consume
el doble de ancho de banda (720x480 60p - 720x576
50p - 1280x720 60p - etc.); estos ltimos no son
muy utilizados, pero tienen lo mejor de ambos sistemas, uidez en el movimiento y mayor resolucin
vertical.
4 Vase tambin
480p, 576p, 720p, 1080p: categoras ms frecuentes
de modos de video progresivos.
Exploracin entrelazada: mtodo alternativo al escaneo progresivo de adquisicin de imgenes.
Origen del texto y las imgenes, colaboradores y licencias
5.1
Texto
Escaneo progresivo Fuente: [Link] Colaboradores: Joseaperez, 4lex, Oblongo, Hispa, Gaeddal, JRGL, Pacomeco, VeRo, Siabef, Rojillo, Penquista, JAnDbot, TXiKiBoT, Gustronico, VolkovBot, Drever, Technopat,
Muro Bot, Electro07, PaintBot, BOTarate, DAK28, Miguel, Estirabot, Jose Leal AV, Eveneg, Dsienra, Pabloito, Arjuno3, Luckas-bot, Nallimbot, Boto a Boto, C4rol, Dexbot, Legobot, Balles2601, Jarould y Annimos: 18
5.2
Imgenes
Archivo:Imagen_formato_progresivo_2.JPG Fuente: [Link]
progresivo_2.JPG Licencia: Public domain Colaboradores: Trabajo propio Artista original: Jose leal AV
5.3
Licencia del contenido
Creative Commons Attribution-Share Alike 3.0
Exploracin entrelazada
La exploracin entrelazada (interlaced scanning) es un
sistema de captacin y representacin de imgenes utilizado en televisin para evitar el parpadeo o icker que
se produca en la representacin de las imgenes de televisin sobre pantallas de tubo.
el caso de los sistemas de 525 lneas los campos son de
262,5 lneas y se representan a razn de 60 campos por
segundo, 30 frames por segundo. En ambos casos por encima de la frecuencia umbral de representacin.
El sistema de entrelazado dio muy buenos resultados en
televisin ya que es el "mejor compromiso entre el ancho
de banda del canal, la reduccin del parpadeo o iker y
la tecnologa de los receptores de televisin".
La exploracin entrelazada 2/1, caracterstica de los sistemas de televisin PAL, NTSC y SECAM as como de
algunos otros desarrollados posteriormente, consiste en
analizar cada cuadro (frame) de la imagen en dos semicuadros iguales denominados campos (eld), de forma
que las lneas resultantes estn imbricadas entre si alternadamente por superposicin. Uno de los campos contiene las lneas pares; se lo denomina campo par, mientras
que el otro contiene la impares y se lo denomina campo impar al comienzo de cada uno de ellos se sita el
sincronismo vertical. Hay un desfase de media lnea entre un campo y otro para que as el campo par explore la
franja de imagen que dej libre el campo impar. La exploracin entrelazada de un cuadro de dos campos exige
que el nmero de lneas del cuadro sea impar para que la
lnea de transicin de un campo al otro sea divisible en
dos mitades.[1] Fue patentado por el ingeniero alemn de
Telefunken Fritz Schrter en 1930.
Los estudios que realiz la Asociacin de Radiodifusin
de Japn, NHK, en la dcada de los 80 del siglo XX para
el desarrollo de la televisin de alta denicin dieron como resultado que la hiptesis de la frecuencia umbral de
45 Hz era falsa ya que un alto nmero de observadores
perciben parpadeo por encima de los 45 Hz.
Ferry Porter desarroll la ley que lleva su nombre, la cual
dice que la frecuencia umbral (fu) est en relacin con el
logaritmo del brillo (B) y las condiciones de visionado (C)
de esta forma:
f u = 12, 57(log10B) + C
Hay que destacar que la determinacin de la caracterstica logartmica de la visin humana coincide con la reiteracin del mundo cientco de que es logartmico todo el
mundo sensorial humano.
Las condiciones de visionado agrupan una serie de variables como el tipo de visin (central o perifrica) , el
tiempo de excitacin del TRC, el tiempo relativo de iluCon anterioridad a los estudios de la visin humana efec- minacin de cada cuadro y la variabilidad en la visin de
tuados por la NHK (Asociacin de Radiodifusin de Ja- cada observador.
pn) en Japn realizados en los aos 80 del siglo XX, se
mantena la hiptesis de que si bien por encima de una
frecuencia de representacin de 20 Hz, denominada fre- 1.1 Desarrollo de Ferry Porter
cuencia crtica, se garantizaba la perfecta sensacin de
movimiento haca falta pasar de una frecuencia de 45 Hz, Las condiciones de visionado que intervienen en la frdenominada frecuencia umbral para que desapareciera mula de la Ley de Porter son determinantes para jar una
frecuencia umbral correcta. Entre ellas el tipo de visin,
la sensacin de parpadeo.
que depende del formato y tamao de la pantalla, es muy
En la representacin cinematogrca, donde se trabaja importante.
con 24 imgenes por segundo (una frecuencia de 24 Hz),
se logra superar la frecuencia umbral proyectando dos ve- La visin humana tiene dos sectores diferenciados, uno
ces el mismo fotograma. En televisin se adopt el siste- el central de unos 10 y el perifrico, de unos 180. En
ma de entrelazado con la descomposicin de cada cuadro los 10 de la visin central el foco es muy perfecto, hay
(frame) en dos campos (eld) doblando con ello la fre- una alta nitidez y una elevada resolucin. Mientras que en
cuencia de 25 Hz a 50 (en el caso de Amrica de 30 Hz la visin perifrica todos estos parmetros son ms decientes.
a 60).
En los sistemas de Tv de 625 lneas el cuadro es descom- Si atendemos solo a la visin central es cierto que los 45
puesto en dos campos de 312,5 lneas cada uno de ellos Hz de frecuencia umbral son sucientes mientras que para
que se insertan como un peine, dando una representacin la visin perifrica hacen falta frecuencia mayores.
Fundamento terico
de 50 campos por segundo, 25 frames por segundo. En Un observador medio, cuando se sita delante de una pan1
VENTAJAS E INCONVENIENTES DE LA EXPLORACIN ENTRELAZADA
talla lo hace a una distancia de seis veces la altura de la
misma. Este es el punto de mejor observacin de la imagen. Cuando la pantalla es apaisada (formatos de 16/9 o
de cine panormico) entonces hace participar a la visin
perifrica haciendo subir la frecuencia umbral.
de 1080i HDTV. No es utilizado en pantallas LCD, DLP
o pantallas de plasma. Estas pantallas no usan tramas de
barrido para crear una imagen por lo cual, no se pueden
beneciar de las ventajas del entrelazado.
Para conseguir un correcto entrelazado de los cuadros,
es necesario utilizar una seal que controle con precisin
la desviacin del haz en el tubo de rayos catdicos. Es
por esto por lo que se utilizan las seales diente de sierra, muy sencillas de implementar cuando se dise este
mtodo, para controlar el haz horizontal y vertical. Esta
desviacin del haz de luz del tubo de rayos catdicos es
de izquierda a derecha y de arriba hacia abajo. Para mantener la periodicidad de la seal de barrido que controla
el haz, se decidi que el nmero de lneas que debera te2 Descripcin
ner una imagen debera ser un nmero impar. As, cada
cuadro debera tener un nmero par de lneas enteras ms
La exploracin progresiva de una imagen se realiza de la media lnea adicional. Gracias a esto se consigui simplimisma manera que se lee un libro, se divide la imagen en car las seales de barrido, debido a que no tenan que
lneas y se leen de izquierda a derecha y de arriba abajo. dar saltos espaciales a la hora de cambiar de cuadro.
En cambio, cuando se realiza una exploracin entrelazada exploramos alternativamente las lneas pares e impares, dividiendo la imagen que se quiere transmitir en
4 Ventajas e inconvenientes de la
dos campos o cuadros.
En los estudios de Porter se detectaron casos en los que los
observadores que perciben parpadeos desarrollan cuadros
de mareos y nauseas. Tambin se observ que no hubo
nadie que percibiera parpadeo por encima de los 70 Hz.
Una cantidad relevante de observadores dejan de percibir
parpadeo en frecuencias entre los 50 y 60 Hz.[2]
exploracin entrelazada
Con la entrada de la era digital la exploracin entrelazada est perdiendo terreno frente a la progresiva. A
continuacin detallaremos las principales ventajas e inconvenientes de este sistema.
Ejemplo de barrido del campo impar sobre una imagen.
4.1 Ventajas
Ejemplo de barrido del campo par sobre la misma imagen.
La proximidad entre las lneas consecutivas y las limitaciones del sistema visual humano, hacen que el ojo del espectador integre los dos campos como una imagen completa (un cuadro), obteniendo la sensacin que estas se
van refrescando al doble de la frecuencia real. Con este
mtodo se consigue mantener un caudal de informacin
reducido, es decir, un menor ancho de banda a transmitir,
pero suciente para que en recepcin tengamos la representacin de las imgenes sin que aparezca el fenmeno
de parpadeo o icker.
Aplicacin y detalles tcnicos
La exploracin entrelazada es utilizada en la mayora de
deniciones estndar de TV y en el estndar de emisin
Uno de los factores ms importantes es el ancho de
banda (medido en MHz en caso de vdeo analgico
y tasa de bits en el caso de digital). Cuanto mayor
sea este ancho de banda, ms caro y complejo ser el sistema (ya sean sistemas de almacenamiento
como discos duros o grabadoras, cmaras, sistemas
de transmisin, etc.).El vdeo entrelazado reduce el
ancho de banda por un factor de dos, para una determinada lnea y tasa de refresco.
La otra ventaja es la uidez del movimiento, el contenido interlineal puede mostrar 50 diferentes imgenes por segundo para PAL (50 campos) y 60 para NTSC (60 campos) (720x480 60i - 720x576 50i
- 1280x720 60i - etc.) utilizando menor ancho de
banda, esto puede ser una gran diferencia sobre todo cuando miramos videos por ejemplo de deportes, lo que notaramos si lo desentrelazamos es que
el movimiento ya no es tan suave debido a que despus de las tcnicas de desentrelazado ms usadas
solo se mantiene la informacin de 25 cuadros para PAL y 30 para NTSC, sin embargo hay tcnicas
que mantienen esta informacin y se pueden crear
videos con 50 cuadros progresivos individuales para PAL y 60 para NTSC (720x480 60p - 720x576
3
50p - 1280x720 60p - etc.) aunque a costa de un
mayor ancho de banda.
4.2
Inconvenientes
Al descomponer un cuadro en dos campos, es decir en
dos imgenes tomadas en tiempos diferentes, se producen
algunas deciencias que perjudican a la representacin,
rompiendo el concepto de lo que se conoce como "imagen ntida". Cuando la escena a representar es muy viva,
con guras con mucho movimiento, se dan desenfoques
debido a las diferencias entre un campo y otro. Luego en
imgenes con bordes de luminancia variable en sentido
vertical o con ligranas verticales se produce el llamado
titileo interlneas al que dos lneas sucesivas pertenecen
a diferentes campos. Tambin se producen aberraciones
cuando hay fuertes cambios cromticos.[2]
Otros inconvenientes son:
Aparicin del efecto peine al ser mostrado en un sistema progresivo.
En las transiciones verticales se aprecia un ligero
parpadeo, este efecto se conoce como vibracin interlnea (Interline Twister), que consiste en que en
los extremos horizontales se aprecie un