Bandhav Veluri, farzamgl e taylor-bsg enviaram o primeiro de dois patches que adiciona suporte ao LittleFS (LFS. Não confunda LFS aqui deste texto com LFS do Linux From Scratch), um sistema de arquivos do sistema operacional Mbed OS (um sistema operacional projetado pela ARM especialmente para IoT) que é leve, fail-safe e projetado para microcontroladores. O LittleFS garante melhor integridade de dados em embarcados, em flashdrives e também possui suporte a sistema de arquivos baseado em DRAM (DRAMFS, uma espécie de pseudo-BSP = Binary Space Partitioning).
O DRAMFS permite o suporte a sistema de arquivos sem qualquer suporte de I/O do hardware (que é útil para quem estiver desenvolvendo seus próprios núcleos de processador) ou também para sistemas no ar sem outro host gerenciando uma camada correção. Esse patch adiciona o LittleFS baseado na arquitetura ARM como um sub-módulo gerando a ferramenta dramfs_mklfs.
A ideia é implementar chamadas de systema de i/o de arquivo ao simplesmente traduzi-los para as chamadas de função do LFS, que em troca irá operar na memória ao invés de tentar utilizar emulação de I/O mais complexa como proxy kernels que empacotam chamadas I/O e embarcam para um host. Neste caso, o host não se torna mais um processo assíncrono e também elimina infraestrutura causada pelo mapeamento dessas chamadas de proxy-IO para diferentes incorporações do design (simuladores, VCS, FPGA, testboard, PCI-e e etc...).
Esse patch está sob a licença da University of Washington (uma espécie de cláusula 3 BSD). Por enquanto são implementadas poucas systemcalls a dramfs (sbrk, open, close, read, write, exit, lseek, stat e fstat) e, apesar de estas já serem suficiente para tratar de chamadas POSIX da newlib, outras serão implementadas ao longo do tempo. Para as que o LitteFS e DRAMFS não possuem suporte, um número de erro é retornado.
Nenhum comentário:
Postar um comentário
Viu algum erro e quer compartilhar seu conhecimento? então comente aí.
Observação: somente um membro deste blog pode postar um comentário.