Resumo de prova: Sistema de arquivos Linux

0

Características:

No Linux há o suporte para diversos tipos de sistemas de arquivos, o primeiro a ser utilizado foi o sistema de arquivos do MINIX 1, seguido pelo EXT, e então pelo EXT2. Porem o Linux utiliza uma camada VFS (virtual file system – sistema de arquivos virtual). Quando o Linux é ligado, define-se quais sistemas de arquivos serão compilados com o núcleo e, caso necessário, outros sistemas são carregados como módulos.
Os arquivos no Linux são simples sequencias de 0 ou mais bytes contendo qualquer informação. Não há nenhuma distinção entre arquivos binários, arquivos ASCII ou quaisquer outros tipos de arquivos. O significado dos bits em um arquivo é de total conhecimento de seu proprietário, o sistema não se preocupa com isso. Os nomes dos arquivos são limitados a 255 caracteres, e todo os caracteres ASCII, exceto NULL são permitidos nos nomes. O tamanho das extensões é livre e os arquivos podem ter varias extensões. Os arquivos podem ser agrupados em diretórios por questões de conveniência. Os diretórios são armazenados como arquivos e em grade parte são passiveis de serem tratados como arquivos. Eles podem ser hierárquicos. O diretório-raiz é chamado / e geralmente contem vários subdiretórios. O caractere / também é usado para separar nomes de diretórios.

Há duas maneiras de especificar os nomes de arquivos no Linux. A primeira consiste em usar o caminho absoluto, ou seja, o caminho a partir do diretório-raiz, já a segunda usa o caminho relativo, ou seja, o caminho do arquivo em relação ao diretório de trabalho. Para facilitar o acesso a determinado arquivo existe a possibilidade de criar links entre arquivos.

Além de arquivos regulares, o Linux também da suporte aos arquivos especiais de caracteres e de blocos. Os arquivos de caracteres são usados para modelar os dispositivos de E/S seriais, como os teclados e as impressoras. Já os de blocos podem ser usados para a escrita e leitura em modo bruto sem considerar o sistema de arquivos.

No Linux também existe o travamento (locking), que serve para solucionar o problema das condições de corrida.

 

Chamadas de sistemas de arquivos:

Existem diversas chamadas de sistema relacionadas a arquivos e aos sistemas de arquivos. As mais utilizadas são as chamadas de sistemas para a criação, leitura e escrita de arquivos.

 

Implementação do sistema de arquivos do Linux:

O VFS esconde dos processos e aplicações de alto nível as diferenças entre os muitos tipos de sistemas de arquivos que o Linux suporta, independentemente de estarem em dispositivos locais ou estarem armazenados remotamente. Dispositivos e outros arquivos especiais também são acessados via camada VFS.

O VFS define um conjunto de abstrações básicas do sistema de arquivos e as operações que são permitidas nessas abstrações. As quatro principais estruturas de sistemas de arquivos suportada pelo VFS são: O superbloco, que contem informações criticas sobre a organização do sistema de arquivos, a estrutura dentry que representa uma entrada de diretório, o i-node (abreviação de index-node) que descreve exatamente um arquivo (Obs. no Linux, os diretórios e dispositivos também são representados por arquivos, logo terão i-nodes a eles correspondentes) e a estrutura de dados arquivo que é uma representação na memoria de um arquivo aberto e é criada em resposta à chamada de sistema open.

O sistema de arquivos real, implementado a baixo do VFS, não precisa utilizar exatamente as mesmas abstrações e operações internamente. Entretanto eles devem implementar operações de sistema semanticamente semelhantes

Share.

About Author

Leave A Reply