Hola :) El Martes, 12 de Diciembre de 2006 20:25, Carlos E. R. escribió: [...]
En los sistemas de ficheros con inodos (a ver si no me equivoco) cada nombre de fichero tiene asociado un espacio en disco llamado inodo, que me parece tiene un lugar físico fijo desde el formateo.
En reiserfs y XFS no se define durante el formateo. El número de i-nodos no es fijo, es modificable. En el caso de XFS se hace mediante allocation groups, si no me equivoco ... creo que ese es el nombre.
Aha.
No me ha dado tiempo a comprobar el nombre 0:) En cuanto lo confirme lo digo.
En ese inodo se listan consecutivamente todos los bloques del disco (bueno, partición) que se adjudican al fichero.
El número máximo de ficheros en la partición viene limitado por el número de inodos creados al formatear, y el tamaño de cada fichero por el tamaño de cada inodo.
En el caso de reiserfs y XFS no está limitado el número de ficheros, ni de i-nodos, puedes crear i-nodos "on-line". La idea de 1 i-nodo - 1 fichero sí es correcto. El tamaño del fichero no depende del i-nodo. El i-nodo es un bloque que contiene información sobre el fichero, pero no limita su tamaño. Es más, en el caso de reiserfs, si el fichero es lo suficientemente pequeño, puede ocupar el espacio que queda libre del bloque que contiene el i-nodo. Es decir, i-nodo y datos podrían estar en el mismo bloque en el disco.
A ver si desempolvo los apuntes porque hace tiempo que no me miro esto 0:)
Bueno, el inodo, al ser de tamaño fijo, si limita el tamaño de fichero en tanto en cuanto limita el número de bloques que se pueden listar. Es decir, tiene un tamaño, cada puntero a un bloque ocupa tanto, pues caben tantos punteros. Si cada bloque apuntado es de tal tamaño, pues da un tamaño máximo de fichero.
Si el inodo varía en tamaño, el razonamiento se va al garete.
Como digo, lo tengo que revisar porque hace mucho que no me leo nada de filesystems :(
Lo de los ficheros pequeños en el inodo del reiser si lo sabía, es una enorme ventaja. Aunque no se si reiser usa realmente inodos o es otra historia.
Hasta donde yo sé, sí son i-nodos, lo que pasa es que el tamaño del fichero tiene que ser nimio ... cosa que hoy en día no se cumple.
En fat un directorio es una especie de fichero que en realidad contiene una tabla de directorio, es decir, los nombres de los ficheros contenidos, su primer sector, tamaño, fecha y atributos.
En el caso de Unix, lo que contiene es el i-node_number y el file_name, lo demás lo guarda el i-nodo en sí.
¿Ah? Curioso. Pero eso hace más lento el trabajo de comandos como el ls, tiene que ir buscando por todo el disco esa información. Si se guarda en el directorio, listarlos es inmediato.
Sí, además, supone dos accesos a disco porque lo primero que tiene que hacer es acceder al i-nodo y luego al fichero ... pierdes rendimiento. Reiser intenta evitar esto escribiendo en el propio i-nodo, pero claro, el espacio es muy pequeño. Estuve leyendo hace un par de meses que se está teniendo esto en cuenta para los nuevos (o versiones nuevas) de los sistemas de ficheros.
Es que mi época de hacker (que no cracker) era con msdos. Estuve a punto de hacerme un desfragmentador de disco, pero no llegué a ponerme; y llegó el linux y pasé. El caso es que esas interioridades me las conocía bastante bien.
Además, es que aprender esas chuminadas era relativamente sencillo, porque no lo cambiaban de versión a versión, y si lo cambiaban, tenían que mantener el API antiguo. El problema era que tenías que comprar la documentación "seria" - y en el caso del windows esa documentación es enorme y cara.
No me lo puedo de creer, ¿caro? ;)
En cambio en linux no se cortan en cambiar las cosas - y lo tienen a gala. Es un concepto distinto.
A algunas empresas (tradicionales) esto no les hace gracia, quieren algo que no cambie para que sea más fácil desarrollar.
Había un manual de programación en Linux que venía con la distro (/usr/share/doc/Books) hace tiempo, y no lo habían terminado. Me sospecho que es que antes de que lo terminaran les cambiaron las interfaces... Es el lpg-0.4.pdf, año 95. ¿Hay alguna cosa equivalente moderna? Lo digo porque sigue viniendo con la distro, si no ponen otra cosa, es que no lo hay, ¿no? O SuSE/Novell no se ha molestado.
Ese manual en concreto no lo sé, pero hay unos muy chulos de desarrollo en general en Linux.
Lo del nombre largo se inventó despues, es un añadido - y que por cierto, está patentado y ganaron el pleito, por lo que se suponía que iban a quitar el soporte de nombres largos fat en linux, pero no lo han hecho. A ver si es eso una de las cosas por las que se les paga... no se en que quedó ese pleito concreto.
Es verdad !!! Hace mucho que no se oye nada de esto ... claro, entre lo de SCO y Novell-MS ... uno se olvida de otros temas.
Si, de eso no sabemos nada.
:( Rafa -- "Even paranoids have enemies." Rafa Grimán Systems Engineer Silicon Graphics Spain Santa Engracia, 120 - Planta Baja 28003 Madrid Spain Tel: +34 91 3984200 Tel: +34 91 3984201 Móvil: +34 628 117 940 http://www.sgi.com OpenWengo: rgriman Skype: rgriman --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org