Você está na página 1de 32

Leccin 5

Variaciones sobre la periferia

5.1. Propsito clusivamente a personas o memorias secun-


darias, sino, sobre todo, a otros subsistemas
Como ocurre con las personas, poco valor ten- del sistema global.
dra una mquina extraordinariamente inteligen-
En este curso nos centramos en los ordena-
te pero sumamente introvertida: muy hbil pa-
dores monoprocesadores, pero tambin hay
ra resolver problemas pero incapaz de aceptar da-
multiprocesadores (Apartado 15.2), que no
tos ni entregar resultados. Con Smplez y Sm-
tienen una sola UCP, sino varios procesado-
plez+i4 vimos cmo la UCP puede comunicarse
res. Cada uno de ellos tiene en su periferia a
con una pantalla y un teclado mediante dos proce-
todos los otros, con los que ha de comunicar-
dimientos: la espera activa (Apartado 1.12) y las
se y coordinarse.
interrupciones (Apartado 3.6). Slo fue una pri-
mera aproximacin a las comunicaciones entre la La interconexin y cooperacin entre orde-
UCP y la MP, o unidad central, y el exterior, o nadores permite el acceso a bases de datos
periferia. Luego, en las Lecciones 3 y 4 hemos remotas, la transferencia de documentos, el
visto bastantes variantes en la UCP y en la forma correo electrnico, la distribucin de noticias
de representar y procesar las informaciones, pero y muchas otras aplicaciones y servicios. Esto
la periferia es an ms variada. Y es que no slo ha conducido a una simbiosis entre las tecno-
se refiere a pantalla, teclado, ratn, y dems: logas de los ordenadores y las de las comuni-
caciones que recibe el nombre de telemtica.
Las memorias secundarias (discos, cintas,
etc.), imprescindibles en la mayora de los ca- No entraremos en detalles sobre los tres ltimos
sos, tambin son perifricos. puntos, pero s sobre el primero, despus ver algu-
En muchas aplicaciones el ordenador no es nos modelos de conexin de perifricos. Al final
ms que un componente de un sistema artifi- de la Leccin haremos una introduccin a las co-
cial. Se dice que es un ordenador embebido, municaciones entre ordenadores, lo que nos lleva-
o empotrado, y en este caso los datos y los r a resaltar la importancia de la normalizacin y
resultados no proceden de ni se dirigen ex- de los sistemas abiertos.

167
168 Leccin 5. Variaciones sobre la periferia

5.2. Tipos de perifricos Perifricos para la comunicacin con las


personas
Perifrico es una sustantivacin de disposi-
tivo perifrico (tambin llamado dispositivo de Para la comunicacin de un ordenador con sus
entrada/salida). No presentaremos aqu un cat- usuarios hay perifricos de entrada (teclado, ra-
logo. Podra tener cierto sentido hace unos aos, tn, lectora ptica de marcas o de caracteres, es-
pero no en la situacin actual, en la que a buen cner, micrfono, cmara...), de salida (pantalla,
seguro el lector conoce, al menos como usuario, impresora, trazador grfico o plotter, altavoz...)
terminales, ratones, discos, impresoras... S parece y de entrada y salida. Estos ltimos estn simple-
interesante dar una perspectiva general. mente compuestos por uno de entrada y otro de
Dos atributos funcionales bsicos son: salida (siendo el ejemplo inevitable el caso bien
El sentido de la comunicacin: el perifrico es conocido del teclado y la pantalla), a veces muy
de entrada si slo puede enviar datos al ordenador, integrados (como la pantalla tctil, en la que sen-
de salida si slo puede recibirlos, y de entrada y sores de infrarrojos o capacitivos detectan el punto
salida si es capaz de ambas cosas. sealado por el dedo).
A propsito de la pantalla hay que insistir en lo
La tasa de transferencia: cantidad de datos
que ya dijimos en el Apartado 1.2: el modelo pre-
que pueden transferirse por unidad de tiempo. Se
sentado para Smplez no es representativo de las
mide en bps (bits por segundo), o Kbps, o Mbps,
pantallas actuales, que suelen ser grficas, no tex-
o tambin en B/s (bytes por segundo), o KB/s, o
tuales. Dejando de lado la tecnologa de la panta-
MB/s. Un detalle importante es que, normalmen-
lla propiamente dicha (el venerable tubo de rayos
te, K y M recuperan en este contexto su sig-
catdicos est siendo rpidamente sustituido por
nificado habitual en el sistema mtrico decimal:
tecnologas de pantallas planas como TFT, plas-
1 Kbps es igual a 1.000 bps (no a 1.024)1 .
ma, etc.), comentaremos brevemente los requisitos
El primer atributo slo tiene tres valores posi-
particulares para la entrada/salida que se plantean
bles, pero para el segundo hay una gran variabili-
en las pantallas grficas. En el Apartado 7.9 estu-
dad, como el lector puede comprobar examinando
diaremos un diseo concreto.
la Tabla 5.1. Observar en ella la presencia de al-
gunos perifricos no convencionales: micrfo-
no, altavoz, cmara... Su importancia es creciente Pantallas grficas
debido a la expansin de los sistemas multimedia,
en los que se procesan y se distribuyen informacio- El controlador de una pantalla grfica, familiar-
nes que tienen como soporte medios diversos: tex- mente llamado tarjeta de vdeo, contiene una
to, voz, grficos e imgenes fijas o en movimiento. memoria de vdeo en la que estn codificados las
Por otra parte, podemos clasificar a los perif- intensidades y colores de todos los tomos de
ricos en tres grupos, dependiendo de la naturaleza imagen, o pixels, que aparecen en la pantalla. Un
del productor o del consumidor de los datos: pixel est formado por la combinacin de tres pun-
los que ponen en comunicacin a la UCP (o la MP) tos (dots); cada uno de esos puntos tiene una inten-
con las personas, los que la comunican con otros sidad de uno de los tres colores elementales: rojo,
artefactos y los de almacenamiento (memorias se- verde y azul. Para una resolucin de 1.024768
cundarias). pixels (1.024 en sentido horizontal y 768 en verti-
1
cal) y con veinticuatro bits para el color (un byte
Hay que tener precaucin al leer manuales y datos
de fabricantes, porque a veces no es as, y cuando dicen,
para cada uno de los tres colores elementales, es
por ejemplo, 10 MB/s pueden referirse a 10 106 B/s, o lo que se llama true color) se necesita una me-
a 10 220 B/s. Vase la nota al pie de la pgina 102. moria de vdeo de 1.024 768 24 bits, es decir,
5.2. Tipos de perifricos 169

de entrada de salida de entrada y salida

de comunicacin teclado: <10 B/s impresora de agujas: 300 B/s pantalla tctil:
con personas ratn: <20 B/s impresora lser: 500 KB/s 30 MB/s (salida)
micrfono: 20 KB/s altavoz: 20 KB/s <20 B/s (entrada)
escner: 100 KB/s pantalla grfica: 100 MB/s
cmara web: 200 KB/s tarjeta 3D: 500 MB/s
de comunicacin CAD: entre 1 KB/s y CDA: entre 1 KB/s y mdem: 7 KB/s
con artefactos 100 KB/s 100 KB/s xDSL:
entre 32 KB/s y 6.600 KB/s
de almacenamiento CD: X150 KB/s discos y cintas magnticos:
(capacidad: 650 MB) entre 10 y 100 MB/s
DVD: X1.250 KB/s (capacidad: entre 100 MB y
(entre 4 GB y 16 GB) 300 GB)
Tabla 5.1 Tasas de transferencia tpicas de algunos perifricos.

2, 25 MB. En realidad, la capacidad de la memo- gistro de desplazamiento del controlador del que
ria de vdeo debe ser mayor, porque las tarjetas de los circuitos van extrayendo los bits para formar la
vdeo llamadas aceleradoras tiene tambin fun- imagen. As, si en cada acceso se leen 1.024 bits
ciones de procesamiento para descargar a la UCP (128 B), el tiempo de acceso resulta ser 754 ns.
de ciertas operaciones grficas. A la parte que con- Por otra parte, las imgenes almacenadas en la
tiene la codificacin de la imagen se le llama fra- memoria de fotograma procedern de algn pro-
me buffer, que podemos traducir por memoria grama de aplicacin que se ejecuta en la UCP. Esto
de fotograma. implica que la UCP tiene que acceder a la memo-
Los circuitos que generan las seales para la ria de fotograma de una forma mucha ms exigen-
presentacin visual en la pantalla leen la memo- te que en una pantalla que slo fuese de texto. En
ria de fotograma y los programas que generan las sta, la UCP se limitara a enviar los cdigos ISO
imgenes escriben en ella, y los requisitos de tiem- de los caracteres, y los circuitos del controlador se
po de acceso son bastante exigentes. ocuparan de formar las imgenes de cada carc-
ter y almacenarlas adecuadamente en la memoria
Por lo que se refiere a la lectura, para con-
de fotograma. En el caso grfico el programa de la
seguir una imagen estable es preciso repetir la
UCP tiene que poder direccionar aleatoriamente
imagen completa en pantalla un determinado n-
cualquier bit de la memoria de fotograma. Dos po-
mero de veces por segundo, que se llama ta-
sibles maneras de organizar el hardware para gr-
sa de refresco. Como mnimo esta tasa ha de
ficos son:
ser de sesenta imgenes por segundo para evi-
tar el parpadeo, y normalmente se fija en se- La memoria de fotograma forma parte del es-
tenta y dos. Leer 2, 25 MB setenta y dos ve- pacio de direccionamiento de la UCP, es decir, sus
ces por segundo implicara un tiempo de acce- direcciones son direcciones de la MP, y cualquier
so excesivamente pequeo para tener un coste ra- programa que se ejecute en la UCP puede mo-
zonable con las tecnologas actuales de memo- dificar los contenidos de la memoria de fotogra-
ria: 109 /(72 2, 25 220 ) = 5, 9 ns. Como aho- ma, y, por tanto, la imagen, ya que el controla-
ra veremos, normalmente la lectura en esta memo- dor la est leyendo continuamente. Para imgenes
ria no se hace byte a byte, sino en paralelo sobre en movimiento se requieren tasas de transferen-
un nmero grande de bits que se llevan a un re- cia grandes. Por ejemplo, si el programa genera
170 Leccin 5. Variaciones sobre la periferia

40 fotogramas de 2, 25 MB por segundo, la tasa es otra de acceso serial para la comunicacin con los
40 2, 25 = 90 MB/s. Pero con las tarjetas 3D, circuitos de vdeo. Si la tecnologa de la pantalla
que se ocupan de procesar modelos tridimensiona- es analgica (tubo de rayos catdicos), la salida de
les (y pasarlos a una representacin bidimensional la SAM alimenta a un circuito llamado RAMDAC
para la pantalla) descargando a la UCP de esa ta- (CAD de acceso aleatorio) que se encarga de con-
rea de procesamiento, esta tasa puede llegar a ser vertir la codificacin digital de la imagen a seales
del orden de GB. analgicas.
El controlador se hace inteligente (Aparta-
do 5.10), dotndole de un procesador que puede
ejecutar programas diseados para dibujar grfi- Terminales
cos. El programa que se ejecuta en la UCP se limi-
Al conjunto formado por un teclado y una pan-
ta a generar acciones globales, como trazar una
talla se le suele llamar terminal conversacional
lnea entre los puntos X e Y, que se transmiten,
(o, simplemente, terminal), porque a travs de l
convenientemente codificadas, por el bus de entra-
el usuario puede trabajar con el ordenador de ma-
da/salida; el que se ejecuta en el procesador con-
nera interactiva. Puede estar ubicado en la proxi-
tenido en el controlador las interpreta y hace las
midad de la UCP, pero tambin puede ser un ter-
modificaciones oportunas en la memoria de foto-
minal remoto, situado a distancias que van des-
grama2 .
de los cientos de metros a los miles de kilmetros.
En cualquier caso, existe el requisito de que la Puede limitarse a la tarea de envo y/o recepcin de
memoria de fotograma tiene que leerse peridica- datos, o tener alguna capacidad de procesamiento
mente y escribirse de manera aleatoria, en instan- autnomo; en este caso se habla de terminales in-
tes tambin aleatorios, dependiendo de la aplica- teligentes. Por ejemplo, un terminal puede estar
cin (para imgenes animadas, esta escritura tam- dotado de capacidad para editar programas, proce-
bin tendr una periodicidad determinada). Para sar imgenes, etc., sin intervencin del ordenador
estas aplicaciones se han desarrollado tipos espe- (el siguiente paso es, evidentemente, que el ter-
ciales de memoria de doble puerto, que pue- minal sea realmente otro ordenador).
den escribirse y leerse al mismo tiempo, como la Para conectar un terminal remoto a un orde-
VRAM (RAM de vdeo) o la WRAM (RAM con nador a travs de una lnea telefnica se uti-
ventana). Son memorias de acceso aleatorio a las liza un equipo llamado mdem (modulador
que se les aaden uno o varios registros de despla- demodulador). El mdem, como dice su nombre,
zamiento de gran longitud (entre 256 y 1.024 bits), se basa en la modulacin de una seal de audiofre-
que forman la llamada SAM (memoria de acceso cuencia. El tambin llamado as para las conexio-
serial). Adems de las operaciones de acceso alea- nes por xDSL3 en realidad es un puente (brid-
torio, se pueden transferir contenidos de la RAM ge), ya que la seal que se transmite por la lnea
a la SAM (y a la inversa, lo que para la pantalla no no es analgica, sino digital, y lo que hace este
tiene utilidad, pero s para otras aplicaciones), y puente es adaptar unos protocolos a otros. Estos
leer (o escribir) serialmente la SAM (para extraer perifricos hay que clasificarlos ya en la categora
la informacin de vdeo). Es decir, la VRAM y la siguiente.
WRAM disponen de dos vas de acceso, una de ac-
ceso aleatorio para la comunicacin con la UCP y 3
xDSL se refiere, en general, a las tcnicas para comu-
nicaciones digitales por el bucle de abonado (Digital Subscri-
2
Esta es una tcnica que se aplica tambin en las impre- ber Line). La ms extendida es ADSL (por Asymmetric),
soras lser, cuyos controladores pueden interpretar lenguajes pero hay otras, como HDSL (High data rate DSL), VDSL
como PostScript, Apartado 5.12. (Very high rate DSL), etc.
5.2. Tipos de perifricos 171

Perifricos para la comunicacin con otros digitalanalgico junto con un accionador, uno de
artefactos salida. Estos perifricos se utilizan en las aplica-
ciones tradicionalmente llamadas de control de
Para la comunicacin directa (sin intervencin procesos. Hasta no hace mucho, tales aplicaciones
humana) de un ordenador con un entorno fsico se limitaban a los grandes procesos industriales:
se utilizan transductores y conversores. Los pri- refineras qumicas, columnas de destilacin, etc.
meros son dispositivos que convierten una seal Hoy se extienden a electrodomsticos, automvi-
manifestada en una forma de energa a otra seal les, edificios, juguetes... La limitacin econmica
idntica (idealmente) pero expresada en otra for- no viene ya del ordenador (que en muchas aplica-
ma. La forma de energa adecuada para introducir ciones se reduce a un microprocesador, acompa-
en el ordenador la informacin aportada por las se- ado de los conversores y de unos chips de memo-
ales, o para extraer de l informacin, es la elc- ria), sino precisamente del coste de los sensores
trica. De ah que se utilicen dos tipos de transduc- y accionadores. Esta proliferacin de aplicaciones
tores: los sensores (de presin, de temperatura, de ha conducido a la aparicin de microprocesadores
posicin, etc.), que traducen la seal a forma elc- con arquitecturas especialmente adaptadas y que
trica y forman parte de perifricos de entrada, y incluyen conversores dentro del mismo circuito in-
los accionadores (vlvulas, calefactores, motores, tegrado: son los llamados microcontroladores.
etc.), que realizan la operacin inversa. Decamos antes que los mdems pueden clasi-
Los sensores y accionadores producen y reci- ficarse en este grupo: la lnea telefnica es un ar-
ben seales analgicas: la tensin elctrica vara tefacto. Un mdem se conecta a travs de un con-
de forma continua con el tiempo, y en cada ins- trolador que contiene circuitos para modular y des-
tante adopta un valor determinado dentro de un modular una seal elctrica continua, que es la que
determinado margen. Pero el ordenador acepta y viaja por la lnea, con la informacin binaria seria-
genera seales digitales, es decir, discretas, tanto lizada (Apartado 14.4).
en el tiempo como en sus valores: slo cambian en
determinados instantes de tiempo (con una perio-
dicidad fija), y en cada instante tienen uno de en-
tre dos valores posibles. Y esa es la funcin de los Perifricos para almacenamiento
conversores: los conversores analgicodigitales
reciben una seal elctrica continua, la muestrean Como hemos dicho, las memorias secunda-
(toman muestras de ella con una periodicidad pre- rias, tambin llamadas memorias auxiliares, son
determinada, por ejemplo, 1.024 veces por segun- parte de la periferia de la UCP y la MP. Gene-
do) y la digitalizan (cada muestra la convierten a ralmente son perifricos de entrada y salida, pero
una representacin con un nmero determinado de tambin los hay de entrada nicamente: los CD
bits; por ejemplo, con ocho bits, los tericamen- ROM y los DVDROM. La capacidad de almace-
te infinitos valores diferentes a la entrada quedan namiento de estas memorias es muy superior a la
discretizados en 256 niveles). Inversamente, para de la MP y, si bien la tasa de transferencia puede
excitar a los accionadores son necesarios conver- ser muy grande, el tiempo de acceso medio es del
sores digitalanalgicos, que a partir de una suce- orden de los milisegundos.
sin de valores digitales (por ejemplo, una mues- En el Apartado 5.5 estudiaremos las caracters-
tra de ocho bits cada segundo) generan una seal ticas funcionales de las cintas y discos magnticos,
elctrica continua. y en particular los convenios para almacenamiento
Un sensor y un conversor analgicodigital for- de los datos y la forma de comunicarse con la UCP
man un perifrico de entrada, y un conversor y la MP.
172 Leccin 5. Variaciones sobre la periferia

bus de entrada/salida

controlador controlador controlador controlador controlador controlador


UCP de de
de ADM de impresora de vdeo de audio conversores lnea serial
MP

CAD CDA

modem
sistema
controlado

disco(s) y impresora(s) pantalla altavoces sistema lnea telefnica


cinta(s)

de almacenamiento de comunicacin con de comunicacin con


personas otros artefactos

Figura 5.1 Modelo estructural tpico para la conexin de perifricos a la UCP y la MP.

5.3. Tratamiento de la variedad pueden conectarse a la UCP y la MP, y, salvo pa-


ra aplicaciones especiales en las que puede justifi-
Es manifiesta la gran diversidad de modelos carse un sistema de propsito especfico, esta so-
funcionales de los perifricos. En particular, la tasa lucin no es viable.
de transferencia vara entre unos pocos bytes por
Otra manera de tratar con la variedad es redu-
segundo y cientos de MB/s, como puede verse en
cirla. En el caso que nos ocupa, la reduccin se
la Tabla 5.1.
consigue con el uso de controladores (subsiste-
La variedad, que para el usuario es deseable,
mas hardware especficos para gobernar a los pe-
para el diseador de los sistemas que la contie-
rifricos) y buses (vas de conexin entre la UCP y
nen es una fuente de problemas. Una manera ob-
la MP y los controladores). A travs de los buses,
via de abordar la variedad sera prescindir de ella.
la UCP y la MP ven una interfaz homognea
En nuestro caso, disear un ordenador a la medi-
con los perifricos, es decir, de una variedad redu-
da para cada aplicacin, con un repertorio de ins-
cida. La Figura 5.1 muestra el modelo funcional
trucciones y una ruta de datos especficos para los
que resulta de esta solucin.
perifricos que requiere esa aplicacin. Pero esto
contradice el principio del propsito general, cu- Observar el lector una pequea diferencia en
yo xito se debe a las economas de escala: cuanto la forma de representar los buses A, D y C en las
mayor es el abanico de aplicaciones ms se difun- Figuras 1.1 y 2.1 y en la Figura 5.1. Lo que se pre-
de el producto y se reducen los costes de produc- tende indicar con la doble lnea en este bus de en-
cin y distribucin, lo que genera una realimen- trada/salida es que se trata de un bus compuesto,
tacin positiva (la reduccin del precio conduce que incluye lneas de direcciones, lneas de datos
a aplicaciones nuevas). En definitiva, por razones y lneas de control. Por otra parte, como ahora ve-
comerciales, debe existir una gran flexibilidad pa- remos, normalmente no hay un solo bus, sino una
ra decidir el nmero y la clase de perifricos que jerarqua de buses.
5.4. Modelos 173

5.4. Modelos bus del sistema

La comunicacin entre la UCP y la MP y los


UCP MP CE/S CE/S
controladores de perifricos se estudia con mode-
los estructurales (buses e interconexiones), funcio-
nales (instrucciones de entrada/salida, formatos de Figura 5.2 Configuracin con bus nico.
los datos y seales de control) y procesales (cam-
bios de contexto, protocolos de seales en el hard- bus del sistema

ware, protocolos de software).


Estos modelos permiten describir al sistema en MP puente
UCP
varios niveles: la configuracin de buses, las ins-
trucciones, los tipos de interrupciones y los proto-
colos de software corresponden al nivel de mqui- bus de e/s

na convencional y los trataremos en esta Leccin. CE/S CE/S


Los detalles sobre lneas de los buses, seales de
control, protocolos de hardware, y, en general, los Figura 5.3 Configuracin con bus de entrada/salida.
asuntos procesales, son propios del nivel de mi-
croarquitectura, y los analizaremos en las Leccio- La Figura 5.3 muestra otra organizacin, ms
nes 9 y 13. An hay otros modelos, los del nivel de comn, en la que existe un bus de entrada/salida
mquina operativa (llamadas al sistema para que diferenciado del bus del sistema. Esto tiene senti-
se encargue de los detalles de la comunicacin) do porque la naturaleza de la comunicacin entre
que estudiaremos en las Lecciones 17 a 21. la UCP y la MP (transferencias muy rpidas y dis-
tancias cortas) es distinta a la de la comunicacin
Modelos estructurales con los perifricos. Todo bus tiene un lmite en su
capacidad de transporte, que se mide como la tasa
En la configuracin ms sencilla (la explicada de transferencia de los perifricos: en KB/s, MB/s
en las Lecciones 1 y 2) se prescinde del bus de en- o GB/s, y depende de cmo se implemente (nues-
trada/salida de la Figura 5.1: los mismos buses, A, tros diagramas en el nivel de mquina convencio-
D y C que comunican a la UCP con la MP se utili- nal no entran en detalles de niveles ms bajos, por
zan para la comunicacin con los perifricos a tra- lo que no muestran el hecho de que son necesarios
vs de los controladores de entrada/salida, CE/S. circuitos como relojes, amplificadores, etc.). Este
En la Figura 5.2 el llamado bus del sistema englo- lmite se llama ancho de banda del bus. El bus
ba las lneas de direcciones, de datos y de control, de entrada/salida no necesita ser tan rpido como
incluyendo la o las de interrupciones. el del sistema y se implementa de otro modo, lo
A veces, para reducir el coste, algunas de es- que hace necesarios unos circuitos de adaptacin,
tas lneas estn compartidas (o multiplexadas). Por llamados puente en la figura. Naturalmente, el
ejemplo, si hay diecisis lneas de datos y treinta ancho de banda del bus de entrada/salida limita la
y dos de direcciones, las primeras pueden hacer- tasa de transferencia de los perifricos que pueden
se coincidir con las diecisis menos significativas conectarse a l.
de las lneas de direcciones. Las transferencias por Por las mismas razones de tipo econmico
el bus se hacen, naturalmente, ms lentas: la UCP mencionadas al principio de este Apartado, para
tiene que enviar primero la direccin (y el contro- los buses, y especialmente para el bus de entra-
lador debe guardarla en un registro) y luego enviar da/salida, se han ido acordado normas (Aparta-
el dato o recogerlo en las mismas lneas. do 5.12) y se han ido desarrollando perifricos y
174 Leccin 5. Variaciones sobre la periferia
bus interno
UCP MO MP

128b, 3.200 MB/s

32b, bus del sistema: 64b, 800 MB/s


508 MB/s
controlador
AGP grafico puente PCI

bus de e/s (PCI): 32b, 133 MB/s

16b, 16b,
100 MB/s 100 MB/s
controlador controlador
SCSI IDE/ATA puente ISA puente USB

bus ISA 16b, 16MB/s bus USB 1b, 1,5MB/s

controlador modem puerto puerto


super IO USB1 USB2

puertos serial, linea camara escaner


paralelo, PS/2.
disquete...
Figura 5.4 Configuracin con estructura de buses jerrquica.

controladores adaptados a estas normas. La evo- La UCP aparece conectada a un bloque llama-
lucin tecnolgica hace que las normas tambin do MO, que es la memoria oculta (o memoria
avancen. As, en un determinado momento, la nor- cache). Se trata de un subsistema transparente en
ma de un bus con ancho de banda de 8 MB/s era ra- el nivel de mquina convencional, que estudiare-
zonable y poda acoger a las necesidades de la ma- mos en la Leccin 15. Si lo mostramos aqu es pa-
yora de los perifricos, pero unos aos ms tarde ra poner de manifiesto la jerarqua de buses: el
aparecieron perifricos ms rpidos y se elabor bus interno que conecta la UCP con la MO es el
una nueva norma. Pero no por ello han de tirar- ms rpido (puede transferir datos a 3,2 GB/s en el
se todos los controladores que obedecen a la nor- ejemplo) y el ms ancho (128 bits en el ejemplo).
ma antigua. Adems, tambin hay normas para Tradicionalmente, la pantalla se conecta, como
buses especializados en cierto tipo de perifricos. los otros perifricos, al bus de entrada/salida. Pero,
Por tanto, suelen coexistir en un mismo sistema como hemos visto antes, las aplicaciones multime-
varios buses de entrada/salida. Normalmente, uno dia exigen un gran ancho de banda. AGP (Acce-
principal y otros especializados y conectados a lerated Graphics Port) es una norma para conectar
l, que se llaman buses de expansin. controladores grficos al bus del sistema con tasas
La Figura 5.4 muestra una configuracin tpica. de 254,3 MB/s, 508,6 MB/s o 1.017,3 MB/s.
Como excepcin al enfoque que venimos siguien- El bus PCI (Peripheral Component Intercon-
do, se incluyen algunos componentes y algunos nect) es otra norma muy utilizada actualmente pa-
datos ligados a la tecnologa actual. Los comen- ra el bus de entrada/salida. SCSI (Small Com-
taremos brevemente, siguiendo la figura de arriba puter System Interface) e IDE (Integrated Dri-
abajo. ve Electronics), tambin conocido como ATA
5.4. Modelos 175

(Advanced Technology Attachment), son interfa- transfiere entre el registro de la UCP y un registro
ces (Apartado 14.3) para unidades de discos. La del controlador del perifrico (el puerto de da-
primera, ms moderna, permite mayores tasas de tos), pasando, naturalmente, por el bus o los bu-
transferencia y gestionar varios discos de manera ses oportunos. La transferencia directa entre bytes
ms eficiente. o palabras de la MP y el perifrico, necesaria para
Antes de la aparicin del PCI el bus de en- para perifricos rpidos, la estudiaremos a partir
trada/salida ms utilizado era el ISA (Industry del Apartado 5.6.
Standard Architecture). An hay muchos contro- Por lo que respecta al direccionamiento, ya he-
ladores diseados para l. Por ejemplo, los contro- mos sealado en el Apartado 4.7 que hay dos con-
ladores super IO, que integran lo necesario para venios: tener un espacio de direccionamiento com-
una variedad de perifricos, como teclado, ratn, partido o tener espacios de direccionamiento sepa-
e incluso disquete. USB (Universal Serial Bus) rados para la MP y los perifricos. En el primer
es una norma diseada, en principio, para cone- caso, como ya hemos visto con Smplez, las mis-
xin de perifricos con tasas de transferencia pe- mas instrucciones para acceso a la MP (LD y ST)
queas o medianas (USB 1.0, 1996, 1,5 MB/s), pe- sirven tambin para transferir entre los registros
ro que actualmente permite velocidades muy ele- de la UCP y los puertos de entrada/salida. En el
vadas (USB 2.0, 2002, 480 MB/s). segundo caso hay instrucciones especficas para la
entrada/salida (IN y OUT), como veremos en Algo-
Modelos funcionales rtmez (Apartado 7.2).

En el nivel de mquina convencional, lo ms En cuanto al intercambio de informaciones que


importante funcionalmente para la comunicacin no son los datos propiamente dichos, el convenio
entre la UCP y la MP y los perifricos son las ins- habitual consiste en asignar varias direcciones a
trucciones que permiten implementar esa comuni- cada controlador de perifrico. A cada direccin le
cacin. corresponde un puerto; unos son puertos de datos,
En las comunicaciones entre el ordenador y los y otros puertos de estado o de gobierno del perif-
perifricos se trata, ante todo, de transferir datos. rico. As, la transferencia de un conjunto de bits
Pero para que esta transferencia de datos sea posi- desde la UCP hasta un puerto puede tener como
ble hay otras informaciones que deben intercam- consecuencia la salida de un dato por el perifrico
biarse. Por una parte, en toda operacin de entrada o una accin de gobierno del perifrico, y la trans-
o salida es preciso identificar al perifrico median- ferencia desde un puerto hacia la UCP puede ser
te un nmero o direccin. Por otra, la UCP tiene la entrada de un dato o la consulta del estado del
que conocer el estado del perifrico (si est co- perifrico.
nectado o no, si est preparado para la operacin En algunos diseos se ha seguido otro conve-
o no, etc.) antes de involucrarlo en una operacin. nio: a cada perifrico le corresponde una direc-
Finalmente, la UCP ha de informar al perifrico cin nica, y existen mltiples instrucciones de en-
sobre la funcin a realizar: si se trata de una entra- trada/salida, unas para lectura o escritura de dato,
da o de una salida de datos, de una comprobacin otras para acciones de control (rebobinar una cin-
de estado o de una accin de control (cambiar la ta, pasar pgina en una impresora, etc.) y otras pa-
pgina en una impresora, rebobinar en una cinta ra comprobacin de estado (est al final la cinta?,
magntica, etc.). tiene papel la impresora?, etc.). Como este tipo
Del lado del ordenador, los datos pueden diri- de instrucciones es muy especfico de cada perif-
girse a o proceder de algn registro de la UCP o rico, este convenio es ms comn en los procesa-
de alguna palabra de la MP. En el primer caso se dores perifricos (Apartado 5.10), no en la UCP.
176 Leccin 5. Variaciones sobre la periferia

5.5. Memorias secundarias 1 byte

cabeza de
Presentaremos las caractersticas funcionales lectura/escritura
esenciales y los convenios de almacenamiento en marca inicio
los perifricos ms utilizados como memorias se- intervalo

cundarias, que es necesario conocer para progra- registro


sentido del
mar en el nivel de mquina convencional las ope- intervalo
desplazamiento
raciones de entrada/salida con estos perifricos.
Hay que distinguir entre la unidad y el soporte intervalo

registro
o medio. La primera comprende el ensamblaje de
intervalo
partes mecnicas y sus circuitos de control (am- marca fin
plificadores, motores, servomecanismos, etc.). El
segundo se refiere estrictamente al material en el
Figura 5.5 Formato de una cinta magntica.
que se graban los datos (la cinta, o el disco, en s
mismos). En algunas unidades el soporte es inter- tales: el campo magntico en cada punto de la su-
cambiable (por ejemplo, un disquete puede sacar- perficie est orientado en un sentido o en el opues-
se de la unidad e introducirse otro en su lugar), to, y puede hacerse corresponder a cada sentido
pero en otras no. un valor binario, o, lo que es ms frecuente (por-
Aunque hay varias tecnologas para implemen- que facilita el diseo de los circuitos detectores), a
tar las memorias secundarias, en general, todas cada cambio de sentido un valor binario. La densi-
comparten dos importantes diferencias funciona- dad de grabacin est comprendida entre 800 bpi
les con respecto a las tecnologas de semiconduc- (bits por pulgada, en el sentido longitudinal de la
tores que se usan para la MP: cinta) y 6.500 bpi.
Las memorias secundarias son no voltiles: Las cintas clsicas (las que todava pueden
conservan los datos grabados sin necesidad de verse en algunos centros de proceso de datos,
alimentacin elctrica. y, sobre todo, en pelculas) tienen una anchura de
El tipo de acceso no es aleatorio: el tiempo media pulgada (1,27 cm) y una longitud variable,
que se tarda en acceder a un dato depende de la del orden de cientos de metros. Los datos se al-
localizacin de ese dato. macenan tpicamente en nueve pistas paralelas, de
Slo describiremos las cintas y discos magnti- modo que en realidad se pueden grabar entre 800 y
cos, sin entrar en otras tecnologas, como las p- 6.500 bytes por pulgada, utilizando ocho pistas pa-
ticas, con las que se implementan los CD-ROM, ra el byte y la novena para un bit de paridad (Apn-
CD-R, CD-WR, DVD, etc. (El lector interesado dice A, Apartado A.1).
puede acudir a la bibliografa del Apartado 5.17). El formato de almacenamiento es el que mues-
tra, de manera genrica, la Figura 5.5. Los bytes se
agrupan en registros fsicos4 , y entre registro y re-
Cintas magnticas gistro se deja un intervalo de varios milmetros. En
El almacenamiento en cintas magnticas se basa unos formatos los registros tienen un nmero fijo
en el mismo principio de las bien conocidas cintas de bytes, y en otros el nmero es variable. En todo
de audio y vdeo: la magnetizacin de una pelcu- caso, el controlador reconoce en la lectura al inter-
la depositada sobre una banda delgada de material valo como una zona sin cambios en la magnetiza-
plstico, que se desplaza bajo una o varias cabe- 4
Aunque se llamen igual, no hay que confundir estos re-
zas de lectura y escritura. La principal diferencia gistros con los registros del nivel de circuito lgico y de las
es que no se graban seales analgicas, sino digi- rutas de datos (Apartados 6.8 y 6.17).
5.5. Memorias secundarias 177

cin. Los intervalos son necesarios porque la cinta Una unidad para copias de seguridad debe cum-
puede pararse al terminar de leer o escribir un re- plir dos condiciones: que el soporte sea intercam-
gistro (nunca en medio de uno), y cuando vuelve a biable (para guardarlo, por ejemplo, en un armario
arrancar tarda un tiempo en llegar a la velocidad ignfugo) y que su coste sea relativamente bajo.
de crucero, por la inercia de las partes mecni- El disquete, intercambiable y barato, sera un can-
cas. Los registros se agrupan en ficheros (Aparta- didato para las copias de seguridad, pero su poca
dos 6.8 y 17.8). Una codificacin se reserva para la capacidad con respecto al disco hace incmodo su
marca que indica el principio de un fichero, a la uso para esta funcin (Ejercicio 4). Las unidades
que le sigue el primer registro, que contiene, entre de cinta clsicas son caras, debido sobre todo a
otros datos, el nombre del fichero. De este modo, la exigencia de que tienen que parar y arrancar con
los programas pueden localizar con relativa faci- precisin en el corto intervalo entre registros. Pero
lidad un fichero determinado: avanzando la cinta este requisito no es necesario para las copias de se-
rpidamente hasta encontrar una marca de inicio guridad. Por eso, se han desarrollado unidades de
de fichero, y leyendo su primer registro. cinta de bajo coste exclusivamente para esta fun-
La capacidad total de almacenamiento de una cin: se llaman streamers. La tecnologa ms
cinta llega a 100 GB y la tasa de transferencia a usada actualmente es la de las DAT (Digital Au-
40 MB/s5 . Su gran inconveniente radica en la na- dio Tape), que permite almacenar hasta 40 GB en
turaleza secuencial del acceso: acceder a un regis- una casete del tamao clsico (cinta de 4 mm) y
tro que se encuentra al final de la cinta cuando las tener una tasa de transferencia de hasta 768 KB/s.
cabezas estn al principio requiere minutos. Con Pero tambin existen controladores que permiten
los discos magnticos se consiguen capacidades y convertir en streamers a los equipos domsticos
tasas de transferencia similares a las de las cintas, de cinta de vdeo o de audio.
y los tiempos de acceso se reducen a los milise-
gundos; al evolucionar su tecnologa se ha ido re- Discos magnticos
duciendo su coste, y, as, han ido sustituyendo a
las cintas. Pero, paradjicamente, el mismo avan- Los primeros discos duros diseados para pe-
ce tecnolgico en los discos ha hecho aparecer una cs, hace unos veinte aos, tenan una capacidad
nueva aplicacin de las cintas: el almacenamiento de 10 MB y un coste de unos 100 e por MB. Ac-
de copias de seguridad. tualmente (2004) existen discos de 400 GB con un
En una unidad de discos clsica el disco es in- coste de unos 0,001 e por MB. Es decir, mientras
tercambiable: puede sacarse fcilmente del equi- la capacidad se ha multiplicado por 40.000 el cos-
po, y sustituirse por otro. De este modo, es fcil te por bit se ha dividido por 100.000. Sin embargo,
mantener siempre un duplicado de los datos para los principios bsicos de funcionamiento no se han
prevenir su prdida accidental. Actualmente, sin alterado sustancialmente.
embargo, en la mayora de las unidades llamadas La configuracin mecnica bsica de una uni-
de disco duro, el disco es inaccesible fsicamen- dad de disco consta de un conjunto de discos re-
te, porque se encuentra en un recipiente sellado6 . cubiertos de un material magnetizable, que giran
sobre un eje comn. Cada disco tiene dos superfi-
5
Con las tecnologas ms avanzadas en 2.002: DLT (Di- cies (o caras), por lo que hay dos cabezas de lec-
gital Linear Tape) y LTO (Linear Tape Open). tura y escritura para cada disco. El nmero de dis-
6
Se llama tecnologa Winchester (por el motivo que se cos vara entre uno (en el caso de los disquetes)
explica en el Apartado 5.16). Al aislar al disco de las partcu-
las de polvo del aire, las cabezas pueden estar ms prximas a
y veinte (en discos de gran capacidad), y su di-
la superficie magntica y las pistas pueden ser ms estrechas, metro entre 2,5 y 14 pulgadas (entre 6,35 y 35,56
lo que permite aumentar la capacidad y reducir el tamao. cm). La organizacin del almacenamiento se basa
178 Leccin 5. Variaciones sobre la periferia

sentido de cabeza
la rotacin pista
entre 1.440 KB (disquete) y 400 GB, y la tasa de
transferencia entre 60 KB/s (disquete) y 100 MB/s
(Ejercicio 3).
El nmero de cilindros, cabezas y sectores por
pista, CHS (CylindersHeadsSectors), deter-
minan la llamada geometra fsica del disco. Para
brazo
acceder a un determinado sector, la UCP le comu-
cilindro mvil nica al controlador el nmero del cilindro, el de la
superficie y el del sector dentro de la lista.
Ahora bien, como la velocidad angular de rota-
pista cin, el nmero de sectores por pista y el nmero
sector
de bytes por sector son constantes, pero las pistas
tienen distinto radio, la densidad de grabacin en
las pistas externas sera menor que en las internas.
Se puede aprovechar mejor la superficie magn-
tica (y dotar de ms capacidad al disco) hacien-
Figura 5.6 Cilindros, pistas y sectores. do que el nmero de sectores por pista sea ma-
yor cuanto ms externa sea la pista. Esta tcnica
en la divisin de la superficie en pistas concntri- se llama ZBR (Zoned Bit Recording: grabacin
cas. Un conjunto de pistas de igual radio en todas de bits por zonas), y hasta hace poco se renuncia-
las superficies se llama cilindro. El conjunto de ba a ella, porque implica complicar el controlador
las cabezas puede moverse solidariamente en sen- y el software, pero ahora ya es factible con el uso
tido radial, de modo que en cada momento todas de controladores inteligentes, como los basados en
las cabezas estn situadas sobre un determinado las normas IDE y SCSI. Al ser variable el nmero
cilindro. Las pistas se dividen en sectores, y cada de sectores por pista, la expresin de la geometra
sector contiene un conjunto de varios centenares fsica en CHS no tiene sentido8 . Todos estos dis-
de bytes. La Figura 5.6 ilustra esquemticamente cos estn acompaados de controladores que per-
esta disposicin. miten que la UCP pueda acceder a un determinado
Los nmeros concretos de pistas, sectores, etc., sector especificando simplemente el nmero ab-
constituyen el formato7 y son muy variables, de- soluto del sector, es decir, un nmero entre 0 y
pendiendo del fabricante y del tipo de disco. El n- N 1, siendo N el nmero total de sectores que
mero de cilindros vara entre 40 y 2.000, el de su- puede contener el disco. El controlador se ocupa
perficies (cabezas) entre 2 y 40, el de sectores por de hacer la traduccin para averiguar en qu pis-
pista entre 10 y 100, y el de bytes por sector sue- ta y superficie se encuentra. Esto se llama LBA
le ser 512 o 1.024. La velocidad de rotacin tam- (Logical Block Addressing: direccionamiento l-
bin es variable segn el disco, entre 300 (disquete gico de bloques).
de 3,5 pulgadas) y 15.000 revoluciones por minu- Los discos no tienen un modo de acceso alea-
to. La capacidad total resultante est comprendida torio (como la MP) ni secuencial (como las cin-
7 8
En los discos modernos este formato de bajo nivel se Adems, el acceso a las pistas del disco se hace mediante
establece en su fabricacin y no puede modificarse por el rutinas grabadas en la BIOS (Apartado 19.9), y por motivos
usuario. Cuando ste formatea el disco se trata de un for- de compatibilidad, esta BIOS tiene unos lmites en los nme-
mato de alto nivel, en el que se crean unas estructuras de ros de CHS, concretamente, 1.024 cilindros, 256 cabezas y
datos en el disco que dependen del sistema operativo y del 63 sectores. Con sectores de 512 B esto limita a 8,1 MB la
sistema de ficheros que utilice (Apartado 17.8). capacidad de un disco direccionable con este mtodo.
5.5. Memorias secundarias 179

tas), sino cclico. Hay que distinguir entre el tiem- Comunicacin con la UCP
po de bsqueda que tardan las cabezas de lectu-
ra/escritura en desplazarse hasta la pista adecua- La transferencia de datos entre las memorias se-
da (y que depende de las caractersticas electro- cundarias y el ordenador puede ser desde la MP al
mecnicas del sistema que mueve las cabezas) y perifrico (para las operaciones de salida), o des-
el tiempo de espera (o latencia) que tarda el de el perifrico a la MP (para las de entrada), y la
sector en llegar hasta donde est la cabeza (que estudiaremos con detalle en los Apartados siguien-
depende de la velocidad de rotacin del disco); la tes. Obsrvese que, para acceder a la MP, el con-
suma de ambos es, en valores medios, del orden trolador tiene que tener acceso a los buses de datos
de milisegundos. Sin embargo, una vez posiciona- y direcciones (es decir, al bus del sistema) que per-
da la cabeza, el flujo de lectura o escritura de datos miten la comunicacin entre la MP y la UCP. De
puede proceder con una tasa de transferencia del ah la necesidad del puente en la Figura 5.3.
orden de MB/s. El tiempo de bsqueda tiene, pa- Pero, adems de la transferencia de datos, el
ra cada disco, unos valores mximo y mnimo bien controlador del perifrico puede recibir rdenes
determinados (lo que tardan las cabezas en despla- de gobierno (en una cinta: rebobinar, avanzar has-
zarse desde el cilindro ms externo hasta el ms ta el siguiente registro, avanzar hasta el siguiente
interno, y lo que tardan en desplazarse entre dos fichero, etc.; en un disco: mover las cabezas has-
cilindros contiguos), pero el valor medio es difcil ta un determinado cilindro, retirar las cabezas o
de establecer (depende del programa: de cmo es- aparcar, etc.) y consultas de estado (comprobar
t organizado el almacenamiento de los datos en si hay disco, o cinta, si ha habido error en la lti-
el disco y de cmo sea el acceso a esos datos). Los ma transferencia, etc.). Esto normalmente se reali-
valores medios anunciados por los fabricantes va- za mediante instrucciones de salida y de entrada,
ran entre 1 y 10 ms para los discos y entre 100 y respectivamente, sobre algn puerto de estado.
200 ms para los disquetes. Los tiempos medios de El controlador del perifrico genera interrupcio-
espera, sin embargo, son fciles de calcular (Ejer- nes, pero no en cada transmisin elemental de un
cicio 7) y resultan ser tambin del orden de los byte, como hacen los perifricos lentos, que se lla-
milisegundos. man perifricos de caracteres. Los rpidos trans-
En cuanto a la tasa de transferencia, podra pen- fieren los datos mediante el procedimiento de ac-
sarse que slo depende de la velocidad de rota- ceso directo a la memoria, que estudiaremos en los
cin y de la densidad de grabacin. Pero en reali- siguientes Apartados, y se llaman perifricos de
dad es ms complicado, porque un sector tiene un bloques. Un bloque es el conjunto de bytes que
nmero reducido de bytes (512 normalmente), y se transmiten entre el perifrico y la MP sin que el
cuando se trata leer o escribir un fichero (Aparta- controlador interrumpa. En las cintas, un bloque
do 19.7) ste estar formado por varios o muchos es igual a un registro fsico; en los discos, un blo-
sectores que pueden estar en distintas posiciones. que es igual a un sector o a un nmero pequeo
Adems, estaramos hablando de la tasa de trans- de sectores. La rutina de servicio de la interrup-
ferencia interna, porque los controladores nor- cin que se ejecuta al final de la transferencia de
malmente tienen una memoria oculta (cache, o un bloque comprueba, mediante las instrucciones
buffer, Apartado 15.7), y si los datos que se preten- de entrada/salida oportunas, si la transferencia se
den leer ya estn en ella la transferencia es mucho ha desarrollado correctamente (si se ha producido
ms rpida. Las interfaces IDE estn diseadas pa- algn error, habr quedado reflejado en uno de los
ra permitir una tasa de transferencia por el bus de puertos de estado del controlador).
hasta 100 MB/s, pero las tasas reales mximas sue- Finalmente, debemos mencionar que en esta
len bajar a 40 o 50 MB/s. presentacin bsica nos estamos refiriendo al ca-
180 Leccin 5. Variaciones sobre la periferia

so de que el sistema de memoria secundaria est locidad del perifrico), y el ADM hacerse absolu-
compuesto por uno o varios discos y cintas que se tamente necesario.
conectan al bus del sistema mediante uno o varios Para poner de manifiesto esa posible inoperan-
controladores. La reduccin de costes de los dis- cia es preciso que concretemos. Si el lector resuel-
cos ha hecho factible utilizar sistemas en los que ve el Ejercicio 3 encontrar que la tasa de trans-
se combinan un gran nmero de discos. Son los ferencia del disquete propuesto como ejemplo es
llamados RAID (Redundant Array of Inexpen- 46.080 B/s. O, lo que es lo mismo, el intervalo
sive Disks). de tiempo desde que pasa un byte bajo la cabeza
de lectura/escritura hasta que pasa el siguiente es,
aproximadamente, 22 s. Si leemos (o escribimos)
5.6. ADM: justificacin los bytes del disquete mediante interrupciones (ca-
da vez que el controlador de la unidad de disquetes
En los modelos para la entrada/salida estudia- tiene preparado un byte interrumpe), en ese tiem-
dos hasta ahora y detallados con Smplez y Sm- po (22 s) el sistema de interrupciones debe ser
plez+i4, la UCP es la nica duea de la MP y capaz de averiguar la causa y ejecutar la rutina de
del bus del sistema (formado por los buses de da- interrupcin para leer (o escribir) el byte. Sigamos
tos, D, de direcciones, A y de control, C), y las concretando con el nico sistema de interrupcio-
transferencias de datos con los perifricos siempre nes que hasta ahora hemos estudiado con detalle
se realizaban entre los registros de los controlado- y supongamos que aadimos a Smplez+i4 un dis-
res y algn registro de la UCP. Las tcnicas de ac- quete y hacemos la comunicacin con l mediante
ceso directo a la memoria (la MP, se sobreentien- interrupciones. Para ello habremos de modificar la
de) permiten que los controladores de perifricos rutina de interrupciones (Programa 2.5) como se
intercambien los datos directamente con la MP, y indica en el Ejercicio 8. Si el lector resuelve este
esto introduce un elemento conceptual nuevo: pa- ejercicio y el siguiente obtendr el siguiente resul-
ra que tal cosa sea posible, el controlador tiene que tado: el tiempo necesario para servir a una inte-
aduearse temporalmente de la MP y de los bu- rrupcin del disquete es 5,8 s o 6,4 s, segn que
ses de comunicacin con ella. Llevar este concep- se trate de una lectura o una escritura. Al ser me-
to a la prctica implica, obviamente, aumentar la nor que 22 s no hay problema: el disquete puede
complejidad de los modelos. funcionar, lo mismo que el teclado y la pantalla,
Veamos por qu es necesario el acceso directo mediante interrupciones9 .
a la memoria (en adelante, ADM). En el Aparta- Pero un disquete es un perifrico relativamente
do 1.13 hacamos una pequea introduccin a este lento. Comparmoslo con un disco, cuya tasa de
concepto (si el lector no lo recuerda, puede hacer transferencia puede llegar a 100 MB/s, aproxima-
una interrupcin, como se sugera en el Aparta- damente 2.000 veces mayor. Entre byte y byte el
do 2.8 al explicar lo que es un cambio de contexto; tiempo que transcurre es 0,01 s = 10 ns. Imposi-
si lo recuerda, har un acceso directo a su memo- ble ejecutar ninguna rutina de servicio.
ria). Como all sealbamos (e ilustrbamos con Para un perifrico lento, sin embargo, la trans-
la Figura 1.11), con este procedimiento se resta el ferencia por medio de interrupciones es perfec-
mnimo de tiempo a la UCP para las transferencias tamente adecuada. Analicemos de nuevo el ser-
de entrada/salida, y eso ya puede ser justificacin vicio de interrupciones del Programa 2.5. Si re-
suficiente para adoptarlo. Pero es ms, con peri- contamos las instrucciones necesarias para servir
fricos rpidos el procedimiento de interrupciones 9
No obstante, en la realidad los disquetes funcionan con
puede llegar a ser inoperante (dependiendo de la un controlador de ADM, para evitar a la UCP ese tiempo de
eficiencia del sistema de interrupciones y de la ve- procesamiento.
5.7. ADM: modelos estructurales 181

a una interrupcin del teclado y tenemos en cuen- controlador de ADM y los que hemos considera-
ta los ciclos de cada instruccin y el tiempo del do hasta ahora es que el primero tiene que tener
ciclo (200 ns) resulta que el tiempo que transcu- acceso a la MP. Por ejemplo, en el caso de Sm-
rre desde que la UCP pasa a atender la interrup- plez+i4, en la Figura 2.1 podemos ver que los con-
cin y vuelve para seguir con las instrucciones troladores del teclado y la pantalla reciben seales
del programa interrumpido es de unos 6 s. Con- del bus A (direcciones que proceden de la UCP) y
sideremos un mecangrafo hbil que escribe con se conectan bidireccionalmente con el bus D (para
una velocidad de 300 pulsaciones por minuto, lo la lectura o escritura de sus puertos). Un controla-
que significa que el teclado genera una interrup- dor de ADM se conectara bidireccionalmente con
cin cada 60/300 = 0,2 s. La fraccin de tiempo el bus A (para poder direccionar a la MP) y tam-
que la UCP dedica a atender las interrupciones es bin al bus D, pero no slo para intercambiar los
6 106 /0, 2 = 30 106 . Es decir, la UCP es- contenidos de sus puertos con la UCP, sino tam-
t ocupada el 0,003 % de su tiempo en recoger los bin para leer o escribir en la MP.
caracteres pulsados y ponerlos en la zona de entra-
da/salida de la MP, quedndole un 99,997 % para
ejecutar otros programas. En estos casos no est Puertos del controlador
justificado el coste que representa un controlador
El controlador deber contener un registro de
de ADM. No obstante, si hay muchos perifricos
estado, accesible por la UCP mediante instruccio-
lentos trabajando simultneamente (por ejemplo,
nes de entrada/salida, con los mismos bits que tie-
muchos terminales remotos) puede utilizarse un
nen los otros puertos de estado: preparado, permi-
controladormultiplexador que se ocupe de todos
so de interrupciones e indicadores de error, y algu-
ellos (ver Apartado siguiente).
no ms, como L/E (para un perifrico de entrada
Tambin se hace necesario el ADM en los con-
y salida como es un disco se pondr a cero o a uno
troladores grficos (Apartado 5.2), para leer la me-
segn que se quiera iniciar una operacin de lec-
moria de fotograma que forma parte del espacio de
tura o de escritura) y ADM (que se pone a uno
direccionamiento de la MP. Ahora bien, las trans-
para que el controlador tenga permiso para acceder
ferencias con las memorias secundarias son, nor-
directamente a la MP). Tambin tendr un regis-
malmente, espordicas, pero con la pantalla grfi-
tro para los datos, pero a diferencia de los puertos
ca han de ser continuas (el controlador tiene que
de datos estudiados con Smplez y Smplez+i4, las
estar leyendo siempre la memoria de fotograma
transferencias no van a producirse entre este regis-
para poder tener permanentemente la imagen en la
tro y un registro de la UCP, sino entre el registro
pantalla). La aplicacin, sin ms, del ADM, impli-
y la MP. Adems, el controlador necesita otros re-
ca que a la UCP se le sustrae sistemticamente un
gistros en los que introducir datos previamente al
tiempo ms o menos importante, dependiendo de
inicio de la transferencia directa entre el perifrico
la resolucin de la pantalla (Ejercicio 10). De ah
y la MP:
el inters de las memorias VRAM que ya hemos
comentado (vea tambin el Ejercicio 11). Un registro de localizacin, RLOC, con la in-
formacin sobre dnde se ubican los datos a
leer del perifrico o dnde se han de escribir.
5.7. ADM: modelos estructurales En un disco, cilindro, superficie y sector o bien
nmero absoluto del sector.
Conexin con los buses
Un registro de cuenta de bytes, RCB, con el n-
Desde el punto de vista de la interconexin con mero de bytes a leer o a escribir. El controlador
el resto del sistema, la nica diferencia entre un lo va decrementando en cada transferencia.
182 Leccin 5. Variaciones sobre la periferia

Un registro de direccin en curso, RDEC, con controlador que comparten ambos, habiendo, sin
direccin inicial de la zona de la MP en la que embargo, otros controladores inactivos.
se van a introducir o de la que se van a leer los Para mejorar la potencia, evitando la situacin
bytes. El controlador lo va incrementando en descrita, pueden utilizarse controladores flotantes:
cada transferencia. para la transferencia entre un perifrico y la MP no
Normalmente, a cada uno de estos registros le hay un controlador prefijado; se utiliza uno de los
corresponden uno o varios puertos (es decir, direc- que estn libres. La asignacin de controlador ocu-
ciones) de entrada/salida. Por ejemplo, si los puer- rre en el momento en que se ejecuta una instruc-
tos son de ocho bits, RLOC y RDEC al menos van cin para iniciar operaciones de entrada/salida: se
a necesitar varios puertos, puesto que ocupan va- selecciona el primer controlador que est libre, y
rios bytes. Pero en el ejemplo concreto que vere- ste se conecta al perifrico seleccionado.
mos para Algortmez (Apartado 7.8) usaremos un Hasta ahora hemos supuesto que, una vez enla-
arreglo para conseguir que todo controlador slo zado con un perifrico, el controlador queda de-
ocupe dos direcciones de entrada/salida. dicado a l hasta que concluye la transferencia de
todos los bytes que se han indicado en RCB. Esta
forma de operar es adecuada para perifricos que
Tipos de controladores
tienen una tasa de transferencia elevada, pero no
Hay varios tipos de controladores de ADM: para perifricos lentos, en los que el coste de hard-
Cuando son varios los perifricos conectados ware que representa el controlador no est justi-
mediante ADM, la solucin ms inmediata (y la ficado, al no aprovecharse sus posibilidades. Un
ms costosa) es que cada uno tenga su propio con- controlador multiplexador atiende a varios peri-
trolador de ADM. Un controlador se llama dedi- fricos simultneamente: no se dedica por ente-
cado si se ocupa exclusivamente de un perifrico. ro a uno durante toda la transferencia (como ha-
Slo tiene sentido para perifricos muy rpidos y ce el controlador selector), sino que comparte su
que funcionen con mucha frecuencia (por ejemplo, tiempo entre ellos. El controlador tiene tantas pa-
el controlador de una tarjeta de vdeo). rejas de registros RDEC y RCB como perifricos
Un controlador de ADM selector es el que pue- pueda atender.
de ser compartido por varios perifricos (tpica-
mente, cuatro, ocho o diecisis), pero de tal mo-
do que cuando se inicia para uno de ellos los otros
5.8. ADM: modelos procesales
quedan excluidos hasta que termina la transferen-
Modos de funcionamiento y rbitro del bus
cia (es decir, hasta que se transfiere el nmero de
bytes que se ha cargado inicialmente en RCB) y se El controlador de ADM puede acceder a los bu-
vuelve a iniciar. ses A y D cada vez que tenga que transferir un by-
Si hay un elevado nmero de perifricos rpi- te, y luego liberarlos. Eso es lo que implcitamente
dos que se activan espordicamente, la disposicin suponamos en la introduccin del Apartado 1.13,
ms econmica es la que resulta de agruparlos de y lo que supondremos en lo sucesivo. En este ca-
tal modo que los perifricos que vayan a funcio- so el modo de funcionamiento se llama robo de
nar simultneamente estn conectados a distintos ciclo. Normalmente, es la UCP quien accede a la
controladores, y que los incluidos dentro de cada MP, y, espordicamente, el controlador de ADM
grupo no requieran servicio al mismo tiempo. Pe- le roba un ciclo.
ro esto es muy difcil de prever, porque depende de Pero si la tasa de transferencia del perifrico es
cada programa. Puede as ocurrir que un perifri- elevada y el tiempo entre bytes se aproxima al ci-
co tenga que esperar porque otro est utilizando el clo de la MP entonces conviene disponer las cosas
5.8. ADM: modelos procesales 183

de modo que el controlador se apodere de los bu- transferencia el controlador genere una interrup-
ses y no los suelte hasta no haber terminado de cin. Mientras el biestable ADM permanezca con
transferir todos los bytes. En este caso podemos el valor 1 el controlador, cuando tenga un byte
hablar de robo de bus. preparado en su registro de datos pedir un ciclo
En cualquier caso, desde el momento en que te- de memoria al rbitro del bus y ste le dar per-
nemos varios subsistemas (la UCP y el controla- miso para que acceda a los buses A y D y escriba
dor, o los controladores, de ADM) que pueden ac- ese byte en la MP, suspendiendo a la UCP durante
ceder a la MP es preciso que haya un mecanismo durante ese ciclo.
de control para el caso de que dos o ms preten- 4. Cada vez que enva un byte a la MP, el controla-
dan acceder simultneamente. Este mecanismo de dor incrementa el contenido de RDEC, decremen-
control puede estar incluido dentro de la UCP o ta el de RCB y comprueba si este ltimo ha llegado
en un controlador especfico, el rbitro del bus a cero. En caso negativo contina.
(bus del sistema). En el Apartado 13.9 veremos un 6. Cuando el contenido de RCB llega a cero, el
ejemplo de seales y protocolos para implementar controlador pone a cero el biestable ADM que en
este arbitraje. el paso 3 se haba puesto a uno, y genera una in-
terrupcin. La rutina de servicio comprobar si ha
Proceso habido error (mediante una instruccin de entra-
da, LD, o bien IN que lea el puerto de estado) y si
El funcionamiento, a grandes rasgos, y supo- es as realizar las acciones oportunas (por ejem-
niendo que el perifrico es un disco y que la ope- plo, ensayar de nuevo la transferencia, escribir un
racin es de entrada (o lectura: transferencia desde mensaje para el usuario, etc.).
el disco a la MP), es el siguiente: Para una operacin de salida (o escritura: trans-
1. Antes de comenzar una transferencia es preciso, ferencia desde la MP al disco) el proceso es el mis-
mediante instrucciones de salida (ST, o bien OUT), mo, salvo que en el paso 3 se escribe 0 en L/E,
cargar los registros RDEC y RCB del controlador lo que hace que en cada robo de ciclo el contro-
con la direccin de comienzo de la zona de la MP lador transfiera un byte de la MP a su registro de
en donde se van a almacenar los bytes y con el datos.
nmero de bytes a transferir, respectivamente. Dos observaciones:
2. Adems, mediante otras instrucciones de salida Hemos supuesto, para simplificar, que las trans-
se debe poner en el registro RLOC la informacin ferencias se hacen byte a byte (y que el registro
necesaria para seleccionar el perifrico, si hay va- de datos del controlador tiene ocho bits). Pero co-
rios (en caso de un controlador selector, o multi- mo las transferencias se hacen por el bus D, si la
plexador), y para localizar la informacin en l. longitud de palabra es de varios bytes resulta ms
3. Mediante otra instruccin de salida se pone 1 eficiente (se usan menos ciclos de memoria) leer o
en un biestable del puerto de estado del controla- escribir palabra a palabra. As haremos en el ejem-
dor que indica que se trata de una operacin de plo concreto de Algortmez (Apartado 7.8).
lectura, y otro 1 en otro biestable que permite El valor que inicialmente se ponga en RCB de-
que el controlador empiece a pedir ciclos. Son los termina el tamao del bloque. Como hemos dicho
biestables que hemos llamado L/E y ADM al final del Apartado 5.5, este valor suele fijarse
en el Apartado 5.7. A partir de este momento, la para que el tamao del bloque coincida con el de
UCP se desentiende, en el sentido de que no tie- un sector del disco o sea un mltiplo pequeo de
ne que ejecutar ninguna instruccin ms relacio- l. sta es una decisin ntimamente ligada al di-
nada con la transferencia hasta que al final de esta seo del sistema operativo (Apartado 17.8).
184 Leccin 5. Variaciones sobre la periferia

5.9. ADM: modelos funcionales iniciar(RLOC);


desde CONT = 1 hasta CONT = 10 {
El modelo funcional de un controlador de ADM RCB = 512;
debe detallar las direcciones de entrada/salida RDEC = direcc.zonaMP;
asignadas a sus puertos (el puerto de estado y iniciar(REST);
los que correspondan a los registros RLOC, RCB esperar a que ADM = 0;
procesar(zonaMP);
y RDEC), el significado de los distintos bits del actualizar(RLOC)
puerto de estado (ADM, L/E, etc.) y el formato }
de las informaciones que se ponen en los regis-
tros, particularmente en RLOC: puede ser el n-
mero absoluto del sector (para el caso de LBA) o Programa 5.1. Lectura con ADM de diez sectores se-
los nmeros de superficie, cilindro y sector. guidos de un disco.
En el Apartado 7.8 veremos un modelo funcio-
ADM es el bit del puerto de estado que permite
nal concreto. De momento, y sin entrar en detalles,
que el controlador pida ciclos de memoria.
veamos con un ejemplo cmo se puede usar este
modelo funcional para programar las operaciones iniciar(RLOC) representa a las instruccio-
de ADM en el nivel de mquina convencional. nes necesarias para introducir en el registro
RLOC los nmeros de disco, superficie, pis-
ta y sector (el primero de los sectores a leer),
Ejemplo de programacin e iniciar(REST) representa a las que ponen
1 en los biestables L/E, ADM e IT (permiso
Supondremos que el tamao de un bloque de interrupciones) del registro REST.
es exactamente igual al de un sector del disco,
actualizar(RLOC) consiste en introducir en
512 bytes, y que al controlador se le comunica
RLOC los datos de localizacin del siguiente
la localizacin en el disco poniendo en el regis-
sector a leer. Si suponemos que el nmero de
tro RLOC los nmeros de superficie, pista y sector
sector se codifica en los bits menos significa-
(y el nmero de disco, si se trata de un controlador
tivos de RLOC, basta, en principio con incre-
selector).
mentar el contenido del registro, pero si se ha
Se trata de escribir un programa que lea diez
llegado al ltimo sector de la pista habr que
bloques seguidos de un disco y que, tras la lectu-
cambiar tambin el nmero de la pista (y lo
ra de cada uno, realice algn procesamiento (que
mismo con el de la superficie, si la pista es la
aqu no viene al caso) con l. Estos bloques se irn
ltima de un cilindro).
transfiriendo sucesivamente del disco a una zona
de entrada/salida de 512 bytes reservada al efecto Mientras el controlador de ADM est transfi-
en la MP. riendo un bloque desde el disco hacia la zona de la
MP, la UCP no puede trabajar con el contenido de
esta zona; de ah el bucle de espera (resumido en
Programa 1: uso de una zona la frase esperar a que ADM = 0) en el pro-
grama. Y viceversa: cuando se est procesando la
La solucin ms inmediata para el problema zona (procesar(zona MP)), el controlador de
enunciado es la expresada en forma de seudoc- ADM permanece inactivo. Por tanto, de este modo
digo en el Programa 5.1. no ganamos nada con respecto a un programa que,
RLOC, RCB y RDEC son los registros de locali- sin utilizar el controlador de ADM, se basara en
zacin, cuenta de bytes y direccin en curso, instrucciones de entrada/salida con espera activa.
y REST es el puerto de estado del controlador. Concretamente, tenemos el diagrama de tiempos
5.9. ADM: modelos funcionales 185

UCP: manera no es necesario copiar de una a otra.


inicia servicio inicia En ambos casos se consigue que la transferen-
espera procesamiento
controlador interrupcin controlador
cia y el procesamiento se desarrollen simultnea-
tiempo
Controlador de ADM: mente, alternndose a lo largo del tiempo los ci-
lee y
clos de memoria que utilizan la UCP y el contro-
transfiere
a zona
lador de ADM.
El Programa 5.2 indica las operaciones nece-
Figura 5.7. Diagrama de tiempos en el caso de una sola sarias para la lectura de diez bloques, utilizando
zona. el procedimiento sugerido en segundo lugar. Una
variable que slo toma los valores verdadero o
de ocupacin de la UCP y del controlador dibuja- falso, a la que llamamos marca, sirve para ir
do en la Figura 5.7. (nicamente podra hacerse alternando las dos zonas: cuando su valor es fal-
simultnea la lectura con alguna operacin de pro- so el controlador de ADM est leyendo e intro-
cesamiento si sta fuera independiente de la infor- duciendo los datos en la ZONA0 mientras la UCP
macin leda; la incluiramos antes del bucle de es- est procesando los datos de la ZONA1, y cuan-
pera). Veremos a continuacin cmo un sencillo do el valor de marca es verdadero los datos se
arreglo mediante software permite hacer simult-
neos la lectura de un bloque y el procesamiento iniciar(RLOC);
del anteriormente ledo. RCB = 512;
RDEC = direcc.ZONA0;
iniciar(REST);
Programa 2: uso de dos zonas marca = falso;
Utilizando dos zonas podemos hacer que mien- desde CONT = 1 hasta CONT = 9 {
esperar a que ADM = 0;
tras se procesa una, previamente llenada, se es-
actualizar(RLOC);
t llenando la otra. Si las llamamos ZONA0 y RCB = 512;
ZONA1, podemos organizar las operaciones de si marca es verdadero entonces {
dos modos: RDEC = direcc.ZONA0;
Una de ellas, por ejemplo, ZONA0, es una zo- iniciar(REST);
na de entrada/salida, y la otra, ZONA1, es una marca = falso;
procesar(ZONA1)
zona de trabajo. Mientras se est transfiriendo un }
bloque entre el perifrico y la ZONA0, el progra- si no {
ma procesa la ZONA1. Cuando han concluido la RDEC = direcc.ZONA1;
transferencia y el procesamiento, el programa co- iniciar(REST);
pia la ZONA0 en la ZONA1 e inicia una nueva marca = verdadero;
transferencia y un nuevo procesamiento. procesar(ZONA0);
}
La funcin de cada zona (entrada/salida o tra- }
bajo) se va alternando conforme se pasa de un sec- esperar a que ADM = 0;
tor a otro, de modo que si en un determinado mo- si marca es verdadero entonces
mento se est transfiriendo hacia (o desde, si la procesar(ZONA1)
operacin fuera de salida) la ZONA0 y procesan- si no procesar(ZONA0)
do la ZONA1, cuando terminen la transferencia y
el procesamiento se transferir el siguiente sector Programa 5.2. Lectura con ADM de diez sectores se-
a la ZONA1 y se procesar la ZONA0. De esta guidos de un disco, utilizando dos zonas en la MP.
186 Leccin 5. Variaciones sobre la periferia

introducen en ZONA1 mientras la UCP procesa la 5.10. Procesadores perifricos


ZONA010 .
Ahora el diagrama de tiempos, pasada la lectu- La idea del acceso directo a la MP puede llevar-
ra del primer bloque (obsrvense los puntos a la se un poco ms lejos: si el controlador no se limita
izquierda de los cronogramas), es el de la Figu- al intercambio de datos con la MP, sino que tam-
ra 5.8(a) (en el caso de que la lectura de un bloque bin es capaz de interpretar como instrucciones
lleve ms tiempo que su procesamiento), o el de la contenidos previamente almacenados en la MP, el
5.8(b) (en el caso de que la lectura sea ms rpida controlador se convierte en un procesador. No se
que el procesamiento). trata de un capricho, sino de descargar de traba-
jo a la UCP. Los primeros procesadores de en-
UCP:
trada/salida se llamaban canales y podan ejecu-
inic. procesa serv. inic. procesa serv. tar programas de canal almacenados en la MP,
ZONA0 int. ZONA1 int.
con instrucciones muy especficas para transferir
Controlador de ADM: un determinado nmero de bloques entre la UCP
lee y lee y y un perifrico, cambiar de localizacin, etc.
transfiere transfiere
a ZONA1 a ZONA0 La capacidad de procesamiento de estos proce-
(a) lectura ms lenta que el procesamiento
sadores perifricos se ha ido ampliando, dotndo-
les de ms instrucciones con ms funciones. La ca-
sustica es muy variada, y nos contentaremos con
UCP: dejar esbozados cuatro ejemplos:
procesa serv. procesa inic. procesa serv. procesa
inic.
ZONA0 int. ZONA0 ZONA1 int. ZONA1
Los datos para el perifrico pueden estar en una
memoria local, dentro del mismo procesador peri-
Controlador de ADM: frico, haciendo as innecesarios los robos de ciclo
lee y lee y para acceder a estos datos.
transfiere transfiere
a ZONA1 a ZONA0 Los programas para el procesador perifrico
(b) procesamiento ms lento que la lectura pueden residir tambin en la memoria local.
Figura 5.8. Diagramas de tiempos cuando se usan dos El repertorio de instrucciones del procesador
zonas. perifrico puede ampliarse para que incluya ms
posibilidades que manejar los perifricos y trans-
Decamos antes que se trata de un sencillo ferir datos. Un ejemplo es el control de perifri-
arreglo mediante software porque conceptualmen- cos grficos, como pantallas e impresoras, ya co-
te no es muy difcil de entender. Pero a la hora mentado en el Apartado 5.2: el procesador puede
de traducir el seudocdigo a instrucciones de m- disearse para interpretar un lenguaje de alto ni-
quina resulta un programa tedioso de escribir, es- vel con instrucciones como trazar una recta que
pecialmente por la necesidad de conocer detalles pase por (x1 , y1 ) y (x2 , y2 ), dibujar un arco de
ntimos de la geometra del disco, la localizacin circunferencia entre (x1 , y1 ) y (x2 , y2 ) con radio
fsica de los datos en ese disco, etc. Este es uno de R, etc., o convertir grandes matrices de datos que
los motivos de la aparicin del nivel de mquina representan a un objeto en tres dimensiones para
operativa, que estudiaremos en la Tercera Parte. su presentacin en dos dimensiones.
Por motivos econmicos se tiende a utilizar
10
En este caso, al salir del bucle se cumple que marca es
verdadero, por lo que la ltima comprobacin del programa
procesadores relativamente potentes para contro-
es innecesaria, pero no lo sera si el programa se generaliza lar a los perifricos. Concretamente, es ms barato
para un nmero cualquiera de sectores. utilizar un microprocesador (del que posiblemen-
5.11. Comunicaciones entre ordenadores 187

te se fabrican millones de unidades) aunque no se queo ordenador por usuario (sustituyendo al ter-
aprovechen todas sus posibilidades que un proce- minal) que ejecuta uno o varios programas clien-
sador especficamente diseado para un tipo de pe- tes con su propio sistema operativo, y uno o varios
rifrico (del que podran fabricarse algunos miles grandes ordenadores que ejecutan programas ser-
de unidades). vidores, todos interconectados en una red (Aparta-
Sealemos finalmente que, aunque el adjetivo do 21.9).
perifrico sugiere la lejana fsica, estos con- La Internet, cuya expansin es bien conocida,
troladores no estn necesariamente alejados de la es una gigantesca red de redes de ordenadores, con
UCP. En el caso de las pantallas grficas, el pro- millones de clientes y servidores distribuidos por
cesador (la tarjeta grfica) se coloca, de hecho, todo el mundo.
muy cerca de la UCP.
Sistemas distribuidos
5.11. Comunicaciones entre orde- A veces se usan indistintamente, pero las expre-
siones red de ordenadores y sistema distribuido
nadores
no son exactamente equivalentes.
El estudio de las comunicaciones entre un orde- En primer lugar, la expresin sistema distribui-
nador y sus perifricos se extiende de manera na- do (o repartido) es ms general. Se refiere a
tural a las comunicaciones entre distintos ordena- un sistema cuyos subsistemas estn dispersos es-
dores. Hay al menos cuatro hechos, complemen- pacialmente y realizan tareas en paralelo. En este
tarios entre s, que contribuyen a la importancia sentido, todo ordenador sera un sistema distribui-
creciente de este asunto: do, pero, considerando como condicin adicional
la existencia de varios procesadores, podemos dis-
Como decamos en el Apartado 5.2, los sucesi- tinguir dos tipos de sistemas distribuidos:
vos diseos de los terminales han ido aumentando Sistemas fuertemente acoplados, caracteriza-
su capacidad de procesamiento autnomo, y entre dos porque, en trminos relativos, las informa-
un terminal inteligente dotado de un procesador ciones se intercambian entre los procesadores
y una memoria y un ordenador la nica diferencia con una tasa de transferencia grande y el retar-
es que el primero puede no tener memoria secun- do de la comunicacin es muy bajo.
daria.
Sistemas dbilmente acoplados, caracteriza-
Es importante econmicamente poder compar- dos por lo contrario (tasa de transferencia rela-
tir recursos. As, un supercomputador tiene un tivamente baja y retardo relativamente grande).
coste muy elevado, y su instalacin slo puede jus- Normalmente, un sistema fuertemente acopla-
tificarse en grandes organizaciones; disponible en do es un sistema multiprocesador, y uno dbil-
una red, usuarios de organizaciones ms peque- mente acoplado es un multiordenador (Aparta-
as pueden acceder a l. Otro ejemplo es el de las do 15.2)11 .
grandes bases de datos, accesibles tambin a tra- Es frecuente que al hablar de sistema distribui-
vs de las redes. do se d por sobreentendido que se trata de uno
En cifras aproximadas, un ordenador diez ve- dbilmente acoplado. Aun as, tampoco es lo
ces ms potente que un ordenador personal tiene mismo que una red de ordenadores. Una red es un
un coste cien veces superior. Frente a la arquitec- 11
Ntese, no obstante, que la clasificacin por la fuerza
tura clsica, centralizada, de un gran ordenador del acoplamiento est basada en consideraciones funcionales,
con muchos terminales tontos, son ms renta- mientras que la clasificacin como multiprocesador o mul-
bles las arquitecturas clienteservidor: un pe- tiordenador est basada en modelos estructurales.
188 Leccin 5. Variaciones sobre la periferia

conjunto de ordenadores interconectados, mien- Km


buses de entrada/salida
tras que un sistema distribuido es una red acompa- (sistemas multiprocesadores)
ada de unos programas que hacen transparente 0.001
redes de rea personal
la red al usuario. As, en una red de ordenadores, 0.01
si el usuario quiere ejecutar un determinado pro- 0.1 redes de rea local
grama de aplicacin, o consultar una base de da-
1.0
tos que est en uno de los ordenadores, tiene que redes de rea metropolitana
conocer el nombre de ese ordenador y conectarse 10

a l. En un sistema distribuido el usuario trabaja 100 redes de rea extensa


considerando al sistema como un conjunto nico:
1000
puede acceder a los recursos sin tener que saber en
10000
qu ordenador se encuentra cada uno.
Este asunto es muy amplio, y, como para otros,
aqu slo daremos una introduccin a las redes de
ordenadores. En el Apartado 21.9 comentaremos Figura 5.9 Extensiones geogrficas de las redes.
los sistemas operativos en red y distribuidos.

Redes de ordenadores
Una primera clasificacin de las redes de orde- subred

nadores es la que se basa en su extensin geogr-


fica. Se habla de:
redes de rea personal, en las que las distan-
cias entre ordenadores son inferiores a diez me- ordenadores
tros,
nodos de conmutacin
redes de rea local, para distancias entre 10 m
y 1 Km, Figura 5.10 Modelo estructural genrico de una red.
redes de rea metropolitana, para distancias
entre 1 Km y 10 Km, y tos nodos es muy variable: desde sencillos circui-
redes de rea extensa cuando las distancias son tos de adaptacin hasta complejos procesadores de
superiores a 10 Km. comunicaciones.
Las fronteras son, naturalmente, aproximadas. Los mensajes que los ordenadores ponen sobre
En la Figura 5.9 se han incluido tambin, para la subred para que otro u otros los reciban pueden
comparar, los buses de entrada/salida (que inter- ser ms o menos largos, dependiendo de la aplica-
conectan los subsistemas en sistemas fuertemente cin. Generalmente el nodo emisor descompone
acoplados). cada mensaje en una sucesin de paquetes de lon-
Otra clasificacin se obtiene considerando la to- gitud fija (unos cientos o unos miles de bytes), y
pologa, que es como se suele llamar en este cam- el nodo receptor recomponen el mensaje original
po al modelo estructural. La Figura 5.10 presen- a partir de los paquetes recibidos12 .
ta un modelo estructural genrico; la topologa se 12
Para no transmitir un mensaje equvoco al lector he-
refiere a la forma (abstrada en la figura) de inter- mos de aclarar que los procedimientos ms utilizados en las
conectar los nodos de conmutacin, formando la redes de datos estn basados en conmutacin de paquetes,
subred de comunicaciones. La naturaleza de es- pero tambin puede hacerse la comunicacin mediante con-
5.11. Comunicaciones entre ordenadores 189

Subredes de comunicaciones
La Figura 5.11 muestra algunas topologas tpi-
cas de las subredes.
La estrella es un modelo estructural directamen-
te derivado de una organizacin conocida desde estrella bus anillo con difusin
hace tiempo: un ordenador central y terminales;
ahora, los terminales suelen ser inteligentes, u
ordenadores. Las topologas de anillo y bus son
las ms utilizadas en las redes de rea local y me-
tropolitana, en las que, normalmente, cada nodo
atiende a un solo ordenador. En la comunicacin
por difusin el emisor pone los paquetes en un anillo punto a punto irrregular

medio comn y accesible por todos (el bus o el


anillo, que es un bus cerrado), junto con una iden-
tificacin de a quin van dirigidos; todos los nodos
reciben los paquetes, pero nicamente los recoge
aqul al que van dirigidos (de manera similar co-
mo se procede en los buses de entrada/salida). El
problema central en el diseo de este tipo de subre-
des es el de acceso al medio: cmo evitar que sur-
jan conflictos en el uso del bus o del anillo. En la
encaminador,
topologa de anillo punto a punto los paquetes via- pasarela
jan en un sentido u otro por el anillo, y cada nodo puente
lo retransmite al siguiente si no va dirigido a l.
hbrido
La topologa irregular es la que comnmente se
encuentra en las subredes de rea extensa. Los no- Figura 5.11 Modelos estructurales de la subred.
dos aqu son ms complejos, porque generalmente
atienden a varios ordenadores (en cada nodo exis- ra establecer la comunicacin entre dos puntos
te una topologa local en estrella o de otro tipo). puedan encontrarse varios caminos alternativos. El
La comunicacin no es por difusin, sino punto a problema aqu no es de acceso al medio, sino de
punto: el mensaje inicial se transmite desde el no- encaminamiento: cmo elegir en cada momento
do emisor, a travs de nodos intermedios, hasta el el mejor camino. En efecto, el camino ms corto
receptor. Normalmente cada nodo va almacenan- no es necesariamente el mejor: puede haber una
do los paquetes que le van llegando y luego los congestin por un trfico elevado, o puede haber
va emitiendo hacia los nodos que correspondan a un nodo defectuoso. As, incluso durante la trans-
cada uno; se dice que es una subred de almacena- misin de un mensaje, puede ocurrir que intere-
miento y envo o de conmutacin de paquetes. se que los paquetes viajen por distintos caminos.
En esta topologa irregular es frecuente que pa- Existe, como antes, una diversidad de soluciones
cuya descripcin sobrepasa nuestro propsito in-
mutacin de mensajes (los mensajes se envan enteros) o troductorio.
mediante conmutacin de circuitos (que funciona como el
sistema telefnico: se establece un camino por el que viajan
Como se indica en la parte inferior de la Figu-
los mensajes en un sentido u otro, y que permanece hasta que ra 5.11, es muy comn que en los nodos de una
se cierra la comunicacin). subred de rea extensa se establezca un enlace con
190 Leccin 5. Variaciones sobre la periferia

una subred de rea local. Los encaminadores y las medio capacidad


pasarelas son subsistemas que adaptan los con- par trenzado 2 Mbps
venios y modos de funcionamiento de un tipo de cable coaxial (banda base) 10 Mbps
cable coaxial (banda ancha) 150 Mbps
subred a otro, mientras que los puentes enlazan microondas y satlites 600 Mbps
subredes del mismo tipo. fibra ptica 1.000 Mbps
Otro asunto en las subredes, en principio inde-
Tabla 5.2. Capacidades tpicas de algunos medios de
pendiente de la topologa, es el que se refiere al
transmisin.
medio fsico por el que se realiza la transmisin.
En la Tabla 5.2 pueden verse los ms utilizados, subred capacidad
junto con su capacidad de transmisin, o ancho telefnica 30 Kbps
de banda, en millones de bits por segundo. RDSI 144 Kbps
Ancho de banda es una expresin que provie- Ethernet 10 Mbps
FDDI 100 Mbps
ne de los sistemas de comunicacin analgica. En
RDSIBA 600 Mbps
el sistema telefnico slo pueden transmitirse por
una lnea seales de frecuencias comprendidas en- Tabla 5.3 Capacidades de algunas subredes.
tre 300 Hz y 3.300 Hz. (Al alejarse de los extremos
de esa banda de 3 KHz, la atenuacin de las se- Redes de rea local
ales aumenta rpidamente). En la comunicacin
digital lo que interesa es el flujo de informacin, En la Figura 5.12 se muestra una disposicin de
medido en bits por segundo. distintas mquinas en una red de rea local basa-
Que una subred utilice un determinado medio da en bus. Conectados a ella pueden encontrarse
no quiere decir que haga uso de toda la capaci- terminales (quizs con alguna capacidad local de
dad de ese medio. El ejemplo ms notorio es la procesamiento grfico), estaciones de trabajo sin
red telefnica, que utiliza par trenzado. Como es- discos (ordenadores con una UCP, una MP y un
t diseada para transmisin de voz, las seales terminal), estaciones de trabajo con disco, servi-
que se transmiten por ella son analgicas, con un dores de ficheros e impresoras de uso comn. El
ancho de banda de unos 3.000 Hz. En la transmi- software (sistema operativo en red o distribuido,
sin de seales digitales con un mdem, con ese Apartado 21.9) debe proporcionar la posibilidad
ancho de banda y la relacin seal/ruido normal de compartir recursos (para que, por ejemplo, los
de las lneas, el mximo flujo terico es 30 Kbps terminales y las estaciones de trabajo sin disco
(pgina 452). En la Tabla 5.3 se resumen las capa- acudan a los ficheros del servidor). En la figura se
cidades tpicas de algunas subredes. RDSI sig- ha incluido tambin un puente a otra red local y un
nifica red digital de servicios integrados; se trata encaminador a una red de rea extensa (X.25 es
de una red pblica para transmisin de voz y da- una norma para las redes pblicas de transmisin
tos que, utilizando las infraestructuras existentes de datos).
de las redes telefnica y de datos, est en vas de
implantacin. RDSIBA es RDSI de banda an- Arquitecturas
cha, que est en estado de experimentacin y de
normalizacin, y que en un futuro incierto llega- La arquitectura de comunicaciones se refiere
ra a sustituir a las redes pblicas actuales. Estas al modelo funcional que define los convenios pa-
redes son de rea extensa. Las otras que se citan ra establecer la comunicacin. En realidad no se
son redes locales; Ethernet utiliza cable coaxial suele definir un modelo funcional nico, sino una
y FDDI (fiber distributed data interface) fibra jerarqua de modelos. En efecto, como para todo
ptica. sistema complejo (Apartado 0.2), se hace necesa-
5.11. Comunicaciones entre ordenadores 191

capa n protocolo capa n


de la capa n
terminales

encaminador
estaciones de trabajo

UCP X.25 protocolo


MP capa 2 capa 2
de la capa 2
sin disco

interfaz 1/2 interfaz 1/2

puente
capa 1 protocolo capa 1
de la capa 1
estaciones de trabajo

UCP
MP
con disco

medio fsico

Figura 5.13. Modelo jerrquico para comunicaciones


de datos.
servidores de
ficheros

de esa capa (y haciendo abstraccin de cmo se


comunican las capas inferiores, y, en concreto, de
cmo ocurre la transmisin por el medio fsico).
Supongamos que se trata de establecer una co-
municacin de voz, texto e imgenes entre mdi-
impresoras

cos a travs de las redes pblicas de datos. En la


capa superior se podran definir protocolos sobre
la forma de disponer las imgenes en la pantalla,
ventanas, iconos, manejo de los cursores, etc. Pe-
Figura 5.12 Una red de rea local. ro la transmisin real por el medio fsico implica
consideraciones de un nivel de abstraccin mucho
ms bajo: cmo se representan los valores lgicos
rio definir varios niveles de abstraccin. En este
0 y 1, qu retardo tiene la transmisin de un
caso, los niveles se llaman capas. Cada una im-
bit, qu tasa de errores tiene el medio, cmo son,
plementa un conjunto de operaciones primitivas o
mecnicamente, los conectores, etc. Como en toda
servicios de los que hace uso la capa inmediata-
jerarqua de niveles, las capas sucesivas van abs-
mente superior a ella; la especificacin de estos
trayendo los detalles. Por ejemplo:
servicios constituye la interfaz entre las capas. En
cada capa existen entidades que se comunican ob- 1. En la capa 1 se realizan las operaciones nece-
servando ciertos convenios, o protocolos. sarias para adecuar la seal al medio: modula-
La Figura 5.13 ilustra los conceptos definidos cin, acoplamiento, etc., ofreciendo un servicio
en el prrafo anterior. En la parte inferior est el de transmisin de bits.
medio fsico por el que se establece la transmisin; 2. La capa 2 puede encargarse de proporcionar un
en la superior, la capa que representa la comuni- servicio de transmisin de un flujo de bits libre
cacin al ms alto nivel de abstraccin considera- de errores. Una tcnica consiste en que los pro-
do por el modelo. Dos entidades de la misma ca- gramas que implementan esta capa en el lado
pa pueden comunicarse respetando los protocolos emisor agrupen los bits conforme van llegando
192 Leccin 5. Variaciones sobre la periferia

Me(n) Mr(n) Las capas sucesivas son independientes de la


aplicacin final. Para hacer posible que la subred
pueda satisfacer a aplicaciones diversas es nece-
sario que la arquitectura (conjunto de capas, de
interfaces y de protocolos) est perfectamente de-
finida.
Me(2) Mr(2)

5.12. Normalizacin

Me(1) Mr(1)
Este es un curso sobre conceptos generales y b-
sicos, en el que no entramos en los detalles espe-
cficos de los ordenadores reales (salvando alguna
seal
excepcin, como la de la Figura 5.4). Los buses
y los controladores que presentamos, as como las
Figura 5.14. Transmisin de un mensaje por las capas interfaces (protocolos y otros convenios del nivel
del modelo. lgico que estudiaremos en la Segunda Parte) no
en grupos de, por ejemplo, cien bytes, y aadan son ms que modelos idealizados para transmitir
a cada grupo dos conjuntos de bits que sea- al lector esos conceptos bsicos.
lan la cabeza y la cola; en el lado receptor, Ahora bien, en el campo de los buses y, en gene-
cada grupo se reenva al emisor, que compara ral, en el de las comunicaciones, se da una circuns-
lo que le llega con lo que envi, y en caso de tancia especial que conviene conocer. Por las razo-
error lo retransmite. Evidentemente, este pro- nes comerciales a las que aludamos en el Aparta-
cedimiento es muy costoso en cuanto al apro- do 5.3, las presiones para adoptar convenios co-
vechamiento de la capacidad de transmisin del munes (y as conseguir que productos de fabri-
medio fsico. Existen otros ms sencillos pe- cantes distintos sean compatibles), son muy acu-
ro menos seguros. Normalmente la capa pue- sadas. Esto ha conducido a la aparicin de nor-
de ofrecer un conjunto de servicios de distinta mas, algunas oficiales o de jure (propuestas o
calidad entre los que se puede elegir para cada adoptadas por organismos como ISO y UIT-T), y
aplicacin. otras de facto (establecidas por algn fabricante
o asociacin y seguidas luego por la mayora).
3. La capa 3 se ocupa de encaminar la transmisin
Muchas normas oficiales proceden de alguna
por la red y da un servicio de transmisin de
iniciativa empresarial previa. Por ejemplo:
paquetes en el que la ruta real por donde viajan
queda oculta. La norma UIT-T V.24, ms conocida como RS-
232-C, o EIA-232-E, o, simplemente, puer-
4. La capa 4 descompone los mensajes originales
to serie, es una interfaz concebida, en prin-
en paquetes.
cipio, para comunicaciones por va mdem y
5. Etc. lnea telefnica, pero que se aplica en general
Un mensaje original emitido por la capa n (obe- a las comunicaciones seriales con perifricos
deciendo los protocolos de esta capa) va sufriendo lentos (Apartados 14.4 y 14.8). Su origen fue
modificaciones sucesivas (descomposicin en pa- un acuerdo de varios fabricantes de ordenado-
quetes, adicin de cabeceras, etc.) hasta llegar al res y teletipos (Apartado 14.9) especificado
medio fsico. En la recepcin se invierten las trans- en 1969 por la EIA (Electronics Industry Asso-
formaciones (Figura 5.14). ciation).
5.13. Sistemas abiertos 193

La interfaz Centronics, para conexin de im- El USB (Universal Serial Bus), promocionado
presoras a la UCP, fue diseada y desarrollada a partir de 1995 por varias empresas como un
por la empresa del mismo nombre y por Ep- complemento al FireWire para perifricos len-
son en los aos 70, y se utiliz en todos los tos (1,5 Mbps), se utiliza desde el ao 2002
ordenadores personales de los aos 80, cono- en su versin 2.0, que permite tasas de hasta
cindose tambin como SPP (Standard Parallel 480 Mbps, y se ha desarrollado otra versin
Port) (puerto paralelo). Su tasa mxima de posterior, llamada USB OTG (USB On-The-
transferencia, 1.200 Kbps, era suficiente en esa Go) para la interconexin de dispositivos digi-
poca, pero la evolucin tecnolgica y la con- tales sin mediacin de un ordenador.
veniencia de permitir comunicacin bidireccio- Los protocolos de la serie TCP/IP, utilizados
nal la dejaron pronto obsoleta. En 1991, una en la Internet. La IAB (Internet Architecture
asociacin de fabricantes de impresoras, la Net- Board) de la Internet Society se ocupa de la
work Printing Alliance, propuso al IEEE la ela- normalizacin en este campo.
boracin de una norma que, siendo compatible
Esta actividad de normalizacin se hace an
con la SPP, permitiese tasas ms elevadas. Es-
ms necesaria en las comunicaciones entre orde-
ta norma, la IEEE 1284, es la que actualmente
nadores. El modelo de referencia OSI (Open
se utiliza, en dos variedades: EPP (Enhanced
Systems Interconnection, interconexin de siste-
Parallel Port), para impresoras y escneres, a
mas abiertos) es una norma de ISO y UIT-T uni-
8 Mbps, y ECP (Extended Capabilities Port),
versalmente aceptada como marco genrico para
para CD, controladores de red, etc, a 16 Mbps.
las comunicaciones de datos. En esencia, se ba-
La norma IEEE 1014, ms conocida como sa en el modelo de la Figura 5.13, con siete ni-
VME (Versa Module Eurocard), familia de bu- veles o capas. Dentro de cada capa se establecen
ses de interconexin para sistemas de treinta y dos tipos de normas: las relativas al servicio (in-
dos bits, tiene su origen en el Versabus de terfaz de la capa con la superior a ella) y las que
Motorola. especifican los protocolos (naturaleza y convenios
La norma ANSI X3.131, ms conocida co- de representacin de los mensajes intercambiados
mo SCSI (Small Computer System Interface), entre entidades comunicantes en ese nivel). Su es-
que especifica una interfaz para buses de entra- tudio es ya propio de textos especializados, como
da/salida, procede de SASI, introducida por los que citamos en el Apartado 5.17.
un fabricante de discos, Shugart.
La norma IEEE 1394 define un bus serial de
gran velocidad (400 Mbps) para aplicaciones 5.13. Sistemas abiertos
multimedia basado en el que haba introducido
Los intereses comerciales en el campo de la te-
la empresa Apple con el nombre de FireWire
lemtica dan lugar a situaciones ms complejas
con el objetivo de integrar ordenadores y asis-
que en otras industrias. En la del automvil, por
tentes personales con DVD, televisin digital,
ejemplo, cada fabricante tiene sus propios diseos
etc.
para los componentes, y normalmente se utilizan
Ejemplos de normas de facto son:
repuestos de la marca original. En este sentido un
El lenguaje PostScript (de Adobe) para des- automvil es un sistema cerrado. Es abierto en
cripcin del contenido de pginas en impreso- otros dos sentidos: por una parte tiene que inte-
ras lser. ractuar con el conductor, y por otra tiene que fun-
El bus PCI (de Intel), bus del sistema para cionar en armona con otro sistema: el de las vas
ordenadores personales. pblicas de circulacin. Pero para ambos tipos de
194 Leccin 5. Variaciones sobre la periferia

interaccin existen interfaces bien definidas, sen- arquitectura (entendida aqu la arquitectura como
cillas y universalmente adoptadas. Con respecto al el modelo funcional, es decir, los convenios de re-
usuario, las situaciones del volante, pedales y otros presentacin en el nivel de mquina convencional
mandos, y en lo que se refiere a las vas es an ms y el repertorio de instrucciones). O bien, cuando la
sencillo: cuatro ruedas. Y la especificacin de es- arquitectura es una norma oficial. Un ejemplo de
tas interfaces tiene una gran tolerancia: no importa arquitectura abierta es SPARC, de Sun Microsys-
mucho la separacin entre las ruedas, como tam- tems, base de la norma IEEE P1754, que nos ser-
poco entre los pedales. vir de modelo para Regstrez, en la Leccin 8.
Pero en las comunicaciones entre ordenadores, Se dice del hardware de un ordenador que es
o entre componentes de ordenadores, las especifi- abierto cuando la especificacin de sus buses es
caciones tienen que ser muy rigurosas. Basta con de dominio pblico y se atiene a normas oficiales
cambiar el convenio sobre dnde se sita un deter- (caso del bus SCSI) o a normas de facto, en las
minado bit en un mensaje que consta de millones que el autor de las normas no pone objeciones a la
de bytes para que las mquinas no se entiendan fabricacin por otros de subsistemas compatibles
si el cambio se hace en una y no en la otra. (caso del bus PCI).
Los fabricantes fijan sus polticas para el diseo Se dice del software que compone un sistema
de productos teniendo en cuenta dos consideracio- operativo que es abierto cuando los programas de
nes contrapuestas: aplicacin desarrollados en distintos ordenadores
Por una parte, tener un mercado cautivo es una pueden llevarse (o portarse) sin modificaciones
situacin atractiva; esta situacin se fomenta de uno a otro. Es decir, que un programa desarro-
con productos cerrados: incompatibles y de co- llado en uno de los ordenadores, bajo su sistema
municacin imposible con los de otros fabri- operativo, pueda ejecutarse en el otro. Para esto no
cantes. es necesario que los sistemas operativos de ambos
Por otra, tambin les interesa hacerse con una ordenadores sean idnticos, sino que se atengan a
elevada cuota de mercado; y los clientes pre- una normativa. En el Apartado 21.2 veremos un
fieren soluciones abiertas, que no condicionen ejemplo, POSIX.13
la evolucin de sus inversiones en informtica Se dice del software de comunicaciones que
y telemtica. es abierto cuando respeta normas universalmente
En este marco, se comprende que la evolucin aceptadas, como los protocolos TCP/IP citados en
de la industria sea bastante errtica, con alianzas el anterior Apartado.
temporales entre fabricantes para hacer compati- Vemos, pues, que el adjetivo abierto se apli-
bles sus productos, con patentes de las que se ofre- ca a cosas bastante diferentes. Pero en todas ellas
cen licencias a otros, etc. Pero parece que tiende puede observarse algo en comn: se trata de ate-
a imponerse un elemento estabilizador: la acep- nerse a normas sobre interfaces, es decir, so-
tacin por fabricantes y usuarios de los llamados bre modelos funcionales. Dos fabricantes distintos
sistemas abiertos. pueden tener sus propios productos abiertos pa-
El concepto genrico de sistema abierto (Apar- ra, por ejemplo, interconectar sus ordenadores a
tado 0.2) se concreta en el campo de la telemtica las redes pblicas de datos. Estos productos ten-
de varias maneras: drn forzosamente que ser funcionalmente equi-
Se dice de una UCP que es una arquitectu- 13
No debe confundirse este concepto de software abierto
ra abierta cuando la empresa que la ha diseado con el de cdigo fuente abierto (open source), que es (con
permite (y promueve) que otros fabricantes imple- algn pequeo matiz), equivalente a software libre (Apar-
menten y comercialicen productos basados en esa tado 20.10).
5.15. Observaciones terminolgicas 195

valentes, pero internamente (en sus modelos es- bloque; en el caso de un disco un bloque es un
tructurales y procesales) pueden ser completamen- sector o un pequeo nmero de sectores del disco.
te diferentes y sus diseos pueden estar legalmente Estos perifricos se llaman de bloques, a diferen-
protegidos. cia de los perifricos de caracteres, en los que la
Con respecto a la definicin clsica en teora transferencia tiene lugar carcter a carcter.
de sistemas (sistema que intercambia materia y/o Tres son las caractersticas diferenciadoras de
energa y/o informacin con el entorno, Aparta- un controlador de ADM con respecto a los de los
do 0.2), lo que se aade en telemtica es que el in- perifricos de caracteres:
tercambio (de informacin) debe efectuarse respe- el controlador de ADM tiene acceso directo a
tando unas normas (o, lo que es lo mismo, un mo- bus del sistema (buses A, D y C).
delo funcional perfectamente definido) aceptadas el controlador de ADM roba ciclos de la MP a
por todos (o por todos los que, coherentemente, la UCP;
quieren ponerle a sus sistemas la etiqueta abier- el controlador de ADM mantiene la cuenta de
to). bytes o de palabras transferidas entre el perif-
rico y la MP.
Hay varios tipos de controladores de ADM:
5.14. Resumen dedicado (atiende a un solo perifrico), selector
(puede atender a varios, asignados permanente-
La entrada/salida (comunicaciones de la UCP y
mente), flotante (puede atender a varios, asignados
la MP con los perifricos, incluyendo entre stos
dinmicamente) y multiplexador (puede atender a
a las memorias secundarias, y con otros ordena-
varios simultneamente, repartiendo su tiempo
dores) es un asunto complejo, por la variedad de
entre ellos).
perifricos, de modalidades de conexin y de mo-
Si los controladores de ADM leen y escriben
dos de funcionamiento.
datos en la MP, los procesadores perifricos, leen
En general, los perifricos van a acompaados
e interpretan, adems, instrucciones. Desde la apa-
de subsistemas de control especficos (controlado-
ricin de aplicaciones multimedia, un procesador
res) que pueden hacer comunicar a uno o varios
perifrico esencial es el controlador de grficos.
perifricos con algn registro de la UCP, o directa-
Finalmente, y tras esbozar algunas ideas bsi-
mente con la MP. La conexin de los controladores
cas de las redes de ordenadores. hemos sealado
puede hacerse a travs del mismo bus que comuni-
la importancia de las actividades de normalizacin
ca a la UCP con la MP (bus del sistema] o median-
de las comunicaciones con los perifricos y con
te vas especializadas (buses de entrada/salida).
otros ordenadores, lo que nos ha llevado a concluir
Las memorias secundarias pueden almacenar
con unos comentarios sobre los llamados sistemas
grandes volmenes de datos, pero tambin pue-
abiertos.
den enviar estos datos hacia la MP, o leerlos de
ella, con tasas de transferencia tan elevadas que
hacen inviable el paso intermedio por registros de 5.15. Observaciones terminolgicas
la UCP. Para esta situacin resulta adecuado el ac-
ceso directo a la memoria (ADM). Con la tcnica Los conversores analgicodigital y digital
analgico suelen conocerse como ADC (Analog
de ADM la UCP delega en el controlador funcio-
to Digital Converter) y DAC (Digital to Analog
nes rutinarias para la transferencia sucesiva de by- Converter), respectivamente. RAMDAC es por
tes o de palabras entre la MP y los perifricos. El Random Access Memory DAC. Igualmente, suele
conjunto de bytes que se transfieren en una opera- decirse DMA (Direct Memory Access) en lugar
cin de ADM sin intervencin de la UCP se llama de ADM.
196 Leccin 5. Variaciones sobre la periferia

A veces resulta difcil buscar equivalentes adecua- comunicacin por difusin = broadcasting
dos para ciertos trminos, y en la jerga profesional se almacenamiento y envo = store and forward
suelen dejar en ingls. Backup puede traducirse, co- conmutacin de paquetes = packet switching
mo hemos hecho, por copia de seguridad, pero pa- encaminamiento/encaminador = routing/router
ra expresar correctamente streamer habra que decir pasarela = gateway
unidad de cinta de flujo continuo (o utilizar algn tr- puente = bridge
mino que traduzca el sentido original, como serpen- par trenzado = twisted pair
tina, que al no ser de uso comn y establecido pue-
de perjudicar la comprensin). Lo mismo ocurre con
disquete, escner y mdem, aceptados ya por 5.16. Notas histricas
la R.A.E. (lo que no aclara es cmo se forma el plural).
Otros que, sin embargo, tienen traduccin fcil tambin Los primeros perifricos que se utilizaron fueron las
se utilizan en ingls, como es el caso de frame buffer, lectoras de tarjetas y de cintas de papel perforadas, ya
que hemos traducido por memoria de fotograma , o desarrolladas para otras aplicaciones. En los primeros
el barbarismo removible por intercambiable. ordenadores comerciales (UNIVAC 1 en 1951 e IBM
Robo de ciclo es traduccin literal de cycle stea- 701 en 1953) se introdujeron las cintas y los tambores
ling, pero el robo de bus corresponde a lo que otros magnticos como memorias secundarias.
textos denominan burst mode (modo de rfagas). El subsistema de entrada/salida es, de todos los que
componen un ordenador, el que ms ha evolucionado,
Las zonas de la MP reservadas para almacena-
debido a la aparicin de nuevas aplicaciones, con su di-
miento intermedio de datos procedentes o con destino a
versidad de dispositivos perifricos. Nadie hubiera po-
perifricos se llaman en ingls buffers (ya lo haba-
dido prever en los aos 50 y 60 que los ordenadores lle-
mos comentado en el Apartado 2.11). As, la tcnica
garan a utilizarse para controlar edificios, automviles,
del uso de dos zonas (Apartado 5.9) se conoce como
electrodomsticos y juguetes. Esta misma diversidad,
double buffering.
con el gran nmero de variantes en las soluciones hard-
A telemtica (fusin de informtica y auto-
ware y software que origina, hace que el problema de
mtica) se le atribuye un origen francs (el informe
las comunicaciones con el exterior sea particularmen-
NoraMinc, 1978), pero el trmino apareci antes en
te difcil de presentar de un modo general y, al tiempo,
el ttulo y el texto de un artculo de Luis Arroyo (1977).
inteligible.
Hemos preferido norma a estndar (como en La primera organizacin con bus nico fue la del mi-
AENOR, la Asociacin Espaola de Normalizacin y niordenador PDP11, aparecido en 1969; el fabricante,
Certificacin) aunque la R.A.E. admite tambin el se- Digital Equipment Corp., lo bautiz y registr con el
gundo trmino (y estandarizacin, y estandardiza- nombre de Unibus. Hace aos, cada fabricante de
cin!, en lugar de normalizacin). ordenadores especificaba sus propios buses de entra-
ISO (International Standards Organization) y UIT-T da/salida y sus protocolos: Unibus de DEC, Mul-
(Unin Internacional de Telecomunicaciones, antes tibus de Intel, Versabus de Motorola, Megabus
CCITT) son organizaciones internacionales de norma- de Honeywell, etc. Esto conduca a que para un mis-
lizacin. Las normas elaboradas por ANSI (American mo perifrico el controlador fuera diferente segn el
National Standards Institute) y las del IEEE (Institute ordenador al que hubiera de conectarse. La situacin
of Electrical and Electronics Engineers) son frecuente- ha cambiado con la aparicin y adopcin de normas.
mente adoptadas por ISO. En 1984 IBM introdujo el modelo PC AT, basado
Las expresiones red de rea personal, local, en el microprocesador 80286 de Intel (Apartado 6.18),
metropolitana y extensa suelen abreviarse como de diecisis bits. Tena un bus nico con un reloj de
PAN, LAN, MAN y WAN, respectivamente 8 MHz (al tener diecisis lneas de datos, esto permita
(la ltima, de Wide Area Network). La RDSI es una tasa de transferencia de 16 MB/s). Las especifica-
tambin conocida como ISDN (integrated services ciones del bus eran abiertas, y rpidamente se adopt
digital network), y la RDSIBA como BISDN en todos los PC clnicos. Pero AT era una mar-
(BroadISDN). ca registrada, por lo que la norma recibi el nombre de
Otras traducciones de trminos relacionados con las ISA (Industry Standard Architecture).
redes de ordenadores son: Cuando al principio de los 90 los 16 MB/s empeza-
5.18. Ejercicios 197

ron a ser escasos para las tasas de transferencia de los (Ashby, 1956). Remitimos al lector interesado a Sez
discos y los controladores grficos aparecieron otros (1992).
buses, como el Microchannel de IBM (que, rompien- Sobre perifricos en general, en Prieto et al. (2002)
do la tradicin, no era abierto), o el EISA (Enhanced se da un catlogo muy completo con las principales
ISA), norma propuesta por otros fabricantes. Igualmen- caractersticas. Para ms detalles, la PC Guide que
te se usaron otros buses e interfaces especializados pa- mantiene Kozierok (2002) en pginas web contiene una
ra controladores grficos. Actualmente se han impuesto gran cantidad de informacin (ms de 48 MB) actuali-
como normas el PCI y el AGP, introducidos por Intel. zada (y no slo perifricos: procesadores, BIOS, etc.).
Ivan Sutherland, cuyos trabajos pioneros datan de Para informacin especfica sobre CD y DVD, en las
1960, es reconocido como padre de los grficos en pginas de CD-info (2002) hay muchos enlaces.
los ordenadores: muchos de los conceptos actuales en En un extenso artculo de Nicoud (1988) pueden en-
este campo tienen su origen en Sutherland (1963). contrarse detalles sobre el diseo de terminales grficos
La primera unidad disco magntico, IBM 305 RA- con VRAM, as como otras aplicaciones de este tipo de
MAC (Random Access Method of Accounting and memoria.
Control), introducida en 1956, tena cincuenta discos Sobre comunicaciones de datos y redes de ordena-
de 60 cm de dimetro en los que almacenaba 5 MB, y dores en general son recomendables los libros de Ta-
una tasa de transferencia de 8.800 B/s. El mismo fabri- nenbaum (2003) y Stallings (2004).
cante present en 1973 lo que puede llamarse el pa-
dre de los discos duros actuales: el IBM 3340. La uni-
dad tena dos partes, una fija y otra intercambiable, am- 5.18. Ejercicios
bas con una capacidad de 30 MB, por lo que tambin se
1. Una unidad de cinta clsica tiene una densi-
conoca como el 3030. Y esto llev a llamarle dis-
dad lineal de grabacin de 1.600 bpi, nueve pis-
co Winchester, por el famoso rifle Winchester 3030.
tas, una longitud de 2.400 pies (unos 730 metros)
El acrnimo RAID lo acuaron investigadores de y una velocidad normal de lectura y escritura de
la University de California en Berkeley, que empezaron 125 pulgadas por segundo. Calcule su capacidad
a disear arrays de discos en 1987. total y su tasa de transferencia.
La idea de los procesadores perifricos con progra-
mas residentes en memoria local se materializ en los 2. Los clculos del anterior Ejercicio se refieren a
PCPs (Peripheral Control Processors) del ordenador la cinta no formateada. Suponga que los regis-
CDC-6600, aparecido en 1964. tros son de longitud fija e igual a 256 bytes, y que
En Smotherman (1989) puede encontrarse una vi- los intervalos entre registros son de veinte mil-
sin general de la evolucin histrica de los sistemas metros, e ignore otros factores que reducen la ca-
de entrada/salida. pacidad, como los intervalos entre ficheros. Cal-
cule la capacidad total real.
Gran parte de los conceptos para las redes de rea
extensa proceden de la primera, ARPANET, red del 3. Un formato tpico para disquetes de 3,5 pulgadas
Ministerio de Defensa de EE.UU., que data de 1969 tiene dos superficies, ochenta cilindros, dieciocho
(McQuillan y Walden, 1977) y ha sido el origen de los sectores por pista y quinientos doce bytes por sec-
protocolos TCP/IP y de la Internet. Ethernet, la primera tor, y gira a 300 rpm (revoluciones por minuto).
red de rea local, que data de 1973 (Metcalfe y Boogs, Calcule la capacidad total y la tasa de transferen-
1977), es tambin actualmente el tipo de red local ms cia.
utilizado.
4. Cuntos de estos disquetes son necesarios pa-
ra hacer una copia de seguridad de un disco de
60 GB?
5.17. Orientaciones bibliogrficas 5. Estime el nmero de disquetes (con el formato de
los anteriores Ejercicios) necesarios para almace-
En la discusin sobre la problemtica de la conexin
nar el texto de este libro.
de perifricos a la UCP (Apartado 5.3) hemos utiliza-
do el trmino variedad, que designa a un concepto ci- 6. Estime el nmero de libros como ste que pueden
berntico con un espectro de aplicaciones muy amplio almacenarse en un CDROM.
198 Leccin 5. Variaciones sobre la periferia

7. Calcule los tiempos medios de espera en dis- Con un mdem de 2.400 bps (lo que entonces
cos y disquetes. Basta saber que un disco gira a haba).
5.400 rpm, 7.200 rpm, 10.000 rpm, 12.000 rpm o Llevando personalmente en el bolsillo un dis-
15.000 rpm, y un disquete a 300 rpm. El tiempo quete lleno con 1.440 KB (distancia: 5 Km;
medio ser lo que tarde en dar media vuelta. duracin del recorrido: 10 minutos; medio: au-
8. Disee el modelo funcional de un controlador de tomvil particular).
ADM que permita aadir una unidad de disquetes Calcule el ancho de banda de la transmisin por
en Smplez+i4, teniendo en cuenta lo dicho en el el bolsillo, y compare ambos mtodos de comu-
Apartado 5.7. nicacin en cuanto a tiempo y coste.
9. Codifique en el ensamblador de Smplez+i4 los Este ejercicio est inspirado en un ejemplo cl-
Programas 5.1 y 5.2 de acuerdo con el resultado sico de Tanenbaum, que en su libro Computer
del Ejercicio anterior. Networks haca referencia al transporte fsico de
cintas magnticas, terminando con la moraleja:
10. Suponga que se conecta una pantalla grfica con no subestimes nunca el ancho de banda de una
una resolucin 7681.024 y 256 colores (un byte furgoneta que viaja cargada de cintas.
por pixel) a un ordenador con una MP que tiene
un ciclo de 200 ns. El controlador funciona me- 13. Una de las cosas que ms ha crecido desde 1993
diante ADM, leyendo palabras de de diecisis bits (an ms que el precio del combustible) es la ve-
con la frecuencia necesaria para obtener sesenta locidad de los mdems. Para la tercera edicin
imgenes por segundo. Qu porcentaje de ciclos (1998) disfrutaba ya de uno de 28.800 bps. Reha-
de la MP se le sustraen a la UCP? Por qu este ga los clculos del Ejercicio anterior con este nue-
ordenador no puede ser Smplez? vo dato. Pero tambin haban mejorado los me-
dios de almacenamiento. Con un tamao un poco
11. Ahora suponga que la parte de la MP que sir- ms grande que los disquetes, haba discos que
ve de memoria de fotograma se realiza con una tambin caban en un bolsillo, con una capacidad
VRAM que tiene ocho registros de desplazamien- de 100 MB. Vuelva a rehacer los clculos.
to (SAM) de 1.024 bits cada uno. Las transfe-
rencias de la parte RAM a la parte SAM pueden 14. Esta quinta edicin aparece en 2004. Haga la
hacerse en paralelo con los ocho registros, pero misma comparacin, considerando una conexin
no pueden ser simultneas con otros accesos (por ADSL de 256 Kbps y un CDROM de 650 MB.
parte de la UCP) a la RAM. Las lecturas de los
registros, sin embargo, pueden proceder mientras 15. Entre las actividades ligadas a los sistemas abier-
la UCP accede a la RAM. Calcule el nuevo por- tos aparecen las de homologacin y certificacin.
centaje de ciclos que se le sustraen a la UCP. Justifique la necesidad de organismos indepen-
dientes que se hagan cargo de tales actividades,
12. La primera edicin de este libro la escrib en mi teniendo en cuenta la discusin sobre polticas
casa entre los aos 1987 y 1993, utilizando un or- empresariales del Apartado 5.13.
denador personal para editar el texto y pasndolo
luego en mi Departamento a una estacin de tra- 16. En qu sentido, o sentidos, puede decirse que el
bajo conectada a una red, en la que realizaba el pec (el ordenador personal creado por IBM) es
trabajo de compaginacin. Considere dos alterna- un sistema abierto? En qu sentido, o sentidos,
tivas para trasmitir el texto de un lugar a otro: no lo es?

Você também pode gostar