• Este sitio usa cookies. Para continuar usando este sitio, se debe aceptar nuestro uso de cookies. Más información.

Discos duros y particiones

Estado
Cerrado para nuevas respuestas

Dimension-X

Nuevo Miembro
Miembro
#1
1. Función de un disco duro

Un disco duro es un dispositivo que permite el almacenamiento y recuperación de grandes cantidades de información. Los discos duros forman el principal elemento de la memoria secundaria de un ordenador, llamada así en oposición a la memoria principal o memoria RAM (Random Access Memory, memoria de acceso aleatorio).

DiscoyParticiones1-1.gif



Tanto los discos duros como la memoria principal son memorias de trabajo (varían su contenido en una sesión con el ordenador). Sin embargo, presentan importantes diferencias: la memoria principal es volátil (su contenido se borra al apagar el ordenador), muy rápida (ya que se trata de componentes electrónicos) pero de capacidad reducida. La memoria secundaria, en cambio, es no volátil, menos rápida (componentes mecánicos) y de gran capacidad. La memoria principal contiene los datos utilizados en cada momento por el ordenador pero debe recurrir a la memoria secundaria cuando necesite recuperar nuevos datos o almacenar de forma permanente los que hayan variado.

2. Estructura física de un disco duro

Elementos de un disco duro

Un disco duro forma una caja herméticamente cerrada que contiene dos elementos no intercambiables: la unidad de lectura y escritura y el disco como tal.

* La unidad es un conjunto de componentes electrónicos y mecánicos que hacen posible el almacenamiento y recuperación de los datos en el disco.

* El disco es, en realidad, una pila de discos, llamados platos, que almacenan información magnéticamente. Cada uno de los platos tiene dos superficies magnéticas: la superior y la inferior. Estas superficies magnéticas están formadas por millones de pequeños elementos capaces de ser magnetizados positiva o negativamente. De esta manera, se representan los dos posibles valores que forman un bit de información (un cero o un uno). Ocho bits contiguos constituyen un byte (un carácter).

Funcionamiento de una unidad de disco duro

Veamos cuáles son los mecanismos que permiten a la unidad acceder a la totalidad de los datos almacenados en los platos.

En primer lugar, cada superficie magnética tiene asignado uno de los cabezales de lectura/escritura de la unidad. Por tanto, habrá tantos cabezales como caras tenga el disco duro y, como cada plato tiene dos caras, este número equivale al doble de platos de la pila. El conjunto de cabezales se puede desplazar linealmente desde el exterior hasta el interior de la pila de platos mediante un brazo mecánico que los transporta. Por último, para que los cabezales tengan acceso a la totalidad de los datos, es necesario que la pila de discos gire. Este giro se realiza a velocidad constante y no cesa mientras esté encendido el ordenador. En cambio, en los discos flexibles sólo se produce el giro mientras se está efectuando algúna operación de lectura o escritura. El resto del tiempo, la disquetera permanece en reposo. Con las unidades de CD-ROM ocurre algo similar, sin embargo en este caso la velocidad de giro no es constante y depende de la distancia al centro del dato que se esté leyendo.

Cada vez que se realiza una operación de lectura en el disco duro, éste tiene que realizar las siguientes tareas: desplazar los cabezales de lectura/escritura hasta el lugar donde empiezan los datos; esperar a que el primer dato, que gira con los platos, llegue al lugar donde están los cabezales; y, finalmente, leer el dato con el cabezal correspondiente. La operación de escritura es similar a la anterior.

Estructura física: cabezas, cilindros y sectores

Ya hemos visto que cada una de las dos superficies magnéticas de cada plato se denomina cara. El número total de caras de un disco duro coincide con su número de cabezas. Cada una de estas caras se divide en anillos concéntricos llamados pistas. En los discos duros se suele utilizar el término cilindro para referirse a la misma pista de todos los discos de la pila. Finalmente, cada pista se divide en sectores.

Discoy20Particiones2-1.gif



Los sectores son las unidades mínimas de información que puede leer o escribir un disco duro. Generalmente, cada sector almacena 512 bytes de información.

El número total de sectores de un disco duro se puede calcular: nº sectores = nº caras * nº pistas/cara * nº sectores/pista. Por tanto, cada sector queda unívocamente determinado si conocemos los siguientes valores: cabeza, cilindro y sector. Por ejemplo, el disco duro ST33221A de Seagate tiene las siguientes especificaciones: cilindros = 6.253, cabezas = 16 y sectores = 63. El número total de sectores direccionables es, por tanto, 6.253*16*63 = 6.303.024 sectores. Si cada sector almacena 512 bytes de información, la capacidad máxima de este disco duro será de 6.303.024 sectores * 512 bytes/sector = 3.227.148.228 bytes ~ 3 GB.

Las cabezas y cilindros comienzan a numerarse desde el cero y los sectores desde el uno. En consecuencia, el primer sector de un disco duro será el correspondiente a la cabeza 0, cilindro 0 y sector 1.

3. Estructura lógica de un disco duro

La estructura lógica de un disco duro está formada por:

* El sector de arranque (Master Boot Record)

* Espacio particionado

* Espacio sin particionar

El sector de arranque es el primer sector de todo disco duro (cabeza 0, cilindro 0, sector 1). En él se almacena la tabla de particiones y un pequeño programa master de inicialización, llamado también Master Boot. Este programa es el encargado de leer la tabla de particiones y ceder el control al sector de arranque de la partición activa. Si no existiese partición activa, mostraría un mensaje de error.

El espacio particionado es el espacio del disco que ha sido asignado a algúna partición. El espacio no particionado, es espacio no accesible del disco ya que todavía no ha sido asignado a ninguna partición. A continuación se muestra un ejemplo de un disco duro con espacio particionado (2 particiones primarias y 2 lógicas) y espacio todavía sin particionar.

El caso más sencillo consiste en un sector de arranque que contenga una tabla de particiones con una sola partición, y que esta partición ocupe la totalidad del espacio restante del disco. En este caso, no existiría espacio sin particionar.

DiscoyParticiones3-1.gif

 

Dimension-X

Nuevo Miembro
Miembro
#2
4. Las particiones

Cada disco duro constituye una unidad física distinta. Sin embargo, los sistemas operativos no trabajan con unidades físicas directamente sino con unidades lógicas. Dentro de una misma unidad física de disco duro puede haber varias unidades lógicas. Cada una de estas unidades lógicas constituye una partición del disco duro. Esto quiere decir que podemos dividir un disco duro en, por ejemplo, dos particiones (dos unidades lógicas dentro de una misma unidad física) y trabajar de la misma manera que si tuviésemos dos discos duros (una unidad lógica para cada unidad física).

Particiones y directorios.— Ambas estructuras permiten organizar datos dentro de un disco duro. Sin embargo, presentan importantes diferencias: 1ª) Las particiones son divisiones de tamaño fijo del disco duro; los directorios son divisiones de tamaño variable de la partición; 2ª) Las particiones ocupan un grupo de cilindros contiguos del disco duro (mayor seguridad); los directorios suelen tener su información desperdigada por toda la partición; 3ª) Cada partición del disco duro puede tener un sistema de archivos (sistema operativo) distinto; todos los directorios de la partición tienen el sistema de archivos de la partición.

Como mínimo, es necesario crear una partición para cada disco duro. Esta partición puede contener la totalidad del espacio del disco duro o sólo una parte. Las razones que nos pueden llevar a crear más de una partición por disco se suelen reducir a tres.

1. Razones organizativas. Considérese el caso de un ordenador que es compartido por dos usuarios y, con objeto de lograr una mejor organización y seguridad de sus datos deciden utilizar particiones separadas.

2. Instalación de más de un sistema operativo. Debido a que cada sistema operativo requiere (como norma general) una partición propia para trabajar, si queremos instalar dos sistemas operativos a la vez en el mismo disco duro (por ejemplo, Windows 98 y Linux), será necesario particionar el disco.

3. Razones de eficiencia. Por ejemplo, suele ser preferible tener varias particiones FAT pequeñas antes que una gran partición FAT. Esto es debido a que cuanto mayor es el tamaño de una partición, mayor es el tamaño del grupo (cluster) y, por consiguiente, se desaprovecha más espacio de la partición. Más adelante, explicaremos esto con mayor detalle.

Las particiones pueden ser de dos tipos: primarias o lógicas. Las particiones lógicas se definen dentro de una partición primaria especial denominada partición extendida.

En un disco duro sólo pueden existir 4 particiones primarias (incluida la partición extendida, si existe). Las particiones existentes deben inscribirse en una tabla de particiones de 4 entradas situada en el primer sector de todo disco duro. De estas 4 entradas de la tabla puede que no esté utilizada ninguna (disco duro sin particionar, tal y como viene de fábrica) o que estén utilizadas una, dos, tres o las cuatro entradas. En cualquiera de estos últimos casos (incluso cuando sólo hay una partición), es necesario que en la tabla de particiones figure una de ellas como partición activa. La partición activa es aquella a la que el programa de inicialización (Master Boot) cede el control al arrancar. El sistema operativo de la partición activa será el que se cargue al arrancar desde el disco duro. Más adelante veremos distintas formas de elegir el sistema operativo que queremos arrancar, en caso de tener varios instalados, sin variar la partición activa en cada momento.

De todo lo anterior se pueden deducir varias conclusiones: Para que un disco duro sea utilizable debe tener al menos una partición primaria. Además para que un disco duro sea arrancable debe tener activada una de las particiones y un sistema operativo instalado en ella. Más adelante, se explicará en detalle la secuencia de arranque de un ordenador. Esto quiere decir que el proceso de instalación de un sistema operativo en un ordenador consta de la creación de su partición correspondiente, instalación del sistema operativo (formateo de la partición y copia de archivos) y activación de la misma. De todas maneras, es usual que este proceso esté guiado por la propia instalación. Un disco duro no arrancará si no se ha definido una partición activa o si, habiéndose definido, la partición no es arrancable (no contiene un sistema operativo).

Hemos visto antes que no es posible crear más de cuatro particiones primarias. Este límite, ciertamente pequeño, se logra subsanar mediante la creación de una partición extendida (como máximo una). Esta partición ocupa, al igual que el resto de las particiones primarias, una de las cuatro entradas posibles de la tabla de particiones. Dentro de una partición extendida se pueden definir particiones lógicas sin límite. El espacio de la partición extendida puede estar ocupado en su totalidad por particiones lógicas o bien, tener espacio libre sin particionar.

Veamos el mecanismo que se utiliza para crear la lista de particiones lógicas. En la tabla de particiones del Master Boot Record debe existir una entrada con una partición extendida (la cual no tiene sentido activar). Esta entrada apunta a una nueva tabla de particiones similar a la ya estudiada, de la que sólo se utilizan sus dos primeras entradas. La primera entrada corresponde a la primera partición lógica; la segunda, apuntará a una nueva tabla de particiones. Esta nueva tabla contendrá en su primera entrada la segunda partición lógica y en su segunda, una nueva referencia a otra tabla. De esta manera, se va creando una cadena de tablas de particiones hasta llegar a la última, identificada por tener su segunda entrada en blanco.

Particiones primarias y particiones lógicas

Ambos tipos de particiones generan las correspondientes unidades lógicas del ordenador. Sin embargo, hay una diferencia importante: sólo las particiones primarias se pueden activar. Además, algúnos sistemas operativos no pueden acceder a particiones primarias distintas a la suya.

Lo anterior nos da una idea de qué tipo de partición utilizar para cada necesidad. Los sistemas operativos deben instalarse en particiones primarias, ya que de otra manera no podrían arrancar. El resto de particiones que no contengan un sistema operativo, es más conveniente crearlas como particiones lógicas. Por dos razones: primera, no se malgastan entradas de la tabla de particiones del disco duro y, segunda, se evitan problemas para acceder a estos datos desde los sistemas operativos instalados. Las particiones lógicas son los lugares ideales para contener las unidades que deben ser visibles desde todos los sistemas operativos.

Algunos sistemas operativos presumen de poder ser instalados en particiones lógicas (Windows NT), sin embargo, esto no es del todo cierto: necesitan instalar un pequeño programa en una partición primaria que sea capaz de cederles el control.

Estructura lógica de las particiones

Dependiendo del sistema de archivos utilizado en cada partición, su estructura lógica será distinta. En los casos de MS-DOS y Windows 95, está formada por sector de arranque, FAT, copia de la FAT, directorio raíz y área de datos. De todas formas, el sector de arranque es un elemento común a todos los tipos de particiones.

Todas las particiones tienen un sector de arranque (el primero de la partición) con información relativa a la partición. Si la partición tiene instalado un sistema operativo, este sector se encargará de arrancarlo. Si no hubiese ningún sistema operativo (como es el caso de una partición para datos) y se intentara arrancar, mostraría un mensaje de error.

5. Secuencia de arranque de un ordenador

Todos los ordenadores disponen de un pequeño programa almacenado en memoria ROM (Read Only Memory, memoria de sólo lectura), encargado de tomar el control del ordenador en el momento de encenderlo. Lo primero que hace el programa de arranque es un breve chequeo de los componentes hardware. Si todo está en orden, intenta el arranque desde la primera unidad física indicada en la secuencia de arranque. Si el intento es fallido, repite la operación con la segunda unidad de la lista y así hasta que encuentre una unidad arrancable. Si no existiese ninguna, el programa de arranque mostraría una advertencia. Esta secuencia de arranque se define en el programa de configuración del ordenador (también llamado Setup, CMOS o BIOS). Lo usual es acceder a este programa pulsando la tecla Suprimir mientras se chequea la memoria RAM, sin embargo su forma de empleo depende del modelo del ordenador. Por ejemplo, la secuencia A:, C: indica que primero se intentará arrancar desde la disquetera y si no fuera posible, desde el primer disco duro.

Nota: Normalmente los programas de configuración utilizan la siguiente nomenclatura: la unidad A: es la primera unidad de disquete; B:, la segunda; C:, el primer disco duro; y D:, el segundo.

Suponiendo que arrancamos desde el disco duro, el programa de arranque de la ROM cederá el control a su programa de inicialización (Master Boot). Este programa buscará en la tabla de particiones la partición activa y le cederá el control a su sector de arranque.

El programa contenido en el sector de arranque de la partición activa procederá al arranque del sistema operativo.

Algunas aclaraciones: Cuando compramos un disco duro nuevo, éste viene sin particionar. Esto significa que el disco duro no es arrancable y hay que configurarlo desde un disquete (o un CD-ROM). Para ello es necesario establecer la secuencia de arranque de manera que esté la disquetera antes que el disco duro (de lo contrario puede no lograrse el arranque). Por el contrario, si la secuencia de arranque es C:, A: y el disco duro es ya arrancable, no será posible arrancar desde un disquete, ya que ni siquiera lo leerá.
 

Dimension-X

Nuevo Miembro
Miembro
#3
6. Sistemas de archivos

Un sistema de archivos es una estructura que permite tanto el almacenamiento de información en una partición como su modificación y recuperación. Para que sea posible trabajar en una partición es necesario asignarle previamente un sistema de archivos. Esta operación se denomina dar formato a una partición.

Generalmente cada sistema de archivos ha sido diseñado para obtener el mejor rendimiento con un sistema operativo concreto (FAT para DOS, FAT32 para Windows 98, NTFS para Windows NT, HPFS para OS/2…). Sin embargo, es usual que el mismo sistema operativo sea capaz de reconocer múltiples sistemas de archivos. A continuación se comentan los sistemas de archivos más comunes.

FAT (File Allocate Table, tabla de asignación de archivos)

Este sistema de archivos se basa, como su nombre indica, en una tabla de asignación de archivos o FAT. Esta tabla es el índice del disco. Almacena los grupos utilizados por cada archivo, los grupos libres y los defectuosos. Como consecuencia de la fragmentación de archivos, es corriente que los distintos grupos que contienen un archivo se hallen desperdigados por toda la partición. La FAT es la encargada de seguir el rastro de cada uno de los archivos por la partición.

Grupo .— Un grupo, cluster o unidad de asignación es la unidad mínima de almacenamiento de un archivo en una partición y está formada por uno o varios sectores contiguos del disco. Esto quiere decir que el espacio real ocupado por un archivo en disco será siempre múltiplo del tamaño del grupo. Además, cada grupo puede almacenar información de un solo archivo. Si no cabe en un solo grupo, se utilizarán varios (no necesariamente contiguos). Para hacernos una idea del nefasto resultado de un tamaño de grupo incorrecto, consideremos dos archivos de 1 byte cada uno. Si el tamaño del grupo es de 32 KB, se utilizarán dos grupos y el espacio real ocupado en disco habrá sido de 64 KB = ¡65.536 bytes! en vez de 2 bytes, como sería de esperar.

Este sistema posee importantes limitaciones: nombres de archivos cortos; tamaño máximo de particiones de 2 GB; grupos (clusters) demasiados grades, con el consiguiente desaprovechamiento de espacio en disco; elevada fragmentación, que ralentiza el acceso a los archivos. Pero tiene a su favor su sencillez y compatibilidad con la mayoría de sistemas operativos.

Debido a que la FAT de este sistema de archivos tiene entradas de 16 bits (por eso, a veces se llama FAT16), sólo se pueden utilizar 216 = 65.536 grupos distintos. Esto implica que, con el fin de aprovechar la totalidad del espacio de una partición, los grupos tengan tamaños distintos en función del tamaño de la partición. Por ejemplo, con un grupo de 16 KB se puede almacenar hasta 216 grupos * 16 KB/grupo = 220 KB = 1 GB de información. El límite de la partición (2 GB) se obtiene al considerar un grupo máximo de 32 KB (formado por 64 sectores consecutivos de 512 bytes).

VFAT (Virtual FAT)

Este sistema de archivos logra remediar uno de los mayores problemas del sistema FAT: los nombres de archivos y directorios sólo podían contener 8 caracteres de nombre y 3 de extensión. Con VFAT, se logra ampliar este límite a 255 caracteres entre nombre y extensión.

La mayor ventaja de VFAT es que tiene plena compatibilidad con FAT. Por ejemplo, es factible utilizar la misma partición para dos sistemas operativos que utilicen uno FAT y otro VFAT (MS-DOS y Windows 95). Cuando entremos desde MS-DOS, los nombres largos de archivos se transforman en nombres cortos según unas reglas establecidas, y pueden ser utilizados de la manera habitual. De todas maneras, hay que prestar cierta atención cuando se trabaja desde MS-DOS con archivos que tienen nombres largos: no se deben realizar operaciones de copiado o borrado, ya que se corre el riesgo de perder el nombre largo del archivo y quedarnos sólo con el corto. Desde Windows 95, se trabaja de forma transparente con nombres cortos y largos.

Tanto las particiones FAT como las VFAT están limitadas a un tamaño máximo de 2 GB. Esta es la razón por la que los discos duros mayores de este tamaño que vayan a trabajar con algúno de los dos sistemas, necesiten ser particionados en varias particiones más pequeñas. El sistema de arhivos FAT32 ha sido diseñado para aumentar este límite a 2 TB (1 terabyte = 1024 GB).

FAT32 (FAT de 32 bits)

El sistema FAT32 permite trabajar con particiones mayores de 2 GB. No solamente esto, sino que además el tamaño del grupo (cluster) es mucho menor y no se desperdicia tanto espacio como ocurría en las particiones FAT. La conversión de FAT a FAT32, se puede realizar desde el propio sistema operativo Windows 98, o bien desde utilidades como Partition Magic. Sin embargo, la conversión inversa no es posible desde Windows 98, aunque sí desde Partition Magic.

Hay que tener en cuenta que ni MS-DOS ni las primeras versiones de Windows 95 pueden acceder a los datos almacenados en una partición FAT32. Esto quiere decir que si tenemos en la misma partición instalados MS-DOS y Windows 98, al realizar la conversión a FAT32 perderemos la posibilidad de arrancar en MS-DOS (opción "Versión anterior de MS-DOS" del menú de arranque de Windows 98). Con una conversión inversa se puede recuperar esta opción. Por estos motivos de incompatibilidades, no es conveniente utilizar este sistema de archivos en particiones que contengan datos que deban ser visibles desde otros sistemas de archivos. En los demás casos, suele ser la opción más recomendable.

En la siguiente tabla, se comparan los tamaños de grupo utilizados según el tamaño de la partición y el sistema de archivos empleado:

Discoy20Particiones4-1.gif



NOTA: Los sistemas de archivos FAT y FAT32 se ven condicionados por un tamaño máximo de archivo de 4Gb., por lo tanto pueden no ser idóneos para algúnos tipos de tareas (como la copia de DVD y la edición de videos grandes por ejemplo).

NTFS (New Technology File System, sistema de archivos de nueva tecnología)

Este es el sistema de archivos que permite utilizar todas las características de seguridad y protección de archivos de Windows NT. NTFS sólo es recomendable para particiones superiores a 400 MB, ya que las estructuras del sistema consumen gran cantidad de espacio. NTFS permite definir el tamaño del grupo (cluster), a partir de 512 bytes (tamaño de un sector) de forma independiente al tamaño de la partición.

Las técnicas utilizadas para evitar la fragmentación y el menor desaprovechamiento del disco, hacen de este sistema de archivos el sistema ideal para las particiones de gran tamaño requeridas en grandes ordenadores y servidores.

HPFS (High Performance File System, sistema de archivos de alto rendimiento)

HPFS es el sistema de archivos propio de OS/2. Utiliza una estructura muy eficiente para organizar los datos en las particiones.

HPFS no utiliza grupos sino directamente sectores del disco (que equivalen a un grupo de 512 bytes). En vez de utilizar una tabla FAT al principio de la partición, emplea unas bandas distribuidas eficazmente por toda la partición. De esta forma se consigue, suprimir el elevado número de movimientos que los cabezales de lectura/escritura tienen que realizar a la tabla de asignación en una partición FAT. El resultado de este sistema es una mayor velocidad de acceso y un menor desaprovechamiento del espacio en disco.

MS-DOS (y Windows 3.1) reconoce únicamente particiones FAT; Windows 95 admite tanto particiones FAT como VFAT; Windows 98 y Windows 95 OSR2 soportan FAT, VFAT y FAT32; Windows NT 4.0 admite particiones FAT, VFAT y NTFS; el futuro Windows 2000 dará soporte a las particiones FAT, VFAT, FAT32 y NTFS; Linux admite su propio sistema de archivos y, dependiendo de las versiones, la mayoría de los anteriores.

7. Arranque específico de cada sistema operativo

MS-DOS, Windows 95 y Windows 98

Los sistemas operativos MS-DOS y Windows 9x, necesitan arrancar desde una partición primaria ubicada en la primera unidad física de disco duro. Además, la instalación de estos sistemas operativos en particiones que comiencen después de los primeros 528 MB del disco duro, puede impedir que arranquen. Según lo anterior, el lugar para situar la partición se ve reducida a los primeros 528 MB del primer disco duro. Este límite imposibilita entonces la instalación de varios sistemas operativos basados en FAT en particiones mayores de este tamaño. De todas maneras, algúnos gestores de arranque (o la propia BIOS del ordenador) son capaces de cambiar la asignación de discos duros de forma que el primero sea el segundo y el segundo, el primero: en este caso particular sí sería posible arrancar una partición FAT desde una segunda unidad física.

Windows NT

Windows NT puede arrancar desde cualquier disco duro, ya sea desde una partición primaria o desde una partición lógica. Sin embargo, en el caso de que se instale en una partición lógica o en un disco duro distinto al primero, es necesario que el gestor de arranque de Windows NT se instale en una partición primaria del primer disco duro. Si tenemos ya instalado otro sistema operativo MS-DOS o Windows 9x, Windows NT instalará su gestor de arranque en el sector de arranque de la partición del anterior sistema operativo. Este gestor de arranque permitirá arrancar tanto el anterior sistema operativo como Windows NT (ya esté en una partición lógica o en otro disco duro).

Linux

Linux, al igual que Windows NT, puede instalarse en una partición primaria o en una partición lógica, en cualquiera de los discos duros. Si la instalación no se realiza en una partición primaria del primer disco duro, es necesario instalar un gestor de arranque. Linux proporciona un potente (aunque poco intuitivo) gestor de arranque llamado LILO. Las posibilidades de instalación son dos: instalarlo en la partición de Linux o en el sector de arranque del disco duro (Master Boot Record). La primera opción es preferible si Linux se instala en una partición primaria del primer disco duro (debe ser la partición activa) junto a otro sistema operativo. Para el resto de los casos, no queda más remedio que instalarlo en el Master Boot del primer disco duro. Desde aquí es capaz de redirigir el arranque incluso a una partición lógica (que, como sabemos, no se pueden activar) que contenga Linux. Nótese que, en este caso, si borramos la partición de Linux el gestor de arranque

LILO seguirá apareciendo (ya que está antes de acceder a cualquier partición). La única manera de desinstalarlo si no podemos hacerlo desde el propio Linux, consiste en restaurar el sector de arranque original. Esto se puede lograr desde MS-DOS con la orden indocumentada FDISK /MBR.

Otra advertencia más: algúnas distribuciones de Linux (como Red Hat) no respetan el espacio libre de una partición extendida. Esto significa que hay que tener cuidado de no solapar una partición primaria de Linux con espacio libre de la partición extendida.

En todos los casos anteriores, cuando se habla de instalar un sistema operativo en una partición primaria se asume que ésta tiene que estar activada a no ser que se utilice un gestor de arranque. En este caso, si el gestor de arranque se instala en una partición, ésta deberá activarse; pero si se instala en el sector de arranque del disco duro, la partición activa será indiferente.
 

Dimension-X

Nuevo Miembro
Miembro
#4
8. Consejos a la hora de crear particiones

¿Qué partición elegir?

La principal decisión que debemos tomar a la hora de crear una partición es elegir entre primaria o lógica. Recordemos que las particiones lógicas deben ser creadas dentro de una partición primaria especial denominada partición extendida. Ya hemos visto que la mejor política que podemos seguir es utilizar, en la medida de lo posible, antes las particiones lógicas que las primarias: podemos crear un número indefinido de particiones lógicas pero sólo cuatro particiones primarias (contando la extendida).

Las particiones primarias suelen ser el lugar ideal para instalar sistemas operativos, ya que son las únicas que se pueden activar. Los sistemas operativos MS-DOS, Windows 95 y Windows 98 sólo pueden ser instalados en particiones primarias. Y aunque Windows NT, Linux y OS/2 puedan ser instalados en particiones lógicas, puede que ésta no sea siempre la opción más acertada. La razón es que es necesario instalar algún gestor de arranque, ya sea en el sector de arranque del disco duro o en el de algúna partición primaria. Si no deseamos alterar ninguna de las particiones primarias existentes ni el sector de arranque, la única opción es realizar una instalación en una partición primaria del primer disco duro.

¿Dónde situar la partición?

Debido a que MS-DOS y Windows 9x presentan problemas al instalarse detrás de los primeros 528 MB del disco duro, es preferible crear sus particiones al principio del disco duro (o lo antes posible, sin superar este límite). Los demás sistemas operativos, en caso de haberlos, se instalarán entonces a continuación. Generalmente suele ser más acertado instalar los sistemas operativos en el primer disco duro. Sin embargo, debido a la flexibilidad de Linux o Windows NT podemos inclinarnos por otras opciones dependiendo de la configuración actual de nuestro equipo.

¿Cuántas particiones crear?

Algunos usuarios prefieren separar los sistemas operativos, programas y datos en sus correspondientes particiones. Esto puede aportar una mayor robustez al sistema, ya que la corrupción de los archivos del sistema operativo o los programas no afectan a los datos. Además, si utilizamos particiones separadas para los sistemas operativos y los programas, nos facilita la utilización de los mismos programas desde distintos sistemas operativos. Por ejemplo, una partición lógica FAT para programas permitiría ejecutar los mismos programas desde Windows NT (instalado en una partición NTFS) o desde Windows 98 (instalado en una partición FAT32). Pero esta disposición del disco duro aumenta su complejidad (un mayor número de unidades) y obliga a calcular a priori el tamaño de cada partición. Como ya dijimos anteriormente, las únicas particiones que deben ser primarias son las de los sistemas operativos, el resto serán lógicas.

Una opción intermedia consiste en separar los archivos del sistema (sistema operativo y programas) de nuestros datos. De esta manera, no se utilizan tantas unidades aunque sí se ofrece una mayor seguridad y organización para nuestros datos

¿De qué tamaño?

Nos quedan por comentar las razones de eficiencia que nos pueden llevar a crear nuevas particiones. Para evitar desperdiciar el menor espacio posible con particiones FAT o VFAT, conviene que tengan un tamaño lo menor posible (recordemos que el tamaño del grupo depende del tamaño de la partición). Sin embargo, el aumento del número de particiones, aunque sea más eficiente, hace más complejo nuestro sistema. Debemos buscar entonces un compromiso entre el número de particiones creadas y el tamaño del grupo (cluster) empleado en cada una de ellas.

Veamos unos ejemplos (en todos ellos suponemos que deseamos trabajar únicamente en Windows 95 con particiones FAT): si tenemos un disco duro de 2,5 GB y, ya que el máximo de una partición FAT es 2 GB, es más eficiente crear una de 1 GB (grupo de 16 KB) y otra de 1,5 GB (grupo de 32 KB) que dos de 1,25 GB (grupo de 32 KB); si tenemos un disco duro de 3 GB, es igualmente más eficiente una de 1 GB (16 KB) y otra de 2 GB (32 KB) que dos de 1,5 GB (32 KB), aunque en razones de eficiencia sería mucho mejor 3 de 1 GB (16 KB); por último, si tenemos un poco más de 1 GB libre en el disco duro es preferible crear una partición que utilice un grupo de 16 KB, aunque quede espacio sin particionar, que una de 32 KB que ocupe la totalidad del espacio, ya que a la larga el desaprovechamiento sería mayor.

Problemas con las letras de unidades: orden de las particiones

Cuando se realizan cambios en las particiones, hay que considerar los posibles efectos que esto puede desencadenar en la asignación de letras de unidades. Los sistemas operativos MS-DOS y Windows 9x utilizan la letra C para la unidad del sistema operativo. Al resto de unidades visibles se les asigna letra en el siguiente orden: particiones primarias detrás de la actual, particiones primarias de los siguientes discos duros, particiones lógicas de la unidad actual, particiones lógicas de los siguientes discos duros, particiones primarias anteriores a la actual y, por último, el resto de unidades físicas (como la unidad lectora de CD-ROM).

Unidades visibles.— Son las unidades que se pueden ver desde un sistema operativo, es decir, aquellas que utilizan un sistema de archivos reconocido por el sistema operativo. Las particiones con un sistema de archivos incompatible con el sistema operativo no son accesibles (es como si no existiesen).

La única letra que se puede cambiar manualmente es la del CD-ROM, el resto de letras son asignadas automáticamente sin posibilidad de cambio. En ocasiones es preferible asignar una letra alta (por ejemplo la R) a la unidad de CD-ROM ya que así no se ve afectada por los posibles cambios de configuración en las particiones.

Para cambiar la letra del CD-ROM en MS-DOS es necesario modificar la línea del AUTOXEC.BAT que contenga la orden MSCDEX y añadir al final el modificador /L:unidad, donde unidad es la letra que deseamos asignar. Si no hay suficientes letras de unidades disponibles (por defecto sólo están permitidas hasta la D), es necesario añadir la siguiente línea al CONFIG.SYS: LASTDRIVE=Z. En este caso, se han definido todas las letras posibles de unidades (hasta la Z).

En Windows 95 o Windows 98, elegimos Sistema del Panel de Control; seleccionamos la segunda ficha (Administrador de dispositivos); hacemos clic en el signo más a la izquierda de CD-ROM; hacemos doble clic sobre nuestra unidad de CD-ROM; y, finalmente, en el campo Letra de la primera unidad de la ficha Configuración, seleccionamos la letra que deseamos asignar a la unidad de CD-ROM.

Discoy20Particiones5-1.gif



Windows NT, permite la asignación dinámica de letras de unidad mediante el Administrador de discos. En Windows NT, la primera letra de unidad es la primera partición primaria del primer disco duro, por lo que puede ocurrir que la propia partición de Windows NT no sea la C.

Linux carece de estos problemas ya que no trabaja con letras de unidad sino con discos duros físicos (hda, hdb, hdc y hdd) y particiones según el lugar que ocupan en la tabla de particiones (hda1, hda2, hda3…).

Para evitar que las mismas particiones tengan asignadas distintas letras conviene colocar primero las particiones reconocidas por más sistemas operativos (FAT) y por último las más específicas (como NTFS o la de Linux).

9. Trabajar con varios sistemas operativos

Si instalamos varios sistemas operativos en el mismo ordenador, debemos tener una manera eficiente de arrancar con cada uno de ellos. Una posibilidad poco acertada consiste en activar cada vez la partición que queremos arrancar en la próxima sesión con el ordenador. La otra posibilidad es instalar un gestor de arranque que aparezca antes de cargar algún sistema operativo.

Los gestores de arranque suelen ofrecer un menú con los distintos sistemas operativos instalados para que el usuario elija uno de ellos cada vez que encienda el ordenador. Es frecuente que tengan algúna opción predeterminada y un contador de tiempo. Si en un tiempo establecido no se elige ninguna opción, se carga automáticamente el sistema operativo predeterminado.

El gestor de arranque suministrado con Windows NT 4.0 se suele instalar en una partición MS-DOS o Windows 9x, y sólo permite elegir entre esta partición y la de Windows NT.

LILO, el gestor de arranque de Linux, puede instalarse tanto en el sector de arranque del disco duro como en la partición de Linux. Reconoce la mayoría de los sistemas operativos instalados en el ordenador y puede, incluso, arrancar sistemas operativos MS-DOS o Windows 9x desde un segundo disco duro. El mayor inconveniente es su poco amistoso modo de empleo. Al cargarse aparece un mensaje (LILO Boot) pidiéndonos el nombre del sistema operativo. Es necesario escribirlo y pulsar Enter. La tecla Tabulador permite ver las opciones posibles y Enter activa la opción predeterminada.

Otros gestores de arranque, como el de IBM (suministrado con Partition Magic 3.0), necesitan una partición primaria del primer disco duro exclusivamente para ellos. Lógicamente, ésta debe ser la partición activa. El gestor de arranque de IBM tiene una interfaz de usuario cómoda, aunque también algúnas limitaciones: tiene problemas para arrancar sistemas operativos desde una unidad de disco duro diferente a la primera, ocupa una de las cuatro particiones primarias posibles del primer disco duro, y no es capaz de arrancar una partición primaria FAT32 (Windows 98) si existen en el disco duro otras particiones primarias FAT32 o FAT (como MS-DOS).

Cuando se trabaja con varios sistemas operativos conviene elegir correctamente los sistemas de archivos de cada partición, con el fin de intercambiar y compartir datos entre los sistemas instalados.
 

Dimension-X

Nuevo Miembro
Miembro
#5
10. Trabajar con dos o más discos duros

Cuando se trabaja con varios discos duros sólo el primero de ellos es arrancable. De todas maneras, algúnas BIOS permiten intercambiar los discos duros primero y segundo (en estos casos, el segundo se comportaría como si fuera el primero y el primero como el segundo).

El ordenador arrancará desde la partición activa del primer disco duro y no se tendrá en cuenta cuál es la partición activa en el resto de los discos duros. Estos discos duros normalmente se utilizan para almacenar programas, datos e incluso algúno de los sistemas operativos que lo permiten (como Windows NT, Linux u OS/2). No debemos olvidar los problemas que se pueden producir al incorporar un nuevo disco duro a nuestro ordenador con las letras de unidad. Para evitar el menor número posible de cambios, es preferible utilizar particiones lógicas en el resto de discos duros (ya que se colocan al final de la lista de unidades aunque, eso sí, antes de la correspondiente al CD-ROM)

11. Instalación de un disco duro

Actualmente los discos duros, según la conexión que incorporen, pueden ser de dos tecnologías: IDE o SCSI (léase escasi). Lo usual es utilizar discos duros IDE, ya que son soportados por todo tipo de ordenadores, aunque tengan unas prestaciones inferiores a la de sus equivalentes SCSI, más propios de servidores y grandes ordenadores. En este apartado nos centraremos únicamente en la instalación de discos duros IDE.

Notas sobre el estándar IDE: La especificación IDE (Integrated Drive Electronics) original admitía únicamente 2 discos duros de hasta 500 MB y fue adoptado como estándar por el comité ANSI bajo el nombre de ATA (Advanced Technology Attachement). Una posterior revisión permitió utilizar 4 discos duros de hasta 8,4 GB. Surgió entonces lo que actualmente conocemos como EIDE (Enhanced IDE). El comité ANSI lo adoptó como estándar con el nombre de ATA-2 o Fast ATA. Permite unas tasas de transferencia de 16,6 MB/segundo. En este apartado, cuando hablemos de IDE, nos estamos refiriendo a toda la familia de estándares y no sólo al IDE original.

UDMA.— UDMA (Ultra DMA), también conocido como Ultra ATA, Ultra EIDE o Ultra/33 es una revisión del estándar EIDE que acelera las tasas de transferencia hasta 33 MB/segundo. Para que pueda utilizarse es necesario que, tanto la controladora de discos duros como el propio disco duro, admitan UDMA. Todas las placas base y discos duros modernos admiten este estándar, el cual es compatible con EIDE.

La instalación de un disco duro, como la de cualquier otro dispositivo de un ordenador, consta de dos fases: instalación física e instalación lógica.


Instalación física


Las actuales placas base llevan incorporada una controladora para cuatro discos duros. La conexión de los discos duros a la placa base se realiza mediante dos cables planos iguales: IDE0 (primario) e IDE1 (secundario). Cada uno de estos cables tiene una conexión de 40 pines a la placa base y dos conexiones más de 40 pines para sendos discos duros. De esta manera, el máximo número posible de discos duros IDE en un ordenador es de 4: dos en el IDE0 y otros dos en el IDE1. Y esto es considerando que no se conectan otros dispositivos a los mismos cables, ya que las unidades de CD-ROM, grabadoras, unidades de cinta, unidades ZIP y unidades LS-120, por citar algúnos ejemplos, se conectan igualmente a los cables IDE.

Debido a que lo normal en los ordenadores actuales es que vengan únicamente con un disco duro y una unidad de CD-ROM, no se suele utilizar el IDE1 y, en consecuencia, no se suministra el segundo cable. Por otro lado, algúnos ordenadores incorporan cables para un solo dispositivo, que deberemos reemplazar si deseamos conectar dos. Entonces, para conseguir el mayor número posible de dispositivos conectados a la placa base necesitaremos dos cables IDE de dos dispositivos.

Cuando se conectan dos dispositivos a un mismo cable, uno de ellos se ha de comportar como dueño (master) y el otro como esclavo (slave). El dispositivo dueño se sitúa en el extremo del cable y el esclavo, en la parte central (el cable parte de la placa base). Cuando solamente hay un dispositivo en un cable, éste debe situarse en la parte final, quedando la conexión central libre.

El dispositivo principal debe situarse en el IDE0 master. Un segundo dispositivo podrá ir, bien en el IDE0 slave o bien, en el IDE1 master. Un tercero igualmente podrá ir en el IDE0 slave o en IDE1 slave, si el IDE1 master ya estaba utilizado. La norma es no utilizar la conexión esclavo antes que la conexión dueño.

Nota importante: Las conexiones de 40 pines del cable sólo se pueden conectar de una manera. La manera correcta es hacer coincidir el pin 1 de la conexión (serigrafiado en el dispositivo) con el pin 1 del cable (situado en el extremo del cable marcado con una banda roja): Línea roja al pin 1. Esta norma hay que tenerla en cuenta tanto en la conexión a la placa base como en cada una de las conexiones con los dispositivos (en general, es válida para cualquier conexión de un cable plano). Si no se tiene en cuenta, puede que el ordenador ni siquiera arranque. Por otro lado, se puede conectar cualquiera de los dos extremos del cable a la placa base, es decir, no hay uno prefijado; sin embargo, es usual conectar a la placa base el que esté más alejado del central.

Antes de realizar la conexión física del disco duro al conector adecuado, es necesario configurarlo como dueño o esclavo. Con este fin, y muy próximo al conector macho de 40 pines, se encuentran unos puentes de configuración (jumpers). Debemos seguir las indicaciones del fabricante para colocar los puentes de manera correcta; teniendo en cuenta que si sólo hay un disco duro o si va al extremo del cable, hay que configurarlo como dueño (master) y si va a la parte central del cable, como esclavo (slave). La configuración por defecto (de fábrica) para los discos duros es de dueño y para las unidades de CD-ROM, de esclavo.

Nota: Normalmente estos son todos los puentes que lleva un dispositivo IDE; sin embargo, hemos comprobado que algúnas unidades de CD-ROM incorporan otro puente para activar el UDMA. Estando este puente cerrado (recomendado para Windows 98) acelera la velocidad de transferencia de la unidad, pero puede ocasionar problemas con algúnos sistemas operativos. La opción por defecto es el puente abierto (UDMA desactivado).

Además, es necesario que el disco duro reciba corriente de la fuente de alimentación. Para ello la fuente de alimentación del ordenador debe disponer de algún cable libre que se conectará al disco duro.

Una vez que hemos configurado los puentes de los discos duros y hemos realizado correctamente las conexiones de los cables IDE y de alimentación, sólo nos resta atornillar la unidad a la caja (chasis) del ordenador. Ni que decir tiene que debemos utilizar los tornillos adecuados para no perforar la unidad y dañarla. La mayoría de discos duros necesitan una bahía libre de 3 pulgadas y media. Si no quedasen bahías libres de este tipo pero sí de 5 pulgadas y cuarto, será necesario utilizar un adaptador. Con este paso, finalizamos la instalación física. De todas maneras, la experiencia recomienda no cerrar todavía el ordenador hasta que hayamos comprobado que realmente funciona.

Instalación lógica

Llegados a este punto, ya podemos encender el ordenador. Si no arrancase (pantalla negra), deberemos revisar las conexiones y puentes del apartado anterior.

Aunque algúnas BIOS presentan detección automática de discos duros al arrancar, vamos a proceder a la instalación de los discos duros mediante el programa de configuración (Setup) del ordenador. Este paso es necesario para que la BIOS del ordenador reconozca los discos duros que tiene instalados. Entramos en el Setup de la manera indicada en el manual del ordenador (normalmente pulsando la tecla Suprimir al chequear la memoria, después de encender el ordenador). En el menú del Setup, buscamos una opción para autodetectar discos duros. Si no existiese, deberemos inscribir los discos duros en la BIOS de forma manual, según los datos proporcionados por el fabricante: cilindros, cabezas y sectores. Para cada disco duro tenemos que elegir el modo en el cual va a trabajar (normal, LBA, large...). La opción recomendada para discos duros menores de 528 MB es normal y para el resto, LBA. Sin embargo, discutiremos sobre este punto más adelante. Una vez comprobados los valores, salimos del Setup guardando los cambios. Si se presentase algún error o no se reconociese algún disco duro, deberemos repasar tanto las conexiones y puentes del apartado anterior como la configuración de la BIOS.

La instalación lógica como tal del disco duro en el ordenador ha terminado. El siguiente paso consiste en particionar el disco duro y configurar cada una de las particiones para un sistema de archivos concreto.

Particionar el disco duro

Los programas habituales para particionar un disco duro son FDISK (proporcionado con MS-DOS y los sistemas operativos Windows) y Partition Magic (programa comercial válido para MS-DOS, Windows y OS/2).

Las distintas versiones de FDISK se pueden clasificar básicamente en dos: las que trabajan únicamente con FAT (FDISK de MS-DOS y Windows 95) y las que también soportan FAT32 (FDISK de Windows 95 OSR2 y Windows 98). En este último caso, FDISK preguntará al arrancar si se desea habilitar el soporte para unidades de gran capacidad. Si respondemos que sí a esta pregunta, las particiones que se creen serán FAT32; en caso contrario, serán FAT. Es decir, una partición es FAT32 o FAT no según la herramienta que se utilice para formatear la unidad, sino según el método utilizado al particionar.

FDISK presenta importantes limitaciones: no se puede crear una partición extendida sino existe ya una partición primaria FAT o FAT32 en la unidad; no se pueden variar las particiones creadas sino es borrándolas y creándolas de nuevo; y sólo permite trabajar con particiones FAT o FAT32.

Advertencia: El borrado de una partición implica la pérdida de todos sus datos.

Partition Magic presenta muchas más ventajas y opciones avanzadas que FDISK. Permite algo totalmente impensable hasta hace poco tiempo: variar el tamaño de una partición y su localización sin perder su contenido. Además es compatible con un buen número de sistemas de archivos, incluidos NTFS, HPFS y el de Linux. Entre las opciones avanzadas destaca la variación del tamaño del grupo (cluster) de una partición sin afectar a su contenido. Por estas razones, Partition Magic es la herramienta ideal para la gestión de particiones.

Discoy20Particiones6-1.gif



Ambas herramientas permiten la activación de la partición primaria que se desee arrancar.

Para que sea posible acceder a estas utilidades debemos disponer de un disco duro arrancable o un disquete con sistema. Si el primer disco duro no tiene sistema, no queda más remedio que arrancar desde un disquete (o un CD-ROM, si fuera posible). En este caso, es necesario que la secuencia de arranque del ordenador sea A:, C:.

Discoy20Particiones7-1.gif



Consejo: Cuando realice cambios a las particiones de su disco duro es más que recomendable disponer de un disquete con sistema, ya que será la única forma de acceder al ordenador si su disco duro perdiese el arranque. Desde MS-DOS se puede crear con las órdenes SYS A: o FORMAT A: /S.

Formatear cada partición

Una vez creadas las particiones, es necesario dar formato a cada una de ellas. Si se trata de una partición que va a contener un sistema operativo, el propio programa de instalación nos guiará por este proceso (Partition Magic es capaz de formatear las particiones a la vez que las crea). Pero si la partición va a ser para programas o datos de un sistema operativo, esta operación será necesario realizarla desde las herramientas proporcionadas por el sistema operativo instalado. En el caso de MS-DOS es FORMAT unidad:, donde unidad es la letra de la unidad que se desea formatear.

Advertencia: El formateo de una partición lleva consigo la destrucción de todos sus datos.

Activar la partición de arranque

Después de crear y formatear todas las particiones, es necesario activar (si no lo estaba ya) aquella partición del primer disco duro que queremos que arranque al encender el ordenador.
 

Dimension-X

Nuevo Miembro
Miembro
#6
12. Limitaciones de capacidad. Modos normal (CHS) y LBA

Cuando se diseñó el primer disco duro de 10 MB, nadie que no fuera tomado por loco podía predecir las enormes capacidades de los discos duros actuales. Debido a este vertiginoso aumento de capacidades, se han ido llegando a ciertos límites de capacidades impuestos por el diseño de la BIOS del ordenador o de los propios sistemas operativos. Esto trae como consecuencia que nuestro ordenador no reconozca un disco duro moderno de gran capacidad o que sólo reconozca una parte. Los casos siguientes dependiendo del elemento que origina el problema, se solucionan bien actualizando la BIOS del ordenador o bien, actualizando el sistema operativo utilizado.

Límite de 528 MB

Las BIOS antiguas (anteriores a 1994 aproximadamente) no soportan discos duros superiores a esta capacidad. Estos discos duros se caracterizan por tener más de 1024 cilindros. La solución consiste en actualizar la BIOS o en utilizar un programa residente en el sector de arranque del disco duro (como el Disk Manager de Seagate o el Ontrack Disk Manager de Quantum) que filtre los accesos a los discos. Estos métodos realizan una conversión de los valores reales de cilindros, cabezas y sectores del disco duro (CHS) a unos valores virtuales que no superen el límite de los 1024 cilindros (LBA).

Por ejemplo, el disco duro de Seagate con valores reales de 6253 cilindros, 16 cabezas y 63 sectores se convierte a unos valores virtuales de 781 cilindros, 128 cabezas y 63 sectores. Como podemos observar, el valor de 128 cabezas (64 platos) no es una cifra real, pero permite la disminución del número de cilindros de forma que no supere el límite de 1024 y sigan siendo direccionables los mismos sectores (igual capacidad). Mediante esta conversión, los sistemas operativos DOS y Windows pueden acceder al espacio por encima de los 528 MB. Estos parámetros virtuales, proporcionados por el fabricante, son conocidos por el nombre de LBA (Logical Block Addressing, direccionamiento lógico de bloques). Para discos duros que superen este límite, es la opción recomendada.

Advertencia: Una vez que existen datos en el disco duro, no se debe cambiar el modo del disco duro ya que los sectores se direccionan de otra manera y esto puede desencadenar pérdida de datos.

Límite de 2 GB

Las BIOS de algúnos ordenadores no soportan discos duros de más de 4092 cilindros (aproximadamente 2 GB). En estos casos, es necesario actualizar la BIOS a una que reconozca discos de más capacidad.

Este límite coincide también con el tamaño máximo de las particiones FAT (no del disco). Viene impuesto por la utilización de una FAT de 16 bits, que sólo es capaz de direccionar 216 grupos = 65.536. Como el tamaño máximo del grupo es de 32 KB, la capacidad resultante es 65.536 grupos * 32 KB/grupo = 2.097.152 KB = 2 GB.

Límite de 8,4 GB

Igualmente al caso anterior, este límite lo tienen algúnas BIOS y algúnos sistemas operativos como DOS y Windows 95. Para superar este límite es necesario una BIOS actualizada y un sistema operativo que lo permita (como Windows 95 OSR2 ó Windows 98, que están basados en FAT32). También es posible utilizar un controlador de discos duros residente en memoria, como alternativa a BIOS no actualizadas.

Límite de 2 TB

Este es el límite de las particiones FAT32, todavía lejos de las capacidades de los discos duros actuales.

Saludos Cordiales
 

Dimension-X

Nuevo Miembro
Miembro
#7
SOBRE VELOCIDAD EN DISCOS

Últimamente el mercado nos está inundando con informaciones sobre discos: ATA 66, ATA 100, 7200 revoluciones, discos SCSI a 10.000 revoluciones LVD y lo ultimo, los discos SCSI a 15.000 rev.

Vamos a intentar centrar el tema de los accesos a disco, como lo realizan los sistemas operativos normalmente, y cual es el disco ideal para cada sistema. No vamos a tratar en este artículo sobre las características de RAID, etc. que quedarán fiera de este ámbito y que merecen un estudio mas detallado en algún artículo posterior. El tema básico de este articulo, es a nivel elemental y como tal debe tomarse.

 Existen básicamente dos tipos de discos IDE y SCSI. Las controladoras IDE son las que normalmente encontramos integradas en la placa madre y son las de uso más normal en los ambientes domésticos. Las controladoras SCSI, son controladoras profesionales, orientadas normalmente al ámbito profesional, y los discos y tecnologías SCSI son las punteras. Los discos salen en tecnología SCSI y uno o dos años más tarde, se implementan en tecnología IDE. Es decir, los SCSI llevan un par de años de diferencia en avance tecnológico siempre con respecto a los IDE.

DISCOS IDE


Discos IDE. Son los orientados normalmente al consumo domestico. Existen dos técnicas de acceso a estos discos. Son los modos PIO y los modos DMA.

 Modos PIO: En los discos antiguos, el acceso a disco se hacia mediante técnicas PIO (Program Input/Output). Estos tipos de acceso, implican mucho trabajo a la CPU (constantemente interrogando a los puertos de comunicaciones con el disco), y poca velocidad de transferencia, ya que lo máximo que podía traerse la CPU es de dos en dos bytes del disco por cada operación PIO. Los modos PIO son de PIO 1 a PIO 4, siendo el más rápido este ultimo.

 Modos DMA. Evidentemente el modo anterior queda obsoleto desde el momento en que las tecnologías de las placas madre y de los buses de las placas madre, permiten la técnica del bus mastering. Esta técnica consiste en que el dispositivo puede tomar el control del bus desconectando del bus a la CPU y durante esa fracción de tiempo hacer llegar datos a la memoria del ordenador de una manera masiva. En ese momento el procesador está inoperativo, pero la velocidad de transferencia conseguida por la electrónica del disco y de la controladora supera con creces la parada de la CPU.

En los modos DMA, rápidamente se implementó el modo UDMA-2 o UDMA 33, siendo teóricamente el ancho de banda de 33 MegaBytes por segundo. Este modo está soportado perfectamente por todos los sistemas Windows, es automatico en Windows 2000 y manual en los Windows 9X o Windows ME, siendo necesario activar el casillero de acceso a DMA en el disco en el Administrador de Dispositivos de Windows.

Posteriormente ha surgido la tecnología UDMA-4. (o 66 MegaBytes). Estos discos son compatibles UDMA-2 por lo que funcionarán en las controladoras de disco antiguas. Pero para sacar realmente su rendimiento, es necesario utilizar controladoras y bios que soporten este modo, y además utilizar un cable IDE especial de 80 hilos. Igualmente, este cable debe estar correctamente conectado a la placa madre, es decir el conector de color azul, debe ir a la placa madre y los otros dos conectores a los dos discos o dispositivos IDE que puede utilizar cada canal. Se pueden mezclar dispositivos, es decir, podemos tener un disco UDMA 4 y otro UDMA 2 en el mismo canal sin problemas.

Esta es la conexión física, pero pasemos ahora al sistema operativo. El sistema operativo debe soportarlo, y para ello hay dos componentes del sistema operativo en sí que intervienen en ello: el controlador de bus mastering inherente al propio sistema operativo debe ser capaz de activar el modo de transferencia de 66 MegaBytes. Igualmente, el fabricante de la controladora IDE, debe darnos un controlador de disco duro que sea capaz de manejar este modo de transferencia. Pasemos ahora a ver en detalle estos dos componentes.

Empecemos por el fácil: el controlador de disco duro que nos da el fabricante. Con este componente, normalmente no hay ningún problema. La mayoría de fabricantes nos suministran dicho controlador.

El segundo componente, ya no nos lo puede suministrar el fabricante: la posibilidad de bus mastering en modo 66 MB. Este componente es inherente al sistema operativo, por lo cual vamos a describir que sistemas operativos de Microsoft lo soportan o no.

Empecemos primero a ver el soporte que Microsoft en general da a los chipset y controladoras de la placa madre: Microsoft únicamente da soporte a los chipset Intel. No da soporte en nativo a los chipset VIA hasta el momento. Lo empezará a dar en el siguiente sistema operativo: WindowsXP.

Por tanto, no es posible la activación del modo UDMA 66 con chipset VIA, ni tan siquiera con los drivers de VIA.

Con respecto al soporte actual en los chipset Intel, Microsoft únicamente da soporte a ellos en modo UDMA 66 en Windows 2000. Además para que este soporte quede activado, es necesario modificar una clave en el registro, según está documentado en:

http://support.microsoft.com/support/kb/ar...s/q247/9/51.asp

Fijémonos que este es el único articulo de Microsoft que habla de la UDMA 66 en sus sistemas operativos. De ello podemos deducir perfectamente que es en el único caso en que da soporte ya que de otra manera estaría totalmente documentado y ampliamente anunciado.

Como conclusión podemos afirmar que:

Únicamente existe soporte para UDMA 66 en W2000 y para chipset Intel.

No existe soporte para otros tipos de chipset, ya que aunque los fabricantes nos den el driver, Microsoft todavía no ha sacado ningún Service Pack que active esta transferencia a nivel del sistema operativo.

La tecnología ha seguido avanzando y en la actualidad ya existen discos ATA 100 o UDMA-5. Estos discos, igualmente necesitan que la controladora hardware lo soporte, y necesitan que el sistema operativo y los controladores de disco duro también lo soporten.

Con respecto al sistema operativo, Microsoft ha anunciado soporte a UDMA 100 en el siguiente Service Pack (SP2) de W2000. No existe ningún anuncio sobre los sistemas Windows 9X y Windows ME, e igualmente el soporte en W2000, no está especificado si es para chipset Intel únicamente.

VELOCIDAD DE TRANSFERENCIA

A pesar de los comentarios anteriores, podemos observar que la velocidad de los discos actuales IDE es superior y aparentemente existe una inconsistencia con las matizaciones dadas anteriormente. Veamos que no es así.

Anticipemos que los discos actuales, tienen normalmente una mayor velocidad de rotación. Han pasado en los discos IDE de 5400 revoluciones a 7200. Igualmente, tienen una mayor capacidad, lo que da una mayor “densidad” de grabación por pista.

Esto ultimo, implica, que se tarda menos tiempo en leer una vuelta completa (una pista), y además que se leen mas datos (al ser mayor la densidad). Por tanto, lo normal, y mientras no se sature el bus de datos, es que apreciemos sensiblemente un aumento de velocidad.
 

Dimension-X

Nuevo Miembro
Miembro
#8
PARAMETROS IMPORTANTES DE UN DISCO

A pesar que nunca hayamos desmontado un disco para ver su interior, podemos suponer que estos constan de un plato (o varis platos) giratorios y una cabeza de lectura que se mueve transversal al disco y se posición en cualquier parte de él.

Efectivamente, esta imagen intuitiva es la correcta. En la actualidad, los discos duros constan de un solo plato con dos superficies magnéticas, la superior y la inferior, y consta de dos cabezas, una para cada superficie.

La geometría “real” del disco, es entonces de dos cabezas. Esto choca muchas veces con la idea que tenemos de los discos (idea que se transmite desde los antiguos discos de muchos platos), e incluso con la idea que los fabricantes nos transmiten al hablarnos de 8400 cilindros, 16 cabezas y 63 sectores (por ejemplo).

Bien, esta última, es la geometría que el disco “aparenta” tener y es la que transmite al sistema operativo. Evidentemente no puede ser cierta, ya que si tuviese 16 cabezas, indica que tendría 8 platos……. Y en los discos actuales, no “caben” 8 platos.

Aunque el sistema operativo, se refiera a esa geometría: es decir, le indica al disco: lee del cilindro 1417, cabeza 14, sector 50. En ese momento, la electrónica integrada en el propio disco, se encarga de “traducir” esas direcciones por las direcciones “reales” en el disco de acuerdo con su geometría real. Este mecanismo se conoce como “traslación lógica de bloques”. Es lo que muchas veces denominamos LBA (Logical Block Address) al referenciarlo en la bios de la maquína.

Factores de velocidad

Independientemente de la introducción anterior y que nos ha desviado un poco del tema, intentemos imaginar cuales son los parámetros de velocidad de un disco. Evidentemente uno de ellos, es la velocidad de la electrónica del propio disco y la posible velocidad de transmisión a través del cable. Pero podemos intuir que estas velocidades son infinitamente superiores a los verdaderos cuellos de botella: los componentes no electrónicos; es decir: los componentes mecánicos.

Seek y Average

La pregunta es: ¿Qué movimiento debe hacer la mecánica para leer un determinado sector de un disco?.

Sabemos que el disco está girando. Por tanto, una vez que la electrónica ha calculado en donde está el sector a leer o escribir, debe mover lateralmente la cabeza de lectura hasta el cilindro en donde está el sector a buscar. Este movimiento se denomina Seek (posicionamiento).

Una vez que la cabeza está situada en dicho cilindro, y debido a que el disco está girando, únicamente debe “esperar” a que el sector que busca pase por debajo de dicha cabeza en cuyo momento lo leerá. Evidentemente, una vez posicionada la cabeza, el sector a buscar puede estar en cualquier lugar del cilindro. En el peor de los casos, el sector puede que justo acabe de pasar por la cabeza lectora, en cuyo caso hay que esperar a que el disco gire una vuelta completa para que vuelva a pasar debajo de la cabeza lectora. O bien, podemos estar en el mejor de los casos, es decir, que el sector que queramos leer vaya a pasar justo en ese momento debajo de la cabeza lectora. Y puede que esté en cualquier otra posición. Estadísticamente, lo que tardará de media (average) en pasar, será media revolución del disco.

Bien, acabamos de ver los dos números maravillosos que aparecen muchas veces (y confusamente) en la documentación de los fabricantes: Seek y Average.

Uno de los valores, el Average, depende únicamente de la velocidad de giro del disco. Cuanto mayor sea la velocidad de giro, mas rápidamente encontrará un sector una vez que la cabeza lectora se haya posicionado (Seek) en el correspondiente cilindro.

Las velocidades actuales para los discos IDE de ultima generación son de 7200 rpm. Esto quiere decir:

7200 rev. Por minuto = 7200 / 60 = 120 rev. Por segundo.

Por tanto, en dar una vuelta completa tarda 1 /120 segundos = 0,00833 segundos. Es decir 8,33 milisegundos. Su average será la mitad: 4,16 milisegundos.

Como podemos suponer, este dato es “fijo” y no depende del fabricante ni de su calidad. Depende únicamente de la velocidad de rotación.

Recordemos que los discos SCSI actuales, están en 15000 rpm. Es decir su average será la mitad, por tanto: el doble de rápidos con respecto a este parámetro.

Donde realmente encontramos la calidad de fabricación está en el Seek. En el posicionamiento de cabeza. Ese suele ser el dato que figura en las características de los fabricantes y muchas veces añade un punto de confusión, debido a que algúnos de ellos, lo denominan también ‘average’.

Los discos normales en la actualidad, dan un Seek entre 8 y 10 milisegundos. Los discos buenos, bajan este dato a 6, 5 o incluso 4 milisegundos (poquísimos fabricantes dan estos tiempos. En la actualidad únicamente Seagate con su disco Cheetah). Aquí, en combinación con la velocidad de rotación, es donde verdaderamente se ven las prestaciones de un disco.

No debemos llevarnos a engaño, la velocidad de transferencia a través del bus (ATA 66, 33, etc…) nunca, o casi nunca, en un cuello de botella.

Únicamente puede ser cuello de botella la velocidad de transmisión del bus, en el caso de lectura secuencial de un archivo. En este caso, una vez que la cabeza se ha posicionado, lee secuencialmente, y por tanto, sin movimiento de translación los datos. Por tanto, en este caso, únicamente influye la velocidad de rotación. Si la velocidad de rotación es capaz de suministrar datos a mayor velocidad de lo que el bus puede transmitirlos, evidentemente estaremos perdiendo prestaciones del disco. En la actualidad, a 7200 revoluciones, un disco de alta densidad (30 gigas), está en el límite de ATA 33. Es decir, en lectura secuencial es capaz la mecánica de leer unos 35 megas por segundo. Por tanto, si este disco estuviese funcionando en una controladora ATA 33 normal, únicamente perderíamos unos 2 megas por segundo.

Si tuviésemos más de un disco, y ambos estuviesen leyéndose “simultáneamente” y en ambos, la lectura fuese secuencial (totalmente improbable tal y como veremos a continuación), únicamente en este caso y para no saturar el bus, es cuando sería necesaria una controladora ATA 66.

Las ATA 100 carecen de sentido en la actualidad hasta que los discos no alcancen mayor densidad de grabación, o mayor velocidad de giro.

Tiene más sentido en la actualidad los discos SCSI de velocidades de 160 MB/seg. Aunque estás velocidades, y por el mismo razonamiento anterior, no son alcanzables, recordemos que las controladoras SCSI llevan hasta 15 dispositivos. Por tanto, si que pueden existir cuellos de botella en la transmisión del bus, si este no tiene velocidades altas como por ejemplo 160 o las últimas a 320 MB/seg.
 

Dimension-X

Nuevo Miembro
Miembro
#9
FUNCIONAMIENTO REAL

¿Cómo se lee un fichero?. Esta es la pregunta importante para entender el funcionamiento de un disco.

Vamos a estudiarlo en el sistema de archivos más simple que hay: el sistema FAT o FAT 32. Introduciremos un poco posteriormente el funcionamiento en el sistema NTFS.

Vamos a ceñirnos a un caso típico de un disco de 8 GB, formateado en FAT32. Recordemos que la estructura de un disco en FAT 32, consta de un directorio principal de tamaño fijo, por tanto limitado a un número máximo de archivos ya que un directorio o carpeta no es nada mas que un archivo.

Igualmente consta de dos tablas llamadas tablas FAT. Cada tabla, consta en el ejemplo de un disco de 8GB, en 1.048.000 elementos cada uno de 4 Bytes (FAT 32). Cada elemento de esta tabla referencia a un ‘cluster’ (agrupación de sectores) del disco. En un disco de 8GB, cada ‘cluster’ es de 8192 bytes (es decir, de 16 sectores de 512 bytes).

Estas cifras pueden verse en el caso real de nuestro disco, si ejecutamos el comando: chkdsk.

¿Qué hemos querido decir con las cifras anteriores?. Bien, pues que el primer elemento de esa tabla de 1.048.000 elementos, ¡apunta¡ (o referencia) al primer cluster de datos, el segundo elemento, al segundo cluster de datos, y así sucesivamente. Evidentemente hay unos elementos reservados al principio de dicha tabla para referencias a los cluster ocupador por el directorio raiz del disco.

Imaginemos que definimos, que si un elemento de la tabal, contiene en binario una determinada marca (por ejemplo, el hexadecimal x’FFFFFFFF’, es decir, todo a ‘unos’ binarios), esto indica al sistema operativo que ese cluster del disco está libre.

Veamos ahora como se guarda un archivo:

1) El sistema operativo calcula cuantos cluster va a ocupar. Para ello, divide el tamaño del archivo entre el tamaño del cluster, y al dato obtenido le redondea a la unidad superior.

Por ejemplo, si tenemos un archivo de 20.000 bytes, en nuestro ejemplo el cálculo realizado es 20000 / 8192 = 2,4414. Redondeado a la unidad superior es un 3. Por tanto nuestro archivo va a ocupar tres cluster en el disco.

2) Una vez calculados el número de cluster a ocupar, el sistema operativo, lee la FAT, buscando un cluster libre. Es decir, lee cada elemento de la FAT hasta que encuentra la ‘marca’ x’FFFFFFFF’ citada anteriormente. Imaginemos que lo encuentra en el elemento 537 de la FAT. Esto le indica que el ‘cluster’ 537 del disco está libre.

3) En ese cluster graba los primeros 8192 bytes del fichero, y marca el elemento 537 de la FAT con un cero (en binario).

4) Como le queda todavía datos a grabar, vuelve a leer la FAT para localizar otro elemento con la marca x’FFFFFFFF’. Imaginemos que es el elemento numero 612. Por tanto, le indica que el cluster 612 del disco está libre. Ahora vá a ese cluster, y graba los siguiente 8192 bytes del fichero.

Igualmente ahora, va a la FAT, y en 612, graba un cero. Hasta aquí, todo es igual que cuando ha grabado el primer cluster del fichero. Pero en este caso, además de lo anterior, el sistema ‘recuerda’ cual es el elemento de la FAT ultimo grabado (el 537), y en ese elemento, le pone ahora el número 612 (del cluster actual).

5) Queda todavía por grabar un cluster. Bien, volvemos a repetir los cálculos: se vuelve a leer la FAT para localizar otro cluster libre (x’FFFFFFFF’). Imaginemos que es el elemento 1020.

6) En ese cluster graba por fin los últimos 8192 bytes del fichero, y marca el elemento 1020 de la FAT con un cero (en binario). Ahora va al elemento anterior (el 612) y allí graba el número 1020.

7) Por ultimo, guarda en el directorio raiz del disco el nombre de archivo, y además allí se guarda la fecha, el tamaño, y lo que es más importante: el número del primer elemento de la FAT que apunta al fichero guardado, es decir: 537.

Bien, después de toda esta historia, veamos como está ahora nuestro fichero en disco:

A nivel del directorio principal, tenemos su nombre, y un número mágico: 537. Esto indica que el archivo empieza en el cluster 537. Igualmente, el elemento de la FAT 537, contiene el segundo número mágico: 612. Esto indica que el siguiente cluster del archivo es el cluster numero 612. Y además, el elemento de la FAT 612, contiene el siguiente número mágico: 1020. Esto indica que el tercer cluster del fichero está en el cluster 1020. Y precisamente, el elemento 1020 de la FAT, si repasamos la secuencia anterior de grabación, vemos que contiene un cero: esto indica que ya no queda nada más que hacer. Es decir, acabamos de leer los tres cluster del disco que contienen los datos de nuestro fichero.

Sencillo ¿no?......

Lo anterior, nos debe hacer meditar en un tema muy importante. Cualquier cosa que hagamos para ller o grabar un fichero, en principio implica un montón de lecturas en el disco. Además como la FAT está al principio del disco, esto implicará que la cabeza lectora, tiene que pegar muchos saltos entre la FAT y el cluster de datos a leer para ir trayéndose poco a poco los datos a memoria. Y estos “saltos” de la cabeza, son saltos muy ‘caros’ en tiempos de proceso.

Es verdad que los sistemas operativos, intentan tener la FAT en memoria para ahorrar accesos a disco. Pero en nuestro caso, la FAT es de 1.048.000 elementos de 4 bytes, es decir, la FAT ocupa 4 Megas. Como hay dos FAT y el sistema cuando grabamos un archivo, utiliza las dos por motivos de seguridad (es decir, una de ellas, es backup de la otra), serían en total 8 Megas de memoria principal de nuestra maquína, utilizados únicamente para tener la FAT y por tanto ahorrar accesos a disco. Pensemos también, que en el caso de estar grabando un fichero, una vez modificada la FAT en memoria, el sistema la intentará grabar en disco rápidamente, ya que si se pierde la actualización de la FAT, es como si hubiésemos perdido el fichero.

Este consumo de memoria por intentar realizar los accesos lo más rápido posible, empieza a poder ser molesto cuando tenemos muchos discos o particiones. En mi caso, por ejemplo, tengo 12 discos (grandes, de hasta 75 GB) y las particiones necesarias hasta ocupar la letra Z:. Por tanto, el consumo de memoria real que el sistema operativo intenta tener para ahorrar los accesos a disco, aumenta de una manera brutal.

Por ello, cuantos mas discos o particiones tengamos y estemos trabajando con ellos, indicará que debemos tener más memoria física para poder ejecutar programas, o el bien, el rendimiento de la máquina decaerá en gran medida.

Los archivos en particiones NTFS es un sistema de archivos especial que históricamente proviene del sistema de archivos nativo de la casa Digital. Recordemos que los desarrolladores de Digital, son los únicos desarrolladores en el mundo que tienen derecho a “sus” patentes de desarrollo. Por tanto, si un empleado de Digital se va de la Empresa, se va también con el derecho a usar sus conocimientos y sus patentes en otro sitio. Recordemos que para el desarrollo del primer NT, Billy Gates consiguió que unos de los ingenieros de Digital, dejase su empresa y fichase por Microsoft.

Este sistema de archivos, mucho más robusto que el sistema FAT y que además permite definir ACL (listas de control de acceso, para seguridad), está basado en i-nodos y se sale del alcance del presente documento.
 
Estado
Cerrado para nuevas respuestas