]> git.llucax.com Git - z.facultad/75.06/emufs.git/blobdiff - doc/informe.lyx
* Me preparo para otro tamaño de bloque
[z.facultad/75.06/emufs.git] / doc / informe.lyx
index 5b08ea9143f46b8be2802cabb45f6c678c43cd2e..ab091fa943ab90d69da1e1485f81b755c8056c6c 100644 (file)
@@ -52,6 +52,44 @@ Esta es la documentaci
  De la correcta elección de la organización, dependerá la eficiencia de
  la aplicación que la utilice.
  
+\layout Standard
+
+EMUFS se presenta como un 
+\emph on 
+emulador
+\emph default 
+ de un 
+\emph on 
+filesystem
+\emph default 
+, capaz de administrar datos almacenados en cualquiera de las tres organizacione
+s de archivo previamente mencionadas, las cuales a saberse son:
+\layout Enumerate
+
+Registros de Longitud Variable, Bloques de tamaño parametrizable
+\layout Enumerate
+
+Registros de Longitud Variable, Sin Bloques
+\layout Enumerate
+
+Registros de Longitud Fija, Bloques de tamaño parametrizables
+\layout Standard
+
+A través de este trabajo, se podrán observar las diferencias entre distintos
+ tipos de organización de archivos, ventajas y desventajas de cada una de
+ ellas, y las situaciones particulares que deberá sortear un filesystem,
+ como la partición de registros en distintos bloques, manejo de espacio
+ libre, compactación de un archivo, etc.
+\layout Standard
+
+A continuación, veremos que el manejo de los archivos en EMUFS se realiza
+ a través de una estructura de control comun para cualquier tipo de archivo,
+ dandole flexibilidad y escalabilidad a nuestro sistema.
+\layout Standard
+
+Hacia el final de esta presentación, se observaran las pruebas realizadas
+ con las distintas organizaciones de archivos, y las conclusiones obtenidos
+ al respecto.
 \layout Chapter
 
 Estructura común
@@ -697,13 +735,7 @@ Esto har
 articulos.dat
 \series default 
 , con la organización física tipo 3 con registros de longitud fija de 50
- bytes y bloques de 200 bytes (si el archivo ya existiaera, puede ser abierto
- con la función 
-\family typewriter 
-emufs_abrir()
-\family default 
-, pasando como parámetro sólo el nombre de archivo, la función autodetecta
- el tipo de archivo y sus datos adicionales).
+ bytes y bloques de 200 bytes.
  Al mismo tiempo, los se asginarán valores a los punteros a funciones que
  posee dicha estructura, la cual de ahora en más estará en condiciones de
  manejar un archivo del tipo 3.
@@ -714,7 +746,7 @@ emufs_abrir()
 \begin_inset Float figure
 placement H
 wide false
-collapsed false
+collapsed true
 
 \layout Caption
 
@@ -738,7 +770,7 @@ As
  sucedera lo siguiente:
 \layout LyX-Code
 
-efs->leer_registro(params) -- llama a -->  emufs_tipo3_leer_registro(params)
+efs->leer_registro(params) -- calls -->  emufs_tipo3_leer_registro(params)
 \layout Standard
 
 Como se puede observar, la estructura 
@@ -748,12 +780,6 @@ EMUFS
  permitirá el manejo de cualquier tipo de archivo, a través del mismo código,
  dandole gran flexibilidad a nuestro sistema, que podrá expandirse a más
  tipos de archivos de ser necesario.
-\layout Standard
-
-Finalmente hay otra función estática que sirve para destruir la estructura,
- liberando su memoria: 
-\family typewriter 
-emufs_destruir()
 \layout Chapter
 
 Archivos Auxiliares
@@ -2283,6 +2309,9 @@ Esta implementaci
 Ver:
 \family typewriter 
  emufs_tipo1_compactar()
+\layout Section
+
+Detalles de implementación (funciones internas, ver si lo ponemos o no)
 \layout Chapter
 
 
@@ -2357,7 +2386,7 @@ o freespace
 \begin_inset Float figure
 placement H
 wide false
-collapsed true
+collapsed false
 
 \layout Caption
 
@@ -3464,6 +3493,29 @@ Luego de grabar un registro, actualiza los archivos de 
  para mantener la coherencia.
 \layout Standard
 
+Cuando nos encontramos con registros multibloque, se calcula cuantos bloques
+ ocupará el registro de la siguiente manera: 
+\family typewriter 
+Cantidad de Bloques = 1 + Tamaño del Registro/(Tamaño del Bloque-Sizeof(EMUFS_RE
+G_ID)
+\layout Standard
+
+Esta ecuación solo falla en el caso que el tamaño del registro y el tamaño
+ del bloque sean iguales, en tal caso, se coloca el valor 1 en 
+\family typewriter 
+Cantidad de Bloques
+\family default 
+ post verificación.
+\layout Standard
+
+Y con esta información se realiza un ciclo 
+\family typewriter 
+for
+\family default 
+ que grabará tantas veces como sea necesario levantando y grabando los bloques
+ que correspondan.
+\layout Standard
+
 Ver: 
 \family typewriter 
 emufs_tipo3_grabar_registro()
@@ -3488,6 +3540,11 @@ Cabe destacar que para dar de baja un registro no hace falta borrarlo del
  ser así, si no se realizara el mismo.
 \layout Standard
 
+En el caso de los registros multibloque, se eliminará la porción del registro
+ contenida en el primer bloque y se actualizarán de manera conveniente los
+ archivos índice, para restaurarlos a un valor verdadero.
+\layout Standard
+
 Ver: 
 \family typewriter 
 emufs_tipo3_borrar_registro()