<HTML> <HEAD> <TITLE>HDs grandes: mini-COMO: Geometría de los discos y particiones.</TITLE> </HEAD> <BODY> <A HREF="Discos-Grandes-Como-2.html">Anterior</A> <A HREF="Discos-Grandes-Como-4.html">Siguiente</A> <A HREF="Discos-Grandes-Como.html#toc3">Indice</A> <HR> <H2><A NAME="s3">3. Geometría de los discos y particiones.</A></H2> <P>Si tiene varios sistemas operativos en sus discos, cada uno puede estar utilizando una o varias particiones. El más mínimo desacuerdo en cuanto a dónde están dichas particiones puede acarrear catastróficas consecuencias. </P> <P>El MBR contiene una <I>tabla de particiones</I> describiendo donde están las particiones (primarias). Hay 4 entradas en dicha tabla, para 4 particiones primarias <SL>N del T: o para 3 primarias y 1 extendida</SL> , y cada una tiene el siguiente aspecto: </P> <P> <BLOCKQUOTE><CODE> <PRE> struct partition { char active; /* 0x80: arrancable, 0: no arrancable */ char begin[3]; /* CHS para el primer sector */ char type; char end[3]; /* CHS para el ultimo sector */ int start; /* numero de sector en 32 bit (contado desde 0) */ int length; /* numero de sectores 32 en bit */ }; </PRE> </CODE></BLOCKQUOTE> (donde CHS se refiere a Cilindros/Cabezas/Sectores).</P> <P>Por tanto, la información es redundante: la localización de la partición se da tanto por los campos de 24 bits <CODE>begin</CODE> y <CODE>end</CODE>, como por los campos de 32 bits <CODE>start</CODE> y <CODE>length</CODE>. </P> <P>Linux sólo usa los campos <CODE>start</CODE> y <CODE>length</CODE>, y puede por tanto manejar particiones no mayores de 2^32 sectores, o lo que es lo mismo, particiones de más de 2 TeraBytes. Lo cual es doscientas veces el tamaño de los discos disponibles actualmente, por lo que será suficiente para los próximos 10 años o así. </P> <P>Desafortunadamente, la llamada a la INT13 de la BIOS emplea los CHS codificados en tres bytes, con 10 bits para el número de cilindro, 8 para el número de cabeza, y 6 para el numero de sector de pista. </P> <P>Los números posibles de cilindro son 0-1023, de cabeza 0-255, y de sector de pista 1-63 (sí, los sectores de una pista se cuentan desde 1, no desde 0). Con esos 24 bits se puede acceder a 8455716864 bytes (7.875 GB), doscientas veces más de las capacidades de disco disponibles en 1983.</P> <P>Todavía más desafortunadamente, los interfaces IDE estándar permiten 256 sectores/pista, 65536 cilindros y 16 cabezas. Esto por sí mismo permite el acceso a 2^37 = 137438953472 bytes (128 GB), pero combinado con la restricción de la BIOS a 63 sectores y 1024 cilindros hace que sólo queden 528482304 bytes (504 MB) accesibles. </P> <P>Esto no es suficiente para los discos de hoy en día, por lo que la gente recurre a todo tipo de triquiñuelas, tanto vía <I>hardware</I> como <I>software</I>. </P> <HR> <A HREF="Discos-Grandes-Como-2.html">Anterior</A> <A HREF="Discos-Grandes-Como-4.html">Siguiente</A> <A HREF="Discos-Grandes-Como.html#toc3">Indice</A> </BODY> </HTML>