Implementação de uma visão lógica de X
Resenha: Implementação de uma visão lógica de X. Pesquise 862.000+ trabalhos acadêmicosPor: nayachacra123 • 12/4/2014 • Resenha • 593 Palavras (3 Páginas) • 265 Visualizações
Visão Lógica X Implementação
O que é um arquivo ?
• O usuário enxerga uma coleção de dados;
• O sistema enxerga trilhas, setores e cilindros.
Alocação de Espaço em Disco
Gerência de espaço em disco se parece com o que ?
• Gerência de memória, claro.
Só que aqui a otimizar o espaço utilizado é mais importante do que otimizar o tempo de acesso.
Três métodos básicos existem:
• Alocação contígua;
• Alocação encadeada;
• Alocação indexada;
Alocação Contígua
Same old, same old stuff...
Vantagens:
• Simples de implementar e fácil de acessar o arquivo;
• Rápido acesso;
Desvantagens:
• Fragmentação; como aumentar um arquivo ?
Solução:
• Defrag/Compactação. Pode ser usado aqui porque o tempo não é tão crítico. Mas mesmo assim atrapalha.
Não é muito usado.
Alocação Encadeada
O arquivo passa a ser uma lista encadeada de blocos:
Exemplo: Pick System -- lista duplamente encadeada
• Vantagens ?
• Desvantagens ?
Alocação Encadeada
Vantagens:
• Sem fragmentação;
• Simples de aumentar um arquivo, assim como criar e apagar;
Desvantagens:
• E acessos não sequenciais ?
• Confiabilidade. E se um link se perder ?
o No sistema Pick isto se chamava GFE -- Group Format Error.
o Se ao chegar no trabalho pela manha houvesse um GFE na tela podia-se saber que o dia inteiro estava perdido em uma caçada de links...
Alocação Encadeada -- FAT
E se a gente guardar a lista encadeada separada ?
Vantagens:
o Diminui a probabilidade de erros
Desvantagens:
o É preciso cache a FAT -- eficiência;
o Usado no DOS, causa má impressão.
Alocação Indexada
E se a lista encadeada for ``compactada'' ?
Diferenças:
o Uma FAT para todos os arquivos;
o Um índice por arquivo.
Acesso é mais eficiente que FAT ? Direto ou sequencial ?
Alocação Indexada
Problema: Usa-se ao menos um índice inteiro, mesmo que o arquivo use só um bloco.
Qual o tamanho ideal de índice ?
• Muito grande, desperdicio;
• Muito pequeno, não cabe arquivos grandes.
• Mas na verdade o tamanho ideal é um bloco de disco.
E ai ?
Alocação Indexada
Solução:
• Usar uma lista encadeada de índices.
Uma FAT de índices ? IAT ?
• Índices multiníveis: usar índices de índices.
• Solução BSD Unix (misto):
o Os primeiros blocos são guardados em um índice direto;
o Se o arquivo não couber, cria-se um índice para índices -- 1 nível de indireção;
o Se ainda não couber, cria-se um índice para índice de índices -- 2 níveis de indireção;
o Até três níveis existem.
...