Please enable JavaScript.
Coggle requires JavaScript to display documents.
Implementação do Sistema de Arquivos, Mapa Mental 11 SO 2025/1 Thalison…
Implementação do Sistema de Arquivos
Estrutura do Sistema de Arquivos
Problemas de Projeto
Aparência que o sistema de arquivos deve ter para o usuário
Mapeamento de arquivos lógicos para dispositivos fisicos
Camadas
Básico
Ler/Gravar blocos físicos; Buffers/caches
Lógico
Gerencia metadados e Proteção
Módulo de Org. de Arquivos
Traduz blocos lógicos para físicos
Controle de I/O
Drivers e interrupções
Exemplos
Windows
NTFS, FAT32, extFat
Linux
ext2/3/4, XFS, Btrfs
macOS
HFS Plus, APFS
Ópticos
ISO 9660, UDF
Implementação do Sistema de Arquivos
Estruturas em Discos
Bloco de controle de inicialização
Pode conter informações requeridas pelo sistema para inicializar o SO
Bloco de controle de volume
Contem detalhes do volume
Estrutura de Diretório
Usada para organizar arquivos
FCB
possui um número identificador exclusivo para permitir a associação a uma entrada do diretório.
Estruturas em memória
Tabela de montagens
Cache em memória
Tabela de arquivos abertos em todo sistema
Tabela de Arquivos abertos por processo
Buffers
Criação do arquivo
Sistema aloca FCB, atualiza diretório e grava disco
Abertura e fechamento de Arquivos
Open() verifica se arquivo já está aberto
Se sim, cria entrada por processo apontando para tabela de arquivos abertos em todo sistema
Ao fechar o arquivo, todas as operações descritas são desfeitas
Partições e montagem
pode conter várias partições e SOs (dual boot)
Partição raiz montada na inicialização
Sistemas de Arquivos Virtual (VFS)
Método óbvio
Escrever rotinas de diretório e de arquivo para cada tipo
Método melhor
Usar técnicas de OO para simplificar, organizar e modularizar a implementação
Separa operações genéricas do sistema de arquivos de sua implementação
Fornece um mecanismo para a representação exclusiva de um arquivo em toda a rede
Implementação de Diretórios
Lista Linear
Simples de programar, mas lento
Tabela de Dispersão (Tabela Hash)
Busca, inserção e exclusão mais rápidas
Precisa administrar colisões
Métodos de Alocação
Alocação contígua
Acesso simples e rápido
Se precisar armazenar um arquivo que ocupa n blocos, precisa de n blocos sequenciais
Fragmentação externa
Alocação encadeada
Resolve problemas da alocação contigua
Sem fragmentação externa
Desvantagens
É muito ineficiente em acesso direto
Confiabilidade é problemática
Alocação encadeada com FAT
Tempo de acesso aleatório é melhorado
Antigo e simples, mas eficiente
Uma seção de disco é reservada para conter a tabela
Alocação Indexada
Melhora acesso direto
Bloco de índices com todos os ponteiros
Espaço desperdiçado com ponteiros
Índices encadeados
Índices multiníveis
Combinar estratégia
Gerenciamento do Espaço Livre
Ao criar, busca blocos livres e remove da lista
Ao excluir, devolve blocos à lista de livres
Vetor de bits
Silmples e rápido
Precisa estar totalmente na memória
Lista encadeada
Cada bloco livre aponta para o próximo
Apenas o primeiro bloco precisa ser mantido em cache
Percorrer a lista é lento
Pouco eficiente para alocação de muitos blocos consecutivos
Recuperação
Queda no sistema pode causa inconsistências
SO detecta e corrige erros
Sistemas de Arquivos Estruturados em Log
Cada alteração de metadados é registrada em um log sequencial
Cada conjunto de operações para execução de uma tarefa é uma transação
Se o sistema cair, o arquivo de log conterá 0 ou mais transações
Mapa Mental 11 SO 2025/1 Thalison Vinicius