Visita la versión flash
Propuestas
Visita el perfil del autor
Hablan del blog

SOM30


"Cómo hacer un Sistema Operativo en 30 días"
3/08/2010 23:45

Particiones, directorios, ficheros y archivos

Comunicaciones de Red
A partir de hoy comenzamos a ver cosas de alto nivel. La división de las abstracciones en tres niveles (bajo, medio y alto) corresponden a cada uno de los tres Sistemas (SIM, SOM y SAM) que hay. Casi todos los aspectos que veremos estos últimos días corresponden al último, al Sistema de Aplicaciones; aunque es posible que ya los encontremos relativamente implementados a medio nivel, dentro del Sistema Operativo.

Comenzaremos con una cosa que, sorprendentemente en principio, debería haber sido tenida en cuenta hace mucho tiempo: cómo almacenar información de forma duradera. Hasta ahora casi siempre se trabaja en Memoria Principal (ubicada principalmente en el tercer sector del Espacio de Direcciones), pero en contadas ocasiones ya se mencionó la necesidad de cargar información persistente. Por eso, el concepto de los Paquetes, como el menor bloque de información almacenada en un componente, ya se presentó hace unos días.

Hoy entraremos en profundidad en cómo se organizan los paquetes en los discos. Por ahora sólo tenemos paquetes de 52 bits identificados cada uno por un entero y un mecanismo (controladora) estándar para recuperarlos.

La mayor división que se puede hacer de un disco es la partición. La partición tiene tipo (vendrá determinado por el valor del primer paquete, de 52 bits) y un formato (dependerá, en ocasiones, del tipo de partición) interno. Anteriormente, para la carga del kérnel, comenté algunos tipos, pero podríamos decir que existen tres tipos de particiones principales:
  • Partición básica (0x55.5555.5555.5555): Se trata de una partición sin formato. El tamaño está delimitado por sucesión de 1 hasta 0 a partir del segundo paquete. En los siguientes paquetes hasta alcanzar el último se encuentra información secuencialmente.
  • Partición de arranque (0xAA.AAAA.AAAA.AAAA): Es una partición igual que la básica, con la única diferencia de que se interpretará como de arranque. El tamaño está igualmente delimitado por sucesión de 1 hasta 0 a partir del segundo paquete. La información aparecerá sin formato secuencialmente.
  • Partición estándar (0x00.0000.0000.0000): Se trata de una partición con formato estandarizado. El tamaño está indicado como un número natural de precisión infinita según indica el estándar a partir del segundo paquete. Posteriormente, aparece información con un formato que procederé a explicar.
En el espacio que ofrecen los paquetes determinados por el tamaño de una partición estándar, nos encontraremos tres áreas orientadas a almacenar la información, a organizar los datos y a guardar el propio formato.

En la primera área, orientada a almacenar la información nos encontraremos con los archivos. Los archivos son conjuntos de paquetes con información binaria. Generalmente se encuentran agrupados en los archivadores, que son conjuntos de archivos pospuestos secuencialmente. Por norma general, los archivadores suelen incluir uno o más archivos de cabecera. Las cabeceras incluyen información sobre el contenido de los archivos del archivador.

La segunda área, orientada a organizar los datos, está formada por fichas. Existen dos tipos de fichas: los directorios y los ficheros. Los directorios son unas fichas que incluyen colecciones y enlaces a diferentes fichas dentro de la partición, formando un grafo. Varios directorios podrán apuntar a una misma ficha. Los ficheros son un tipo de ficha que está destinada a apuntar a los archivadores. Varios ficheros pueden apuntar a los mismos archivadores.

Por último, se encuentra la tercera área, orientada a guardar el propio formato de la partición. Su misión es incluir información acerca del estado e información general de la partición.

Como se puede apreciar, las particiones básicas y de arranque son muy útiles para pequeñas particiones (básicamente por el problema de usar la sucesión de 1 hasta 0 para determinar el tamaño) y, sobre todo, para incluir información de forma secuencial. Existen muchas más opciones para definir tipos de particiones, como por ejemplo, utilizar un número natural de precisión infinita para indicar el tamaño pero sin usar el formato estándar o, incluso, sin formatear presentando la información secuencialmente.

Para terminar, hay que recordar que todos estos conceptos se aplican indistintamente a cualquier tipo de disco: duros, ópticos, flexibles, o sólidos. También, como vimos en el propio arranque del kérnel, también es extensible a los discos blandos, aquellos discos que están servidos a través de la Red.

Comentarios

No hay comentarios todavía.

Deja tu comentario


Se enviará usando la Red Social @visitante
¿Quieres responder con otra cuenta de TuEntidad.es?
Usa MonoMola o LoTienes.

Búsqueda

Calendario

- Día 1
- Día 2
- Día 3
- Día 4
- Día 5
- Día 6
- Día 7
- Día 8
- Día 9
- Día 10
- Día 11
- Día 12
- Día 13
- Día 14
- Día 15
- Día 16
- Día 17
- Día 18
- Día 19
- Día 20
- Día 21
- Día 22
- Día 23
- Día 24
- Día 25
- Día 26
- Día 27
- Día 28
- Día 29

Código

- Sistemas Informáticos
- Compilador
- GAM
- GAE
- Kérnel
- LiSi
- ViSi
- SAM
Licencia LSW

Comentan

- Día 1 (16) 8/06 02:28
- Día 29 (19) 13/03 04:10
- Día 10 (18) 23/01 22:16
- Día 3 (9) 10/12 08:55
- Día 2 (19) 10/12 08:54
- Día 7 (4) 5/11 21:29
- Día 11 (44) 25/10 01:39
- Día 4 (3) 24/09 13:45
- Día 28 (2) 6/04 04:01
- Día 26 (1) 17/07 01:21
- Día 27 (4) 29/05 14:50
- Día 8 (9) 29/05 05:35
- Día 24 (2) 18/01 05:16
- Día 17 (5) 18/01 05:10
- Día 13 (7) 6/12 18:44
- Día 15 (1) 30/08 08:53
- Día 6 (2) 25/08 02:14
- Día 5 (4) 7/04 00:50
- Día 21 (6) 26/06 21:26
- Día 18 (2) 26/06 03:09
- Día 23 (2) 22/04 13:45
- Día 25 (1) 11/03 21:34
- Día 19 (3) 19/01 17:33
- Día 14 (2) 7/01 22:06

Valid HTML 4.01 Transitional