next up previous contents index
Next: Detalhes da versão intermediária Up: Detalhes na utilização do Previous: Detalhes na utilização do

Detalhes da versão simples

O gerenciador de arquivos da versão simples oferece ao usuário a capacidade de criar, editar e apagar arquivos no disco. Para esta versão, foi criado um sistema de arquivos próprio do BananaKernel (BNNK_FS), comportando uma estrutura simples de arquivos. Antes que um dispositivo seja utilizado pelo BNNK_FS, ele deve ser formatado. Isto pode ser feito com a função bnnk_fs_format()  que o BananaKernel oferece (apenas na versão simples). Depois de formatado, as outras funções podem ser utilizadas para gerenciamento de arquivos (bnnk_open , bnnk_read , bnnk_write , bnnk_close ).

Observação Importante:
Como padrão, o BNNK_FS utiliza como dispositivo de disco o primeiro disco IDE encontrado no computador ("hda" no Linux ). Quando formatado com o BNNK_FS, qualquer sistema de arquivos já existente (seja NTFS , ext2fs ou VFAT ) será completamente perdido e se tornará irrecuperável. Por este motivo, recomenda-se que o BNNK_FS, versão simples, seja utilizado apenas dentro do emulador Bochs , onde apenas as imagens de disco são modificadas.
Quando um dispositivo é formatado com o BNNK_FS, uma tabela de alocação de arquivos é criada no início do dispositivo. Esta tabela é apenas um conjunto sequencial de estruturas BNNK_arquivo (definição encontrada no arquivo fs.h). Por definição, o número de estruturas contidas nesta tabela limita-se a 1000 (podendo ser modificado a vontade pelo aluno desenvolvedor). O tamanho desta tabela de alocação, portanto, pode ser calculada como sendo:

\begin{displaymath}
Numero\_Maximo\_De\_Arquivos * Tamanho\_Da\_Estrutura\_BNNK\_arquivo\end{displaymath}

Uma estrutura BNNK_arquivo contém definições, como o nome do arquivo, sua posição física no dispositivo (na área de dados) e seu tamanho. Depois da tabela de alocação de arquivos, começa o espaço destinado aos dados dos arquivos. A figura Estrutura do Sistema de Arquivos ajuda a entender essas estruturas no disco.


 
Figura: Estrutura do Sistema de Arquivos 
\begin{figure}
\begin{center}
\includegraphics [width=1.0\textwidth]{Drawing-BNNK-FS.eps}\end{center}\end{figure}

Novos arquivos são criados do início ao fim da tabela (do Início do disco até Alfa) e seus dados são escritos do início ao fim da área de dados (de Alfa até Omega). Uma vez criado, um arquivo não pode ter seu tamanho ou sua posição modificados. Quando um arquivo é apagado, seu lugar na tabela de alocação volta para o sistema operacional, mas o espaço que ele ocupava na área de dados do dispositivo não. Esta versão do BNNK_FS mantém apenas um ponteiro para a última posição do último arquivo criado no dispositivo, e não faz nenhum gerenciamento do espaço livre.


next up previous contents index
Next: Detalhes da versão intermediária Up: Detalhes na utilização do Previous: Detalhes na utilização do
rafael@safecore.net