Cap. 11 - Implementação do Sistema de Arquivos(parte 1)
Sistema de arquivos deve permitir um acesso eficaz e conveniente ao disco
Também deve fornecer mecanismo de acesso online a conteúdos de arquivos
online: que está sempre disponível
Obs.: Disco neste caso envolve HDs,SSDs,...
Usam basicamente os mesmos sistemas de arquivos
Até o momento, HD ainda é relativamente predominante
Custo baixo
Alta capacidade
Acesso a conteúdos é o mesmo: em unidades de bloco
Cada bloco contém 1 ou mais setores
2 questões a se considerar ao projetar um sistema de arquivos
A aparência que o sistema terá para o usuário
Os Algoritmos e estruturas de dados utilizados p/ mapear sistema de arquivos
Estrutura geralmente organizada em camadas
Segue princípio da abstração
A cada nível acima, a complexidade reduz
Cada nível usa recursos dos de baixo e cria recursos para os de cima
São 6 camadas principais
Módulo de organização de arquivos
Sistema de arquivos básico
Sistema de arquivos lógico
Controle de I/O
Programas de aplicação
Dispositivo
Camada de "tradução"
Envolve drivers de um dispositivo e manip. de int.
Gerencia toda a estrutura dos arquivos
Não gerencia o conteúdo
Baseado em FCB(File Control Block)
Envia comandos básicos p/ o driver
Ex.: Ler/gravar um bloco físico no disco
Possui instruções de baixo nível p/ hardware
O setor é uma unidade física
Tamanho definido pelo dispositivo
Default p/ HDs: 4kb(512 bytes)
Várias estruturas são utilizadas na implem. de um sistema de arquivos
Estruturas podem variar conforme o S.O e o sistema de arquivos
Algumas estruturas são comumente utilizadas:
bloco de controle de inicialização(por volume)
bloco de controle de volume(por volume)
estrutura de diretório(por sistema de arquivo)
FCB(File Control Block) por arquivo
Contém infos. necessárias p/ inicialização do S.O
Se um volume(disco) não tiver S.O, bloco pode estar vazio
Normalmente, é o primeiro bloco de um volume
Contém detalhes acerca de um volume específico
número de blocos
tamanho dos blocos
contagem/ponteiro de blocos livres
contagem de FCBs livres
Ponteiros para FCBs
Usada para organizar os arquivos
Vai guardar infos. acerca de cada arquivo do sist. de arq.
Contém detalhes de um arquivo específico
É nele que contém os atributos de um arq.(Cap. 10)
Algumas estruturas podem ser incluídas na memória
Objetivo: gerenciar sist. de arquivos e melhorar desempenho
Tabela de montagens
Cache em memória
Tabelas de arquivos abertos em todo sistema
Tabelas de arquivos abertos por processo
Buffers
Infos. sobre cada volume montado
Infos. de diretórios acessados recentemente
Cópia de FCBs de cada arquivo aberto
Ponteiro p/ cada entrada apropriada na tabela de arq. abertos
Mantém blocos de arquivos sendo lidos/gravados
Traduz blocos lógicos p/ blocos físicos