Consejos sobre el uso de sistemas de archivos

El sistema de archivos (acrónimo FS) se refiere al mecanismo por el cual los archivos se ubican y organizan en los dispositivos utilizados para el almacenamiento de datos. Nuestros sistemas SlimLine basado en procesadores ARM /Cortex tienen por defecto un dispositivo de almacenamiento de memoria FLASH organizado como un disco “C:” accesible en lectura / escritura. Según el modelo del módulo, es posible agregar dispositivos de almacenamiento adicionales en la tarjeta SD para insertarlos directamente en el sistema como se describe arriba este módulo de CPU identificado como un disco “D:” o en Adaptador USB para otros módulos de CPU identificados como disco “F:”.

Estructura del sistema de archivos

El dispositivo de almacenamiento se administra en sectores, cada sector de los dispositivos que usamos tiene un tamaño de 512 bytes, el sistema de archivos administra el disco con una estructura FAT 32, así es como se organizan los datos en el disco.

Representación FAT
  • Boot sector: El primer sector del dispositivo contiene información sobre la unidad y el sistema de archivos implementado.
  • File Allocation Table (FAT): Matriz de sectores en los que se registran todas las concatenaciones de clúster necesarias para reconstruir los archivos.
  • Data region: Matriz de sectores divididos en clústeres que contienen los datos de los directorios o archivos.
Uso de discos extraíbles para transferir datos desde / hacia la PC

Estas son las reglas a seguir para usar un disco extraíble (SDCard o PenDrive) tanto en un sistema SlimLine que en una PC. Esto puede resultar útil para transferir datos entre los dos sistemas.

  • Los discos extraíbles (SDCard o PenDrive) solo se pueden utilizar con el sistema apagado.
  • Antes de apagar el sistema, debes asegurarte de que todos los archivos estén cerrados, por lo tanto no debes tener operaciones FTP activas y las operaciones de escritura desde el programa LogicLab deben haber finalizado con la ejecución de la función Sysfclose. El sistema de archivos del sistema SlimLine para salvaguardar la pérdida de datos, proporciona una transacción en la memoria FRAM, en caso de apagado durante el acceso, la transacción se restaurará automáticamente en el próximo encendido, pero si se reemplaza el disco, el sistema actualizará el nuevo, haciendo está sucio
  • El disco debe estar formateado FAT_32 usando solo nombres en formato de 8 + 3 mayúsculas para archivos y directorios y los nombres pueden tener solo un "." dentro de ellos. Si formatea FAT_32_ELS y SlimLine crea archivos en mayúsculas o minúsculas en el estilo 8 + 3, la PC No puedes ingresar. Si se crea un archivo desde la PC, independientemente de si tiene el nombre completo y el estilo 8 + 3, SlimLine No puedes ingresar.

Uso nombres largos

¿Cómo es que al formatear como FAT_32 que permite nombres largos en mayúsculas o minúsculas, lo SlimLine no lo permite?

  • Los nombres largos en mayúsculas y minúsculas se almacenan en múltiples entradas de la FAT y esto podría generar un problema en la gestión de un posible corte de energía mientras se trabaja en estos archivos.
  • Los nombres de archivo están en UNICODE, la firma del SlimLine no lo admite.

Vida del disco

El disco C: La interna utiliza una memoria NOR Flash con una retención mínima de datos de 20 años, cada sector (512 Bytes) tiene un número mínimo de 100.000 ciclos de escritura. Cuando se utiliza como disco, es necesario tener en cuenta el número de escrituras en cada sector para evitar destruir la memoria..

Se han implementado las versiones PCK051C000 y PCK054B000. Wear leveling, nivelación de desgaste, que distribuye los datos de manera uniforme en todos los sectores del disco.

  • La actualización del sistema operativo no activa la nivelación de desgaste mientras mantiene la accesibilidad al disco. para habilitarlo guarde los archivos en el disco y formatee el disco con el comando Format C: luego copie los archivos previamente guardados.
  • Al degradar, si el disco está formateado con nivelación de desgaste, guarde los archivos en el disco y formatéelo con el comando Format C: FAT_32_ELS. Luego baje la versión y copie los archivos guardados anteriormente.
Cálculo de la vida útil del disco

Para calcular la vida de un sector del disco, siga la fórmula: Tiempo de vida (h)=Tiempo de escritura (s)*27.78

Suponiendo que siempre escribimos el mismo sector cada minuto tendremos: 60*27.78=1666 (H) (69 días). En realidad en el disco operamos con archivos que ocupan múltiples sectores, por lo que si escribiéramos cada minuto en un archivo de 50KBytes el tiempo de vida en días sería: 69*(50000/512)=6738 días (18 años).

Los tiempos reportados anteriormente se refieren a la escritura del Data region del disco, pero en la creación del archivo y en cada variación de su tamaño también está escrito en el FAT. Por lo tanto, para minimizar la escritura, lo mejor es crear el archivo del tamaño necesario para contener los datos y luego operar con comandos. Sysfseek moverse dentro de él sin cambiar su tamaño.

Formato de disco

El disco interno “C:” se suministra ya formateado y normalmente no tiene que ser formateado por el usuario, en su interior se encuentran los archivos de configuración del producto que en caso de formatear se perderían. En cambio, la operación de formateo se requiere en dispositivos de almacenamiento adicionales “D:” e “F:”, Os recuerdo que aunque son dispositivos extraíbles, al insertarlos en el sistema y formatearlos ya no se pueden eliminar. Para formatear use el comando Format dall 'intérprete de comandos, se pueden proporcionar parámetros adicionales al comando:

  • Drive: Identificación de la unidad a formatear, C: disco FLASH interno, D: Tarjeta SD en tarjeta, F: Tarjeta SD en adaptador USB
  • FAT Type: Especifica el formato de la tabla de asignación de archivos.
    FAT_32: Formato estándar, permite la lectura de SDCards formateadas en una PC, nombres de directorios / archivos solo en mayúsculas longitud 8 + 3.
    FAT_32_ELS: Formato personalizado, le permite definir nombres de directorios / archivos en letras mayúsculas y minúsculas, longitud total 14 caracteres.
    FAT_32_ELS_WL: Formato personalizado, como el anterior con nivelación de desgaste habilitada solo en el disco interno C:.
  • Cluster Size: Le permite definir el tamaño del clúster en bytes, el tamaño debe ser un múltiplo del tamaño del sector (512 bytes).
Ejemplos de formato

Format C: Formatee el disco interno en FAT_32_ELS eligiendo automáticamente el tamaño del clúster. Si el sistema operativo gestiona la nivelación de desgaste, se utiliza el formato FAT_32_ELS_WL.

Format D: Formatee la tarjeta SD integrada a FAT_32_ELS eligiendo automáticamente el tamaño del clúster

Format D: FAT_32 Formatee la tarjeta SD en la tarjeta en FAT_32 estableciendo el tamaño del clúster en 512 bytes (1 sector, valor mínimo)

Format D: FAT_32_ELS 512 Formatee la tarjeta SD en la tarjeta en FAT_32_ELS estableciendo el tamaño del clúster en 512 bytes (1 sector, valor mínimo)

Format F: FAT_32_ELS 2048 Formatee la tarjeta SD en el adaptador USB en FAT_32_ELS estableciendo el tamaño del clúster en 2048 bytes (4 sectores)

Formato de grupo

Si el tamaño del clúster no se indica en el comando de formato, el sistema establece automáticamente el valor apropiado según el tamaño de la tarjeta SD. En general, el formato debe elegirse en función de las siguientes evaluaciones.

Pequeño racimo

  • Pro: Optimice la ocupación del disco.
  • Versus: Aumenta el número de escrituras en sectores FAT reduciendo la vida del disco.
    Determina una velocidad de acceso al disco más lenta.

Clúster grande

  • Pro: Reduce escrituras en sectores FAT al extender la vida útil del disco.
    Mayor velocidad de acceso al disco.
  • Contro: Desperdicio de memoria para cada archivo (tamaño medio del clúster 1/2).
    Aumenta el tiempo para crear directorios en el disco.

Ideas

  1. Es preferible utilizar discos externos como alternativa al disco FLASH interno “C”.
  2. Utilice preferiblemente archivos de hasta 640 KBytes de tamaño.
  3. Para acelerar el acceso al disco sin penalizar el tiempo de ejecución de la tarea de retroceso, limite el número de archivos y directorios.
  4. Para aumentar la "vida" del disco, si es posible, use archivos de tamaño fijo actualizando los datos en su interior (según lo administra el FB FIFOFile).
  5. Si está utilizando el disco para guardar archivos de registro transferidos a través de FTP a otros sistemas, elimine el archivo después de la transferencia y vuelva a crearlo, en lugar de volver a escribirlo.
Errores de acceso al disco

Ver el registro del sistema, comando SysLog o analizando el archivo Logs.txt en la carpeta System, puede ver los errores de acceso al disco, estos son los más comunes.

  • 3380, Not enough cluster vs required: Se intentó acceder a una ubicación más grande que el tamaño del disco. Suele ocurrir cuando el disco está lleno o cuando Sysfseek a una posición mayor que el tamaño del disco.
¿Le resultó útil este artículo?