SISTEMAS DE ARQUIVOS
Monografias: SISTEMAS DE ARQUIVOS. Pesquise 861.000+ trabalhos acadêmicosPor: cacocwb1980 • 19/9/2013 • 6.339 Palavras (26 Páginas) • 608 Visualizações
INTRODUÇÃO
A localização de cada arquivo de um disco pode ser encontrada através da pesquisa do diretório do disco, função a qual é executada pelo sistema de arquivos. No decorrer deste documento serão apresentadas visões de autores diferentes sobre Sistemas de arquivos: EXT, EXT2, EXT3, EXT4, HSF, HSF+ e HSFX com suas principais características.
SISTEMAS DE ARQUIVOS
O sistema de arquivos executa a tarefa de pesquisar o diretório de disco para encontrar a localização de cada arquivo de um disco.
EXT SEGUNDO LSD.IC.UNICAMP
Inicialmente, Linus Torvalds adaptou o sistema de arquivos do MINIX, de Andrew Tanembaum, para o Linux. Porém, por possuir várias limitações, como tamanho limite para o nome do arquivo (14 caracteres) e para o tamanho de um arquivo ou uma partição (64 MB), acabou sendo substituído pelo Ext2, desenvolvido em 1993 por Rémy Card. (lsd.ic.unicamp.br/mc514/sites/default/files/proj.mc514.pdf)
EXT2 SEGUNDO LSD.IC.UNICAMP
O 2nd Extended File System, Ext2, foi projetado para corrigir as deficiências de seu antecessor, que era simplismente uma adaptação de outro sistema de arquivos, e procurou seguir a semântica do UNIX.
MELHORAS EM RELAÇÃO AO EXT:
1. O tamanho limite para o nome de um arquivo foi aumentado para 255 caracteres;
2. O tamanho máximo de um arquivo passa de 64MB para uma faixa entre 16GB e 2TB (o tamanho varia de acordo com o tamanho dos blocos, que é variável);
3. O tamanho máximo de uma partição passa a ser entre 2 e 32 TB.
BLOCO
É a menor unidade de alocação do Ext2. Constitui vários setores (cada um possui 512 bytes) e pode ter tamanho de 1, 2 ou até 4KB.
SUPER-BLOCO
É a estrutura básica do Ext2. Ocupa 1024 bytes e inicia no terceiro setor da partição pois os primeiros 1024 bytes de cada partição são sempre reservados para o boot.
O quadro a seguir mostra todos os atributos existentes no super-bloco: alocado.
I-NODES
Um arquivo é descrito por um i-node. O i-node é uma estrutura de dados com tamanho padrão de 128 bytes(o tamanho é definido na formatação).
A tabela seguinte mostra seus atributos:
GRUPOS DE BLOCOS
Cada partição é dividida em grupos de blocos de mesmo tamanho. Com um tamanho de bloco de 4 KB, um grupo contém 32768 blocos.
Cada grupo de blocos possui uma tabela de descritores que endereçam os mapas de bits dos blocos e dos i-nodes e a tabela de i-nodes. O primeiro grupo contém o superbloco, que possui cópia em alguns outros grupos. No mapa de bits de blocos, cada byte mapeia 8 blocos (um por bit). O bit menos significativo identifica o bloco de menor número. O mapa de bits de i-nodes é análogo.
Os grupos de blocos são representados pela seguinte estrutura:
MAPA DE BITS DE BLOCOS
Em cada grupo de blocos, um bloco é alocado para indicar se os restantes estão ocupados ou livres. Quando o bloco possui tamanho 4 KB, é possível mostrar 32768 blocos (4096 * 8). Se está alocado, é marcado com o bit '1', e caso contrário, com o bit '0'.
MAPA DE I-NODES
De forma análoga ao mapa de bits de blocos, um bloco é utilizado para indicar a alocação dos i-nodes. Geralmente o bloco não é totalmente utilizado pois o número de i-nodes é menor que o número de blocos.
TABELA DE I-NODES
A tabela de i-nodes é formada por blocos consecutivos após os mapas de bits.
Cada entrada na tabela é um i-node. Portanto, para um bloco de tamanho 4 KB, é possível conter até 32 i-nodes.
ALOCAÇÃO DE BLOCOS
Quando é feita a operação de escrita em um arquivo, o Ext2 tenta sempre que possível alocar blocos de dados no mesmo grupo de blocos que contém o i-node.
Este comportamento reduz o movimento da cabeça de leitura-gravação da unidade de disco.
Em um sistema de arquivos podemos encontrar dois tipos de fragmentação: A fragmentação interna, que ocorre quando o tamanho do arquivo não é múltiplo do tamanho do bloco, ocorrendo uma perda de espaço no último bloco; fragmentação externa, que ocorre quando o arquivo possui blocos alocados não contiguamente, prejudicando seu desempenho.
Para a fragmentação interna, a solução é diminuir o tamanho padrão do bloco.
Porém, ao fazermos isto, possuiremos um número maior de blocos para serem gerenciados, prejudicando o desempenho. Outra solução é aplicar o tail packing, ou seja, utilizar fragmentos de vários arquivos, menores que um bloco, em um bloco só. Porém, o Ext2 não implementa esta funcionalidade.
Para a fragmentação externa, o Ext2 reserva até 8 blocos quando um arquivo é aberto para gravação. Esses blocos reservados, quando possível, são adjacentes ao último bloco utilizado pelo arquivo.
(lsd.ic.unicamp.br/mc514/sites/default/files/proj.mc514.pdf)
EXT3 SEGUNDO LSD.IC.UNICAMP
O Ext3 (ou third extended filesystem) é baseado em journaling, que é comumente usado pelo kernel do Linux. Sua maior vantagem sobre o antigo Ext2 é justamente o uso dojournaling, que aumenta a confiabilidade e elimina a necessidade de checar o sistema de arquivos depois de um desligamento
...