Вы находитесь на странице: 1из 51

U2-J

137 D'SCOS MAGNETICOS


137
139
141
145 Y UNIDADES DE DISCOS
145
151
151
156
157
157 (,Que lugar ocupan las unidades de discos maqnetlcos y 6pticos dentro del conjunto
159 de los perlferlcos mas comunes ?
Teniendo presente la Unidad 1, habiamos planteado que un computador se comunica con el exterior
162 mediante los perfericoe ligados al mismo, que son dispositivos (hardware) controlados por software.
162 El "exterior" podia estar constituido por distintos medias: discos, papel, pantaila, teclado, cable telefonico,
163 cable de comunicacion con otros computadores de una red, etc.
164 Los discos, sean rigidos, CDs, 0 disquetes se consideran memoria auxiliar a secundaria, de gran capacidad
164 de almacenamiento en relacion con la memoria principal, pero de acceso un millen de veces mas lento.
166
'67 Como hemos visto, la clasificacion mas generica determinaba dos clases de perifericos
Perifericos de entrada (teclado, unidad de discos, mouse, escaner, modern, etc.): son dispositivos que sirven
para entrar del "exteror" datos a procesar y programas para procesarlos, cuyo destino sera la memoria.
Perifericos de salida (monitor, impresora, unidad de discos, modern, etc.): son dispositivos encargados de
transferir al "exterior" la informacion proveniente de memoria, sean datos procesados 0 programas.

Las unidades de discos y de CD se designan perifericos de almacenamiento masivo. En una operacion


de entrada leen archivos de datos 0 programas archivados en esos discos, los cuales luego llegaran a
memoria; y en una operacion de salida permiten archivar resultados que estaban en memoria.
Desde CD-ROM y semejantes solo son posibles operaciones de entrada.

Se designan perifericos terminales -de entrada 0 salida- al teclado, monitor, impresora, graficador,
parlante, reconocedor de voz, etc., 0 sea aquellos mediante los cuales el hombre se puede comunicar con
un computador a traves de los simbolos que usa para escribir, hablar, leer.

En 10 que sigue, nos centraremos en los discos y disquetes (0 sea en soportes de informacion), siendo que
el periferico unidad de disco 0 disquetera ("drive") encargado de escribirlos 0 leerlos, aparecera primero
parcialmente, a traves de algunos elementos que 10 constituyen, como las cabezas de escritura/lectura.
Luego se tratan detalles significativos del funcionamiento de la unidad correspondiente, y 5U interfaz, asi
como su relacion con el computador, buscando proporcionar una vision integral de las operaciones de
entrada salida. Los aspectos comunes de disquetes y discos magneticos se tratan juntos.

(,Que tipos de discos se usan en el presente en las unidades de disco, disquete y CD,
de los equipos de cornputaclon ?
Los distintos tipos de discos existentes para computacion, tienen en comun que se emplean como soportes
para almacenar grandes cantidades de informacion (datos y programas), en general durante largo tiempo.
a sus Difieren en la tecnologia de almacenamiento/lectura, en la cantidad de informacion que memorizan, en el
tiempo que se tarda en acceder y transferir datos requeridos, en la seguridad con que mantienen la
informacion durante un tiempo estimado, y en el costo por megabyte almacenado.
La siguiente clasificacion se hace en funcion del primero de los aspectos citados: la tecnologia de almacena-
miento y lectura, determinante de los restantes.
U2-2

Escritura Lectura Nombre Tipos

Par grabaci6n magneiica de pistas conceniri- Par sensado mediante la misma cabeza Disco Disco rigido
cas mediante una cabeza constituida par un que escribi6 actuando en forma inversa magneiico Disquete
electroimdn (para lectura ZIP,!AZ
y escritura) Bernouilli
Floptical
Par moldeado de hoyos [armando una pista en Sensado par rayo laser de la longitud CD-ROM DVD-ROM
espiral, par inyecci6n de pldstico en un molde de los hoyos grabados y de la distancia (5610lectura) (s610lectura)
metalico (producci6n masioa de CD) que s_eparados hoyos sucesivos
Par eJecta termico de un rayo laser se modifica Sensado par rayo laser de la longitud CD-R
la iransparencia de porciones de una pista en de las porciones transparentes y las no (s610lectura)
espiral, en una capa de material orgdnico transparentes de la espiral grabada
Par grabaci6n magnetica auxiliada par acci6n Sensado de campos magneticos en las MO (leciura
iermica de un rayo laser de potencia pistas par su ejecta en un rayo laser y escritura)

Par ejecta termico de un rayo laser de Sensado par rayo laser del estado CD-RW6E DVD-RAM
potencia se modifica el estado cristalino de un cristalino del material de las pistas (para leciura PD
material yescritura)

{,Cuales son las propiedades y funciones de los discos maqnetlcos' ?


Por las propiedades cjue a continuacion se indican, un disco magnetico (rigido 0 flexible) es sinonimo de
soporte de aIrnacenamiento externo, complemento auxiliar de la memoria principal RAM de un
computador (memoria electr6nica interna de capacidad limitada, un millon de veces mas rapida de
acceder que un disco, pero volatil)

1. Tiene capacidad para almacenar masioamenie grandes cantidades de informacion en reducidos


espacios con el consiguiente bajo costa relativo par byte almacenado.
2. Es memoria "no ooldti!": guarda largo tiempo los bits aIrnacenados aunque se retire el suministro de
energia electrical propiedad que la memoria principal carece.
3. Permite acceder en pocos milisegundos, casi directamente, allugar donde se halla un bloque de datos a
leer 0 escribir, sin necesidad de busqueda en todos los bloques de datos que le precedent como ocurre en
una cinta magnetics'. En esta ademas no se puede re-escribir una porcion sin re-escribirla totalmente.

La informacion residente en un disco esta agrupada y clasificada constituyendo archives 0 ficheros (''files''),
como quiera llamarse, identificables por su nombre. Un archivo puede contener datos 0 programas.
Con la tecnologia actual de los sistemas de computacion, gran parte de los procesos de Entrada y Salida
de datos tienen como origen y destino los discos magneticos (figura 2.1). Esto se manifiesta en que:

• La mayoria de los programas estan aIrnacenados en disco, constituyendo archivos "ejecutables".


Cuando se necesita un programa, una copia de este pasa a memoria principal, para ser ejecutado.
• Generalmente pasa de disco a memoria una copia del archivo de datos que procesara un programa.
Los resultados obtenidos van de memoria a disco, formando parte de dicho archivo 0 de otro.
• El disco sirve tambien para sirnular una "memoria virtual", de mucho mayor capacidad que la
memoria principal existente.

Comunmente, los disquetes son usados para capias de resguardo ("backup"), y para transportar archivos de
programas 0 de datos.

En realidad deberia decirse "magnetizables", dado que un disco de este tipo virgen, sin haber sido nunea escrito, no presenta en
sus caras magnetismo resultante alguno. La costumbre haee que se hable de cinta magnetica, disco magnetico, aunque ella ocurre en
realidad luego que un medio de este tipo sufre una grabacion parcial 0 total.
2 Esta btisqueda 0 acceso secuencial hace muy lenta a una cinta para obtener datos requeridos que estrin en algun lugar de la misma.
Por tal motive, la cinta se usa principalrnente para grabar copias de seguridad de archivos enteros existentes en el disco rlgido, y no para
buscar informacion parcial en ella.· Vale decir, la einta como memoria auxiliar es util, cuando los archivos que contiene se leen de punta
a punta, sin busquedas de bloques. Los discos 6pticos tambien son comparativamente lentos en relaci6n con los magneticos.
Los discos rigidos y disquetes son medios de almacenarniento extemos. Para ser leidos 0 escritos deben
insertarse en el periferico "unidad de disco" I ("disk drive") 2, que para los disquetes se denomina
"disquetera" .

En una operaci6n de SALIDA, 512 posiciones


(bytes) de memoria principal RAM tendran
como destino un sector del discoldisquete

n una operaci6n de ENTRADA,


512 bytes de un sector del disco
tienen como destino una zona de
512 posiciones de memoria RAM

Figura 2.1

l,Que es un disco maqnetlco, y como se escribe 0 lee cada bit de un sector?


Un disco (sea flexible 0 duro) sirve de soporte para archivos de informacion. Alrnacena los bytes de estos
archivos en uno 0 varios sectores'de pistas circulares (figura 2.2).Elias son anillos concentricos separados 10
menos posible entre si', existentes en sus dos caras recubiertas de una fina capa superficial de material
magnetizable (figura 2.4). Este es del tipo usado en las cintas de audio, siendo que las particulas ferromag-
neticas que 10 componen conservan su magnetismo aunque desaparezca el campo que las rnagnetiz6.

Si bien cuando se habla de disco ngido se piensa en el y en la caja que 10 contiene (la unidad de disco rigido) como una sola cos a,
debemos diferenciar siernpre el soporte de informacion (constituido en este caso por uno 0 mas discos rfgidos) del periferico unidad de
disco, que contiene su electronica, las cabezas para leer-escribir los discos, el motor y mecanismos para hacerlos girar, la caja. etc.
~ No confundir "drive" que es hardware, con "driver" que es un programa para manejar un cierto drive 0 periferico en general.
En cada operacion de salida hacia un disco el sistema escribe un sector completo; y en cada operacion de entrada lee un sector
completo, siendo que todos los sectores son de igual tamafio. Esto es, se lee 0 escribe un sector camp leta, sin posibilidad de hacerlo solo
con determinados bytes individuales del mismo en forma aislada. Para el DOS/Windows cada sector debe tener 512 bytes, y un archivo
con menos de 512 bytes igualmente consume un sector entero. EI sistema operativo fragmenta los datos a ser archivados en bloques del
tamafio de los sectores que maneja (0 multiples). antes de que se escriban en disco. A su vez reune en memoria principal datos lefdos en
el disco, provenientes de sectores de un mismo archivo. Si en cada operacion de salida 0 entrada, en vez de un sector se transfiriera una
pista, dada la gran capacidad de almacenamiento de una pista, en caso de tenerse muchos archivos pequerios, cada uno ocuparfa una
pista entera, resultando un almacenamiento ineficiente. Esto es una razon para dividir las pistas en sectores. Por otra parte. esto ultimo
supone la transferencia de menores cantidades de datos, 10 cual requiere buffers (ver Unidad I, seccion l.@@) mas pequenos en el
sistema, en particular en memoria principal. AI respecto, el DOS reserva en memoria principal un buffer por sector. EI archivo
config.sys el comando "Buffers = n" perrnite elegir el mimero n de sectores que se alrnacenaran en memoria. Cuando se ocupan todos
los buffers, aquel que fue menos accedido ultimamente se borra y es reemplazado
4 A diferencia, los discos opticos compactos (CD) presentan una pista unica en espiral.
U2-4

El cuerpo del disco asi recubierto en sus dos caras, esta constituido: en los disquetes por mylard
(flexible), y en los discos rigidos por aluminio 0 cristal ceramico,

5ectore5 de un dIsco que


Todoo 10& eecteree ae 1
una porcl6n de dl5a"uete . Sector 0
eupueetamente componen
como la erfsada tlenen
Pista 0
un archivo Sector 0
ieual rnimero
,Figura 2.2 Rgura 2.3

La estructura fisica de un disco, con sus pistas y sectores se indica en la figuras 2.2 y 2.3. Estas
pistas, invisibles' (al igual que las pistas de las cintas de los casetes de audio, pero circulares en la
superficie del disco), se crean durante el "[ormateo", Este proceso consiste en grabar (escribir)
magneticamente los sucesivos sectores que componen cada una de las pistas de un disco 0
disquete, quedando asi elias magnetizadas.
Luego del fonnateo, en cada sector quedan grabados los campos que 10 constituyen (figura 211), entre los
cuales se halla el que pennite identificar un sector mediante una serie de mimeros, y el campo de 512 bytes
reservado para datos a grabar 0 regrabar, 10 cual tiene lugar cada vez que se ordena escribir dicho sector.
Senal e1l:lctrlca COli
Nucleo de la cabsza de fa

de ta ca ra inferior

Figura 2.4

La grabaci6n se logra (figura 2.4)-como en un grabador de audio- por la acci6n de un campo magnetico de
polaridad reversible (N-S 6 S-N), que imanta la pista al actuar dicho campo sobre ella, al salir a traves de un
corte ("entrehierro") realizado en un diminuto nudeo ferromagnetico (micleo hoy suplantado por una
pelicula delgada inductiva). El ancho de este ruicleo determina del ancho de la pista (0,1mm 0 menos).

S se pasa por una cam de un disquete una solucion de tri-cloro-etano con finas parnculas de hierro, es posible visualizar con una
lupa 101 existencia de los campos magneticos de las pistas, por su efecto en 13 disposicion de dichas partfculas.
U2-S

mylard Una bobina de alambre arrollada sobre este micleo genera dicho campomagnetico, al circular por ella
una corriente electrica. El ruicleo ferromagnetico y la bobina constituyen una cabeza (head). Todas las
pistas de una cara de un disco son escritas 0 leidas por una misma cabeza, portada por un brazo m6viL
78 La cabeza queda inm6vil sobre la pista a escribir 0 leer, mientras el disco gira £rente a ella I, segUn se vera.

Como muestran las figuras 2.4 y 2.6 existe una cabeza para cada cara de un disco. Los brazos que las
soportan se mueven juntos. 0 sea, que si la cabeza de la cara superior esta sobre una derta pista, la
otra cabeza estara en una pista de la cara inferior, teniendo siempre ambas pistas el mismo radio (una
esta sobre la otra separadas por el espesor del disco).

S6lo una cabeza puede estar activada por vez, para leer 0 escribir sectores de la cara que le corresponde.
En una escritura, a la cabeza seleccionada -muy proxima 0 tocando la superficie del disco- Ie llega del
exterior -por dos cables- una senal electrica que presenta dos niveles de tensi6n electrica (figuras 2.4 Y25).

:or2

Capas magnetizables
de las carae superior
Partlculas agnetlzadils e inferior
que Be forman por el campo
magnetico del entrehierro
lmanee permanentes form ados en la capa
superficial por lae partfculae magnetizadas
en el entrehierro.,. LOB unoe y ceros dibujados
representan bits que estos imanes guardan
Polos norte 0 sur enfrentados codifican unos
~'" j
EI numeros de ceres entre dos unos depende
(SN 0 NS) en el entrehierro invirtienlo la corriente i
de la longitud de cada iman (codigo RLL)
EI ancho de cada nivel determina el ruimero de ceroe Figura 2.5

Con el nivel bajo de tension se produce una circulaci6n de corriente ~ por la bobina que envuelve la pieza,
con 10 cual esta se convierte en un poderoso iman, con sus extremos con un polo sur (5) Y otro norte (N).
EI campo magnetico que sale del entrehierro magnetiza y orienta particulas de 6xido de hierro de Ia super-
ficie del disco 0 disquete, que pasan £rente al entrehierro al girar el disco, convirtiendolas en microsc6picos
irnanes. Asi, durante el tiempo que ]a sefull electrica citada esta en el nivel bajo, se genera -en el tramo de la
pista que pas6 £rente a la cabeza- un con junto de pequenos imanes igualmente polarizados y orientados,
cuyo efecto sumado equivale a la existencia de un imcin permanente en la superficie de ese tramo de pista.

En eI espado, la pist:l puede estar abajo 0 arriba de una cabeza. seg-un que est:l corresponda a una cara sUpc!rior 0 inferior de un
disco, respectivamente
U2-6
------------------------------,-------------------------------------------------------------
El campo magnetico de este iman as! creado por la cabeza se manifestara sobre esa superficie
magnetizada, superficie que es circular por estar fija la cabeza y girar el disco.
Cuando la serial que excita la cabeza cambia del nivel bajo al alto, se invierte rapidamente el sentido de la
corriente (iNS)que circula por la bobina, por 10 cual cambia la polaridad magnetica en los extremos de
ruicleo (de SN a NS). Ahora, mientras dure esta polaridad (el tiempo que la serial esta alta), se generan
pequenos imanes en el tramo de la pista que paso frente a la cabeza, pero de polaridad contraria a los
generados cuando la serial estaba baja. El efecto de los mismos equivale a un iman superficial en ese tramo
siguiente de la pista, cuya polaridad es opuesta a la del iman superficial formado en el tramo anterior.

De esta forma, en la escritura de un disco, en concordancia con cada cambio de nivel de la serial electrica
binaria que actiia sobre la bobina, cambia de direccion la corriente que circula por ella, resultando una suce-
sion de imanes permanentes (conformados a su vez por muchos imanes microscopicos) sobre la superficie
de la pista que se escribe, siendo cada porcion as! imanada de polaridad contraria a la que le sigue.
Como se vera al tratar la codificacion RLL (figura 2.26), cada uno de estos cambios codifica un uno que se
almacena en la pista, y la cantidad de ceros que le siguen depende de la duracion del nivel.

En sintesis: en una escritura, luego que el material ferromagnetico de una cara pasa frente a la
cabeza magnetizante quedan formados una sucesion de imanes superficiales, los cuales conforman
una pista circular, por estar la cabeza fija, y girar la superficie del disco. Los campos magneticos de
estos imanes se manifestaran en la superficie de la pista, codificando unos y ceros.

Ninguna porcion de una pista puede quedar sin magnetizar: forma parte de un iman NS 0 SN. Esto
tambien asegura, en una regrabacion, el borrado de la informacion grabada anteriormente sobre una pista.

Si se re escribe un sector no es necesario realizar un paso intermedio de borrar la informacion antes


escrita. La nueva escritura borra la anterior, igual que en un grabador de audio 0 video.

Durante una lectura, la misma cabeza -en un proceso inverso al de grabacion- sensara los campos
magneticos sobre la superficie de la pista accedida, para detectar cada cambio de polarizacion cuando
pasa de una porcion de una pista polarizada N-S a la siguiente, polarizada S-N, 0 sea cuando se
encuentran enfrentados dos polos norte 0 sur. Estos cambios originaran corrientes en la bobina, que
apareceran como breves impulsos electric os en los dos cables de la bobina que salen desde la cabeza.
Puesto que cada uno de estos impulsos implica una inversion del campo magnetico de la pista, y que
estos cambios fueron producidos en la escritura cuando cambiaba el nivel de la senal electrica que
actuaba sobre la bobina (figura 2.5), se puede reconstruir esta senal. As! es factible determinar (leer) los
unos y ceros que dieron lugar a los cambios de nivel, segun la codificacion (MFM 0 RLL) empleada.
Esta operacion es "no destructiva": pueden obtenerse copias de los datos guardados sin que estes se alteren.

Deta lie de Un disco rigido puede estar compuesto de


uno 0 varios platos, unidos a un eje
cabez~a_:_s_.~._~
central, el cual es girado junto con los
platos por un motor, como indican las
figuras 2.4 y 2.6. En esta ultima los
electroimanes que constituyen las cabezas
aparecen con su tamano relativo real,
respecto del brazo sosten.
Figura 2.6
S6lo una cabeza escribe a lee el disco
rigido par vez, al igual que en un disquete.

Las cabezas (dos por plato) estan sobre una misma vertical, constituyendo el"cabeZ£lI", y son portadas por
brazos de una "armadura" que las desplaza juntas entre platos cuando pasan de una posicion (pista) a otra.

Cuando se almacena un archivo, los datos son grabados magneticamente en sectores de las pistas,
en el campo para 512 bytes reservado en cada sector durante el"formateo", como se describira. La
cabeza que -graba estos campos podra luego volver a recorrerlos, para leer las sefiales magneticas
que grabo en ellos, que representan la informacion almacenada.
U2-7

Para comprender como se generan dichas pistas en un disco 0 disquete, podemos imaginar 0 realizar el
siguiente experimento. Sobre el plato de un tocadiscos colocamos una cartulina de su mismo tamafio y 10
hacemos girar. Luego tomamos un lapiz mecanico y apoyamos suavemente la punta de su mina
sobre la cartulina, manteniendo inm6vil la mana. Entonces, sobre la cartulina se generard una
circunferencia visible. Si despues, rnientras gira el plato, sobre un punto de dicha circunferencia
colocamos fija la punta del lapiz, pero sin la mina, por debajo del lapiz pasaran los puntos de la
circunferencia antes generada. Esto equivale a un sensado ("lectura") de dicha circunferencia.
Igualmente, mientras una cabeza escribe, permanece inmovil en un punto (10 rnismo si lee),
generandose una pista circular en la cara del disco que gira debajo' de ella, a la par que deja sefiales
magneticas detectables en porciones de la misma que grab6. El radio de la pista es igual a la
distancia de la cabeza al centro del disco.
Tambien, cuando se graba una cinta de audio, la cabeza esta fija, y describe una pista rectilinea,
dado que en este caso el medio magnetico se mueve de igual modo. ."
Asi como en una cinta de audio pueden grabarse dos 0 cuatro .pistas paralelas, en un disco es
factible generar muchas pistas concentricas separadas (de a una por vez): .

lQue se denomina cilindro en la orqanizaclon ffsica de un disco 0 disquete?


En primera instancia, un disco a disquete guarda los datos en sus caras; las caras se componen de pistas, y estas se
dividen en seciores. Se vera c6mo se consideran y nurneran estos espacios, a fin de constituir una
organizaci6n fisica de un disco 0 disquete, eficiente para ser accedida en el menor tiempo posible.
El hecho de que un disquete -0 cada plato de un rigidO-:-tenga dos caras, amen de duplicar su capacidad de
alrnacenamiento, perrriite escribir 0 leer el doble de datos antes de desplazar el cabezai a la pista siguienie a a otra,
accediendo a una cara y luego a la contraria. Asi se puede escribir 0 leer mas datos en menos tiempo.

Por moverse las dos cabezas de una


disquetera al unisono, y estar ambas sobre la
misma vertical (figuras 2.4 y 2.7), si la cabeza
de la cara superior se posiciona inm6vil a
una cierta distancia del centro del disquete
-sobre un punto de la pista a la que se
quiere acceder- entonces, la otra cabeza se
Cabeza de la
posicionara en la cara inferior, a igual
cara superior
distancia del centro. De esta forma es
factible grabar primero la pista de la cara
superior, y a continuaci6n la pista de la cara
inferior, sin mover el cabezal, siendo que las
dos pistas estan una sobre la otra, separadas
por el espesor del disquete.
Borde del disquete
cara inferior 20, cabeza Lo mismo puede decirse para las dos caras
0, sector 12
20, cabeza 1, sector 12 de cada plato de un rigido (figura 2.8): si este
Las dos pistas cilindro 20
Plstas 21 y 22 de
tiene mas de dos cabezas (una por cada cara
(una por cad a cara del diSCO)
la cara superior Figura 2.7 de cada plato). Elias se mueven y posicionan
juntas sobre una misma vertical. Si una
cabeza cualquiera accede inm6vil a un punto de una pista de la cara que se lee 0 escribe, las
restantes haran 10 mismo en las otras caras. Al girar juntos los platos, los puntos que en cada cara
pasan £rente a la cabeza correspondiente perteneceran a pistas concentricas de igual radio.
En un rigido de dos platos (figura 2.8), y con 4 cabezas (para 4 caras), si una cabeza accede a una pista
cualquiera (indicada 20), las 3 cabezas restantes del cabezal accederan necesariamente a pistas (indicadas
20) de igual radio, situadas en el espacio una sobre otra, pudiendo considerarse que dichas pistas forman
parte de la superficie de un cilindro imaginario (designado 20), cuyo radio es el de esas pistas.

Esto es valido para la cara superior de un disco, siendo que la cara inferior esta sobre la cabeza que corresponde a esta cara.
Si luego el cabezal se
Figura 2.8 posiciona a otra distancia
del centro del disco 0
Cilindro 22. cabeza 0, sector 15 disquete, accedera a otro
Cilindro 21. cabeza 0, sector 15 cilindro imaginario del
mismo (como ser el 22),
Cara 0 (superior) pudiendose escribir 0
del plato 1 leer cualquiera de las
Pista 20 de la cara 0
pistas de igual radio que
10 constittiyen; y si se
Pista 20 de la cara 1 quiere, primero una,
para luego continuar con
la otra u otras (en el caso
del rigido).
Por 10 tanto, cada vez
que en un disco 0
disquete el cabezal se
posiciona para acceder a
una pista, accede a un
"cilindro" imaginario que
contiene pistas, una por
Pista 20 de la cara 2 cara. Entonces, una vez
que la cabeza de una
Pista 20 de la cars 3
.'
cara escribio 0 leyo todos
lindro 20, cabeza 2. sector 15 los sectores de una pista
Pistas 21 Y ndro 20, cabeza 3. sector 15 de esa cara, se puede
. I hacer 10 mismo con las
restantes pistas de dicho cilindro, sin que se mueva eR~bezal.
La electronic a de la disquetera 0 unidad de disco rigido conmutara en un tiempo despreciable, de
una cabeza a otra. Por ejemplo, una vez'que el cabezal del disco rigido accedio al cilindro 20, luego
de 4 vueltas puede leer 0 escribir todos los sectores de las 4 pistas de ese cilindro.
De esta forma, se ahorra tiempo de acceso en la cscriiura y leciura de archiuos, en lugar de escribir todas
las pistas de una cara, y luego todas las pistas de la otra u otras. .
Conforme a 10 descripto, cuando un cabezal se posiciona, accede a un conjunto de pistas de igual
radio, (tantas como cabezas tenga el cabezal), que se consideran parte de la superficie de un cilirtdro
imaginado. Entonces, cada cilindro de un disco 0 disquete esui formado por todas las pistas de igual radio
(una por cara), y contiene la informacion correspondiente a los sectores que componen dichas pistas,
informacion a la que se puede acceder cuando el cabezal se posiciona en dicho cilirtdro.
Con esta vision planteada en las figuras 2.7 y 2.8,un disco 0 disquete serian un conjunto de cilindros -tantos
como pistas por cara existan- metidos uno dentro de otro. Cada cilindro a su vez se compone de pistas
de igual radio, tantas como caras (0' sea cabezas) existan (2 y 4 en esas figuras); siendo que las pistas
contienen sectores.
LJJ caniidad de cilindros de un disco0 disquete, se corresponde con el mimero de posiciones en las que se
puede posicionar el cabezal. Este, como se dijo, desplaza al unisono todas las cabezas de escritura/lectura.
En las disqueteras, un motor "paso a paso" hace que el cabezal salte de un cilindro al siguiente, cuando se
quiere pasar de una pista a la siguiente (0 a cualquier otra) que esta en la misrna cara. Como se vera, en los
rigidos el acceso de una pista a otra se lleva a cabo por un mecanismo mas complejo que busca la pista.
Corrientemente suele hablarse de pista en lugar de cilindro, pensando en una sola cara, aunque cilindro implica una
concepcion espacial mas completa, en especial en 10 referente a los todos los sectores de las pistas de un cilindro, los
wales pueden escribirse 0 leerse uno tras otro sin la perdida de tiempo que significa el movimiento del cabezal.
Por 10 tanto, un disquete de 3 1hpulgadas de 80 pistas por cara, tiene 80 cilindros de dos pistas cada
uno. Estos cilindros se enumeran de 0 a 79, desde el exterior hacia el centro.
U2-9

E.l .numero ~ue identifi~a a un cilindro. permite lo~alizar todas las pistas que 10 constituyen. Por ejemplo, el
cilrndro numero 20 sirve para locahzar en la figura 2.7 las 2 pistas ruimero 20 que pueden escribir 0
leer las 2 cabezas del cabezal, ubicadas en ambas caras del disquete. 1
Entonces si se quiere ser riguroso, en relacion con una cara de un disquete (figura 2.7) en lugar de
decir por ejemplo "pista 20" debe decirse "pista del cilindro 20"; y con mas precision, si se trata de
la cara superior, 0 cara 0, se debe indicar "cilindro 20, cabeza (head) 0".
Tambien puede aparecer como "cilindro 20, pista 0", aunque parezca mejor indicar "pista 20 de la
cara 0".
A su vez, la pista que esta debajo de esta, en la cara inferior, 0 cara I, es la "pista 1 del cilindro 20",
identificable como "cilindro 20, cabeza I".
El sector 15 de esta pista se identifica como "cilindro 20, cabeza I, sector IS".

En una unidad de disco rigido con varios platos (figura 2.8), la cabeza (cara) superior del plato mas
alto se designa 0, la inferior del mismo plato con el mimero 1; luego siguen las 2 y 3 del plato
siguiente, etc. El cilindro de rnimero 20 sirve para localizar cualquiera de las 4 pistas de mimero 20,
correspondientes a las 4 caras (cabezas) de los 2 platos, siendo que cad a una se diferencia por el
mimero (0,1, 2, 0 3) de la cabeza que accede a la misma. Se indica en esa figura la forma de
direccionar 4 sectores de mimero 15 pertenecientes a cada una de esas pistas. Asi, un sector se
indica "cilindro 20, cabeza (head) 3, sector IS", 0 "cilindro 2, pista 3, sector IS".

Los cilindros de discos 0 disquetes se enumeran desde 0 (el de mayor radio, el mas exterior) en
forma creciente hacia el interior, correspondiendo el rnimero mayor al mas interno.

Suponiendo que todos los sectores de las pistas de un cilindro se leen (0 escriben) en forma secuencial,
o sea por orden numerico creciente, primero el controlador ordena a la cabeza de la cara 0 de dicho
cilindro acceder a cada uno de los sectores de dicha pista. Luego ordena que la cabeza de la cara 1 del
mismo cilindro acceda a los sectores de esta pista, y as! sucesivamente sin que el cabezal se mueva,
cada cabeza activada lee (0 escribe) los sectores de la pista que desfilan frente a ella en la cara.

Seglin 10 tratado, en definitiva, en disquetes y discos la informacion se organiza fisicamente como sigue:

=> La menor unidad de alrnacenamiento que se puede escribir 0 leer en forma independiente es el
sector', que agrupa512 bytes (para el DOS y otros sistemas operatives),
=> Un cierto ruimero de sedores -accesibles sin variar la posicion de una cabeza- conforma una pista
=> Un numero dado de pistas -accesibles sin variar la posicion del cabezal en las caras de un disco
o platos de un disco rigido- constituyen un cilindro.
=> Tres ruimeros deben usarse para escribir 0 leer datos: mimero de cilindro, ruimero de cabeza
(head), y mimero de sector. En ingles corresponden a las siglas CHS.

(,De que depende la cantidad de bytes que puede almacenar un disquete 0 un disco
maqnetlco ?
Todas las pistas de un disquete guardan La misma cantidad de bits y tienen igual numero de sectores (figura 2.3),
como se ha querido hacer notar, por 10 que en las pistas mas internas los bits estan mas "apretados" que
en las de mayor radio, 0 sea que en las intemas se tiene una mayor densidad de bits grabados por
pulgada de pista (bits per inch = bpi). No ocurre 10 mismo en los discos rigidos actuales, como se tratara.

La densidad depende del tipo de material magnetizable de las caras, del ancho del entrehierro de las
cabezas, y de la tecnica de codificacion de bits empleada para grabar (MFM, RLL, 0 ARLL, a desarrollar).

Una pista grabada en una viejo disquete de 5 %" con dos caras ("sides") y doble densidad (indicado
2S/2D), puede tener por pista 9 sectores de 512 Bytes', 0 sea que se tendra 512x9 = 4608 Bytes/pista.

En esa figura, por razones de claridad, s6lo para el cilindro 20 se han dibujado las dos pistas correspondientes a las cara inferior de
cad a uno de los platos.
2 Si bien el DOS y otros sistemas ordenan leer 0 escribir un "cluster", que como se vera segun el tarnafio del disco puede constar de
varios sectores consecutivos, se lee 0 escribe un sector or vez.
Este valor de 512 Bytes por sector es el que usa normalmente en discos y disquetes el sistema DOS, y otros sistemas operativos
U2-9

EI numero que identifica a un cilindro permite localizar todas las pistas que 10 constituyen. Por ejemplo, el
cilindro mimero 20 sirve para localizar en la figura 2.7 las 2 pistas numero 20 que pueden escribir 0
leer las 2 cabezas del cabezal, ubicadas en ambas caras del disquete. 1
Entonces si se quiere ser riguroso, en relacion con una cara de un disquete (figura 2.7) en lugar de
decir por ejemplo "pista 20" debe decirse "pista del cilindro 20"; Y con mas precision, si se trata de
la cara superior, 0 cara 0, se debe indicar "cilindro 20, cabeza (head) 0".
Tambien puede aparecer como "cilindro 20, pista 0", aunque parezca mejor indicar "pista 20 de la
cara 0".
A su vez, la pista que esta debajo de esta, en la cara inferior, 0 cara 1, es la "pista 1 del cilindro 20",
identificable como "cilindro 20, cabeza I".
El sector 15 de esta pista se identifica como "cilindro 20, cabeza 1, sector 15".

En una unidad de disco rigido con varios platos (figura 2.8), la cabeza (cara) superior del plato mas
alto se designa 0, la inferior del mismo plato con el mimero 1; luego siguen las 2 y 3 del plato
siguiente, etc. El cilindro de ruimero 20 sirve para localizar cualquiera de las 4 pistas de numero 20,
correspondientes a las 4 caras (cabezas) de los 2 platos, siendo que cada una se diferencia por el
ruimero (0,1, 2, 0 3) de la cabeza que accede a la misma. Se indica en esa figura la forma de
direccionar 4 sectores de ruimero 15 pertenecientes a cada una de esas pistas. Asi, un sector se
indica "cilindro 20, cabeza (head) 3, sector 15", 0 "cilindro 2, pista 3, sector IS".

Los cilindros de discos 0 disquetes se enumeran desde 0 (el de mayor radio, el mas exterior) en
forma creciente hacia el interior, correspondiendo el mimero mayor al mas intemo.

Suponiendo que todos los sectores de las pistas de un cilindro se leen (0 escriben) en forma secuencial,
o sea por orden numerico creciente, primero el controlador ordena a la cabeza de la cara 0 de dicho
cilindro acceder a cada uno de los sectores de dicha pista. Luego ordena que la cabeza de Ia cara 1 del
mismo cilindro acceda a los sectores de esta pista, y as! sucesivamente sin que el cabezal se mueva,
cada cabeza activada lee (0 escribe) los sectores de la pista que desfilan frente a ella en la cara.

Segiin 10 tratado, en definitiva, en disquetes y discos la informacion se organiza fisicamente como sigue:

~ La menor unidad de almacenamiento que se puede escribir 0 leer en forma independiente es el


sector, que agrupa512 bytes (para el DOS y etros sistemas operatives).
~ Un cierto ruimero de sedores -accesibles sin variar la posicion de una cabeza- conforma una pista
~ Un ruimero dado de pistas -accesibles sin variar la posicion del cabezal en las caras de un disco
o platos de un disco rigido- constituyen un cilindro.
~ Tres rnimeros deben usarse para escribir 0 leer datos'. mimero de cilindro, numero de cabeza
(head), y ruimero de sector. En Ingles corresponden a las siglas CHS.

l.De que depende la cantidad de bytes que puede almacenar un disquete 0 un disco
maqnetico ?
Todas las pistas de un disquete guardan la misma cantidad de bits y tienen igual numero de sectores (figura 2.3),
como se ha querido hacer notar, par 10 que en las pistas mas intemas los bits estan mas "apretados" que
en las de mayor radio, a sea que en las internas se tiene una mayor densidad de bits grabados por
pulgada de pista (bits per inch = bpi). No ocurre 10 mismo en los discos rigidos actuales, como se tratara.

La densidad depende del tipo de material magnetizable de las caras, del ancho del entrehierro de las
cabezas, y de la tecnica de codificacion de bits empleada para grabar (MFM, RLL, 0 ARLL, a desarrollar).

Una pista grab ada en una viejo disquete de 5 1,4" con dos caras ("sides") y doble densidad (indicado
2S/2D), puede tener por pista 9 sectores de 512 Bytes', 0 sea que se tendra 512x9 = 4608 Bytes/pista.

En esa figura, por razones de claridad, solo para el cilindro 20 se han dibujado las dos pistas correspondientes a las cara inferior de
cada uno de los platos.
2 Si bien el DOS y otros sistemas ordenan leer 0 escribir un "cluster", que como se vera segun el tamano del disco puede constar de
varios sectores consecutivos, se lee 0 escribe un sector or vez.
Este valor de 512 Bytes por sector es el que usa norrnalmente en discos y disquetes el sistema DOS, y otros sistemas operativos
U2-10

Ademas de la cantidad de sectores por pista, en el calculo de la capacidad de un disco interviene el mimero
total de pistas (cilindros) que tiene en cada cara. Para el disquete en cuesti6n este ruimero es 40 pistas por
cara. Entonces, la capacidad de almacenarniento por cara sera 4608x40 = 184.320 Bytes. Puesto que se usan
las dos caras, la capacidad total de estos disquetes era de 184.320x2 = 368.640 Bytes = 360 KB. I

El mimero de pistas (cilindros) por cara depende de 1a


cantidad de pistas ("tracks") que puedan grabarse por
pulgada ("tracks per inch" = tpi) 0 centimetre,
medidas en sentido radial (figura 2.9). En el disquete
analizado la densidad de pistas es de 48 tpi.'

Por 10 tanto, en el calculo de la capacidad total de


almacenamiento de un disco magnetico intervienen:

a. De la densidad lineal de cada pista (indicada en


bpi), la cual determina el ruimero de sectores de una
determinada longitud que existiran por pista. Para
el DOS esta longitud debe ser de 512 bytes. .
b. De la densidad radial de pistas (indicada en tpi), que
define el total de pistas (cilindros) por cara.

Son corrientes los disquetes de 5 1,4" en los que el material


magnetico admite en cada pista el doble de bits por inch
que los del tipo 2S/2D citados. En estos, una pista puede
tener 15 sectores de 512 Bytes, 0 sea 15x512 = 7680 Bytes
Figura 2.9 por pista. Adernas poseen el doble de densidad radial de
pistas: 96 tpi, resultando concretamente 80 pistas por cara.
Se conocen como 2S/HD, 0 sea dos caras yalta densidad ("high density"). Resulta as! 7680x80 = 614.400
Bytes por cara, y para las dos caras un total de:
614.400x2 = 1.228.800 Bytes = 1,2 Megabytes (MB)3

Estos son los disquetes de 5 1,4" que aun se siguen usando.


Los disquetes de 3 W' contienen cobalto en el material magnetico, Los prirneros fueron del tipo
2DD (dos caras y doble densidad), con 9 sectores/pista, 0 sea 512x9 = 4608 Bytes/pista. Ternan 135
tpi, por 10 cual son posibles 80 pistas/cara.
Entonces resultaban: 4608x80 = 368.640 Bytes por cara; yen total 368.640x2 = 737.280 Bytes = 720 KB.
En 3 W' se popularizaron los del tipo 2HD, de alta densidad, tambien de 135 tpi, (80 pistas) pero de 18
sectores por pista. La capacidad total sera el doble que el anterior: 18x512x80x2 = 1.474560 Bytes = 1,44 MB.

Igual metoda de cdlculo se aplica a discos rigidos. Asf, un rigido de 8 platos, con 1024 pistas (cilindros) por
cara, y 63 sectores (de 512 Bytes) por pista, tendra una capacidad por cara de 63x512x1024 = 33.030.144
1.
Como tiene 8 platos = 16 caras, la capacidad neta total sera: 33.030.144x16 = 520 MB.

Gerieralizando, la capacidad neta de un disco 0 disquete puede calcularse como:

I Capacidad = Sectores por pista x Tamafio sector(Bytes) x Pistas(cilindros) por cara x Nro de caras

Dividiendo por 1024 se obtiene el valor en KB, MB, etc. Esto debe tenerse en cuenta en todos los siguientes calculos sirnilares.
Muchas veces KB, MB, etc se indican K, M, etc., dado que las siglas no estan normalizadas. Esto puede traer confusion, pues pOT
ejemplo dado que en griego K = 1000, Y no 1024 como en informatica, tambien podrfa expresarse 0 entenderse que 368640 Bytes =
368,640 KBytes en lugar de 360 KB (K=1024).
2 'EI mimero tpi no solo depende del material magnetico y del codigo de grabacion, sino tambien del ancho de la cabeza, y del
mecanismo 0 servomecanismo usado para que la cabeza siga por la pista accedida sin incursionar por las contiguas. En un disquete las
tpi resultan un mimero relativamente bajo, por depender el posicionamiento del cabezal en cada pista solo de un motor "paso a paso".
3 EI disquete "virgen" tiene una capacidad de 1,6 MB, de los cuales se ocupan 400 KB durante el formateo, para escribir la direcci6n
de cada sector, amen de bits de separacion y control extras (fig 2.11), quedando as! 1,2 MB libres para archivos de datos 0 programas.
elnumero No es aconsejable forzar la capacidad maxima que admite cada tipo de disquete, so pena de que a
pistas por mediano plazo pueda comenzar a perder datos almacenados. .
Debe tenerse presente, que la capacidad que aparece indicada en discos rigidos es "bruta", no
ocupable totalmente con archivos. Se pierde en promedio del orden de un 20%, puesto que en cada
sector se deben escribir bits con el numero que 10 identifica, junto con information de control, amen
de los bits de final e inicio que se usan para separar los sectores contiguos entre S1 (figura 2.24).
Vale decir, que dicha capacidad se refiere a un disco "virgen", sin formatear. Esto se ejemplifica en
el pie de pagina anterior relacionado con el disquete 2S/2D de 1,2 MB, 0 sea el de 5 lA.

Que significa que un disco 0 disquete es un medio de almacenamiento de acceso


recto' ?
Tal denominacion proviene del hecho de que el cabezaillega directamente a la pista (cilindro) deseada, sin
busquedas, Luego, con el disco girando, deben pasar bajo la cabeza activada los sectores que anteceden al
sector buscado. Esto si bien implica una biisqueda secuencial, la rnisma es de corta duracion, por el relativo
pequeno mimero de sedores de una pista, y por la velocidad de giro del disco, como se detalla luego.
Si bien se trata de una busqueda secuencial breve en comparaci6n con la que debe hacerse en una
cinta magnetica para ubicar datos, de 10 anterior resulta que en un disco magnetico los datos de un
2
sector son de 'acceso "casi-directo".

por inch
pi ta puede Como se localiza un sector de un disco/disquete, y por que se dice que es
-680 Bytes 'reccionable ?
radial de Durante una operacion de E/S, el controlador de la unidad de disco 0 de la disquetera debe recibir tres
por cara. mimeros: el del cilindro que contiene la pista donde esta ese sector, el de la cabeza (head) que accede a
= 614.400 esa pista, y el rnimero del sector dentro de la pista. Dichos ruimeros en Ingles conforrnan un CHS.
En cada unidad existe una cabeza de lectura/ escritura para cada cara de un disco. El controlador
ordenara activar para escritura/lectura s610 la cabeza de la cara indicada, y dara la orden de
posicionarla sobre el cilindro (pista) seleccionado, siendo que todas las cabezas avanzan al unisono.
Al cornienzo de cada sector de un disco estan escritos dichos tres ruimeros de CHS, forrnando un
numero compuesto, que es su "direccion", necesario para localizarlo, direccionarlo, como quiera decirse.
Por este motivo se dice que un disco 0 disquete son dispositivos de memoria auxiliar direccionables.

= 720KB.
(,QUe son los tiempos de posicionamiento, latencia y acceso en un disco 0 disquete ?
Para acceder a un sector que esta en una cara de un disco, primero el cabezal debe trasladarse hasta
el cilindro que contiene la pista donde se encuentra dicho sector, y luego debe esperarse que al
girar el disco ese sector quede debajo de la cabeza. Por 10 tanto, deben tener lugar dos tiempos:

1. El brazo con la cabeza correspondiente a esa cara se sima en pocos milisegundos (tiempo "seek",
de posicionamiento) directamente sobre el cilindro seleccionado, 0 sea sobre la pista del cilindro
correspondiente a esa cara. Se considera un valor promedio para este tiempc'. En la figura 2.10.a
este tiempo es el necesario para que la cabeza pase de la pista 17 a la 4.

Los dispositivos de almacenarniento de acceso directo se indican con las siglas DAAD.
S610 en la memoria principal, merced a circuiterfa electr6nica que 10 permite, existe acceso directo, 0 como se dice "random", "al
azar", sin busqueda alguna. Esto equivale a decir que cualquiera sea la posicion de memoria elegida, se tardara el mismo tiempo en
localizarla. En los discos, el tiempo de acceso depende ligeramente de la posicion del sector buscado, existiendo un tiempo promedio
para localizar cualquier sector. Estos vaiores mejoran ano tras afio.
abeza, y del En general se habla de un tiempo prornedio de posicionarniento, que es el promedio estadfstico que tarda el cabezal para moverse
un disquete las entre dos pistas al azar (por ejemplo este tiempo puede ser de 16 mseg). Su valor esta comprendido entre el tiempo de acceso de pista a
a paso". pista contigua ("track to track", como ser 4 mseg), y el tiempo de recorrido completo ("full stroke", como ser 19 mseg) que tarda el
la direcci6n cabezal en moverse entre las dos pistas extremas (de mayor y menor radio) del disco. Estos valores se mejoran continuamente.
o programas. En un disquete el tiempo de recorrido completo es de 200 mseg., yel tiempo de posicionamiento promedio unos 70 mseg.
U2-12

Posicion supuest.a del sector a acceder 2.


en ellnstante en que la cabeza se posi- Una vez que la cabeza
elena sabre la pista a la cual pertenece
posiciono sobre dicha pis-
Icho secto
ta, los sectores de es
desfilaran debajo de es
cabeza. Cada uno es leid
hasta encontrar aquel cuy
mimero coincida con
enviado a la controladora,
en cuyo casu su campo d
datos sera escrito 0 leido.
El tiempo que dura esta
busqueda secuencial es
tiempo de latencia a demor
rotacional (en prornedio es
el tiempo de media vuelta'
Si el sector buscado estaba

GEn un tiem po I'iItencla


De la posicion en
Sector

que
que ee quiere seceder a
punto de eer leida par la c;aj,eza
el sector a
ee encontraba
acceder pasa
cuando la
en la posicion senalada cor
"X" (figura 2.10 a) cuand
la cabeza llego a la pista
indicada, este tiempo es
cab ez a e e posiciono en la plsta, a la posicion en
que p,uede s er leldo por la cabeza que tarda en llegar hasta I
cabeza, para comenzar
FIgura 2.1 o.a FIgura 2.1 O.b
ser leido (figura 2.10b).
La suma de estos dos tiernpos promedio conforma el tiempo de acceso, 0 sea es el tiempo que transcurr
desde que la controladora ordena al cabezal posicionarse sobre un cilindro, hasta que la cabeza indicada
accede al sector buscado. La duracion de este tiempo solo depende del tipo de unidad de disco que se trate:

t.aeeesa ::;::
t.promeaio
~. posicumamsen
.. . t0 + tprome dito It'
a eneta

En un disquete -conforme a los valores estimados antes al pie de pagina- este tiempo sera de
orden de (70 -l;- 100) mseg. = 170 rnseg.
"i En un disco rigido es mucho menor: hoy es comun tener 10 mseg de seek, y 7 mseg de latencia (a
4;500I:P.m.) en total 17mseg. Existen discos que esos totales son menores.
Los fabricantes especifican el tiempo de posicionamiento en vez del promedio total. Tambien suelen
I
\1 fabricar" un tiempo de acceso que pondera la mejora electronica obtenida por la accion de un cache
1/

de disco (a tratar), cuando se ordena leer una sucesion de sectores ubicados en una misma pista 0
\
cilindro, y suponen en forma optimista que esto ocurrira en eI 40% de los accesos ordenados.
I

l,Que son tiempo y velocidad de transferencia de datos?


Suponiendo una lectura, una vez que el sector requerldo esta frente a la cabeza activada -luego de
transcurrir los tiempos de posicionamiento y de latencia- ella debe leer bit par bit dicho sector, pasando estos
bits en serle hacia la electr6nica, y luego hacia la interfaz del disco 0 disquete. El destino final de los bits que
conforrnan el campo de datos de un sedorj es la zona de memoria principal (buffer) reservada para esos
datos. A esta zona esos bits leidos llegan en paralelo (de 16 032 por vez) a traves del bus que une la interfaz
con la memoria principal.

Sea un disco de32 sectores por pista, que gira a 3.600r~p.m.= 60 r.p.seg. == 1 revolucion/16 mseg.

r
Con. suerte, el primer sector que pasa es et requerido, y en el peor de los casos deben des filar lodos los seclores de la pisla hasta dar
e.on d~<l.hostl,Clor. Ell! pmmedio, estadisticamente debe)) pasa£ la mitad de los seclores para localizar un sector, 0 sea media revoluci6n
cieldi.sQP, ®lID di_iiquete (300 r.}}.m,::::.5 r.p.seg:) unarevolucion dura 115 seg. =200 mseg., por 10que la latencia promedio es 100 mseg
I Para los discos rf&idos de 3600 (.p.m. = 60 l.p.seg , una revolucion dura 1/60 seg ~16 mseg, resultando una latencia promedio de 8
mseg., que sera de 4 m.seg. para los discos de 7200·r.p.m.
I
U2-13

Un sector cualquiera de los 32 de una pista sera recorrido por la


cabeza en 1/32 de revolucion, 0 sea en 16 rnseg/32 = 0,5 mseg.
Durante este tiempo de lectura, los bits del campo de datos (que forman
512 bytes) se van transfiriendo hacia la electronica (IDE 0 SCSI) de la
unidad de disco, a medida que la cabeza los va leyendo. 0 sea que du-
rante dicho tiempo se estan enviando a razon de 512/0,5 bytes/rnseg,
= 1024 bytes/mseg = 1.024.000bytes/seg" casi 1 MB/seg1•
Este valor constituye la velocidad de transferencia interns.

Inversarnente, en una escritura del disco, a medida que frente a la


cabeza seleccionada pas a el campo de datos del sector, la unidad
(IDE 0 SCSI) le debe enviar en serie los bits a escribir, los cuales
fueron llegando a esta unidad (de a bytes) por el bus, desde
memoria principal. Puesto que el disco gira a' igual velocidad en

mG
tan5C.:;,"!"\!:ron los tillmpos dll p05iciona
lectura 0 escrirura, el tiempo de escriiura 0 lectura del campo de
datos sera el mismo, y pot 10 tanto tambien fa velocidad de
transferencia intema sera igual en la escritura 0 lectura.

_-......:::a. 06 bitt; dill eector rIl<:\ullrldo co- Como se planteo, estes MB/seg definen la velocidad de transferencia
.-a~:.Inapor uno baJo la cabc:za para interna, que suele ser indicada como la "velocidad de transferencia"
t:l5Crr...os).Dado qUIl a mlldlda qUIl 106 por los fabricantes de unidades de disco. Debe tornarse esta como la
pa5al1 a la Ilillctr6nlca dill pllriftrico velocidad con que una cabeza puede leer 0 escribir "«I uuelo" los bits de un
pert dll datos dll la irrterfaz, este tillm sector, siendo esta velocidad una medida de' Ia velocidad maxima a la
.. ectura dill eector 115 tamtMn III que se pueden transferirbits entre diseo y memoria (0 viceverse)".
Esto es porque si consideramos el trayecto total que deben
Figura 2.10.c recorrer los datos en una cperaeiort de entrada (lecture de disco)
o salida (escritura del mismo), no se puede dejar de lada eI tiempO' que msume Stl transferencia a
traves del bus (ISA, VESA, 0 PO) que comunica fa pordon central Con eI registro port de datos
bicado en la electronica3 (como la ATA-IDE). Asimismo, importa Ia velocidad de respuesta de esta
mterfaz. Si ella 0 el bus no son 10 suficiente rapidos4, la velocidad real de uansferencia datos hacia 0
desde un disco a memoria puede ser bastante menor que la mfu<ima citada.

La velocidad de transferencia: intema sera la veloddacf de transferencia real solo si a medlda que la
~abeza lee (0 escribe) los datos- de un sector, elIos se van transfiriendo hacia memoria (desde memoria)
:rn demoras. Conforme a 10 anterior resulta que la velocidad de transferencia de un disco depende:
• De la velocidad de bransferencia intema de la unidad de disco· ~dependiente de la densi:dad, y las r.p.m.).

• Del tiempo de respuesta de la mterfaz controladora (EIDE, SCSI)" Y de fa existencia de un cache en ella.

• De la velocicfad del bus alcua11a interfaz se conecta (hoy difa debe ser PCI).
EI tiempo de trans.ferencia entre disco y memoria se halla dividlendo fos bytes de un sector (512), por la
Yelocidad de transferencia, y es par 10 menos 10 que tarda la cabeza en pasar por la zona de datos del sector:
Un disquete de 3 W' Y 1,44 MB, 80. cilindros y 181secfores, por pista gira a 300 r.p.m. 0 sea 200 mseg por
yuelta (como se calculO). Por 10 tanto, un sectorsera recorrido'en (200/18) mseg = 11 mseg. La velocidad de
transferrncia intema sera~ 512 Bytes/n mseg"" 58 KB/seg. que tambiffi sera la velocidad de transferencia,
puesto que aunque la controTadora este conectada a,un bus ISA,.este permite hasta 8 ME / seg.(maximo)

Esra se puedecakulardirectrunente con·la expresi6n sectores/pisra x bytes/sector x rp.seg = 32 x 512 x 60 = 1 MB/seg., dado que
en esencia es e1 numero de bytes por' segundO' que pasan frente a. una cabeza· mientras el disco gira.
Un disco rfgido de 7200 r.p.m. tendni tiempos de transferencia, 'j lateneia igual a la mitad que otro de 3600 r.p.ffi. Igua!mente, si se
lendrfa 64 sectores pot pista, 0 sea el doble de densid-ud, la velocidad de thlnsferencia.seduplica.
1 Actualmenteexisten discos que giran al doble y mas (10.000 r.p.Ol) de la velocidad ejemplificada, y presentan gran densidad (mas
secto[es por pista), con la posibilidad de enviar desde 10 MB/seg. para arriba durante el breve lapso que dura la transferencia
J Tfpicamente, en una PC los datos se transfieren. entre· este port (de la unidad IDE 0 inferfaz SCSI) y el registro AX del
microprocesador. Si se opera en multitasking puede ser conveniente transferir los datos entre dicho port y memoria principal (ADM),
debiendose contar con un bus rapido. EI ADM se usa para leer 0 escribir disquetes, dado que por las velocidades mucho mas bajas
(como 50 KB/seg abajo calculada), aunque se use un bus leoto como elISA, es suficiente para esta velocidad de transferencia.
~ Un bus ·ISA 5610 puede transferir hasta 8 MB/seg. mientras que un PCI hasta 33 6 100 MB/seg. La controladora va realizando
practicamente "al vuelo" la detecci6n 0 correcci6n de errores de los bits que va enviando hacia la cabeza 0 recibiendo de esta.
En general, a igualdad de velocidad de giro, si se aumenta la densidad lineal (mimero de bits por em. de
pista) se transferiran mas bits por segundo. Hoy dfa esta densidad va en aumento en los nueoos modelos de discos
rigidos, dado que con los actuales tipos de cabezas desarrollados se pueden grabar y detectar mas bits par em de pistd
por 10 que cada vez resultan mayores velocidades de transferencia iniema de bits. Esto debe tener como correlato
interfaces (IDE 0 SCSI) que tengan listos rapidamente los datos a escribir 0 los leidos en un disco, y buses
con un ancho de banda apto para soportar tales velocidades de transferencia entre la interfaz y memoria.

Tambien en muchos casos se ha aumentado la velocidad de giro de los rigidos, 10 cual a su vez trae
aparejado una mayor velocidad de transferencia, como se ejemplifico en un pie de pagina anterior.
Teniendo en cuenta los tiempos descriptos, el tiempo total de entrada/salida que se tarda en
atender una orden de lectura (0 escritura) que llego al controlador de la unidad de disco sera:

tE1s = . t 0 + t/ a tencta.
t postclOnamten
.. + ttr·f.
ans,erencta.

Se trata que este tiempo sea 10 mas corto posible, pues la escritura y lectura de archivos en disco
(rigido) es una actividad frecuente en un sistema de computacion.

(.En que consiste el formateo ffsico y 16gico de un disco 0 disquete ?


Las facturas de un talonario a utilizar vienen impresas en un determinado formate, con un encabezamiento,
un ruimero identificatorio y espacios (campos) reservados para registrar las anotaciones pertinentes. Sin esta
organizacion realizada a partir de papel en blanco, no se puede registrar datos en facturas, ni archivarlas.
Cuando c~mpramos un casete virgen, este no presenta ninguna pista 0 grabacion. Del mismo modo, un
disco 0 disquete virgen esta en "blanco": sus caras son superficies a magnetizar, sin pista alguna en elias, y sin
ninguna informacion grabada. A fin de que se puedan escribir 0 leer datos, previamente se le debe dar un
"formate" u organizacion, Esto supone generar los sectores que conforman cada pista (figura 2.11), con su
informacion identifieatoria de comienzo y final, Y entre ambas el campo reservado para los datos a escribir.
Luego del comienzo de cada sector se graba el mimero de rns que 10identifica, para poder acceder al mismo.
Esta grabacion inicial se denomina "[ormaieo fisico" 2, luego del eual se efectua el "[ormateo logico", que
irnpliea escribir en el campo de datos de ciertos sectores, informacion exclusiva para uso del sistema
operativo (tabla de particiones, subrutina de booteo, datos del disco, FAT y directorio raiz).
A un disco/disquete se Ie debe dar un forma to acorde al sistema operativo usado?
En el "formateo fisico" 0 de "bajo nivel" se generan los sectores de cada una de las pistas (en la figura 2.11
aparece parte de una pista de un disquete, mostrada rectilinea en vez de circular). Para ella el cabezal va
accediendo sucesivamente a eada uno de los cilindros del disco 0 disquete. Comienza posicionandose sobre
las pistas que constituyen el cilindro 0, y formatea una por vez, comenzando por la pista de la cara superior.

Sector 7 Sector 8

Figura 2.11

A medida que el disquete gira, la cabeza correspondiente a la pista a formatear va generando en ella cada
uno de los sectores que la componen. Para cada sector la cabeza escribe los mimeros de CHS [cilindro,

En los discos opticos tambien ha ocurrido este continuo avance en la densidad, y por ende en la velocidad de transferencia, debido
al perfeccionamiento del sistema de escritura y lectura del medio.
2 Los disquetes por 10 general hoy vienen formateados en nivel "bajo" y "alto" por el fabricante para los sistemas operativos de
Microsoft. Tambien se pueden formatear 0 vol verse a formatear mediante el comando correspondiente del sistema operativo. Un disco
rtgido viene de fabrica formateado en nivel "bajo", debiendose realizar el formateo de nivel "alto" por el usuario.
3 No debe confundirse elformateo COil el "booteo", que es La accion de pasar a memoria principal una copia de programas del
sistema operative. Este debe ser escrito en sectores de un disco/disquete luego que el mismo es formateado.
U2-15
cabeza (head) y sector] que sirven para identificarlo y localizarlo, y a continuacion reserva un campo para
de bits por em. de datos, de 512 bytes, cuyo contenido se establecera cuando se escriba el sector. Tambien, al final de cada sector
modelos de discos y comienzo del siguiente se ordena grabar otra informacion de centro': un patron fijo de unos y ceros, que
par em de pistd cada vez que son leidos por la cabeza permitiran al controlador determinar el comienzo de cada sector,
como correlato cuando haya que escribir 0 leer datos en los sectores. No quedan espacios sin grabar entre sectores.
un disco, y buses Mientras el programa de formateo se ejecuta, la controladora de disco se encarga de transferir -a la
memoria. cabeza que esta grabando-la informacion que se escribe en el formateo de cada sector.
Luego que genero una pista en una cara, el cabezal no se mueve del cilindro al cual accedio -para
no perder tiempo- y despues genera los sectores de la otra pista (en el disquete) 0 pistas (en el
disco) de dicho cilindro. En cada vuelta puede generarse una pista completa
en
A posteriori del formateo, cuando se escriben y leen archives, cada CHS permite localizar un sector para
escribir en su campo de datos parte de un archivo (0 todo, si cabe), y para leerlo toda vez que sea necesario'.
La cantidad maxima de sectores por pista depende de la densidad de grabaci6n permitida por el material
magneiico (medible en bpi), y de la codificaci6n empleada (como ser RLL). El maximo de pistas por cara, se
archivos en disco relaciona con el pardmeiro tpi que tam bien depende de la maxima densidad factible.
El tamafio en bytes de la zona de datos de un sector debe ser igual al que maneja el sistema operativo
utilizado', Este para poder usar un disco 0 disquete, requiere que luego del formateo fisico citado se escriba
informacion (que mas abajo se detalla) en sectores predeterminados, que constituiran el "area del sistema".
AI proceso de escritura del area del sistema para que un sistema operative' pueda usarla y actualizarla, se 10
conoce como "formateo logico", 0 de "alto nivel". Este se realiza, como se anticipo.Iuego del formateo fisico
Entonces, cuando se formatea un disco 0 disquete, prirnero tiene lugar su formateo fisico, y
despues su formateo logico (en los disquetes este se efectiia automaticamente luego del prirnero).

mismo modo, un
aiguna en elias, y sin Al llevarse a cabo el formateo logico, un pequefio mimero de seetores
se Ie debe dar un predeterminados son escritos (en su campo de datos) con la informa-
':!Ulra 2.11), con su cion que conforma el "area del sistema", para que el sistema operativo
. - datos a escribir. pueda usar el disco 0 disquete para organizar eficientemente la
informacion a almacenar, y actualizar sectores de dicha area (como
Jrr....,nfpn logico", que los del Direetorio raiz y la FAT) cuando sea necesario.
uso del sistema
El "area del sistema" comprende las siguientes estructuras de
raiz).
datos (figura 2.12 y 2.13):

• Tabla de particiones (solo existe en los discos rigidos): permite


dividir el disco en "particiones", 0 sea en discos menores que
pueden ser escritos 0 leidos en forma independiente.
sobre • Sector de arran que ("boot"): esta en el primer sector de cada
particion del rigido 0 de un disquete.
• Tabla para determinar los clusters de un archivo (FAT): esta en
Directorio raiz sectores que siguen al sector de arranque de un disquete, 0 de
.._----Area del Sistema ----~ cada par-ticion de un rigido,
• Directorio raiz: esta en sectores que siguen a la FAT de un dis-
Figura 2.12 quete 0 de cada particion de un rigido.

Una vez que un disquete 0 disco fue formateado, ninguna escritura posterior de datos en un sector puede modificar el encabezado
de un sector. Solo ello es posible si un disquete se vuelve a formatear. En cada escritura se cambia el campo de datos (figura 2.11).
2 EI DOS y Windows operan con 512 bytes de datos por sector.Itambien puede hacerlo el Unix). Como se describio, ademas de datos de
archivos, un sector contiene informacion de control, como el encabezarniento citado, y otra, como codigos de verificaci6n CRC 0 el ECC a tratar.
3 Luego que se formatea en forma fisica y 16gica un disco, se debe escribir en sectores del mismo los program as que constituyen el
sistema operativo (SO), y que no formaran parte de la denominada "area del sistema" (la cual es usada por el SO luego que esre fue
grabado en el disco). Para tal fin es necesario contar con un disquete 0 CD que contenga estos programas. De 10 anterior se desprende
'pia de programas del que el formateo no incluye la escritura del sistema operativo en el disco. Un disquete "booteable" debe contener el SO.
U2-16

Partlcl6n

Figura 2.13

Sector maeetro con la Sectoree; de bootee Iablae FAT de lae Directorloe; raiz de
Tabla de Particionee; del de lae; partlclonee C particionee; C, D, E lae partlclonee C,.
dle;co DyE DyE

La "tabla de particiones": a diferencia de un disquete, un rigido puede ser particionado para simular hasta
8 discos rigidos independientes ("particiones")', a fin de poder trabajar con mas de un sistema operative', 0
se quiere partir el disco en dos "vohimenes" (C y D) 0 mas, para aprovechar mejor el espacio (como se vera
al tratar los "clusters"). Esta tabla no existe, pues, en un disquete (figura 2.12)
Antes de usar un rigido, este debe particionarse mediante el comando FDISK del DOS.
La tabla de particiones se encuentra siempre en el primer sector ffsico de un disco rigido (CHS = 0-0-1),
tambien denominado "partition sector" 0 "primary boot sector" 0 MBR ("master boot record").
Este sector comienza con una corta secuencia de instrucciones, que luego de encenderse una PC -y ser
ejecutada una subrutina de la ROM BIOS- es cargada en memoria junto con la tabla de particiones. Dicha
secuencia verifica el buen estado de la tabla Y carga en memoria el programa de arranque del sistema,
guardado en el sector de arranque (boot sector); y ante cualquier incorrecci6n genera un mensaje en
pantalla, cortandose el proceso de carga.
Los 64 bytes de la tabla de particiones permiten determinar: los sectores fisicos donde comienza y termina
cada partici6n:; si el sector de bootee de comienzo de cada partici6n puede 0 no cargar un sistema operativo
contenido en la partici6n (0 sea si esta es booteable 0 no); el tipo de FAT (de 12016 entradas).

La existencia de esta tabla es la {mica diferencia existente en la estructura 16gica de rigidos y disqueies.
El registro 0 "sector de arranque" ("boot sector"): contiene el programa de arranque del sistema', antes
citado, y la "tabla descriptora del medio", Esta guarda datos claves para acceder al disco: el bloque de
parametres para el BIOS -BPB- (mimero de pistas, sectores por pista, bytes por sector, ruirnero de cabezas,
mirnero de sectores por "cluster", ruirnero de seetores logicos), y la cantidad de sectores que ocupan el
directorio y la FAT (para acceder al area del sistema). Un "boot sector" debe existir en el sector ffsico donde
comienza cada particion de un rigido \ y en el primer sector fisico de un disquete (CHS = 0-0-1).

Como si supuestarnente para el usuario existieran 4 unidades de disco independientes ("Iogicals drives").
La partici6n "activa" es La que contiene el sistema operative que se carga en memoria euando se enciende el computador
Esie programa existe siempre, sea el disquete 0 partici6n booteable 0 no, 10 cual depende de si existe 0 no un sistema operative
alrnacenado en el disquete 0 partici6n. En la Unidad I, "La PC por Dentro" se trataron aspectos del "bootee".
4 Cuando una subrutina del BIOS lee el primer sector ("master") de un rfgido detennina cual partici6n es booteable. Luego de traer a
memoria el "boot sector" de la particion, el proeeso de booteo continua como en un disquete.
U2-17

La FAT C'File Allocation Table") tabla para deierminar los "clusters" que componen cada archioo': como
se vera, el OOS divide cada archive en una cadena de bloques de igual tamano llamados clusters". II

La FAT es la imagen 0 mapa que tiene el OOS del area de datos' de un disquete 0 partici6n de un
disco rigido, donde aparecen numerados todos los "clusters" que se pueden usar, indicando para
cada uno si esta ocupado (formando parte de un archive almacenado), 0 si esta disponible (para un
nuevo archive' 0 para ampliar uno existente). Asimismo -como se ejemplificara- dado el mimero de un
"cluster" ocupado por un archivo, la FAT indica cual es el mimero del siguiente cluster que el IX>S le
adjudico a ese archivo. Esto le sirve al IX>S para determinar la serie 0 cadena ordenada de los numeros
de "clusters" (consecutivos 0 no) que forman cada archivo. Despues, con un simple calculo se halla el
sector fisico donde empieza cad a "cluster" en el disco 0 disquete.

El direetorio raiz es actualizado por el sistema operativo, y 10 utiliza para determinar par su nombre si un
archivo 0 subdirectorio esta 0 no ahnacenado. Tambien indica sus atributos (protegido contra escritura,
lectura/escritura habilitadas, oculto, S1 es subdirectorio, etc.), tamano del archive, y fecha de creaciori/
actualizacion del mismo. Asimismo, proporciona al sistema operativo el numero del primer "cluster" del
archivo buscado, para entrar en la FAT, a fin de determinar en ella los "clusters" que componen ese archivo.
Su nombre se debe a que es la "raiz" 0 base (localizable siempre en un sector reservado establecido), para
que a partir del mismo pueda definirse jerarquicamente un arbol de subdirectorios guardados en otros
sectores fisicos (cuya ubicaci6n se asigna en el momenta de su creaci6n) del disquete 0 disco.

Para escribir / leer la FAT 0 el directorio raiz, el IX>S debe traer del disquete 0 partici6n del disco una copia a
memoria. Si ella es escrita, 0 sea modificada, hay que vol verla a grabar en el sector correspondiente.

Sistematizando (figuras 2.12 y 2.13): el primer sector fisico de un rigido es el "master" 0 "partition
sector"; y en un disquete, el primer sector contiene el sector de booteo, yen los siguientes encontramos la
FAT Y el directorio raiz, Igualmente, en el primer sector fisico donde empieza cada partici6n de un rigido
encontra-mos -como en un disquete-- su sector de booteo, seguido por su FATy su directorio raiz.

En definitiva, en el formateo fisico se crea en el disco/disquetesectores identi£icables por mimeros que


constituyen su direcci6n. Unos pocos sectores durante el formateo 16gico se destinan al"area del sistema"
(para uso del sistema operativo), y los restantes almacenaran los archivos que se vayan escribiendo,
conformando el"area de datos" (de tamano igual a la capacidad de ahnacenamiento del disco).

En los disquetes se realiza el formateo fisico seguido dell6gico en un solo paso (mediante el comando
FORMAT para el DOS, el cual tambien lleva a cabo el forma teo 16gico de un disco rigido).
Un disquete se puede formatear muchas veces. Con cada nuevo formateo se destruye cualquier dato
grabado, pues se escribe encima nueva informaci6n.
Tambien los fabricantes venden disquetes ya forrnateados fisica y 16gicamente para IX>S y otros sistemas.
Los discos rigidos vienen de fabrica formateados fisicamente.

En sectores del "area de datos" de un disco 0 disquete se carga (almacena) a posteriori el sistema operativo.
Por 10 tanto, este Ultimo no se almacena en el area del sistema, como a veces se confunde.

c.En que consiste la escritura 0 lectura de datos de archivos en un sector? l.Es


IIctible re-escribirlo ?
Puesto que el campo de datos de un sector tiene 512 bytes, un archivo de hasta ese tamano, 0 parte de otro
mas grande, pueden escribirse en un sector (no puede haber dos archivos por sector). Para tal fin, los datos a
escribir deben llegar a la controladora, amen de la direcci6n (GiS) del sector a escribir, y la orden de escritura.
La cabeza indicada, luego de posicionarse en la pista donde esta el sector, ira leyendo el GiS (escrito
durante el forrnateo) de cada sector que pasa, y enviando dicho CHS a la electr6nica, hasta que esta

En el espacio para archives que "ve" y mancja el sistema operative, constituido por "clusters" (bloques de 512, 1024. 2048, ...
bytes (0 sea I, 2, 4 .... sectores) segun el tamafio del disquete 0 partici6n del ngido, los cuales se corresponden indirectamcnte con un
sector 0 un mlmero potencia de 2 de sectores) individualizables por nt1meros. 0 sea, que estos numeros no eslin relacionados directarTlCnte
~on los seclOres fisicos de un disquete 0 partici6n de un disco. Existen al menos dosFATs, aunque esto brinda una seguridad relariva.
• Del mismo modo, en un rfgido. el primer sector Fisico (donde tambien estii la tabla de particiones) Ie sirve at sistema operativo de
referencia pam localizar infonnaci6n en los sectores fisicos que componen el area del sistema.
3 Despu~ del fonnateo 16gico, todos los "clusters" deben aparecer con In indicnci6n de disponibles.

17
U2-18

confirma que es el GiS del sector a escribir (el tiempo que media desde que se dio la direcci6n del sector
hasta su localizaci6n, es el tiempo de acceso) En la zona de datos que sigue (figura 211) se escribiran "a]
vuelo" los bits que le envia la controladora, mientras la cabeza pasa por d.icha zona.

Cuando se desee leer dichos datos asi escritos, llegaran a la controladora los numeros de CHS de
ese sector, y la orden de lectura. Una vez localizado el sector, al mismo tiempo que la cabeza lee su
zona de datos, envia a la controladora una copia de ellos. Puesto que una lectura no destruye datos,
esto mismo ocurrira cad a vez que posteriormente se lea dicho sector.
Para modificar total 0 parcialmente los datos de un sector, se realiza una escritura como la
descripta, y cuando por la cabeza pas a la zona de datos, esta es re-escrita' totalmente (aunque los
cambios sean parciales), destruyendo los datos anteriores.
Ninguna escritura puede destruir 0 cambiar los numeros de CHS de un sector escrito en el forma teo.

i,Es factible leer 0 escribir datos en una parte de un sector?


l..JJ menor cantidad de datos que se puede escribir 0 leer en un disco es un sector eniero, mas exactamente su zona de
datos compIeta. Si se requiere leer datos que ocupan 5010 una parte de d.icha zona, debe pasar a memoria
principal todo el sector donde ellos se encuentran, para que luego el software selecdone los datos buscados.
Los numeros de CHS de un sector no pasan de la controladora a memoria, por ser datos de control.

LeOmO suponen organizados el DOS y otros sistemas los sectores de un disco 0


disquete en "sectores logicos" y "clusters" ?
El DOS (y otros sistemas operativos) se desentiende de la ubicaci6n fisica real ("absoluta") de los sectores en
un disco 0 disquete, 0 sea no opera con la estructura jisica 0 "geometria" de un disco (figura 2.3), con sus
cilindros, caras y sectores, Esto es, el DOS no tiene en cuenta los tres numeros del CHS (ruimero de cilindro,
cabeza y sector) identificatorios de los sectores fisicos, 0 sea "absolutos". SimpIemente supone que los
sectores de un disco forman una sucesi6n de sectores l6gic~ (SL) 0 "relatives". numerados en forma
con.secutiva a partir de 0, asigruindole 1m solo ruimero para cada uno. SegUn esta estructura 16gica supuesta
los sedores (de 512 bytes) se disponen como en una cinta magnetica (figura 214). Estos numeros 110 coinci-
den con los rnimeros de sector que identifican los correspondientes sectores fisicos 0 "absolutos" en el disco.
La figura 214 representa la forma como el DOS y otros sistemas operativos "ven" los 28799 sectores logicos
de 512 bytes disponibles en un disquete de 3 Y.l, de 1,44 MB.

&0 SL 2 f ~ , .. + ~ .. , jo ~. f/;. '." •• t· "''0'' ',.',


.,
r ..•: " ,. ..
5128 512 B
Figura 2.14
Son las rutinas de la ROM BIOS, llamadas por el [X)S, las encargadas de adecuar la orgaruzacion l6gica que
ve el DOS con la organizad6n fisica real, con los CHS. Por ejemplo (figura 2.15), para un disquete de 31/2"
can 1,44 MB (18 sectores por pista), se puede haoer corresponder la nurneracion sucesiva de los sectores
logicos (entre parentesis) con los numeros CHS de los sectores ffsicos conforme indica dicha figura.

El sector logico °= con el sector fisico 1 de la pista de la cara superior (CHS = 0-0-1)
SL(O) se corresponde
10 cual en la figura 2.15 se indic6 0,0,1(0); el SL(l) con el fisico de CHS 0-0-2, Y as! sucesivamente en esa =
pista, hast a el SL(I7), que se corresponde con el de CHS 0-0-18. El SL(18) continua en correspondencia =
=
con el sector fisko de CHS 0-1-1, a sea del mismo cilindro, pero de la pista 1 (cara inferior); y el SL(19)
=
con el de CHS 0-1-2, Y asi en esa pista, hasta el SL(35), que se corresponde con el de CHS 0-1-18. =

Esla operoci6n no es factible de realizar en una cinta magnelic3. por tratarse de un sistema menos sofisticado para la detenninaci6r.
de cada bit en cada bJoque de datos. siendo que la cinUl sufre variaciones de longitud.
2 El adjetivo "Iogico" en informatica tiene el significado de unn referenda, designacion 0 vision, segun el punto de vista uper.llivu d~
un usuario. un programador. 0 un programa (incluido un sistema operotivo). de n1gun dispositivo. registro. IlCchivo. u Olro ente.
A.~i. por software. se puede particionar un disco rigido (que fisicamenle es un solo medio de almacenamiento) en dos discos "16gicos"
designlldos "C' y "D" que el usuario puede ilTUlginar como sepamdos. En CIISO de que el disco no esle pmiciorudo. el disco 16gico
design3do "C" can que opero un usuario. 0 un sistema opemlivo. coincide can el disco fisico particulnr que se trace.
U2-19

Habiendose agotado todos los sectores del


Figura 2.15
cilindro a (que en un disquete estill en dos
pistas, y en un rigido en tantas pistas como caras
tenga), el SL(36) sigue en el sector fisico 1 de la
pista de la cara superior del cilindro siguiente
(CHS = 1-0-1). Luego, los sectores siguen en e1
orden indicado para el cilindro a, siendo asi que
el SL(71) es el de CHS = 1-1-18. Asi se siguen
numerando los SL en correspondencia con
sectores fisicos, de pista en pista en cada cilindro,
y de cilindro en cilindro. En el cilindro 80 (mas
interne del disquete), el sector fisico 18 de la
pista 1 correspondera al sector logico de nume-
racion mas alta, el SL(28799).

En un disco rigido particionado, el primer


sector ffsico de cada particion corresponde al
sector logico cero.
Por ignorar el DOS la estructura del disco en
cilindros y pistas, "no sabe" que sectores
estan en un mismo cilindro, a los fines de
optimizar los tiempos de acceso.
Es muy conveniente que todos los sectores de un
arch iva esten en un cilindro, pues de ser asi, tanto
sectores en en su escritura a leciura, el cabezal no cambiard de
23), con sus cilindro para acceder a cada sector, y tampoco se
de cilindro perderd tiempo de latencia, pues luego de escribir a
que 105 leer un sector, en la operaci6n de entrada a salida
en forma siguienie hard 10 mismo can el sector que le sigue
supuesta par orden numerico en el cilindro, sabre la marcha,
sin que se pierda ninguna uuelta del disco.
En consecuencia, con este metoda el DOS y otros SO no tiene forma de asegurar que todos los
sectores de un archivo que ordena escribir esten en un mismo cilindro, aunque es muy probable
que asi sea. De esta limitacion resulta que archivos sean accedidos en mas tiempo que si estan en
un solo cilindro, y otro efecto es la "fragmentaci6n" de los archivos de un disco rigido, a tratar.

El DOS Y otros sistemas, ademas de "ver"sectores "logicos", dividen los archivos de cada particion 0 disquete
en unidades de igual tamano.Ilamadas "clusters". Un "cluster" puede estar formado por un sector logico (en
un disquete de 3 lh) 0 agrupar un ruimero de sedores logicos de numeracion consecutiva. Este numero es una
potencia de dos, que depende del tamano de la partici6n en un disco rigido, como se indica mas abajo).
Un "cluster" ("grupo") es del tamafio de uno 0 varios sectores (512 bytes 0 512 por 2, 4,8,16,32 ...),
el cual depende del tamano de la particion del disco rigido (discos logicos C, D, E, etc.) donde se
guarda el archivo al cual dicho "cluster" pertenece. 0 sea que un "cluster" agrupa 1,2,4,8, 16, 32,
... sedores, siendo que todos los "clusters" de una misma particion tienen igual tamafio.
Asimismo, un "cluster" es la menor fracci6n de un archivo a la que se puede acceder en una operaci6n de
escritura a lectura de un disco, 10 cual implica la lectura 0 escritura sucesiva de todos los sectores que
.. componen dicho "cluster?'. Un "duster", al igual que un sector, no puede ser compartido por dos archivos .

Para el DOS un archivo es una cadena de "clusters", cuyos rnimeros pueden ser 0 no consecutivos, debiendo
cumplirse que los sectores logicos que constituyen aula "cluster" sean de numeracion consecutiva.
i:I determinacion

Si cada "cluster" son 4 sectores 16gicos de nurneracion consecutiva, cuando el mistrliJ se guardu ell un disco deberd ocupar -I
sectores fisicos IlImbiin de llullJeruchjn consecurivu. por 10que existirn una gran probabilidad de que penenezcan a un misll10 cilindro,
aunque el metodo de la divisi6n en "clusters" no puede :lSegurar que esto sucedera. Esto por un lado pennite que rodos los sectorcs de
un "cluster" puedan ser localizados ffsicamente en un disco con un solo acceso del cabezaI. 10 cuaI redunda en menores tiempos para
acceder a los archivos.
U2-20

Tamaiio de los clusters:

Tamano de la partlcl6n (0 deJ'dlsco entero) Tamano del "cluster" Cantldad de sectores consecutivo!!"

De 16 MB y hasta 127 MB 2.KB 4

De 128 MB y hast a 255 MB 4KB 8

De 256 MB y hasta 511 MB 8KB 16

De 512 MB y hasta 10:'2.3'MB (1 GB) l6KB 32

De 1024 MB y hasta 2047 MB (2 GB) 32KB 64

De 2048 MB y hasta 4095 MB (4. GB) 64KB 128

En los disquetes de 5 lAcon 1,2 MB. Y de 3 1h con 1,44 MB, un cluster es igual al tamano de un sector (512
bytes); mientras que en los de5lA con 360 KB, yde31hcon2,88 MB, un cluster son 1 KB (2 sectores).
Si bien cada "cluster" (entidad logica) tiene su correla to fisico en uno 0 varios sectores fisicos (figura
2.16 b), para el DOS cada "cluster" se corresponde con uno 0 varios sectores logicos numerados
consecutivamente, como indica 1a figura 2.16.a para "clusters" compuestos de 4 sectores.

Figura 2.16.a

Una razon importante para dividir un archivo en


"clusters", que ~grupen varios sectores, consiste
en el ahorro de tiempo de acceso a un disco que
ello puede redundar'. Como se establecio, si todos
los sectores Iisicos que se leen 0 escriben estan en
pistas de un mismo cilindro, el cabezal no necesita
desplazarse a otro, u otros, 10 cual irnplica no
perder tiempo en acceder a nuevos cilindros. Si
bien €I DOS y otros sistemas no saben en donde
se escribira cada "cluster" en un disco 0 disquete,
al comenzar a almacenar archives es m1,ly
probable <N€ se guarden en sectores consecutivos
de un mismo cilindro, 0 de cilindros contiguos.
Pero a medida que un disco se va llenando -con
nuevos archivos 0 con archivos existentes
ampliados- deberan guardarse en sectores fisicos
disponibles no usados, 0 en aquellos que pertene-
cieron a archivos borrados.

En tales circunstancias, suponiendo un archivo de


28,4 KB, si se descompone en bloques ("clusters")
de 0,5 KB, 0 sea del tamano de un sector, harlan
{alta 57 sectores fisicos para almacenarlo (56
sectores para 28 KB, mas otro sector adicional para los 0,4 KB restantes, que ocuparan parte de este sector).
Hipoteticamente podria llegar a suceder entonces, que este archivo se guarde en 57 sectores dispersos en el
disco, con 10 cual harlan falta realizar 57 accesos diferentes para acceder a la totalidad del mismo.
Si el"cluster" es de 2 KB (4 sectores), dicho archivo se descompone en 15 "clusters" (14 "clusters" para
guardar 28 KB, mas otro para los 0,4 KB restantes, que ocuparan solo una parte de los 2 KB de este "cluster".
Siendo que cada "duster" debe ocupar 4 sectores fisicos consecuti vos, ella asegura que a 10 sumo se debera

Otra raz6n fue que cuando los discos rigidos aumentaron mucho de capacidad, y en consecuencia la cantidad de sectores que
contenfan, In FAT, por la cantidad de bits que podfa codificar, s610 podla tabular hasta un ruimero maximo de sector 16gico.
U2-21

acceder a 15 cilindros (contra los 57 acoesos hipot'eti.cos calculados). Como contrapartida, puesto que un
archivo debe dividirse en un mimero entero de "dusters", puede suceder como en este caso, que 0,4 KB
ocupen uno de los cuatro sectores (2 KB) que forman un "cluster", quedando tres sedores sin usar.

Suponiendo que el archivo anterior se hubiese guardado en un disco de 2048 MB -= 2 GB, conforme
a la tabla mas arriba indicada, el tamano de los "clusters" para dicha capacidad es de 64 KB (128
sectores), siendo en general, que cuanto mils grande es una particion, mayor es e1 iamaiio del "cluster".
Entonces, en ese disco, dicho archivo ocuparia un solo "cluster", desperdiciandose 64 - 28,4 35,6 =
KB para el caso que el archivo no aumente mas de tamano.
Cuando se opera con un procesador de texto, es muy probable que un gran mimero de archivos, como el
ejemplificado, 0 porciones de ellos, sean menores que 32 KB. De no particionarse el disco (0 sea si se tiene
una sola particion de 2 GB, traeria aparejado el ~sperdicio de cientos de megabytes de espacio).
En cambio, si se divide el disco en dos particiones de 1 GB, en cada una los "dusters" seran de 32 KB,
reduciendose el desperdicio de espacio (si se quiere, las particiones pueden tener distinto tamano).
Por 10 tanto, el particionado de un disco no solo posibilita operar con distintos sistemas operativos (uno por
particion), sino que tmribien es necesaria realizarlo para aprooechar meier fa capacidad de Ult disco.

~C6mo el sistema operativo encadena en orden los "clusters" de un archivo en la FAT,


y como reconstruye dicha cadena en cada lectura del archivo ?
Supongamos que en la partici6n D de un disco rigido se crea un archivo nuevo, cuyo nombre es
Historia.Cod, y que se asigna tal nombre en el directorio raiz de esa particion, Entonces el DOS 10 incluira
con ese nombre en dicho directorio, pero sin asignarle rungun rnimero de "cluster", dado que aun no se
ha ordenado guardar nada en eL El archivo aparecera en el directorio con una longitud (tamafio) de 0 KB
Si los "clusters" de la partici6n D tienen 2 KB, Y en el momento en que se ordena guardar el archive este
tiene por ejemplo 430 bytes, el DOS le adjudicata un "cluster" completo (2048 bytes = 4 sectores) aunque
sobren 2048 - 430 = 1618 bytes', Yescribira en el directorio sunueva longitud y elruimero'de dicho "cluster"
inicial (supuesto 23 en la figura 2.17.a). Asimismo, el DOS para la entrada 23 de la FAT cambiara la
indicaci6n 0000 (" cluster" disponible) por FFFF, para recordar que el23 es el Ultimo de un archivo.
Cada vez que se modifica un direciorio 0 fa FAT, una copia de los sectores de la partici6n (D en este caso) donde ellos se
guardan debe pasar desde el disco 0 disquete a memoria para ser re-escritos, y de esta re-escribirse en eI disco 0 disquete.
Despues, si el archivo crece, mientras no supere los 2 KB no se Ie asignara nuevos "clusters", cada vez que se
ordena guardarlo. 5610 se actualizara su longitud en el directorio. Supongamos que en el momento en que
se dio una orden de guardar Historia.Cod, haya aumentado de 430 bytes a 28,4 KB (como el ejemplificado
mas arriba), entonces ocupara 15 "clusters"; y que el DOS recorriendo la FAT encontr6 disponibles
(indicaci6n 00) los "clusters" nillnet05 40, 41, 42, 43, 44, 60, 61, 62, 63, 67,79,85,86,87. Entonces, el DOS
modificara la columna derecha de la FAT, quedando esta como indica la figura 2.17.b. Se reemplaza cada
0000 (figura 2.17.a) por el nUmero de "cluster" que sigue en orden al nUmero de "cluster" que esta en 1a
columna de la izquierda, segUn la secuencia numenca anterior. Asi, allado del 40 se tendra 41, allado del 41
el42, .... allado del 44 el60, etc. En el primer "cluster" (23) se reemplazara FFFF (c6digo de Ultimo "cluster")
por el nUmero 40, que es el del" cluster" que ahora Ie sigue. Allado del Ultimo" cluster" (87) se escribe FFFF.
La figura 2.16.b supone los "clusters" citados ubicados fisicamente en una sola cara de un disco.

Vale decir que en la columna de entradas de la FAT, cada nUmero de "cluster" utilizado por un
archivo va acompanado, en la segunda columna, de otro nUmero correspondiente al"cluster" que
Ie sigue, salvo el ultimo, que va acompanado de FFFF, para indicar que no Ie sigue ninguno.
Por 10 tanto, si un nllinerq de "cluster" esta acompanado por otro nUmero de "duster", significa que dicho
"cluster" esta ocupado por algUn archivo. Si esta acompanado por FFFF sera el Ultinw de un archivo; y si 10
esta por el c6digo 0000, significa que dicho "cluster" esta libre, (el "duster" de nUmero 0 no se usa).
para En caso que vaya acompanado del c6digo FFF7 implica que algUn sector el "cluster" estti en mal estado.
:..JSter".
debera

que Aunque un archivo sea de un byte, se reserva un "cluster".


Existen FATs con numeros de 12 y 16 bits (t(pica de discos rfgidos). segun la cantidad de "clusters" existentes
U2-22

Si posteriormente se quiere acceder a este archiuo, el


proceso es como sigue. El sistema operativo traera a
memoria (si es que no estan) el clirectorio raiz y la
FAT.
Primero, en e1 directorio raiz buscara Historia.Cod
para obtener el numero de 511 primer "cluster" (23).
Luego, con este primer numero (23), hallado en el
directorio raiz, el DOS entrara en la columna izquier-
da de la FAT a fin de obtener el numero del" cluster"
siguiente (40) que esta al lado, en la columna
derecha' (figura 2.17.b). Con el40 obtendra e141, con
este el 42, y asi de seguido se llega al 87, que por la
indicaci6n FFFF que 10 acompana sera el Ultimo
"cluster" del archivo Historia.Cod.
De este modo, el,DOS (u otro sistema) reconstTlt~/I'
la cadena (23, 40, 41, 42, .... 87) de los 15
"clusters" que asi ordenados componen el
archive Historia.Cod,
Con estos numeros de "clusters" el sistema
operativo mediante un simple calculo puede
.hallar el numero de sector 16gico donde empieza
cad a "duster". Por ejemplo. simplemente multi-
plicando cad a numero de "cluster" por 4
(sectores por "cluster"), conforme se deduce de
la figura 2.16.a. Luego estos numeros de sectores
logicos serviran para que subrutinas del BIOS
calculen los numeros de CHS de los sectores
fisicos correspondientes, y todos los restantes
necesarios para acceder al archivo contenido en
la partici6n D del disco en cuesti6n.
Si el archivo en cuesti6n en lugar de aparecer en
el directorio raiz se indica en un subdirectorio,
hubieran side necesario algunos pasos mas. En
ese caso primero el sistema operativo buscaria
por su nombre dicho subdirectorio en d
directorio raiz. Este (al igual que para cualquier
archivo) indicaria emil es el mimero de "cluster"
donde empieza ese subdirectorio, a fin de
encontrar en la FAT los nurneros de los restantes
"clusters" que 10 componen. Con estes se
determinan los ruimeros de sectores logicos y
fisicos de esos "clusters", con 10 cual se puede
traer a memoria principal una copia del archive
que constituye el subdirectorio buscado. Al igual
que el directorio raiz, este subdirectorio aportara
la longitud, caracteristicas y numero del primer
"cluster" (23) de Historia. Doc. para acceder a la
FAT. De aca en mas se repite el procedirniento
antes descripto.
Figura 2.17.a Figura 2.17.b

Si el DOS detecta que la longitud en KB de un archivo (indicada en el directorio ralz 0 subdirectorio) es meRor que un "duster". no
acced~ a la FAT. dado que en el primer numero de "cluster" seiialado por el directorio to subdirectorio) eslli tooo ~J archivo.
U2-23

CARAaER/ST/CAS PROP/AS DE D/SQUETES, D/SQUETERAS y


ONTROlADORAS

COmo estan construidos, protegidos, y se accede a los discos flexibles ?


Un disco flexible 0 "disquete" 0 "floppy", como quiera llamarse, consiste en un disco de material
plastico tipo mylard, cubierto con una capa de material magnetizable en ambas caras (figura 2.4).
Esta contenido en un sobre que sirve para protegerlo del polvo, rayaduras, huellas digitales y
golpes (figuras 2.18 y 2.19).
..n, con Los disquetes son remotnbles de la disquetera (designadas A 0 B) en la que estan insertados.
por la Cuando un disquete se introduce en una disquetera, puede ser accedido en cualquiera de las dos caras por
Ultimo la correspondiente cabeza, pero una sola cara sera leida 0 escrita por vez. Mientras no se de una orden de
escritura 0 leetura, el disquete no gira, y las cabezas no tocan sus caras. Si tal orden ocurre, luego de una
espera de casi medio segundo, para que tome velocidad, el disco gira (a razon de 300 r.p.m. en el interior del
"sobre" protector, con la consiguiente elevacion de temperatura). 5610 gira mientras lee 0 escribe, rozando
entonces cada cabeza la pista accedida. Esto, sumado a las particulas de polvo siempre presentes, hace que
la vida util de un disco flexiblecormin sea corta en comparacion con la de un disco rigido.'
La flexibilidad de un disquete ayuda a que no sea afectado cuando las cabezas tocan sus caras.
Se estima que la informacion almacenada en un disquete puede mantenerse con seguridad en el
mismo durante 304 anos, siendo conveniente re-escribirla una vez por afio, pues la magnetizacion
de las pistas se va debilitando con el tiempo.
Un disquete no debe exponerse al calor, campos magneticos (de transformadores, fotocopiadoras,
telefono, monitor), ni ser doblado. Las etiquetas deben escribirse antes de ser adheridas.

Los disquetes de 5 1,4 pulgadas conocidos como "floppys" (figura


2.18) estan contenidos en un sobre cuyo interior esta recubierto por
una capa de teflon para disminuir los efectos del rozamiento.
El sobre presenta aberturas para distintos fines. Las aberturas de
lectura/ escritura perrniten que, dentro de la disquetera, la cabeza
correspondiente a cada cara pueda acceder a cualquier pista de la
misma. El agujero central servira para que en la disquetera un eje
("spindle") 10 tome y haga girar. Si se cubre con cinta adhesiva la
muesca de proteccion contra escritura, no podran grabarse nuevos
datos en los archivos almacenados por accidente 0 error. En estas
condiciones el disquete solo puede ser leido.
Al girar un disquete, cada vez que coincide un agujero existente en el
mismo con otro agujero "indice" del sobre, es indicacion de
comienzo de cualquier pista que se quiera escribir 0 leer.
Existen distintos tipos de discos de 5 W' de distinta capacidad, antes
Abertura para la cabeza descriptos.

El disquete de 3 ~ pulgadas, (figura 2.19) esta dentro de un sobre de


plastico rigido que 10 protege mejor del polvo, humo, etc. Este en su
parte superior tiene un obturador de proteccion con resorte, que
dentro de la disquetera de 3 VI. se abre, para que las dos cabezas
accedan al disco flexible.
Estas mejoras hacen que los disquetes de 3 1,,2" duren mas que los de 5 1,4,
La proteccion contra escritura indebida se realiza con otro obturador
de dos posiciones, deslizable por el usuario segun indican dos
flechas que vienen dibujadas en el plastico, Si el pequeno agujero
cuadrado esta abierto, el disquete esta protegido; si se 10 ve cerrado,
el disquete podra escribirse. En ambos casos siempre podra leerse.
~otecci6n sobreescritura
Figura 2.19
. no
Existen disquetes con una capa [ina de teflon en ambas caras y una cubierta antiestdtica. a fin de minirnizar este ultimo problema
U2-24

LeOmO es en detalle una pista y un sector de un disquete?


La figura 220 mas detallada que la 2.11, muestra la estructura de una pista y un sector de un disquete
formato I'BM, codificacion Ml-M (a tratar), tal como se va escribiendo durante el formateo de cada pista,
Si bien el agujero ''hole index" de 1 mm. (figura 2.18) indica el radio donde comienzan todas las pistas,
necesita un control mas fino para operar, constituido por 146 bytes que conforman el "comienzo de pista".
Este empieza con el campo "GAP 80" con un patron de 80 bytes 01001110 = 4EH para que la corltroladlDrtI
tenga tiempo de identi£icar el comienzo. Luego sigue el campo "SYNC 12" con otro patr6n de 12 bytes
ceres para sincronizar la velocidad de giro. A continuaci6n el "lAM" (Index Address Mark) de 4
particulares, seguida de "GAP SO", de 50 bytes 4EH para sensar que luego viene el sector 1 de la pista.

.GAP80
I!i~ GAPSO
CAMPO DE DATOS (512) M GAPBO

Comienzo de ptsta (140) Sector Nro 1

Los "(lmaros que aoompafian a las letras indican la cantidad de bytes que ocupa cada campo
Figura 220

El sector 1 (0 cualquier otro) consta de 10 campos. Un campo "SYNC 12" indica comienzo de seclor. Le sigue
"IDAM" (ID Address Mark) con 3 bytes particulares, el cual avisa que sigue el campo de lUO:'"Ull'-'i"'-'JO~I" ... ~."..

(direccion) CHS del sector. El CHS es de 4 bytes, que indican los mimeros de cilindro, cabeza, sector y ""'''''''.1
del sector. Luego viene el campo CRC ("Cyclic redundant code", de 2 bytes que se calcula y escribe en
forrnateo'. Cada vez que se accede a un sector, mientras la cabeza lee su IDAM y su CHS (ya sea para escribir
leer el campo de datos que sigue luego) la contro.adc. ·'Uelve a realizar Hal vuelo" el calculo que hizo en
formateo, para verificar si coincide el valor calcu ..ido del -:R ~ con el que esta escrito en el campo CRe. De
ser asi, existen errores en la identificaci6n del sector, que el CRC permite detectar en multiples cases', pero
no pueden ser corregidos (al igual que con el CRC para los datos que sigue al campo de estes).
El encabezado (''header'') del sector, compuesto por los campos recien citados, esta separado del campo
datos del sector por tres campos: el "GAP 22", con 22 bytes 4EH (para dar tiempo a la controladora
realizar la verificacion del CRC citada), otro "SYNC 12", Yel "DAM" (Data Address Mark} con 4 bytes.
El campo 0 area de datos, que para el DOS es de 512 bytes, se escribe cuando se da una orden de "''''-Lau .....·11
Entonces, a medida que la cabeza va escribiendo los 512 bytes, la controladora va calculando otro CRC
los datos, cuyo valor escribe en el campo CRC de 2 bytes que sigue al de datos'. El Ultimo campo de
sector es otro "GAP 80", que da tiempo para verificar el CRC, escribir dos sectores consecutivos a pesar
las variaciones de la velocidad de giro, y oficia de separador con el encabezado del sector siguiente.
Asi se suceden los sectores de una pista, cuyo mimero depende de la densidad (bpi), separados po:
el campo "GAP 80". Luego del Ultimo sector existe un "GAP n", con n bytes 4EH, que indica fin de
pista, )f sirve como "GAP 80".

Esta compleja estructura pennite: que la controladora determine el comienzo de cada campo, que la zona
datos pueda re-€SCribirse cuantas veres sea necesario, y se compensen variaciones de velocidad de giro.

La controladora realiza una divisi6n a medida que en el formateo se escribe el lOAM y el CHS, entre los unos y ceros de estn
campos. y los de un niimero binario predeterminado (coeficientes de un polinomio en x), euyo resro es el CRC
2 Asf, el CRC (tarnbien lIamado Cyclic Redundancy Check) de normas CCIlT permite detectar: errores en uno 0 dos bits en UP'
100%; errores con un numero impar de bits en un 100%; tren de errores de hasta 16 bits eonsecutivos en un 100%, idem con 17 bits er
un 99,996%; la mayoria de los otros tipos de tren de errores, en un 99,998%. Existe una baja probabilidad de que algunos errores lli.
sean detectados, cuando el patron de errores es tal que genera un valor de CRe igual al que estd escrito en el campo eRe del sector.
Un CRC permite deteetar errores, pero no corregirlos, como ocurre con el campo ECe de los discos rigidos. Es por ello que con 1<1
~isquetes aparecen mas errores visibles que con un r{gido
. Por 10 tanto, cada sector presenta dos verificaciones eRe: una para el encabezamiento y otm para los datos. El CRe I se escribe CIl
el formateo, y el CRC2 cada vez que se escriben 0 re-escriben los 512 bytes de datos. En la lectura de estos datos deben tambier:.
coincidir el CRe calculado con el que esra escrito en el campo CRC que sigue a los 512 bytes.
U2-25

funciones cumple una unidad de disquetes ("Floppy Disk Drive") ?

INTERFAZ CONTROlADORA Anteriormente se hizo


SENALES DE LA INTERFAZ mencion a! posicionamiento
BU5~ Paner en marcha motor de giro de las cabezas sobre el
'\\~ -lYllVV"'1 n pasos el motor para cilindro a! cual se quiere
posicionar cabezal en Ia pista acceder (figuras 2.4 y 2.7)
cabeza 061 cuando el disquete esta
girando, y a las corrientes
electricas que circulan en la
cabeza que esta escribiendo 0
leyendo (figura 2.5), etc.

Estas acciones basicas de la


"unidad de disquete" 0 "dis-
quetera" ("drive" A 0 B)
sirven a su objetivo de escribir
o leer una pequefia superficie
(sector) del dis- quete inserto
en este periferico (figura 2.21)
Para tales acciones la disque-
tera presenta en esencia:
Mecanismos de sujeccion
y eyecci6n del sobre
protector (con el bot6n
frontal), y para desplazar
la ventana de proteccion,
• Motor para girar el disco.
• Otro motor "paso a pa-so?',
para haeer avanzar de pista
en pista (de un cilindro al
Bot6nd~l siguiente), a la armadura
eyecci6n del di6quete que porta las dos cabezas
(ampliada mas en detalle y
DETALLE DEL CABEZAL abierta a la derecha de la
Figura 2.21
figura 2.21)/ las cabezas
as! se mueven en movimiento radial rectilineo -hacia delante 0 atras- hasta el cilindro seleccionado.
• Sensores para detectar presencia de disquete, y si esta protegido contra escritura en su eubierta.
• Bus de conexion a su interfaz, conocida como controladora".
• Circuitos que constituyen la electr6nica de este periferico. para accionar los elementos
anteriores, conforme a las sefiales electricas que recibe de la controladora (interfaz) de las
disqueteras (A y B), a traves de conductores del bus de conexionado citado.
Las sefiales que llegan a la disquetera desde la interfaz (figura 2.21) ordenan, entre otras acciones:
• Poner en marcha el motor de giro de la unidad seleccionada (sea la A 6 B).
• Posicionar (mediante el motor paso a paso) la annadura en un determinado cilindro del disquete.
• Seleccionar cual de las dos cabezas se activara.

) ceres de estos A su vez por cables de dicho bus de conexi6n, la electr6nica puede enviar hacia la interfaz sefi.ales, como:
• Aviso de inicio de pista (cuando el agujero correspondiente del disquete coincide con el del sobre).
• Aviso de escritura protegida.
• Aviso que datos leidos son enviados a la interfaz.

Se irara de un motor cuyo eje en lugar de girar continuameme. sc detiene brevcmente en posiciones separadas un angulo
establccido. Asi. va saltando de una posicion a la siguientc.
2 Una cabeza es soportada por un braze (para 13cara superior del disco), y 13otra esta en 13 parte inferior de la armaduru del cabezal,
como aparecen a la derecha de la figura 2.21.
U2-26

Como resultado de estas senales, si todo esta en orden, puede tener lugar la transferencia serie de
bits leidos en un sector de un disquete hacia 1a interfaz (0 en sentido contrario en una escritura d,
un sector) a traves de uno de los cables del bus de conexionado citado.

i,Que hace la controladora (interfaz) de la unidad de disquete?


BUSQUE UNE LA INTERFAZ CON ~
ELEcmONICA DE LA DISQUETERA
Motor "paso a pas~ ,/
EI cabezal se posicion I ~

sabre el cllindra (pistol


indicado

Comando con norneros


( cliindro (C). cabeza (H)
sector (S)a acceder

PLAQUETAQUE CONTI ENE LA


INTERFAZ- CONTROLADORA
_1-.)--1,)1: LA UNIDAD DE DISQUETE

MEMORIA
MICROPROCESADOR PRINCIPAL
ESQUEMA

En RDI aparecen las direcciones


de los ports hacia donde van los PASllLLA CON LA CONTROI.ACX)AA
comando lIega DE ADM Y SUS PORTS
comandos. asI como Ia dlreccl6n Figura 2.22.a
de cada posicion de memoria desde memoria a AX Direcci6n de Ia posk:i6n de merroria hocia
que se qulere leer 0 escrlblr o desde la cuol se hoce eI primer ADM

AI igual que las interfaces universales "port serie" y "port paralelo" tratadas en la Unidad 1, la interfaz-
controladora de la unidad de disquete (figuras 2.21 y 2.22') conforma un nivel de electr6nica entre el bus
ISA (que comunica con la memoria y la UCP), y la electr6nica del periferico (disquetera en este caso).
En relaci6n con dicha electr6nica, intercambia datos en serie, y sefiales. Estas ultimas mencionadas
al final de la respuesta anterior. Las mas importantes se indican en la figura 2.2l.
Por el otro lado, desde el bus (ISA) recibe en paralelo comandos (que, como eJ CHS, indican 1a ubicaci6n
del sector a acceder, y si e1 mismo debera ser escrito 0 leido), los cuaJes son transferidos mediante AIM
desde memoria hacia la interfaz (trayectoria en gris oscuro en la figura 2.22.a), siendo retenidos
transitoriamente en esta en registros, que son los "ports para comandos" de esta interfaz.
En una escritura (figura 2.22.b) desde memoria y pasando en paralelo a traves del bus de datos, Ilcgaran por

I ESI:lS figuras son mas detalladas que la figura 1.63 de la Unidad I, Y con el disquete separado de In disquetera C0l110 en un dispiece
::;.-s a escrtblr solen de la electr6nlca de la
:fs::'....e:ero hocio la cabeza
=' ~ zona de datos del
Figura 2.22.b

CHIP CON EL
PORT DE DATOS
con numeros
cobeza (H) y
: occeder

CONTIENE LA
r.'iROlADORA
C~DISQUETE
• COMAN DOS

Alea memoria donde


eston los 51 2 bytes a
escriblr en el sector del
disquete, que se trans-
Direccl6n de 10 posicion de memoria terlton mediante 51 2
noclo 0 desde 10 cual se hace ADM ADM 01 port de datos

ADM al port de datos de la interfaz, cada uno de los bytes a escribir. Yen una lectura por dicho port pasaran
(por ADM) cada uno de los bytes de datos del sector Ieido, con rumbo a la memoria principal, via el bus.
-a 2.22.a Como se dijo, a la i.nterfaz-controladora le llegan comandos que ordenan leer 0 escribir un sector, del cual se
indican sus ruimeros de CHS. Merced a la ejecuci6n de subrutinas del BIOS' estos comandos que estaban
en memoria principal, pasan al registro AX. de la UCP (linea blanca de la figura 2.22.a), y de este a los
registros "ports de comandos" de la interfaz, a traves del bus de datos que llega a esta (linea en grisado).
1 la interfaz-
La interfaz, despues de recibir estes comandos realiza las siguientes acciones de control:
: entre el bus
• Traduce dichos comandos en senates destinadas a la electr6nica de la disquetera. Prirnero para
~caso).
activar el motor de giro del disquete, y para que el eje del motor "paso a paso" gire una sucesi6n
mencionadas
de angulos iguales, en correspondencia con los cuales el cabezal pasa de un cilindro (pista) a otro,
) hasta posicionarse en el cilindro (pista) ordenado (estas sefiales ya se indicaron en Ia figura 2.21).
r ..a ubicaci6n
r.ediante AIM • Indica a la electr6nica de la disquetera el numero de sector buscado. Mientras gira el disquete,
do retenidos una de las dos pistas del cilindro accedido sera leida por la cabeza indicada por el comando,
hasta localizar el sector buscado. Para 10 cual, dicha cabeza lee los mimeros identificatorios
~ llegaran por (CHS) de cada sector que encuentra en la pista que accedio, los cuales son transmitidos a la

en un dispiece En definitiva estas directivas son enviadas por el sistema operative, dado que la Rom Bios puede considerarse parte del rnisrno
interfaz, para determinar si es 0 no el comienzo del sector buscado, a fin de escribir 0 leer
(segun sea 1a orden) los datos en el campo de datos del sector buscado.
• En una escritura (figura 2.22.b), los bytes a escribir en el sector van llegando (byte por byte) po.
el bus (desde la memoria) al "port de datos", y a medida que llegan a este, los bits de esos byte.
pasan en serie hacia la cabeza, para que los escriba en el sector accedido.
• Al mismo tiempo que escribe 0 lee los bits en la zona de datos de un sector, realiza el calculo del
CRC (figura 2.11) cuyo valor graba a continuacion de esa zona en una escritura (0 verifica en una
lectura).
• Si es una leciura, los bits de datos que estan en el sector son leidos en serie par la cabeza, y pasan a
dicho port de datos de la interfaz. A medida que llegan a este port, salen en paralelo (como bytes
por el bus hacia la zona (buffer) de memoria principal reservada para los mismos.
• Realiza el manejo y control de errores, codificando en un registro port el tipo de error ocurrido.

La controladora (interfaz) de disquetera pued.e estar en circuitos de la "motherboard", 0 en una plaqueta


inse.rtada en un z6calo (como aparece en las figuras 2.22). En este Ultimo caso es comun que dicha plaqueta
sea "multifuncion": tambien sirve para el disco rigido, el CD Y otros perifericos, amen de presentar 31
exterior conectores que comunican con ports serie y paralelo, para el mouse y una impresora, por ejemplo.
En esta plaqueta podemos encontrar un chip con un microcontrolador (seccion @@), cuya UCP
ejecuta un programa contenido en la ROM que forma parte de dicho chip. Este programa permite
controlar las funciones antes citadas que llevan a cabo circuitos de la interfaz, que pueden en el
presente constituir un solo chip con el microcontrolador, 0 a 10 sumo dos chips. Una circuiteria
equivalente se requiere si esta interfaz se encuentra en la "mother".
Cabe mencionar que en un disco rigid 0, la mayoria de las funciones recien descriptas son
realizadas por la electronics inserta en la unidad de disco (tipo IDE 0 SCSI, a tratar) quedando en la
interfaz del rigido practicamente funciones de conexionado.

i,Que funciones cumple en general una controladora de ADM?


Este dispositivo y sus funciones ya -han sido considerados en la Unidad I, por 10 que en 10 que
sigue reiteraremos algunos conceptos y ampliaremos otros.
La transferencia de datos entre el registro port de datos de la interfaz controladora y memoria principal, 0 en
sentido contrario, se hace directamente (acceso directo a memoria: ADM, figuras 2.22.b y 1.72de la Unidad
I), a traves de lineas de datos de los buses que los comunican, sin pasar por el registro AX de la UCP.
Si dicha transferencia se hiciese por AIM, la UCP debe ejecutar una subrutina (que por 10 general
esta en la ROM BIOS) que pase los datos usando el registro AX como escala intermedia.
En cambio,la transferencia por ADM se hace sin intervencion de la UCP. Esto requiere (figura 2.22 a y b)
una circuiteria "mteligente'" con autonomia para enviar direcciones a la memoria principal y darle orden de
lectura 0 escritura, tal como 10 hace la UCP. Esta circuiteria se denomina "controladora de ADM". Contiene
mas de 20 registros internos, y puede estar constituida por un microprocesador dedicado.
Se dice que esta controladora opera como "maestro" en el bus (''bus master") cuando gestiona la
transferencia de informacion por ADM desde memoria al"port de datos" de la interfaz-controladora
(0 en sentido inverso en una lectura) a traves de las lineas de datos del bus (tipicamente el bus ISA).
De este modo, es factible compartir la memoria principal entre la UCP y 1acontroladora de ADM.
Asi, la UCP (si se tiene un sistema operativo -50- multitarea) puede ocuparse en ejecutar otro
programa, mientras el chip con esta controladora supervisa el ADM. En caso de conflicto, por
querer acceder juntos (la UCP y la control ad ora de ADM) a memoria principal, en general1a UCP
debe esperar al fin del ADM. De no ser asi, podria no llegar con la velocidad adecuada 1a
informacion que se transfiere por ADM, 0 perderse parcialmente, siendo que tambien una de las
funciones de la controladora de ADM es perrnitir la transferencia continuada, por bloques ("block
transfer"), de los bytes que componen cada sector, mediante sucesivas lecturas 0 escrituras (segun
sea, cada una por ADM) de posiciones consecutivas de memoria.

Que en las mini y grandes computadoras pucde incorporar mas irueligencia, constituycndo los dcnominados "canales de ElS".
Un controlador de ADM permit" que varias interfaces de perifericos (disqueteras, scanner, audio en multimedia, ... J asignando un
··COIlU/"" a cada una, Cada "canal" tiene sus propios registros RDI, RC. RD, a tratar,
La controladora de ADM (hgura 2.22.a y b), como la UCP, maneja una linea de ~/ontrol d~ LIE de
:ribil: 0 lee
memoria, y presenta baslcamente los slgulen\es regls\1ol2, eI\ ~:aQ:i\\ID~ Q.~ \\)~ td1\o.\~'& \\\l~\\)~
r byte) por componen, los cuales se pueden escribir e identificar par una direccion, como los ports:
le esos bytes
• "Registro de direcciones" (RDI) al igual que la UCP, donde se indica la primera direcci6n de
memoria a leer 0 escribir.
!. calculo del
• "Registro de cuenta" (RC) para indicar el numero de bytes a trans£erir por ADM (por ejemplo 512), 0 sea
r.fica en una
cuantos ADM deben realizarse para leer 0 escribir la zona de datos del sector.
• "Registro de ordenes" (RO) para habilitar la realizaci6n del ADM cuando 10 solicite la interfaz
(mediante 1a activaci6n de la linea DRQ), y ordenar si el ADM es para leer 0 escribir la memoria.
• "Registro de status" (RS), en el cual un bit indica si se completo Ia transferencia de un bloque.

Antes que se realicen los ADM, se deben escribir (por AIM) los contenidos de estos registros (0 sea
inicializarlos) mediante la ejecuci6n de una subrutina que debe ejecutar la UCP mientras el cabezal se
posiciona en el cilindro ordenado. Cad a uno de esos contenidos primero pasa de memoria al registro AX
(linea blanca en la figura 2.22.a) al ejecutarse una instrucci6n de transferencia, y luego mediante la
ejecuci6n de instrucciones tipo OUT pasan de AX a dichos registros (linea negra).
De esta forma, cuando se lleva a cabo el primer ADM, el ROI apunta a la primera direccion de memoria
(supuesta 5000) que se debe leer 0 escribir. En una escritura del disquete, una vez que pas6 el primer byte de
memoria a1 port de datos de la interfaz (y en sentido inverso en una lectura), la controladora de ADM le
suma uno al ROI, Y le resta uno al RC (este cuenta los ADM). Asi se podra acceder ala siguiente posicion de
memoria, para luego otra vez incrementar ROI (para acceder a la posici6n que sigue) y decrementar RCi y
asi sucesivamente se escriben (0 leen) por sucesivos ADM las posiciones consecutivas de una zona buffer de
memoria principal, hasta que el contenido de RC sea cero, 10 cual significa que el Ultimo ADM se complete.

untando todo: (,C6mo intervienen la interfaz controladora, la electr6nica del perlterlco,


a controladora de ADM en la lectura 0 escritura de un sector de un disquete ?
En principio, para que en cualquier computador tenga lugar una operacion de escritura 0 lectura de algun
medio (disco, cinta, papel), es necesario que durante la ejecuci6n de un programa se ejecute una instrucci6n
que llama a la subrutina del SO, 0 de la ROM BIOS, preparada para tal fin. Podemos considerar al BIOS
formando parte del SO, siendo que este se encarga del manejo de los perifericos (Apendice 2 de la UI)'

Por ejemplo, si en una pantalla Windows indicamos con el cursor del mouse que queremos abrir 0 guardar
un archivo en un disco 0 disquete, se pasara a ejecutar una secuencia de instrucciones entre las cuales exis-
tira una para llamar al SO, que expresada en assembler sera del tipo !NT nn' si la UCP de la PC es un 8Ox86
(0 un clon de Intel). La mismo si mediante e1 teclado damos una orden de apertura 0 cierre de archivo.
Igualmente, si en un lenguaje de alto nivel se tiene una sentencia como READ, WRITE, GET, PUT u otra que
.Contiene ordena escribir 0 leer un archivo, eJ prograrna compilador la traduce a una secuencia de instrucciones de
maquina, entre las cuales habra una que llama al SO, que sera del tipo !NT nn, si el compilador traduce al
c6digo de maquina que debera ejecutar un procesador 8Ox86 0 Pentium de Intet
Ejemplificaremos aspectos fundamenta1es de un proceso de escritura de un. archivo (0 parte del
mismo) en un sector en un disquete, que dividiremos en cinco fases 0 momentos, las cuales tambien
suceden total 0 parcialmente en operaciones de E/5 de otros perifericos.
Conforme a 10 anterior, para que este proceso tenga lugar, en un programa en ejecuci6n debe existir
una instrucci6n de Hamada al SO, que es INT 13 si el procesador es un 80x86.

I. Fase de preparacion: ruando la UCP ejecuta el c6digo de maquina de !NT 13 comienza esta £ase,
primera de las cinco £ases en que hemos dividido la escritura de un sector. Dicho c6digo ordena que la
UCP pase a ejecutar una subrutina del SO (0 del BIOS) cuyo cometido es llevar a cabo la presente £ase.

deE/S". Dc ~n mouo mas general: las operacioncs de ElS son prcparadas, activadas y controladas por subrutinas del SO .
.mgnando un EI Ilumero nn slI'Ve de base para localizar una subrulina que prepara la operacion de EJS que se necesita hacer.
P:lru oiros procesadores. eSIUinstrucci6n de Ilamada al SO liene Olro nombre: SVC. Call. Trap. etc
U2-30

Algunas de las numerosas acciones preparatorias, que realizara esta subrutina del SO y otras
subrutinas del sistema, que dicha subrutina a su vez llama a ejecucion, seran:
division del archivo a grabar en "clusters", que para disquetes de 3 W' 2HD son del tamafto de un sector;
- lectura del directorio raiz del disquete, (y luego si corresponde, de un archivo subdirectorio)
para determinar si el nombre del archivo en cuestion no existia antes; asi como la lectura de la
FAT (para que el 50 asigne mirneros a los "clusters" que formaran dicho archivo).
escritura (en el subdirectorio) del nombre asignado al archivo, y en la FAT los" clusters" que ocupa;
conversion de cada numero de "cluster" asignado en ruimero de cilindro, cabeza y sector (CH5),
o sea que sector del disquete corresponde a cada "cluster".
En especial nos interesa el hecho de que una vez realizadas las acciones anteriores, la ejecucion de
subrutinas del BIOS' hace que lleguen a los registros ports correspondientes los comandos (figura 2.22.a).
Estos ordenan que deben hacer el controlador de ADM y la interfaz-controladora de la disquetera, a saber:
• comandos que iran al port de comandos de la interfaz-controladora de la disquetera, para
indicar la direccion del sector a acceder (sus ruimeros CH5), con 10 cual el cabezal se posicionara
al finalizar la presente fase de preparacion en el sector a escribir
• comando que ira al registro RC del controlador de ADM, para indicar que deben transferirse
512 bytes entre memoria y el sector.
• comando que ira al registro RDI del controlador de ADM, para indicar a partir de que direccion de
memoria se encuentran los 512bytes a transferir hacia el port de datos de la interfaz de la disquetera.
• comando para el registro RO del controlador de ADM (cuyos contenidos se citaron).
En esencia, estos comandos indican, pues, el numero de bytes a transferir, y el origen y destine' de
estos datos, ya sea para una operacion de escritura de un sector, 0 para una lectura del mismo.

Primero llegan comandos a los ports de la interfaz controladora, con 10 cual esta origina sefiales de con-
trol en el bus que la une con la electronica de la disquetera (figura 2.22.a),merced a las cuales esta Ultima
comienza a realizar una secuencia de acciones, que en una escritura tipicarnente comienzan como sigue:
a. Poner en rnarcha el motor de giro de la unidad (A 0 B) seleccionada, ordenar que las dos cabezas se
pongan en contacto con las caras del disquete, y.esperar 1hseg. hasta que alcance la velocidad correcta.
b. Posicionar ("seek") el cabezal en la pista (cilindro) cuyo numero se ha indicado.

.
Hasta que este posicionamiento ocurra (luego de unos 25 mseg.), la UCP puede ejecutar subrutinas a fin de:
c. Inicializar y activar la controladora de ADM, para 10 cual escribe en sus registros ports RO, RDI,
Y RC antes citados, los valores para preparar el ADM a realizar, a fin de leer 512 bytes de
memoria y transferirlos al port de datos de la interfaz.
d. Enviar a un port de la interfaz controladora, una serie de bytes con comandos, que ordenan escribir un
sector (0 varios) de una pista (ya indicada en b); la indicacion del ruimero de cara (cabeza), mimero de
sector, tamafio del mismo, y otros parametres relativos a como fue forrnateado el disquete.

2. Sincronizacion: en general, para que un periferico escriba en su soporte, previamente deben llegar
(desde memoria al port de datos de su interfaz) los bytes que se quiere dar salida. El momento en
que esta transferencia puede realizarse 10 determina (sincroniza) la electronics del periferico.

En una disquetera, en la fase 1 el cabezal llegara al cilindro (pista) indicado, y desfilaran los
sectores de dicha pista" frente a la cabeza que accede a la cara seleccionada del disquete. Cuando la
cabeza se encuentra sobre el sector al que se quiere acceder, la electronica de la disquetera avisara
con una senal a su interfaz que es el momento de enviar los datos a escribir desde memoria hacia el

La ejecuci6n de instrucciones de esras subrutinas del tipo OUT (Figura 1.66 de la Unidad I) permire enviar -a troves de las linens
de datos del bus- sucesivos comundos desde el registro AX de la UCP (al cual lIegaron desde memoria) hacia rcgistros pons de la
interfaz controladora de disquetcra, y a los registros de la controladora de ADM
2 Si es una operacion de entrada. el origen sera un sector del disquete, identificado por sus ruimeros CHS, y el destino la memona
principal. EI sistema operativo deja indicada en memoria la direcci6n a partir de la eual se guardardn los 5 J 2 bytes provenientes lid
sector leido. En caso de irararse de una operaei6n de salida el origen sera la memoria y el destine el sector a escribir.
, Recordar que en cualquicr pista de un disquete, los sectores se enumeran a partir de la serial que indica la concordancia de un
agujero indiee del disquete eon Olro existente en la cubiena protectora.
U2-31

port de datos de la interfaz, 0 sea de comenzar la transferencia por ADM. Esta sefial llegara por el
bus que la com unique con la interfaz, y hara (figura 2.22.b) que esta active fa linea DRQn que va a la
controladora de ADM (n es un mimero que identifica a esta interfaz).
Entonces,la activaci6n de DRQn es la seiiui de sincronismo para que la controladora inicie el ADM.

3. Fase de transferencia (por sucesivos ADM) de los datos entre memoria principal y el port de
datos de la interfaz. Comprende los siguientes pasos (figura 2.22.b):
a. Al detectar la controladora de ADM que DRQn fue activada (10 cual implica que la cabeza
seleccionada esta pasando sobre el sector indicado, para escribir (0 leer) bits) ella tom a el control
del bus que comunica con la memoria.
b. La controladora de ADM responde activando la linea DACKn que llega a Ia interfaz (no dibuja-
da) para que el port de datos de dicha interfaz este lis to para tomar el byte que llegara por las li-
neas de datos del bus, que sera el primero de los 512 a escribir en el campo de datos del sector'.
c. La controladora de ADM coloca el contenido de su RDI en las lineas de direcci6n del bus, y
ordena lectura de memoria principal, para 10 cual hace uno el valor de la linea LIE (LIE = 1).
d. Un byte (0 dos) es transferido desde la posicion de memoria direccionada al port de datos de la interfaz.
e. En la controladora de ADM su registro RDI es incrementado uno, y RC es decrementado uno.
f Si el contenido del registro RC no es cero se vuelve al paso a.; si RC = 0 (0 si surge algun proble-
ma) la controladora cede el control del bus ala UCP, y sigue el paso g.
g. La controladora de ADM pone en uno el bit de su registro RS que indica transferencia de un bloque
completo, y avisa a la interfaz, para que esta active su linea IRQn de solicitud de ;nterrupd6n.

4. Escritura del sector bajo control de la electr6nica de la disquetera: cada byte (0 dos) que lIega en parale-
10 (por ADM) al port de datos de la interfaz, es convertido a bits en serie. Estos bits son considerados
en el calculo que en la interfaz se realiza para deterrninar el CRC, y son enviados con codificacion Iv1FM
(se explica mas adelante) a la electronica de la disquetera, la cuallos envia a la cabeza que los grabara
en el sector al que se accedio.
Luego de que llego el Ultimo byte que se debe escribir en la zona de datos del sector, la interfaz
enviara a dicha electronica los bits que la cabeza deb era escribir en la zona del CRC (figura 2.20).
Al finalizar, la electr6nica enviara senales a la interfaz, para que esta indique en su port de status
si la operacion de escritura ordenada fue exitosa, 0 si debe codificar algun tipo de error sucedido.

5. Verificaci6n de la correcta realizaci6n de la operacion ordenada: en general, en el registro de status de


cada interfaz de periferico se indica si una operacion orden ada a la misma ha sido exitosa 0 no.
La ejecuci6n de subrutinas preparadas para tal fin permite leer estos registros y conacer su indicacion.
En el caso de la disquetera, como se describi6 antes, luego de finalizar el ADM (RC = 0) la interfaz
activa la linea IRQn, para que se interrumpa transitoriamente el programa en ejecucion, y que la ucr
pase a ejecutar la subrutina del SO que verifica si la operacion preparada y ordenada en la fase 1 ha
sido llevada a cabo correctamente. Asi, por software, se verifica que hizo la controladora de ADM.
Esta subrutina tipicamente leera entre otros el registro de estado citado, y si hubo error,
intentara repetir la opera cion varias veces a fin de salvarlo. Si esto no es posible, ella podra
hacer aparecer un aviso por pantalla, donde figura el tipo de error producido.
Al final, una subrutina ordenara detener el giro del disquete y levantar las cabezas del mismo.

En caso que en la etapa de preparacion en lugar de una escritura se ordene una lectura de un sector, la
controladora de ADM en cada ADM escribira la memoria principal. Por tratarse de una operaci6n de
entrada, el sentido del movimiento de los datos es del sector del disquete hacia memoria, por 10 que debe
invertirse el orden de las fases 3 y 4 descriptas para la escritura de un sector.
Esto es. ahora en la fase 3 -de lectura del campo de datos del sector accedido- a medida que la
cabeza seleccionada va leyendo esta zona del sector, la electronica de la disquetera va enviando
hacia la interfaz, informaci6n en serie codificada en MFM.
Esta informaci6n, a medida que llega es decodificada, para determinar los bits de datos que contiene,
los cuales tambien son considerados en el calculo que en la interfaz se realiza para determinar el eRe.
Los bits que componen esta informaci6n son convertidos en grupos de 8 (un byte), con destino al

En In lectura de un sector (escritura de la memoria) un byte (0 dos) del pon de datos pusan a las lineas de datos del bus
port de datos, de modo que en la fase 4 -ahora fase de transferencia por ADM succsivos-- cad
byte salga en paralelo por las lineas de datos del bus, para ser escrito er, la memoria.
Cada ADM se realiza conforme a los pasos a hasta g descriptos en la fase 3 de la escritura de un sector, c
la salvedad que en c se ordena una escritura (linea L/E=O), y en d la transferencia tiene sentido inverso.
La fase 5 -de verificaci6n- es identica a la descripta, y supone que al final de la fase 3 -luego que se leyero
todos los bits de la zona de datos del sector-la cabeza lee el campo CRC, y los bits que la componen al
a la interfaz son contrastados con los que componen el CRC que calcul61a interfaz controladora. Si no exist
coincidencia entre el CRC calculado y el CRC escrito en el sector, se debera repetir la lectura.

De 10 anterior resulta, que de todos los campos de informaci6n presentes en un sector de un disquete, sol
llegan a memoria principal los (512 en el DOS) bytes contenidos en la zona de datos propiamente dicha.

(,Cuales son los mensajes tipicos de error en el uso de disquetes ?


En la escritura 0 lectura de un disquete suelen ocurrir errores, algunos de los cuales pueden
aparecer en la pantalla como se indica a continuaci6n:
Drive not ready (la disquetera no esta lista): puede deberse en principio a que en la unidad no se ha
colocado un disquete, 0 a que en la unidad de 5 1,4 no se haya girado la palanca frontal de accionamiento.
Tambien puede estar en mal estado el agujero indice citado, 0 sucio (0 fallado) el sensor 6ptico que
detecta el momento en que dicho agujero en el disco coincide con el existente en el sobre.
Sector not found (no se encontr6 el sector indicado): ya sea por deterioro de su CHS, 0 por estar
formateado el disquete para otro sistema operativo.
CRC error: el valor del CRC Ieido no coincide con el calculado por la controladora.
Seek error (error de posicionamiento): el cabezal no pudo posicionarse en el cilindro indicado.
General failure (falla general): por errores repetitivos de caracter grave.

ASPECTOS PARTICULARES DE DISCOS RIGIDOS Y UNIDADES DE


DISCO RIGIDO
- --
Temas anteriores ponian de manifiesto caracteristicas comunes de disquetes y discos rigidos. En 10
que sigue se tratan aspectos propios de los rigidos.
Los discos magneticos rigidos 0 duros difieren de los disquetes por su gran capacidad de almacena
mien to, por la mayor rapidez con que se accede a los datos, y por la mayor velocidad con que se los
transfiere desde 0 hacia la memoria. Ello es fruto de su mayor densidad superficial (mas bits por
pista y mas pistas por centimetro radial), de su mayor velocidad de rotaci6n, de un sistema mas
veloz de posicionamiento del cabezal, y de una controladora mas inteligente.
Por ser de material duro, un rigido no presenta las deformaciones de un disquete y permite una
mayor precisi6n en el acceso a cada pista. Al respecto, un servomecanismo permite ubicar y seguir
cad a pista, 10 cual permite una mayor confiabilidad, dada la proximidad entre las pistas contiguas.
El termino "duro" ("lUII'ddisk" =
HD') se refiere a que esta constituido por platos rigid os de aluminio, 0
de vidrio con implante ceramico en el presente. Existen discos rigidos fijos como los que estan en una caja
hermetica en el interior del gabinete de una PC, y tambien los hay rentouibles, los cuales son transporta-
bles. Las unidades de disco', segun el tipo que sean, pueden contener uno 0 mas discos (figura 2.6).
TIpicamente en una PC de escritorio son uno 0 dos plates, de un diametro de 3 1;2 pulgadas.
Por fabricarse los platos bajo normas estrictas, y variar muy poco de tamafi.o can la temperatura, el material
. magnetico que los recubre permite 3000 tpi 0 mas, a la par que 50.000 0 mas bytes por pista (0 sea l()() 6 mas
sectores por pista). Tambien ha influido en esto la aplicaci6n de magnetizaci6n perpendicular a la
superficie de la capa magnetizable (figura 2.23), en lugar de la polarizaci6n de superficie (figura 2.5). Resulta
as! una elevada capacidad de almacenaje (500 MB - 1GB 0 mas) en uno 0 dos plates pequenos, y unidades

No confundir con las iniciales HD de High Density que vienen en los rnicrodisquetes.
A veces denominadas "Winchester 30-30" -corno el rifle- por presentar un modele de disco 30 MB fijos Y 30 MB rcmovibles.
U2-33

compactas. Ademas, por la gran velocidad de giro', y por tener el


cabezal movimiento rapido en discos de pequeno radio, se tiene
comparative- mente cortos tiempos de acceso',
un sec tor, c Mas sectores por cilindro posibilitan que un archivo entre en un
inverso. solo cilindro, para que el cabezal en 10 posible no deba cambiar a
que se leyero otro cilindro, resultando mas rapida la escritura y posteriores
alllega lecturas; a la par que reduce la fragmentaci6n de archivos en
Sino exist varios cilindros, con la perdida de tiempo que ello ocasiona.
Las cabezas "magneto-resistivas" (MR) basadas en una resistencia
variable con el campo magnetico del disco, no usan bobina, y
permiten mayor densidad de grabacion.
Los discos rigidos de las XT de la decada del 80 al presente han
~ aumentado su capacidad de 10 MB a 2 Giga 0 mas); y su velocidad
Sentido de de transferencia de 100 KB a 10 MB por seg. Han disminuido su
gura 2.23
giro del disco tiempo de acceso, de casi 100 mseg. a menos que 10 mseg. Su costo
por MB almacenado paso de U$S 150 a centavos de d6lar.

La estructura en cilindros, pistas y sectores, as! como la escritura 0 lectura de las mismas es similar a la de los
disquetes, y de hecho se han tratado al describir los disquetes. Pero en los discos duros cada cabeza se sima
a unas pocas millonesimas de milimetro (menos que el grosor de un cabello) por sobre la pista que recorre,
sin rozarla. Asi se evita el desgaste de la superficie del disco debido a la friccion de la cabeza.
Cada cabeza £lota como un navio catamaran en un colch6n de aire producido por la gran velocidad de giro
de los platos. Se reservan pistas de un cierto cilindro para estacionar las cabezas cuando el motor se detiene.
Actualmente existen discos con cabezas de semiconiacto, 0 de proximidad, que estan en contacto con la
superficie de la cara durante cortos tiernpos, para sensar mejor variaciones de campos magneticos,

En los discos, el "tiempo medio entre fallas (MTBF)" es una estimaci6n estadistica de cuanto en promedio
durara antes de que faile. Por ejemplo, si MTBF = 87.600 horas implica que podria llegar a funcionar 10 anos
sin parar, libre de failas que irnpidan su funcionamiento, aunque la garantia de devolucion por este tipo de
fallas, es tipicarnente de un afio; siendo ademas que un disco se puede volver obsoleto en 2 0 3 afios.
El hecho de que un rigido este contenido en una caja cerrada y sobrepresurizada, evita en gran medida que
queden particulas abrasivas de suciedad entre una cabeza y una cara, que reducen su vida util,
Otra diferencia con las disqueteras, es que los platos de un rigido deben girar sin parar rnientras el disco esta
en uso', aunque no se lean 0 escriban archivos. Puesto que las cabezas no tocan las caras, no hay problemas
de desgaste, y tampoco se pierde tiempo hasta que los platos alcancen la velocidad de rotacion requerida.
En un disco con varies plates, la forma de numerar los cilindros y caras es similar a la descripta
antes para un disquete. Igualmente como en estc, las cabezas de escritura /Iectura se mueven al
unison 0, y 5610 se puede escribir 0 leer una pista de una cara por vez, seleccionando la cabeza
correspondiente a esa cara.'
Tarnbien existen diferencias entre rigidos y disquetes en relacion con ciertos campos de las pistas y
sectores, aunque en esencia la organizacion de cilindros, pistas y sectores se conserva.
En el presente, los siguientes parametres sirven pat'a comparar y decidir el tipo de disco a usar:

• Capacidad de almacenamiento
• Fabricante
• Tipo de unidad (IDE, SCSI)
• Tiempo promedio de posicionamiento de una pista a otra al azar
• Velocidad de transferencia
• Revoluciones por minuto (la latencia a 7200 r.p.m. dura la mitad que a 3600 r.p.m.)
• Tamafio y performance del cache para disco incorporado a la unidad
• Casto por MB almacenado

D~ 3600 hasta 7200 r.p.m .. frente a 300 r.p.m, de un disqucte


EI iicmpo de acceso en un disco rigido es menor que 10 mseg., siendo cl de un disquete de 170 mseg.
Actualrnente se consiguen densidades de mas de 150 megabytes por pulgada cuadrada, con 30000 mds lpi
Salvo que se quicra ahorrar encrgia, 10 eual rcqUicre una espcra en cad a nuevo arranquc.
Exislen discos rigidos en los que 51: pueden activar varias cabeza.~ simulLineamente. para transferir mas daws
U2-34

i,C6mo es en detalle una pista y un sector de un disco rfgido?


La estructura de una pista y sector de un disco rigido (figura 2.24), es muy semejante a la de un floppy
(figura 2.20). Por no presentar un rigido el agujero "index hole", no requiere el campo "GAP 80" al
comienzo de cada pista, siendo que en consonancia con la lectura del campo lAM se activa un cable que llega
a la electrtmica ATA-IDE 0 SCSI. Los campos "GAP" y otros requieren menos bytes que los de un
disquete, por ser mas constante la velocidad de giro de un rigido, merced a un control electr6nico mas
sofisticado. Por 10 tanto, un sector de LlI1 rfgido ocupa en total menos bytes que un sector de un disquete.

Encabezamienlo

GAP93 CAMPO DE DATOS (512)

Fin de pista Cornienzo Sector Nro 1 Sector Nro 2


de pista

Los nurneros que acomparian a las letras indican la cantldad de bytes que ocupa cada campo
Figura 2.24

Esto permite aprovechar mejor las pistas, amen de existir mayor densidad, y de usar coclificaci6n RLL
Los campos CRC en los sectores de un rigido se denominan ECC (Error Correction Code 0 £:I'mI' checking
and correcting 0 error detecting and correcting - EDC). Se calculan y verifican del rnismo modo que los CRC,
pero permiten no s6lo detectar errores, sino tambien corregirlos, dentro de ciertos limites. La correcci6n
implica deterrninar la ubicaci6n de los bits errados, para restaurar su valor original.
Se requiere ECC por la mayor cantidad de errores que tienen lugar en la busqueda de pistas, y en la
lectura de bytes de encabezados y de datos, por la muy alta densidad (bpi y tpi) que presentan los
discos rigidos. Los programas en la ROM del microcontrolador de una unidad ATA-IDE 0 SCSI
deben corregir cualquier tipo de error de lectura salvable, conforme los permita el c6digo ECC
Luego del Ultimo sector de la pista sigue un campo que indica fin de pista (GAP93, clibujado al comienzo).
Otra diferencia, hace a la posibilidad que se tiene en los discos rigidos de poder indicar el mal estado de una
pista 0 sector. A tal fin, el campo CHS, que contiene los numeros de cilindro, pista y sector, reserva el cuarto
byte (sector flag) para indicaci6n de sector danado, pista mala reasignable, pista reasignada, pista mala sin
reasignaci6n. Este cuarto byte en los sectores de un disquete se usa para indicar mimero de bytes de datos.

i,Que particularidades tiene el formateo de un disco rfgido?


En la actualidad los discos rigidos vienen con el forrnateo fisico 0 de "bajo niuel" realizado por el
fabricante: cada cara tiene generadas ill) ruimero predeterminado de pistas y sectores; asimismo
cada sector tiene grab ado SLl encabezamiento, y reservada una zona para datos a almacenar.
El denominado formateo l6gico 0 de "alto niuel" 10 realiza el usuario mediante el mismo comando
"Format" que usa para formatear disquetes', para crear al igual que en estes el area del sistema
(con el registro de arranque, la FAT y el Directorio raiz).
En definitiva, con el DOS, un disco rfgido queda organizado igual que un disquete, con una pequefia area del
sistema y otra area para datos, y con cada sector para 512 bytes. La diferencia estriba que en el disquete el
formateo ffsico y 16gico se realizan en un solo paso, mientras que un disco rfgido prirnero el fabricante lIeva a
cabo el Iorrnateo ffsico, y a posteriori el usuario hace el forrnateo 16gico. Adernas, un disquete no puede ser
particionado, en varies independientes. y en un rfgido ello es factible.

i,Que se conoce como "interleave" de un disco?


En ciertos sistemas anteriores con microprocesadores mas lentos, si se que ria leer sectores sucesivos
de una pista, mientras se transferia a memoria los datos de un sector, el siguiente ya habra pasado por
la cabeza Iectora, debiendose esperar una revo1uci6n completa del disco para volverlo a leer.

En un disqucre dicho cOluando realiza una Ira!,Olm 105 fonnareos fisico y logico. pem con un disco rigido solo lIeva 3 cabo el segundo.
Por ejemplo, sea lila unidad de disco en la cual a 3600 r.p.m. una cabeza lee todos los bits de un sector
en 0,001 milisegundos. Si en ese tiempo la conlroladora, buses, memoria y procesador son 10 suficiente
rapidos para permitir que los 512 bytes de datos del sector lleguen a memoria principal, podra leerse a
continuacion el sector que en la pista accedida sigue al sector antes leido, Caso contrario deberia
esperarse otra vuelta hasta que el sector siguiente delleido vuelva a pasar frente a 1a cabeza.
Para solucionar esto, en el [armaieo, por ejemplo entre dos sectores con numeracion correlativa, existe
otro no correlativo: como ser, el sector lOse halla entre el 1 y 2, el 11 entre e1 2 y 4, etc. Con esta
disposici6n, si se ordena leer el 1 y el 2, se tiene el doble de tiempo para transferir y procesar los datos
de un sector antes de que la cabeza pase por el siguiente, pues hay otro sector (el10) entre ambos.
Se dice en este caso que los sectores sucesivos estan iniercalados con un factor de "interleaving" de dos.
De esta forma, con 32 sectores por pista, en vez de esperar 32 vueltas para leer todos los sectores
contiguos, son suficientes 2 vueltas.

Sector Nro 2 Hoy dia, merced a la existencia de controladores IDE 0 SCSI con cache incorporado (figura 2.25), que
guardan en un cache de ctisco una pista 0 un cilindro completo, y a la velocidad de los procesadores y buses,
no es necesario especificar en el forma teo fisico de un disco rigido el factor de interleaving requerido.
2.24 Los discos duros actuales vienen formate ados de manera "natural": el mimero de sector aumenta
en uno de un sector al que le sigue en cada pista (i.nterleave 1:1).
o sea que pueden escribi.r 0 leer los datos de todos los sectores de W1a pista en W1a sola vuelta del ctisco.
El cache recibe todos los sectores de una pista, a la velocidad de trans£erencia intema de la unidad de ctisco.
Despues, los 512 bytes de cada sector se transfieren del cache a memoria, pasa.ndo a esta a la velocidad que
permite el bus. Resulta asi que el Cadle de ctisco en esencia mejora la velocidad de transferenci.a y no el
tiempo de acceso.
Los disquetes, por su menor velocidad de giro, en general siempre se han usa do con un interleave de 1:1

(,Que significa que un disco esta muy fragmentado ?


El DOS va llenando un disco con archives, intentando ocupar sectores sucesivos de un mismo
cilindro, aunque "no sabe" si esto ocurre realmente, 0 si un archivo esta parte en un cilindro y parte en
el siguiente, dado que el DOS ignora que un disco tiene cilindros y pistas, como se explic6 antes.
Esto trae aparejado mas demoras en la lectura y escritura de archives, las cuales se incrementan si un
archivo esta distribuido en varios cilindros distintos (pues el cabezal debe realizar muchos movimientos
de posicionamiento para ir de un cilindro a otro). Asimismo, una vez que un ctisco rue escrito hasta el
final, el DOS amplia archivos en sectores que fueron dejados libres por haberse borrado en forma total 0
parcial otros archivos.
Resulta asi una distribucion azarosa de porciones de archivos por distintos cilindros, conocida como
"fragmentacion" externa. Esta tiene lugar al cabo de cierto tiempo, cuando se guardan, borran, y
vuelven a escribir archivos, e inevitablemente cuando un ctisco esta por colmar su capacidad.
En definitiva, el DOS fue pensado para aprovechar al maximo la capacidad de un disco; dejando en
segundo Lugar la optimizaci6n del tiempo de lectura de los archives'.
Si u.n disco esta muy fragmentado, cuando se debe leer un archivo se pierde mucho tiempo, pues el
cabeza1 debe ir de un cilindro a otro donde estan grabados sectores de dicho archivo.
Esto no ocurre si todos los sectores de un archive esuin en un mismo cilindro. Para lograr esta distribuci6n
con todos los archivos de un disco, se recurre a un prcgrama para "desfragmentar", cuando se nota que un
disco duro se ha vuclto muy lento.

i,C6mo estan en el presente organizados ffsicamente los sectores en las pistas de los
discos rfgidos ?
La organizaci6n de 1a figura 2.3 con igual mimero de sectores en cada pista, desperdicia capacidad
de almacenamiento, pues las pistas exteriores podrian tener mas que eI doble de sectores que las
mas internas, de menor radio. La mayor densidad de bits de estas (bpi) determina y limita el
ruimero de sectores que tend ran otras pistas mas alejadas del centro.

Si por ejemplo se reservara un cilindro por archrvo, se lllinimizaria este tielllpo. a costa del espacio del disco.
U2-36
.
En la mayoria de las unidades de disco actuales (tipo IDE 0 SCSI) se emplea igual densidad de grabaci6n
en todas las pistas iconstante density recording = CDR), Y "grabacion zonal" ("zone recording"), que consiste
en formar desde e1centro del disco hacia afuera, varias zonas de cilindros, cada una con mas sectores por
pista que 1a mas intema anterior. ASl se logra hasta un 50% mas de capacidad que con la otra disposicion.

En un disco rfgido actual, "como localiza el cabezal mas rapldarnente un cilindro?


Hoy ilia las unidades de disco rigido de mas de 80 MB, no usan como las disqueteras un motor paso a paso
para ubicar el cabezal en cada pista de un cilindro. El cabezal (figura 2.10.a) no avanza en lined recta, sino
que gira alrededor de un eje, como el brazo de los tocadiscos con pua. La armadura se mueve de forma
parecida al de la bobina de un parlante ("voice coil" identifica este sistema de posicionamiento). Sobre la
armadura se tiene una bobina, la cual esta sometida a un fuerte campo magnetico creado por un iman
permanente que esta fijo fuera de la armadura. Cuando el sistema de control envia una determinada
corriente por la bobina, esta tambien genera un pequeno campo magnetico, que al accionar con el campo
existente, creado por el iman permanente, hace mover bobina, y por ende la armadura hasta la pista
(cilindro) se1eccionada. Si la cabeza no se encuentra justo sobre dicha pista, tiene lugar un ajuste fino
automatico de su posicion, merced a la existencia de informacion extra de servocontrol escrita (servowriter)
antes de cada sector 0 en una cara de un plato dedicada a esa informacion, donde no se almacenan archivos.
Si estas sefiales al ser sensadas no tienen la amplitud suficiente, la contro1adora varia la corriente de la bobi-
na hasta que el cabezal este justa sobre la pista. Esto permite la localizacion exacta de cada pista, con inde-
pendencia de cualquier variacion de las dimensiones de los platos por la temperatura. Resulta asi que las
cabezas hacen un "seguimiento" de las pistas, de donde deviene su denominacion "trackfollowing system".
A tal efecto el sistema realiza en forma automatica periodicas autocalibraciones (cada 5 0 25 minutos) con
los discos girando, actualizando datos sobre variaciones en la memoria de la controladora IDE 0 SCSI.
Cuando la unidad de disco se apaga, el cabezal se estaciona automaticamente (automatic head parking) fuera
de las pistas con datos, merced a que un resorte lleva la armadura a una posicion fija, que el campo del iman
permanente ayuda a mantener. AI encender el equipo, la fuerza que se origina al circular corriente por la
bobina de la armadura (para posicionar e1cabezal) estira dicho resorte y mueve la misma.

"Que funciones realiza una unidad de disco inteligente ATA-IDE 0 FAST ATA?
Unidades de discos rigid os anteriores, adecuadas al estandar ST506, requerian una interfaz-
controladora cuya circuiteria estaba en una plaqueta insertable en un zocalo (lslot"), con funciones
analogas a las descriptas al tratar la interfaz-controladora de disquetera (figuras 2.22 a y b). Los
discos con unos 30 MB de capacidad pod ian compartir una plaqueta con las unidades de disquetes;
pero capacidades mayores requerian una plaqueta dedicada, que ocupaba un zocalo mas.
Por las razones que se expondran, fue necesario que la interfaz-controladora este localizada junto a la
unidad de disco rigido, integrada con la electronics de este periferico (figuras 2.25), de donde provienen
las siglas IDE de "integrated drive electronics". Las siglas AT A - AT Attachment' son sirumimas de IDE2.
Dadas las actuales capacidades de los discos rigid os, y las velocidades de acceso y de transferencia de una
unidad de disco rigido (drive), se requiere que la electronica ligada a ella sea "inteligente", conteniendo un
microcontrolador, con un programa en su ROM, y una RAM veloz para buffer del periferico.
El microcontro1ador maneja los sistemas con servowriter citados anteriormente, cOlTige sobre la marcha
errores de lectura de Lm sector', maneja un cache de disco, simula hacia el exterior un disco compatible con
e1 sistema operativo y BIOS existentes, y realiza rapidamente otras tareas complejas. Tambiffi incluye 1a
mayoria de las hmciones de 1ainterfaz controladora descriptas anterionnente para 1aunidad de disquetes.
La proximidad fisica entre la interfaz y las cabezas evita retardos e interferencias (ruidos electricos) en la
lectura 0 escritura, que se producirian si se quiere transmitir a gran velocidad informacion entre la
electronica de la unidad de disco y una interfaz mas alejada, como la existente para una unidad ST506.

Ell 1989 un grupo dc clllprcsas cknoillinado CAM (COIllJIlOn Ae.;o;ss Method) elaboro el estandar ATA. Este incluye los comandos
?ara los ddves IDE (integrated drive electronics). ATA e IDE se usan como siglas sinonimas.
- DislinlOS fabricantes. por razones de mercado. lIsan una u OLm denominacion. aunque todos son compatibles entre sf. Tgualmente 10
son EIDE. Fast ATA y Fast ATA-2.
) A medida que aumenta la densidad de grabaci6n en los discos. crece mucho mas la posibilidad de errores de lecttJra y debe ser mas
sofisticada 1(1e1ectr6nica del controlador. para que Sli correccion (mediante cl ECC) pueda hacerse sin perder velocidad de transferencia.
U2-37

de grabac ru unidad IDE es una buena solucion de compromiso entre velocidad y costa para sistemas
'), que COIlSl. o otarea corrientes. No requiere de una plaqueta interfaz especial en la "mother" como la SCSI.
mas sectores : crde con 10 anterior, la electronica de una unidad "inteligente" de disco IDE incorpora funciones
otra disposici al adas en la interfaz-controladora de disquetera, en particular en 10 concerniente a la existencia
e registros direccionables ("ports") para enviarle un block de comandos y para recabar el estado
ue .a unidad', mediante la ejecucion de subrutinas del BIOS. EI microcontrolador de la unidad de
isco detecta y lleva a cabo estes comandos (del tipo posicionar las cabezas en un cilindro, leer 0
lindro? escribir un sector, etc.) mediante la ejecucion de instrucciones contenidas en su ROM.
paso a pa
lined recta, S1: Como se anticipo, debido a las limitaciones en la velocidad de los buses, a fin de lograr una mayor
de fonr velocidad de transferencia de datos entre memoria principal y el port de datos 0 viceversa, esta no
2
Sabre ..,e hace por ADM, sino por AIM, a traves del registro AX , opcion conocida como Programmed
Input/Output (PIO). Para tal fin, se deben ejecutar instrucciones de subrutinas del BIOS.

En relacion con el port de datos, en la electr6nica de la unidad existe un "sector buffer", 0 sea un buffer
con el camp ':::011.
cap acid ad para un sector del disco, para dar tiempo a la correcci6n de datos leidos, que realiza el
basta la pist.. microcontrolador, usando el area ECC del sector (figura 2.24). 5610 si los datos son correctos, se realiza
un ajuste fin: la transferencia hacia memoria, para 10 cual la circuiteria que cumple funciones de interfaz-
(servawritel controladora activa una linea IRQ para que una subrutina -mediante AIM sucesivos de 2 bytes (hoy
L,,,...,,,,n archives
pueden ser 4 bytes)- pase los 512 bytes de datos.
de la bob SegUn se planteo, luego de acceder al disco para leer un sector solicitado, y sin que se mueva el cabezal, se
van leyendo los siguientes sectores de la pista 0 cilindro (pues es probable que luego se solicita su Iectura),
los cuales pasan al cache de disco, constituido por una memoria DRAM manejada por el microcontrolador.
Si se orden a escribir un sector, por sucesivos AIM llegan desde memoria al "sector buffer" 512
bytes para ser escritos, a traves del port de datos citado. En caso que se envien datos para ser
escritos en sectores sucesivos, los mismos pueden guardarse transitoriamente en el cache citado.
I parking) fuera

campo del iman Una unidad IDE realiza funciones de interfaz (figuras 2.25), siendo conectada a las lineas de datos,
corriente por la direcciones e IRQ del bus, mediante un cable plano terrninado en un conector con agujeros para 40
terminales, para conectarse a igual mimero de "agujas" ("pines") vinculadas a chips de adaptaci6n al bus
("host adapter"). Dichas "agujas" pueden estar en la plaqueta "multifunci6n" que tambien contiene la
controladora de disquetera, citada al tratar esta, 0 en la "mother", segun sea el modelo de esta Ultima.
EI bus ISA, tratado en la Unidad 1, puede enviar como maximo menos de 8 Mbytes/seg. en grupos de 2
bytes, 10 cual no es apto para las unidades IDE actuales, pues limita la velocidad de transferencia Hoy dia
una interfaz- pueden transferirse grupos de 4 bytes.
C 11.funciones Esta velocidad puede aumentarse si se conecta un drive IDE preparado para un bus como el PCI, a la
-2 a y b). Los "mother" directamente, 0 usando la plaqueta "multifuncion" para dicho bus. La electronica IDE se presenta
de disquetes; ante la ROM BIOS como una unidad ST-506 normalizada, y permite operar mas de un disco rigido.
Mas en detalle (figura 2.25.a), a
la electronica IDE le llegan comandos, que ordenan leer 0 escribir
un sector, del cual se indican sus mimeros de CHS. Merced a la ejecucion de subrutinas del BIOS'
estos comandos qu.e estaban en memoria principal, pasan al registro AX de la UCP, y de este a los
registros "ports de comando-" de la interfaz IDE, a traves del bus de datos que llega a esta.
La electr6nica IDE, despues de recibir estes comandos realiza las siguiente acciones (figura 2.2S.b):

• Traduce dichos comandos en sefiales para que el cabezal se posicione en el cilindro elegido; y
que 1uego la pista correspondiente a la cabeza seleccionada sea leida por esta hasta encontrar el
sector buscado.

• La cabeza lee el ruimero identificatorio de cad a sector que encuentra en la pista que va leyendo,
el cual es transmitido a la electr6nica IDE, para determinar si es 0 no el cornienzo del sector
buscado, a fin de escribir 0 leer -segUn sea la orden- los datos en la zona correspondiente del
sector buscado

Estes 7 registros "ports" de 8 bits (con direcciones OIFO a OlF6) constituyen el denominado "AT task file" (archive de tareas AT)
Un octavo registro de direcci6n 0 IF7 es el "port de datos", de 16 bilS, para leClura 0 escrilura.
2 Operando verdaderamenle en "mullitasking" con sislemas operativos como el OS/2 0 el Unix, pueue ser mas cOllvenienle lIS;U'
ADM. siendo que la eleclr6nica rOE liene la opci6n para hacerlo.
3 En definitiva CSlas directivas son enviadas por eJ sistema operativo, dado que la Rom Bios puede considerarse pane del mismu
U2-38

Loscomandos (y los datos)


se transfleren en porolelo
por eI bus flexible

Figura 2.2S.a

• Si es una orden de leciura, todos los bits del sector son leidos en serie por la cabeza. A medida
que son leidos se realiza la verificaci6n ECC (semejante a la CRC) y pasan al sector buffer de la
electr6nica, para ser corregidos de ser necesario.
• En caso de que dicha lectura sea correcta. la secci6n interfaz de la electr6nica activa su linea
IRQ del bus, para que la UCP interrumpa el programa en ejecuci6n, y ejecute una subrutina del
BIOS para hacer AIM, de modo de ir sacando del sector buffer los datos.
La ejecuci6n de esta subrutina permite que por sucesivos AIM, los datos del sector buffer se
transfieran (de a 2 bytes) a la zona buffer de memoria principal a traves del bus, direccionando el
port de datos.

• De manera inversa, luego de una orden de escritura, los bytes a escribir en el sector van Uegando
(de ados) por el bus (desde la memoria) al port de datos, y de este al sector buffer, luego de 10 cual
se activa la linea IRQ1. Luego los bits pasan en serie hacia la cabeza, para que los escriba en el sector.
• A medida que escribe 0 lee los bits de un sector, realiza el calculo del ECC (figura 2.24), cuyo
valor graba a continuaci6n de la zona de datos en una escritura.
• Realiza en una lectura 0 escritura, el manejo y control de errores, codificando en un registro
port el tipo de error ocurrido.

Si este buffer esta deshabilitado, IRQ se activa recien cuando los datos fueron escritos en el disco rigido.
U2-39

definitiva, subrutinas del BIOS al enviar comandos a los ports de la interfaz (IDE, SCSI u otra) dan
gen a lecturas y escrituras en el disco, siendo que los tiempos de las sefiales involucradas estan
.terminados por los circuitos de la interfaz Estos tiempos son mas cortos en los ultimos modelos.
tiempo denominado "I/O read and write cycle time", es determinante de la velocidad de transferencia,
-ido el minimo lapso que puede mediar entre dos escrituras 0 lecturas sucesivas del registro port de datos
la interfaz ATA (IDE) de una unidad de disco rigido; registro que tiene un tamano de 16 bits = 2 bytes.
r ejemplo, de los 5 modos PIO (Programmed Input Output), para hacer AIM, en e1 PIO modo
· e es el mas lento, dicho tiempo de cielo es de 600 nanoseg. Conocido este tiempo, puede
°
ducirse que la maxima velocidad de transferencia para este modo es de 3,3 MB/seg., como se
·diea a continuaci6n.
·poniendo que te6ricamente en forma ininterrumpida se 1een 0 escriben 2 bytes del port de datos cada
~nseg = 0,0000006 seg., en un segundo podrian hacerse 1/0,0000006 transferencias de 2 bytes por AIM.
sea, que podrian transferirse 2/0,0000006 bytes/ seg. == 3.333.333,33 bytes/ seg. == 3,3 MEl seg., dado que
=
.m 1.048.576 bytes. Lo anterior equivale a decir que en un segundo se transferirian:
~ x 2048 sectores = 6758 sectores, siendo que 2048 sectores de 512 bytes = 0,5 KB conform an 1 MB.
el presente existen unidades IDE estandar ATA-2, con PIO modo 4, tiempo de cielo de 120 nseg, 10 cuaJ
nlica una velocidad de transferencia maxima te6rica de 16,5 MB / seg.' (5 veces mayor que el modo 0).

be mencionar que esta velocidad de transferencia maxima para PIO es la misma que para ADM modo 3,
que depende del tiempo de cielo con que opera la unidad IDE. Si en lectura 0 escritura deben medlar
....
0

:. nseg entre dos direccionamientos al port de datos de 16 bits, este tiempo de cielo debe respetarse, ya sea
K los direccionamientos se hagan para efectuar transferencias por AIM (PIO) 0 ADM (DMA).
_e la transferencia entre memoria y dicho port (0 vice versa) convenga hacerla por AIM 0 ADM,
oendera del sistema operativo en uso, y si se trabaja 0 no en "multitasking".

• <; unidades con electr6nica que sigue el estandar E-IDE 6 Fast AT A (1 6 2) permiten ademas
mandos para escruura a lectura multiple, los que dan lugar al "Block tviode",
/iando a los ports correspondientes W10 de estes comandos y la cantidad de sectores a transferir
I.. 2 a 128) se evita que la electr6nica active la linea de interrupci6n IRQ, con cada sector que debe
.t pasado del sector buffer a memoria 0 en sentido inverso. Con esto se evitan las perdidas de
_mpo involucradas en cada interrupci6n (guardar registros de Ia UCP en la pila, llamar y ejecutar
·3 subrutina, y volver a restaurar dichos registros en 1a UCP). Asi, hasta 128 sectores pueden ser
- risferidos con un solo comando, con 10 cual es factible ganar un maximo de 30% de tiempo.

- iactible conectar mas de una unidad IDE a un bus de una PC (sean dos discos rigidos, un rigido Y una
-rora de CD, etc.), debiendo actuar el mas rapido de ellos como "master", y el otro como "slave". Esto se
'me conectando los "jumpers" (puentes de contacto) como indica el manual de instalaci6n.
-eccionando y escribiendo el valor (1 6 0) de W1 bit del registro drive/head, se selecciona si un
mando es para e1 "master" 0 el "slave".
- adaptadores E IDE (Enhanced IDE, 0 sea IDE mejorado), permiten conectar cuatro unidades
disco (fijas 0 removib1es), amen de tener mayor velocidad de transferencia.

o
BIas velocidades con Fast ATA deben configurarse en la labia de opciones del BIOS CMOS, 0 usar unidades de disco ya
-uradas. "Mothers" con nuevas versiones del BIOS realizan esta conliguraci6n en forma automatica.
1'10 modos 3 y 4 tienen el aditamiento 10RDY. para indicar que la unidad IDE puede retardar In vclocidad de transferencia,
cuvando temporalmente la linea 10RDY del bus, a tin de no abortar trunsferencias rapidas cuando existcn problemas en el sistema
U2·40

Los 512 bytes del sector soy


lefdos por la cabeza y pasan Los 512 bytes de datos salen en
en eerle, bit por bit, alsey, paralelo (de a 264 bytes por vez)
tor buffer de la IDE
del port de la unldad IDE hacla el
registro AX, merced a la ejecuci6n
de una . tipo IN

Los datos van lIegando del


port al reglstro AX, y pasa
a memoria merced a la ejecu-
ci6n ele una Instrucci6n

sector buffer

Datos que van


eallendo en pa·
ralelo hacla el
bus

en el sector eeran
escrltos en 256
poslciones suceeivae
merced a 113 eJecuci6n de
una aubrutlna por la UCP que
Figura 2.2S.b pasa datos del port a memoria

(-Que son los numeros "16gicos" de cilindro, cabeza, sector y el LBA ?


No hace mucho, el disco mas grande que podia manejar una PC con interfaz IDE era de 500 MB.
Correspond fa a un disco de 1024 cilindros, 16 cabezas (heads) y 63 sectores de 512B = 0,5 KB, con 10
cualla capacidad era exactarnente de 1024x16x63xO,5 = 504 MB = 528 millones de bytes',
Este limite se debe en principio, a que por un lado, cuando Ia subrutina del BIOS debe enviar al drive IDE
los numeros de cilindro, cabeza (head) y sector, abreviados en ingles CHS, para los rnismos tiene estableci-
dos la, 8 y 6 bits, respectivamente, ruimero de bits que tambien estan reservados en la Tabla de Particiones.
Por 10 tanto, para e] BIOS Y la Tabla de Particiones, los ruimeros maximos que se pueden formar son:

2111
= 1024 cilindros; 2~= 256 cabezas; 2·= 64 sectores, que son 63, pues el sector 0 no sc usa.

EI BIOS de las prirneras AT de IBM permiua discos de 40 MB como maximo.


U2-41

A su vez, un drive IDE 0 EIDE para CHS esta limitado a 16, 4 Y 6 bits respectivamente. Resulta asf,
que los numeros maximos que puede manejar son:
2'6= 65536 cilindros; 2· = 16 cabezas; 26 = 64 sectores, que van hasta el rnimero 63
Compatibilizando ambas limitaciones, resultan 1024cilindros, 16 cabezas y 63 sectores, que hacen ellimite
de los 504 MB calculados; aunque El BIOSpor separado permitiria 1024x256x63xO,5= 8 GB, mientras que
por su parte, una interfaz IDE permitiria una capacidad de hasta 65536x16x63x0,5 = 128 GB.
En 1994 las nonnas IDE de 1984 pasaron a ser las E-IDE'. A fin de maximizar la compatibilizaci6n
entre BIOS e IDE para poder operar con discos de mayor capacidad que 504 MB, se crearon algunos
artificios matematicos que pueden ser llevados a cabo por la UCP ejecutando subrutinas de un BIOS
actualizado, 0 por el microprocesador de la unidad IDE ejecutando subrutinas de su firmware.
Para plantear esto, se denomina CHS 16gico (cuyas siglas son L-CHS) a los numeros de CHS que se
envian a una unidad de disco IDE (0 SCSI), al ejecutarse una subrutina del BIOS. Este L-CHL al ser
recibido por la unidad IDE debe ser convertido por esta en un CHS fisico (F-CHS 0 P-CHS en Ingles),
que son los numeros de CHS a partir de los cuales la unidad IDE accede a1sector seleccionado'.
En discos con capacidad menor 0 igual que 504 MB, coincidirdn los mimeros de L-CHS y de F-CHS. Esto es,
los mimeros de CHS que surgen del BIOSson los mismos que usa la unidad IDE para ubicar un sector.
Una forma de compatibilizar discos de mas de 504MB es la siguiente. Sea un disco de 1 GB que fisicamente
presenta 2 platos (4 cabezas), y cuyas pistas tienen un ruimero distinto de sectores, que aumenta desde el
centro hacia el borde, superando los 63, como se trat6 mas atras, Este disco para la unidad IDE se
caracterizaria fisicamente como equivalente a un disco de 4096 cilindros, 4 cabezas, y 63 sectores de 0,5 KB
por pista, dado que 8192x4x63x0,5'" 1 GB. La geometria del disco real resulta as! invisible al exterior.
Si se divide 8192 por N=8 resulta 1024, y si se multiplica 4 por N=8 resulta 32. De este modo, un disco
que tuviera 1024 cilindros, 16 cabezas y 63 sedores por pista tambien tendria 1024x32x63xO,5= 1 GB,
pero los valores 1024 y 32 son compatibles para subrutinas del BIOS,segun se describi6.
La unidad IDE se encarga de trasladar cada mimero de sector, cabeza y sector del disco 16gieoque suponen
las subrutinas del BIOS,en otro ruimero de sector, cabeza y sector para el disco fisieo de 8192x4x63xO,5
Tambien es factible que dicha traslaci6n sea llevada a cabo por dichas subrutinas del BIOS actualizado.
Esto se conoce como ECHS (Extended CHS translation) 0 "large". Existen varias formas de realizar esto.
No debe confundirse los numeros 16gicosde cilindro, pista Ysector -que simula el drive de un disco para
un sistema operativo (y para la ROM BIOS)- con el formateo 16gico,destinado a reservar sectores que seran
usados por dicho sistema, ni con la estructura 16gicacon que el DOS "ve" a un disco (antes tratada).
El LBA es otro mecanismo para operar discos con mas de 504 MB. Las unidades de disco SCSI y las IDE
permiten que se identifique los sectores mediante ruimeros consecutivos, comenzando desde 0 (donde esta
la tabla de particiones), siendo que fisicamente se tiene mimeros de cilindro, cabeza y sector. Esto es, esas
subrutinas en lugar de enviar ruimeros de cilindro, cabeza y sector para acceder a un sector, pueden enviar
un ruimero que 10identifica denominado LBA (LogicBlockAddress 0 sea direcci6n 16gicadel bloque).
a Is eJecuci6n de
Una unidad IDE 0 EIDE con la opcion de operar con CHS 0 LBA, requiere asignar LBA 0 al cilindro
par la UCP qUI:
0, cabeza 0, sector 1. En un disco de 504 MB el LBA del ultimo sector seria 1.065. 456.
port a memoria
La tecnica LBA permite acceder a unos 22Rsectores (de 0,5 KB), 0 sea 137 GB en un IDE.
El uso de LBA puede implementarse en un BIOS actualizado 0 en una unidad IDEl, y no siempre
significa una mejor performance de un disco. Muchos sistemas operativos pueden operar directa-
mente con LBA, pero el DOS y otros sistemas deben usar la geometria CHS.

de 500 MB.
:; KB, con 10

a. drive IDE

son:
Bdsicamente se superaron los 504 MB, aumento la velocidad de transferencia, al igual que el nurnero maximo de dispositivos que
se usa. se pueden conecrar. asi como su diversidad (CD-ROM, cinta rnagnetica, discos removibles),
2 Debe consignarse que en el booteo y en la tabla de particiones se emplea el L-CHS.
J Esto puede decidirse por software. direccionando y poniendo en I el bit "L" del registro port Drive/Head (citado en respuesta
anterior), para 10 eual se Ie debe enviarse un comando mediante una instruccion tipo OUT.
U2-42

"Que fases podemos distinguir en la lectura 0 escritura de un sector en un disco de


una unidad ATA-IDE?
En principio, en cualquier computador, para que tenga lugar una operaci6n de escritura 0 lectura de algur:
medio (disco, cinta, papel), es necesario que durante la ejecuci6n de un programa se eiecuie una instruccia
que llama a la subrutina del SO, 0 de la ROM BIOS, preparada para tal fin. Podemos considerar al BIOS
formando del SO, siendo que este se del . de los 2 de la un'.

Por ejemplo, si en una pantalla Windows indicamos con el cursor del mouse que queremos abrir 0 guardar
un archivo en un disco 0 disquete, se pasara a ejecutar una secuencia de instrucciones. En esta existira una
que expresada en assembler sera
del tipo!NT nn', para llamar al SO, si la UCP de la PC es un 8Ox86 (0 ur
clon de Intel). Lo mismo si mediante el teclado ordenamos la apertura 0 cierre de archivo.
Igualmente, si en un lenguaje de alto nivel se tiene una sentencia como READ, WRITE, GET, PUT _
otra que ordena escribir 0 leer un archivo, el programa compilador la traduce a una secuencia d.
instrucciones de maquina, entre las cuales habra una que llama al SO. Esta sera del tipo!NT on, si e
compilador genera codigo de maquina a ejecutar por un procesador 80x86 0 Pentium de Intel',

Ejemplificaremos aspectos fundamentales de un proceso de escriiura de un archiuo (0 parte del mismo) en. 11
sector en un disco, que dividiremos en cinco fases 0 momentos, las cuales tambien tienen lugar total
parcialmente en operaciones de E/S de otros perifericos (cotejarlas con las cinco fases de un disquete).
Conforme a 10 anterior, para que este proceso tenga lugar, en un programa en ejecucion debe existir
instrucci6n de llamada al SO, que en este caso en assembler es !NT 13 si el procesador es de Intel.

1. Fase de preparacion: cuando la UCP ejecuta el c6digo de maquina de !NT 13 ~ comienza esta fast.
primera de las cinco fases en que hemos dividido la escritura de un sector. Dicho c6digo ordena que
UCP pase a ejecutar una subrutina del SO cuyo cometido es llevar a cabo la presente fase.
Algunas de las numerosas acciones preparatorias, que realizara esta subrutina del SO y
subrutinas del sistema que ella a su vez ordena ejecutar, seran:

division del archivo a grabar en "clusters". El tamano de estos depende del tamaii.o de la partici6n.
lectura del directorio raiz de la partici6n, y luego posiblemente un subdirectorio (para conocer
el nombre del archivo no existia antes), as! como la lectura de la FAT (para determinar
ruimero de cada "cluster" que ocupara el archivo);
- escritura en elsubdirectorio del nombre asignado al archivo, y en la FAT, los" clusters" que ocupa;
- conversion de cada ruimero de "cluster" en los ruimeros de SL que 10 componen, y estos en
correspondientes sectores fisicos, identificados por su CH5 en el disco rigido.
Una vez realizadas las acciones anteriores, la ejecuci6n de instrucciones OUT, que tambien son
subrutinas del BIOS permite enviar -a traves de lineas de datos del bus- comandos desde el registro AX de
ucr hacia registros ports de la electr6nica IDE (figura 2.27 a).
Suponiendo que los platos de la unidad esten girando, dichos comandos son llevados a cabo en orden por
rnicrocontrolador de la unidad IDE -merced a la ejecuci6n de subrutinas que estan en la ROM de la
siendo que primero se posicionan las cabezas en el cilindro indica do, y luego una cabeza accede al
buscado para escribirlo.

En 10 que sigue trataremos la forma PIO ("Programmed I/O"), 0 sea la realizaci6n por AIM de la fase
de transferencia, en una E/5; en este caso en la escritura de un sector de un disco de una unidad IDE.

2. Sincronizacion: antes que una cabeza seleccionada escriba la zona de datos de un sector accedido, pn-
mero deben llegar -desde memoria al port de datos de la IDE- los (512) bytes a escribir en el sector
buffer. El momenta en que esta transferencia puede realizarse es indicado por la unidad IDE de
formas: ~
Una forma es activando el bit de validaci6n de datos de su registro port de status. La subrutina que
los AIM_ previamente debe direccionar este port para leer el valor de este bit, y el que indica que el IDE

De un modo mas general: las operaciones de ElS son preparadas, activadas y controladas par subrutinas del SO.
EI numero nn y valores que previamente se cargan en registros de la UCP determinan cual subrutina sera lIamada (ver Unidad 3)
Para oiros procesadores, esta instrucci6n de llarnada al SO tiene otro nombre: SVC. Call. Trap. etc.
ESIO varia un poco para una interfaz E IDE.
Los comandos estaban previamente en memoria principal.
U2-H

esta ocupado. Otra forma es activando el cable de solicitud de interrupcion IRQn (tipicamente n=14) para
que se pase a ejecutar una subrutina (figura 2.27 b). En caso que se opte por la primer forma, la lectura del
port de status desactiva IRQn.

3. Fase de transferencia (por AIM)! de los bytes a escribir desde memoria al registro AX de la UCP, Y
de este al port de datos de la electronics IDE, con destino al sector buffer de esta (figura 2.27 b).
Para tal fin, la subrutina que de tecto en la fase 2 de sincronizacion que el buffer IDE esta disponible,
realizara 256 AIM de dos bytes cada uno, para transferir los 512 bytes al port de datos de la IDE.

4. Escritura del sector (a cargo del microcontrolador de la IDE): los bytes que estan en el sector buffer
son convertidos a bits en serie. Estos bits son considerados en el calculo que el microcontrolador
realiza para determinar el ECC, y son enviados con codificacion RLL a la cabeza que los grabara en
el sector accedido. (Despues de la fase 1 el cabezal se posiciona en el cilindro y luego busca el sector).
Una vez escrita la zona de datos del sector, el microcontrolador enviara los bits hallados por
calculo, que la cabeza debera escribir en la zona del ECC (figura 2.24).
AI finalizar, la electronica IDE registrara en su port de status si la operacion de escritura ordenada
fue exitosa, 0 si debe codificar algun tipo de error ocurrido que su inteligencia no pudo subsanar.
5. Verificacion de la correcta realizacion de la opera cion ordenada: el registro de status de la unidad
IDE indica si una operacion ordenada ha sido exitosa 0 no, y el registro de error codifica la falia
ocurrida. Luego que se escribio el sector, se ejecuta una subrutina que hace esta verificaci6n.

En caso que en la etapa de preparacion se ordene la lectura de un sector, por tratarse de una
operacion de entrada, el sentido del movimiento de los datos es del sector buffer hacia memoria,
por 10 que debe invertirse el orden de las fases 3 y 4 descriptas para la escritura de un sector.
Esto es, ahora en la fase 3 -de lectura de la zona de datos del sector accedido- a medida que la cabeza
seleccionada va leyendo esta zona del sector, envia hacia la electr6nica IDE bits en serie, codificados en RLL.
Esta informacion, a medida que llega es decodificada, para determinar los bits de datos que contiene, los
cuales tambien son considerados en el calculo que el microcontrolador realiza para determinar el ECe.
Estos bits primero son convertidos en grupos de 2 bytes, y van al sector buffer de la IDE. Luego
estos bytes en la fase 4 -ahora fase de transferencia realizable por sucesivos AIM- sald ran en
paralelo desde el port de datos haria el registro AX, y de este al buffer de memoria principal.

La fase 5 -de verificacion- es identica a la descripta, Y supone que al final de la fase 3 -luego que se leyeron
todos los bits de la zona de datos del sector- la cabeza lee la zona ECC y los bits que la componen son
contrastados por el microcontrolador con los que componen el ECC que calculo, Si no existe coincidencia
entre el ECC calculado y el ECC escrito en el sector, se intenta corregir los errores detectados.

,Como vuelven mas veloz a un disco los caches en hardware 0 software?


El concepto de cache es en esencia el mismo para disco que para memoria principal, tratado en 1.12: se
trata de una memoria dedicada a almacenar los datos que probablemente se requeriran proximamente.
Esto Ultimo se lleva a cabo automaticamente, siendo manejado por el "controlador de cache".

Un cache de disco simula un disco de igual capacidad, pero mas veloz que el real.

Cuando se escribe en un disco un archivo, se trata de grabar todos los sectores que 10 componen en un
mismo cilindro. Asi se pierde un solo tiempo de posicionamiento y latencia para encontrar el primer sector
del archivo. Luego seran escritos los siguientes sectores que entren en dicho cilindro, sin maoer ef cabezal y sin
tiempo de latencia. 5610 existira para cada sector a escribir el tiempo de transferencia (figura 210.c)
Este analisis de tiempos vale tambien para la lectura del archivo, para 10 cual se debe repetir el
mismo orden secuencial seguido al escribir los sectores que 10 constituyen.
La estadistica indica que si se accede a un sector que compone un archiuo, para ser escrito 0 leido, es
altamente probable que luego se deba acceder a los otros sectores que le siguen en la pista donde esta
dicho sector, para luego continuar con los sectores de las restantes pistas del mismo cilindro.

Existen unidades IDE con la opci6n para hacer ADM. de manera semejante a la descripta para disqueteras. En sistemas para
"multitasking" puede ser conveniente que en la fase de rransferencia, en vez de que la UCP ejecute una subrutina para hacer sucesivos
AIM, en su lugar ella ejecute otro programa. La comroladora de ADM se encarga de realizar por hardware la transferencia. al miS1110
tiempo que la UCP ejecuta el otro programa. Luego, se debe ejecutar una subrutina para verificar que el ADM se hizo correctamente,
U2-44

Por 10 tanto, puede resultar conveniente luego de leer un sector de una pista, leer de seguido -sin
movimiento alguno del cabezal, ni tiempo de latencia- los restantes sectores de la misma, e ir
auiomdticamenie todos los sectores asi leidos a una memoria tipo RAM que oficia de cache, ubicada
en la elecironica IDE 0 SCSI (figura 2.25). Asi, una pista completa pasa al cache y de este cada sector
a memoria, por AIM 0 ADM, segun sea. El tamano del cache es tipicamente de 32 KB hasta 1MB.
Entonces, soLamente se accede a La memoria de disco para encontrar el primer sector del archivo, este y los
restantes sectores se localizan y leen en el cache RAM de disco citado -de tiempo de acceso despreciable en
comparaci6n con el de un disco- cuando se ordena su lectura. En ese momento, cada sector leido en el cache
se transfiere hacia un registro de la controladora, y de este al buffer asignado a ese sector en memoria princi-
pal. Como se trat6 en el tema del "interleave", este cache permite que los datos de sectores consecutivos de
una pista pasen al mismo a maxima velocidad (la de transferencia interna desde el disco), y luego desde eI
cache puedan ser transferidos hacia memoria a la velocidad del bus, aunque esta sea limitada, obteniendose
en definitiva una importante ganancia de velocidad en relacion con la no-existencia de un cache.
Con el cache de disco se simula una serie de operaciones de lectura en un disco, siendo que en realidad stll....
realizan en una RAM con la rapidez de esta memoria electronica',
EI cache de disco permite mejoras en velocidad entre el 30 Y el 400%, dependiendo de la aplicacum,
inierfaz y bus usados. De este modo resulta tina gran independencia del iiempo de acceso a un disco.

Analogamente, en una escritura del disco, se pasa desde memoria principal al cache de disco (a
traves de un registro de la controladora), todos los datos del archivo a grabar, pudiendose realizar
la escritura de cada sector del archivo en el disco cuando este no es requerido por un programa.
Es factible diferenciar caches de disco para lectura y para escritura.
El cache de disco que esta en la RAM de la electronica IDE 0 SCSI se denomina "cache de disco
incluido" 0 "intemo" 0 "cache de disco en hardware". Su tamano oscila entre 32 KB Y1MB 6 mas.

Tambien se emplea el "cache de disco por software" en memoria principal RAM ("software cache")
manejado por un prograrna (como el SmartDrive de Microsoft que viene con el Windows), que reserva
una zona para cache de disco en memoria de tamafio definible por el usuario. En esta se guarda una
pista (0 cilindro) del disco cada vez q,lle se ordena leer un sector de la misma. Luego cada sector
solicitado se toma desde esta zona de memoria principal, en lugar de tener que accederse al disco.
A continuaci6n, esos datos pasan a otra zona de la misma donde esta el buffer asignado al sector.
Para la escritura del disco, este cache va guardando los datos que deberian ir al disco. Cuando estes
tienen detenninado tamafio, 0 luego de un tiempo especificado, se envian de una sola vez a W1apista
del disco, evitando multiples accesos al rnismo. EI cache de escritura tiene el problema que si se
el suministro electrico 0 se hace un reset general, los datos que estan en el mismo se pierden.
Reservando 2 MB de memoria para este tipo de cache de disco, se han observado ganancias de
hasta 20 veces en relaci6n con el disco sin ningun tipo de cache.
Los disquetes tambien puede tener un cache por software, pero s610 debe ser para lectura, dada
que un disco flexible puede sacarse de la unidad en cualquier instante, con la consiguiente perdida
de la informaci6n a escribir.
Pueden usarse en forma complementaria caches incluidos y por software, pero en ciertos casos operar con
ambos puede significar una peor performance que con uno solo de ellos.

l,Que es un disco virtual 6 "disco RAM" ?


La idea es usar W1area de memoria principal RAM como disco, para escribir y leer archivos completos
en cortos tiempos de acceso y sin tiempos de transferencia. Disco RAM 0 virtual son sin6nimos.
Para ello en el Config-Sys se debe agregar W1 reng16n que 10 defina, y hacen falta
"drivers" para que el OOS y la ROM BIOS "vean" un disco (rapido) formateado, designado

EI cache de disco suele alrnacenar la FAT actuaJizada del disco, que perrnite localizar todos los sectores de un archive, dado
antes de acceder a un archive en el disco se debe acceder a la FAT (que puede cambiar con cada escritura de archivos). As! tambien
lugar de acceder a la FAT del disco y pasar esta a memoria principal. se accede rapidarnente aJ cache de disco. y de este la FAT pasa
memoria.
U2-45

10 -sin ser "0", con su FAT, area de bootee y directorio raiz tambien en la RAM.
Amen de ser hoy dia los programas muy voluminosos, el problema de los discos virtu ales es que si
se interrumpe el suministro electrico, se pier den los archivos almacenados, Si s6lo se pasan a un
disco RAM copias de utilitarios de uso intenso, como ser un compilador, no se corre este riesgo,
lograndose tiempos de acceso sumamente breves.
Un disco virtual es un disco abstracto simulado, inmaterial e intangible, que cobra existencia como datos
sobre la memoria principal (dispositivo fisico). Del mismo modo que el software, debe fijarse en la
memoria para materializarse como algo utilizable. Se le puede asignar un nombre l6gico, como ser "0".
A diferencia de un cache por software realizado en memoria principal -donde se almacena como
ser una pista entera, cuando se accede a un sector de ella en el disco real- un disco virtual simula
en memoria principal un disco rigido compuesto de varias pistas.

(,Que son las unidades de disco SCSI, y como operan en el conexionado SCSI
La mayoria de los usuarios de computadores personales al cambiar de modele de microprocesador 0
"motherboard", en general no desean invertir dinero en nuevas plaquetas que adapten los perifericos
que poseen al computador. Por ello, los fabricantes siguen manteniendo practicamente el mismo
esquema de conexionado para perifericos que existia en los modelos anteriores de las Pc. En
consecuencia, en la actualidad las PCs comienzan a tener limitaciones respecto principalmente a:

• La maxima velocidad de transferencia de datos de 8 MB/seg., que permite el bus ISA, al cual
van soldados los tipicos conectores de expansion ("slots"), donde se enchufan las plaquetas de
adaptaci6n de perifericos.
de disco • La existencia de un ruimero limitado de ports serie y paralelo (cada uno por un lade se
o mas. comunica con el bus del sistema y por otro con el periferico conectado al mismo). Estos ports
s610 pueden transferir hacia 0 desde dicho bus a velocidades de 100 KB/seg. y 500 KB/seg,
respectivamente, merced a los protocolos de transmisi6n que cumplen.
• El ruimero de "slots" que quedan libres para conectar adaptadores de perifericos'.
• La cantidad de lineas de IRQ disponibles para conectar interfaces de perifericos, cuando el
numero de estos aumenta.

Hoy dia en los sistemas PC tipo monousuario y monotarea, que emplean discos de hasta unos pocos
Gigabytes, las unidades IDE son las mas utilizadas, por su costa y performance.
Cuando se necesita gran capacidad de memoria auxiliar en sistemas monousuario, 0 cuando se quiere usar
una PC como estaci6n de trabajo 0 "servidor" de una red, la interfaz IDE esta limitada. Asimismo, para
sistemas operativos multitarea ("multitasking") -como el OS/2, el Windows NT 0 el Unix- a los efectos de
operar velozmente, se requiere tener varias unidades de disco, y que a cada una se le pueda enviar mas de
un comando por vez, debiendo manejar e11as una cola de comandos. Esto hoy no pueden hacerlo las
unidades IDE, las que tarnpoco pueden manejar un bus. En estas aplicaciones multiusuario 0 en redes, se
emplean varias unidades de disco ("drive array") inteligentes que operan en forma complementaria, de gran
capacidad y velocidad. La mas conocida es la RAID ("redundant array of inexpensive drives") 0 sea disposici6n
de unidades de disco econ6micas redundantes. Un RAID se conecta a un bus SCSI (pronunciado "escasi").
-perar con Por su inteligencia, este subsistema permite, entre otras cosas, almacenar una cola de comandos para dichas
unidades y operarlas juntas. La UCP ve el RAID como un solo disco.

Las siglas SCSI provienen de "small computer system interface" y designan un tipo de bus de extensi6n
externo a un computador, para perifericos, con 8 (016) bits en paralelo, que transfiere 5 (610) MB/seg,2
popularizado por las Macintosh. Este bus "periferico" hoy se ha vuelto mas conocido, dado que cada vez se
coneetan mas perifericos a una PC: CO ROM, unidades de cinta para backup, RAID, camaras de video,
completos dispositivos MIDI, sistemas de sonido, adaptadores de red, unidades magneto-opticas (MO), scanners etc.

Con el advenimiento de multimedia y redes, los perifericos han crecido en mimero, a la vez que se tiene mas exigencias en acelerar
las entradas y salidas de datos. Hoy dia muchas interfaces han pasado a la "mother" ; asf se tiene mas z6calos disponibles.
2 Esta es una velocidad de transferencia interna del bus SCSI, como ser entre la plaqueta adaptadora SCSI y la unidad SCSI de disco.
La velocidad con que en definitiva se transfieren los datos desde memoria principal 0 hacia ella depende tambien de los orros buses
involucrados en el camino, sean estes el lSA. VESA, PC], etc., y de la calidad de la plaqueta adaptadora SCSI.
~~ ~-~~~ ~==:3------------------------ .....

U2-46

Para acoplar el bus SCSI al bus de expansion ISA de una PC, hace £alta ocupar un zocalo de esta fnc
I con una plaqueta adaptadora scsr.
A partir de esta (figura 1.82 de la VI) mediante cables de extension planos de 50 conductores se pueden ir
"armando" el bus SCSI2,conectando una cadena de hasta 7 perifericos con controladora SCSI directamente
al mismo, sin adaptador alguno. Vna unidad de disco con controlador SCSI se conecta al bus SCSI sin
circuiteria extra. Cuando una subrutina ordena leer/ escribir el disco, luego de cumplimentar ello, la unidad
envia el mensaje "cumplimentado 0 no", simplificandose el manejo del periferico.
El bus SCSI, por la inteligencia incorporada al adaptador y a los perifericos conectados al mismo
permite que ellos puedan comunicarse entre si -de ados por vez- y que la estructura intema de estos
no sea "vista" por 1aVCP. Asl, pueden enviarse datos a un disco, para que luego pasen rapido a una
impresora tambien conectada a este bus, 0 para que lleguen luego a una unidad de cinta ("backup")
sin que intervenga la UCP. Esta puede ejecutar otros programas mientras el adaptador SCSI se encarga
de comunicarse con dispositivos SCSI conectados al bus SCSI, y espera la llegada de datos.
De este modo, 1a electronica inteligente de la adaptadora SCSI convierte los comandos que una
subrutina ejecutada por la VCP envia a sus ports (mediante la ejecucion de instruccion OVT) en
sefiales y comandos acordes con el bus SCSI. A este bus esta conectado la controladora SCSI de la
unidad de disco, la cual puede recibir comandos mas complejos que una inter£az IDE
La adaptadora opera como "iniciador", y la controladora como "target" ("destinatario 0 blanco").
De igual forma, la adaptadora puede comunicarse con otra controladora SCSI de otro perifericc
conectado al bus SCSI.Cada unidad SCSI conectada al bus tiene una direccion identificatoria (ill).
Mas en detalie, suponiendo que el bus SCSI se encuentra en estado a Jase libre, sin que ninguna
unidad SCSI 10 use, el "iniciador" debe ganar el control del mismo, en la Jase de arbitraci6n del bus.
Vna vez que gano el control, en la fose de selecci6n enviara a la direccion del "target" seleccionado 10::
comandos que debe reallzar (como ser, leer varios sectores contiguos) y su direccion (la ill del "iniciador").
A continuacion liberara el bus, para que pueda ser usado por otra unidad SCSI (cualquier unidad
puede ser "iniciador" 0 "target"), que pasara asi otra vez ala fase de bus libre.
Despues que se posicione el cabezal sobre el cilindro, y que la cabeza indicada encuentre el primer
sector buscado, el "target" (unidad "de disco) podra enviar los datos al "iniciador" (adaptadora]
A tal fin, primero debe ganar el control del bus en otra lase de arbitracion, y luego, en una Jase de re-
selecci6n, direccionar "iniciador" (a la direccion enviada antes por estel, para trans£erirle los datos
leidos del sector y su direccion (la 10 del "target"). De seguido, el "target" envia informacion
acerca de si hubo 0 no errores, luego de 10 cual liberara el bus.

i.En que consiste la compreslon de un disco?


El objetivo de la compresi6n de datos en un disco es simular un disco con capacidad doble, triple 0 mas
de 1a real. Existen distintos tipos de programas que realizan tal cometido, y su rendimiento depende del
tipo de archivo que se trate, pues se basan en la existencia de patrones de datos repetitivos.
Asi es £actible,si se tiene por ejemplo 50 bytes repetidos que representan la letra A, reemplazarlos por un
byte de la letra A y otro byte que indique el mimero 50. Tecnicas que son aptas para comprimir archivos
de texto tienen baja performance para archivos graficos, y viceversa. El programa DoubleSpace del DOs:
6.0 Yotros trabajan en tiempo real', Independientemente del tipo de datos de un archivo busca patrones
que se repiten, y los reemplaza por un numero que indica donde un patron se repitio antes, y la longitud
del mismo. En la descompresion estos mimeros se reemplazan por los patrones originarios.
Los archives con programas en c6digo de maquina, 0 con datos encriptados (por ser estes de caracter alea-
torio), son poco comprimibles, a diferenda de los existentes en bases de datos, que presentan repeticiones.

Los usuaries con CD ROM y con un disco magneto-oprico alterable, ambos SCSI. aprovechan que ya tienen esta plaqueta adapta-
dora para agregar unidades de disco u otro periferico SCSI. Tambien son SCSI los discos rigidos removibles Bernoulli y los RAID.
2 Aunque el estandar original SCSI-I fue suplantado en 1986 por el SCSI-2, muchos disposilivos SCSI actuales cumplen sus nonnas.
Ya se habla de SCSI-3 y no ha sido adoptado oficialmenle el esuindar SCSI-2 tambien muy en uso. Este permite buses de 16632 bits ..
10 MB/seg en el bus de 8 bits, 0 sea 40 MB/seg en un bus de 32 bits. Aderruis. el conjunto de comandos comunes (CCS) original 51:
amplIa. para soportar CD-ROM, memorias 6pticas WORM, scanners, y otros.
J 0 sea comprimen los datos a medida que son enviados al disco, y los descomprimen cuando vuelven a memoria en la lecLUrade archivos.
lEn que consisten los metod os de grabacion MFM y RLL ?
SegUn se expuso antes (figuras 2.4 y 2.5), una cabeza (bobina) mientras graba magnetiza en la pista grupos
de pequeftas particulas microscopicas de 6xido de hierro (no una sola), dando lugar a pequenos imanes que
originan campos magneticos en la superficie del disco, cuya polarizacion (5-N 0 N-S) depende del sentido
de la corriente de la bobina. En las figuras 2.26 b, e, h aparecen pistas grabadas dibujadas rectilineas, siendo
que en las mismas se enfrentan dos polos iguales cuando cambia de nivella serial electrica que se aplica a la
cabeza (figuras 2.26 a, d, g), 10cual hace cambiar el sentido de la corriente que circula.
Cuando la misma cabeza debe leer, sensa dichos campos, detectando campos magneticos existentes debidos
a imanes enfrentados (norte contra norte, sur contra sur). Vale decir, no detecta si existe 0 no campo
magnetico, sino inversiones en el £lujo (campo) magnetico, cuando se enfrentan dos polos iguales. En una
lectura, al pasar la cabeza por cada una de estas inuersiones, se genera en la bobina una corriente electrica
que da Lugar a una sefiaL constituida por un breve pulso electrico (figura 2.26 c, f, i). Los pulsos as!
generados, al ser decodificados por la electronica correspondiente, permiten reconstruir la sefial que excite
la bobina de la cabeza durante la escritura de la pista, y as! decodificar los ceros y unos en el sector leido.
El numero maximo de inversiones sucesivas de flujo magnetico por centimetro 0 pulgada cuadrada
debe permitir escrituras 0 lecturas seguras. Esta limitado por las caracteristicas del material
magnetico, por el ancho del entrehierro, y la sensibilidad de la cabeza.
Para un ruimero maximo dado de tales inversiones, de 10 que se trata, en principio, es codificar la mayor
caniidad de unos y ceros par centimetro de pista, habiendose desarrollado para tal fin varios metodos, que
implicaron sucesivas mejoras en la densidad de almacenarniento. En todos ellos -como se plante6- en
una escritura, cada cambia de niuel de la seiia! electrica que se aplica a una cabeza, produce una inversi6n en
el flujo magneiico de la superficie de la pista que esta siendo escrita. Por 10 tanto, se busca codificar la mavor
cantidad de unos y ceros con el men or numero de cambios de nioel en dicha senal.
Los tres metodos de codificacion que se discutiran tienen en corruin:
• Los unos y ceros a grabar estan separados igual intervalo de tiempo entre sf; y
• Cada bit de valor uno a escribir Ie corresponde siempre en la pista una iniersl/m del campo magnetico,
mientras que en correspondencia con cada cero a escribir, no existe ninguna inversi6n de campo. Pero
esta convencion sin mas no permite en la lectura detectar cuantos ceros sucesivos han sido grabados.

Una codificaci6n emplea inversiones de flujo extras para separar bits, y otra las usa 5610 para sepa-
rar ceros. Estas inversiones usadas para demarcar bits -que en corresjondencia requieren cambios
de nivel en las sefiales electricas que se aplican a una cabeza- se denorninan "clocks", en el sentido
informacion
que sirven para autosincronismo, a fin de poder deterrninar tiempos de duraci6n de bits.

En la grabaci6n de disquetes se usa principalrnente el metodo de codificaci6n conocido como MFM


(Modulaci6n de Frecuencia Modificada). En los rigidos la tecnica anterior se ha reemplazado por otra
conocida como RLL ("Run Length Limited", traducible como "longitud limitada de ceros corridos" 0
sea sucesivos), que permite hasta un 50% mas de densidad de grabaci6n. Ambas codificaciones son
mejoras sucesivas del denominado metoda de grabaci6n FM ("Frecuencia Modulada").

En la grabaci6n PM (figuras 2.26 a, b, c) se emplea siempre una inversi6n de flujo antes de cada bit a
escribir, sea uno 0 cero; y ademas se debe emplear otra inversi6n por cada bit de valor uno a escribir,
inversi6n que se da a mitad de camino entre la inversi6n que indica su cornienzo y la del cornienzo del
bit siguiente. 0 sea, que para escribir un uno se requiere dos cambios de nivel en la serial que recibe la
cabeza: un cambio para indicar que empieza un bit, y otro para sefialar que se trata de un uno.
A diferencia, la escritura de un cero implica s610 un cambio de nivel, para indicar el comienzo de dicho bit,
siendo que la ausencia de otro cambio inrnediatamente despues identifica que se trata de un cero.
La denominacion PM se debe a que en la codificaci6n de unos sucesivos, resulta una frecuencia de pulsos
mayor que la existente para ceros sucesivos, 0 sea que existen dos frecuencias distintas para unos y ceros.

Dado que en la codificaci6n PM, para grabar un uno se necesita dos inversiones de campo magnetico en la
pista, fue reemplazada por la MFM, que permite codificar un uno con una sola inversi6n de campo, siendo
:I plaqueta adapta
,los RAID. que 5610usa inversi6n para indicaci6n de comienzo de bit, cuando un cero esta precedido por otro cero.
-:lplen sus norm as Esta convenci6n permite codificar, como se ejemplifica, la misma secuencia de unos y ceros como la ejempli-
de 16632 bilS. ficada (11111010000) con la mitad de inversiones de £lujo que con FM. Por 10 tanto en MFM se puede
duplicar el nfunero de bits por pulgada de pista, para una cantidad maxima de inversiones posibles
por pulgada (que depende del material magnetico usado).
U2-48

Serial que lIega a la cabeza en una escritura de la plsta en codificacion FM


1 1 1 1 1

Serial que sale de la cabeza en una lectura de Ia pisla

Serial que lIega a la cabeza en una escritura de Ia pista en codificaci6n MFM

d
Campos rnaqneficos en la pista creados por Ia seiial

Serial que sale de la cabeza en una lectura de la pista

Serial que lIega a la cabeza en una escritura de la pista en codificaci6n AU 2,7

J 1000100001000100000100 Grupo de bits a escribir Codificacl6n RLL 2,7


000 000100
Campos rnaqneticos en la pista creados por la serial 0010 00100100
0011 00001000
010 100100
011 001000
Serial que sale de la cabeza en una lectura de la pista 10 0100
11 1000

Figura 2.26

Para los discos rigidos de gran capacidad fue neeesario aumentar la densidad de grabaci6n, para 10cual se
cre6 la codificaci6n RLL 2,7 que pennite con un menor ruimero de inversiones de flujo codificar una mayor
cantidad de bits (hasta 50% mas que con MFM). A tal fin, una sucesi6n de bits a escribir se descompone, a
partir del primero, en sucesivos grupos de bits cuya codificaci6n en RLL 2,7 se recuadra en la figura 2.26.
Esta recodificaci6n minimiza el ruimero de unos a grabar, y por ende, inversiones de flujo, siendo que en
.I'v1FM tambien se neeesitan inversiones cuando hay ceros consecutivos (en RLL s610se usan para los unos).
En nuestro ejemplo, los datos a escribir 11111010000 se descomponen en los grupos 11 11 10 10 000
codificados en la figura 2.26 g, como 1000100001000100000100. En RLL s610 se produce una
inversi6n de flujo si hay un uno, sin emplear inversiones de comienzo de bit para los ceros en
ninguna circunstancia.
La lectura de una pista exige una eleetr6nica sofisticada, como la IDE 0 SCSI, para determinar correeta-
mente, en funci6n del tiempo transcurrido, cuantos ceros existen entre la deteeci6n de dos "unos".
La figura 2.26 g perrnite apreeiar que si bien la codificaci6n RLL requiere el doble de los bits originales a
escribir, el numero de inversiones de flujo es menor que en MFM, resultando en comparaci6n una
ganancia en la densidad de bits almacenados, que estadisticamente puede llegar alSO%.
Las sigIas 2,7 de la codificaci6n RLL 2,7 resultan de la tabla anterior. Despues de un uno puede habef d
ceros como minimo, y tres ceros como maximo. Antes de un uno como maximo pueden darse euatro ceros.
Por consiguiente, entre dos unos, como minimo pueden haber dos ceros, y comomaximo.siete ceros,
Ocho 0 mas ceros seguidos, se descomponen en grupos de tres ceros, cada uno codificable comO'OOOlOO.
Existen tambien las codificaciones RLL 1,7 Y RLL 3,9 tambien conocidas como ARLL (Advanced
RLL), que permiten hasta un 90% de ganancia de densidad en relacion C8If~M.
• '"
2 c...:..
" :-...../f'IIG1"~G~~
~.~;--=--.P'~{j,
V# ,.,_/.$)~
~191f!P-
(,Que es un disquete "floptical" ? ¢"

>_;:? ~
Di5'tuete ~ ~ Rayo5ia5er , .~
Z ""
. .jJ')ncidente y /
. 'reflejado I
PI5ta5 para '\ \ /1
\

eecrttura
Figura 2.28

Si bien la denominaci6n "floptical" -proveniente de floppy y optical- pareceria indicar un disquete flexible
removible que es escrito 0 leido mediante laser, el floptical es un disquete flexible magnetico, que se graba y
lee de la forma vista (figura 2.5). 0 sea con una cabeza (figura 2.28) que para escribir cada pista genera
campos magneticos N-S y S-N segun el sentido de la corriente que circula por una bobina; y que en una
lectura detecta inversiones del campo sobre la superficie de una pista Dichas inversiones producen corrien-
tes en la bob ina, generandose tensiones electricas que permiten recuperar los unos y ceres almacenados.
La particularidad de un floptical es que usa laser y 6ptica auxiliar para posicionar el cabezal sobre cada pista
(figura 2.28). Este, como se dijo, escribe 0 lee informaci6n por medios magneticos, de la forma descripta.
Esta sofisticaci6n es necesaria a los fines de poder operar con una densidad radial de 1245 t.p.i (pistas por
pulgada) contra 135 t.p.i de los disquetes comunes de 1,44 MB, para que un floptical pueda guardar 21 MB
Asimismo, un floptical se lee y escribe unas tres veces mas rdpido que W1 disquete comun (floppy). Ello se
debe a que es posible acceder a un cilindro (pista) del mismo en 65 mseg, contra 150 mseg del segun-
do (tiempos promedio), y que su velocidad de rotaci6n es 720 r.p.m. (el dob1e que la de un floppy).
Por otra parte, una unidad para floptical tambien puede leer 0 escribir disquetes comunes, dado que cada
cabeza presenta dos entrehierros: uno muy estrecho para disquetes floptical, y otro mas ancho para floppys.
Para que el servo 6ptico posicione el cabezal en la pista se1eccionada, al lado de cada pista magneti-
ca que almacena informaci6n (la cual puede ser formateada y reformateada), existe otra "servo
pista" no borrable (grabada 0 estampada de fabric a) sobre 1a cual incide luz laser puntual. Parte de
esta 1uz se refleja en dicha servo pista, y 1a informaci6n de control que ella contiene es enviada al servo
sistema, para que posicione constantemente 1a cabeza en la pista magnetica seleccionada.
Existen servos mas elaborados, con seguimiento 6ptico por holografias en la superficie del floptical.
U2-50

i,Que son los disquetes y unidades ZIP? .


Las unidades ZIP (nZip Driven), por las capacidades de sus disquetes, por su confiabilidad, y por su
velocidad de transferencia estan a mitad de camino entre las unidades de disquete y las de disco duro,
aunque mas proximas a esta Ultima. Asi, su velocidad de giro es del orden de 3000 r.p.m, 10 cual redunda
en una mayor velocidad de transferenca.
El gabinete del ZIP drive es extemo al gabinete del computador (figura 2.29)
La conexi6n del ZIP drive generaJrnente se hace en el port paralelo que usa la impresora, debiendose
desconectar esta de dicho port, y volverla a conectar al gabinete del ZIP drive en un conector preparado.
Los disquetes para ZIP drive son flexibles, y pueden almacenar en sus dos caras magnetizables 100/200
MB, empleandose corruinmente para back-up del disco rigido. Las cabezas de escritura/lectura estan en
contacto con las superficies de ambas caras, siendo mas pequenas en tamafio que las usadas en una
disquetera, 10 cual pennite grabar y sensar con densidades de grabaci6n mayores.

Вам также может понравиться