Sistemas de arquivos

Post on 21-Jun-2015

523 views 1 download

description

Os sistemas de arquivos estão presentes em todos os sistemas operacionais atuais como ferramenta para organização do armazenamento e recuperação das informações. Neste trabalho temos como o principal objetivo desmistificar o funcionamento dos sistemas de arquivos juntamente como o detalhamento do seu modo de operação básico. Falaremos também nas funcionalidades existentes em alguns dos sistemas de arquivos existentes no sistemas operacionais atuais tais como Fat32, NTFS, Ext{2,3,4}, ZFS e complementaremos o conteúdo com melhoria na forma de acesso, redundância e recuperação dos arquivos com a utilização da tecnologia RAID (Redundant Array of Independent/Inexpensive Disks ou Conjunto Redundante de Discos Independentes/Econômicos).

Transcript of Sistemas de arquivos

SISTEMAS DE ARQUIVOSPedro José

Sistemas Operacionais

Roteiro

Porque dos sistemas de arquivos Arquivos

Nomeclatura, estrutura e tipos Acesso, atributos e operações Implementações

Diretórios Operações Implementações Arquivos compartilhados

Journaling Sistemas Virtuais Gerenciamento de espaço livre Exemplos: Fat, NTFS, Ext e ZFS RAID 1,0 e 10

Porque dos sistemas operacionais Como persistir uma determinada

informação Como recuperar uma determinada

informação Como compartilhar informações entre os

processos Como controlar o acesso a uma

informação Como manipular alto número de

informações

Nomeclatura

Definido como uma cadeia de caracteres Tamanho limitado em alguns sistemas Restrições para alguns caracteres Extensões

Nem todos utilizam Associação com aplicativos Diferente manipulação

Estrutura

Sequência de bytes Registro Árvore

Tipos de arquivos

Regulares Diretórios Arquivos de caracteres especiais(E/S) Arquivos especiais de bloco

Formas de acesso

Sequencial Acesso aleatório

Atributos

Metadados ou informações sobre os arquivos Flags Segurança e controle de acesso Carimbos de tempo

Operações com arquivos

Ações disponíveis pelo Sistema operacional para manipular os arquivos Create Delete Open Close Read Write Get Attributes Set Attributes Rename

Implementação

Diferentes formas de armazenar/recuperar as informações em disco Alocação contígua ou continua Alocação por lista encadeada Alocação por lista encadeada utilizando a

memória I-nodes

Alocação contígua ou contínua

Alocação por lista enc.

Alocação por lista enc. na memória

I-nodes

Diretórios

Estrutura pensada para gerenciar e organizar os arquivos no sistema de arquivos Nomeclatura Operações Tipos de organização

Diretório de nível único Árvore hieráquica

Operações com arquivos

Ações disponíveis pelo Sistema operacional para manipular os diretórios Create Delete Opendir Closedir Readdir Rename

Diretório raiz

Árvore de diretórios

Árvore de diretórios no linux

Implementação dos diretórios Diferentes formas de

armazenar/recuperar as informações sobre os diretórios Recuperação dos atributos Recuperação dos atributos em sistemas

que usam I-nodes

Arquivos compartilhados

Existem alguns problemas na implementação de arquivos compartilhados referente a como os mesmos estão ligados Ligação simbólica(soft link)

Caracterizada pelo uso de um tipo especial de arquivo(link) e a atribuição de um caminho para os dois ponteiros

Após a remoção, apenas o caminho para o arquivo é removido

Ligação estrita(hard link) Caracterizada pelo apontamento físico para o mesmo

arquivo e o uso de contadores Após a remoção o i-node não é removido, apenas

Journaling

Problema da remoção/atualização dos arquivos Remover o arquivo > liberar as estruturas

Ações atômicas Sistema criado para implementar uma

melhor tolerância a falhas

Sistema de arquivos virtuais

Solução encontrada para gerenciar diferentes sistemas de arquivos em um determinado Sistema operacional em execução

Acessar sistemas de arquivos de rede(NFS)

Gerenciamento de espaço livre Lista encadeada

Um bloco de dados não fica livre pois contém apontamento para os demais

Ex.: um bloco de 1Kb pode conter 255 ponteiros de 32 bits

Mapa de bits Economia de espaço 1 bloco livre = 1 bit no

mapa

Exemplos de sistemas de arquivos Microsoft

FAT 8, 12, 16, 32 bits + cluster de setores + tabela de alocação

NTFS 32, 64 bits + cluster de setores + Journal + criptografia + permissões

Outros Ext 2

I-nodes + VFS + pré-alocação Ext 3

I-nodes + VFS + pré-alocação + Journal + compatibilidade ReiserFS

Journal native + blocos de 512, 1024, 4096 e 8192 bytes ZFS

128 bits + Journal + checksum além do bloco de dados + raiz única e snapshots rápidos

RAID

RAID 1 – espelhamento/correção de erros Mínimo dois discos

RAID 0 – segmentação Mínimo dois discos

RAID 10 – 1 + 0 Mínimo quatro discos