42
UNIVERSIDADE FEDERAL DO ABC BC1518 - SISTEMAS OPERACIONAIS Alunos: Guilherme Yuji Tuyama Kauê Vidal Ricardo Koiti Sato Rogério Kiyoshi Kaneko SEMINÁRIO Sistema de Arquivos

SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

UNIVERSIDADE FEDERAL DO ABC

BC1518 - SISTEMAS OPERACIONAIS

Alunos:Guilherme Yuji Tuyama

Kauê VidalRicardo Koiti Sato

Rogério Kiyoshi Kaneko

SEMINÁRIOSistema de Arquivos

Page 2: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

Extended File System 3

EXT3

Page 3: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

MinixFSInicialmente o Linux trabalhava com o mesmo sistema de arquivos do Minix, o MinixFS;Porém, esse sistema era muito limitado:Endereços de blocos de dados com 16 bits;Partições com no máximo 64 MB;Nomes de arquivo com no máximo 14 caracteres.

Page 4: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

EXTDevido a essas limitações, Rémy Card criou um novo sistema voltado especificamente para o Linux, o EXT. Ele foi incluído no Linux 0.96c em julho de 1992.Embora fosse superior ao MinixFS ( suportava partições de até 2GB e os nomes de arquivos podiam ter até 255 caracteres), tinha um baixo desempenho e problemas de fragmentação de arquivos.

Page 5: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

EXT2

Já em 1993, surgem o EXT2 (também criado por Rémy Card) e o Xia FS .O EXT2 suportava partições de até 32TB, porém sem nenhum sistema de tolerância a falhas:Se o sistema fosse desligado de maneira incorreta, era necessário usar um programa para verificar erros no disco (processo muito demorado).

Page 6: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

Sistemas de Arquivos Com Registros de Mudanças

Para resolver os problemas de inconsistência do sistema de arquivos (que surgem após desligar o sistema incorretamente), surgem os sistemas de arquivos com registros de mudanças.Nesses sistemas todas as mudanças efetuadas são armazenadas no sistema de arquivos (em intervalos de tempo pré-definidos).Caso ocorra algum problema, essas informações podem ser usadas para evitar que dados sejam corrompidos.

Page 7: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

EXT3Em 1999 lançou-se o EXT3. Uma continuação do EXT2. Compatível com o EXT2.Surgiu com a proposta de suprir uma das maiores deficiências do EXT2, a incapacidade de se recuperar de falhas de forma eficiente.Para isso, o EXT3 surge como um sistema de arquivos com registro de mudanças.Sendo assim, todas as alterações realizadas são armazenadas pelo sistema de arquivos. Se houver uma falha, o sistema pode ser reparado muito mais rapidamente.

Page 8: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

EXT3

Apresenta três modos de operação possíveis:Cada um deles apresenta suas próprias características relacionadas a que dados gravar e em que intervalo de tempo.

Page 9: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

Modos de operação

Modo gravação: Apenas informações sobre a estrutura de sistema de arquivos são armazenadas (em momentos de inatividade), isto é, somente os metadados são gravados.Problema: Pode ocorrer corrupção de dados (dados não chegaram a ser gravados, mas as mudanças nos metadados foram armazenadas).

Page 10: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

Modos de operação

Modo solicitado: é feita uma cópia de segurança de todos os arquivos modificados ainda não gravados no disco.Ou seja, os dados são gravados antes do diário. Na recuperação ambos estarão consistentes.

Page 11: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

Modos de operação

Modo dados: Após o término de cada operação tanto dados como metadados são armazenados no diário.Com isso há uma perda de desempenho (gravação deve der feita no arquivo e no diário), porém tanto os dados como o sistema de arquivos estarão consistentes após uma possível recuperação.

Page 12: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

Problemas do EXT3

Por ser uma extensão do EXT2, não possui diversos recursos que outros sistemas de arquivos com registros de mudanças possuem.Seu desempenho é menor que o de seus principais concorrentes.

Page 13: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

ReiserFs

O sistema de arquivos ReiserFS teve sua primeira aparição no ano de 2001

Foi criado por Hans Reiser, responsável também pela criação da NAMESYS empresa responśavel por gerenciar os trabalhos do projeto.

Empresa não opera comercialmente desde 2007.

Page 14: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

ReiserFs

Características: -Journaling: Recurso responsável por manter a integridade dos dados em caso de, por exemplo, erros no sistema causados por desligamento incorreto ou por alguma falha de hardware.

-Suporte a arquivos com mais de 2GB.

- Os objetos do sistema de arquivos são organizados utilizando uma estrutura de dados chamado Árvore B+

Page 15: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

ReiserFs

Com o journaling, o sistema registra em uma área especial chamada "journal" ou "log", as ações que serão feitas nos arquivos. Depois de realizadas e tidas como concluídas, as ações são apagadas. Diferente do sistema Ext3, as técnicas de Journaling se limitam aos metadados.

Page 16: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

ReiserFs

O ReiserFS trata toda a partição como se fosse uma única tabela de banco de dados contendo diretórios, arquivos e metadados dentro de uma mesma árvore, utilizando o esquema B+Tree para organizar e localizá-los. Usa árvores balanceadas para tornar a busca de arquivos, informações sobre segurança e outros metadados eficientes.

Page 17: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

ReiserFs

Basicamente, todos esses itens são classificados em:

Inodes: onde são classificadas as informações referentes a cada arquivo, isto é, os metadados. Direct items: são os arquivos em si, mas quando armazenados nas "folhas" das sub-árvores e, embora tenham tamanho variável, são compostos por blocos de dados pequenos.Indirect items: São os blocos maiores não são incluídos nas árvores (por isso recebem esse nome) e são "localizáveis" por ponteiros que indicam onde estão armazenados

Page 18: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

ReiserFs

O ReiserFS é rápido. Seu ganho de velocidade em relação a outros sistemas de arquivos varia de acordo com cada operação em disco.

Para arquivos grandes, a leitura/escrita é limitada pela velocidade do dispositivo de armazenamento e pelo canal de entrada e saída da controladora de discos.

A abertura de arquivos requer a leitura dos metadados, armazenados no inode em uma área distinta dos dados.

Após localizar a entrada referente ao arquivo, o sistema realiza a leitura nos setores que contem os dados.

Page 19: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

ReiserFs

Alocação dinâmica de inodes: diferente do Ext3 que dispõe tamanho fixo, o ReiserFS aloca o tamanho exato que o arquivo necessita. Isso faz com que o espaço em disco seja melhor aproveitado.

Mas em contrapartida pode exigir mais recurso de processamento pois há maior fragmentação de dados.

Page 20: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

Reiser4

Reiser4 é o sucessor do ReiserFS.

Ele oferece:Journaling mais eficiente;Melhor suporte a grandes quantidades de arquivos pequenos;Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares);Estrutura de arquivos dinamicamente otimizada;Transações atômicas na modificação do sistema de arquivos. Neste caso, uma operação só pode ser tida como concluída se executada por completo, ou seja, não há meio termo: ou está feito ou não está.

Page 21: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

NTFS

O NTFS (New Technology File System - Sistema de Arquivos de Nova Tecnologia) é o sistema de arquivos mais utilizado por computadores baseados em Windows NT, incluindo o 2000 e o XP.

Page 22: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

NTFS - Principais Características Confiabilidade: O NTFS foi criado para ser o mais confiável possível e necessitar do mínimo possível de manutenção ao sistema de arquivos.

Expansibilidade: Um sistema de arquivos feito para servidores não pode se dar ao luxo de suportar apenas os discos rígidos mais comuns. Ao contrário do FAT, que somente suporta partições de 4Gb, o NTFS foi desenhado para suportar discos de até 16 exabytes (264 bytes).

Page 23: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

NTFS - Principais Características Eficiência: O FAT desperdiçava enormes quantidades de espaço em disco. Com o NTFS, esses desperdícios foram evitados ao máximo. O NTFS não lida com os setores individuais de um disco, mas em vez disso utiliza clusters como a unidade de alocação de disco.

Tamanho da Partição Tamanho do Cluster

até 512Mb 512 bytes

até 1GB 1KB

até 2GB 2KB

acima de 2GB 4KB

Page 24: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

NTFS - Principais Características

Segurança: Através de permissões de arquivos e pastas, o NTFS permite controlar o acesso aos dados.

Nomes de arquivos: Ao contrário do FAT (16 bits), o NTFS suporta nomes de arquivos e pastas com até 255 caracteres.

Page 25: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

NTFS Cada arquivo no NTFS é descrito por um ou mais registros em um array armazenado em um arquivo especial, chamado tabela mestra de arquivos (MFT - Master File Table). O arquivo MFT é o arquivo mais importante do NTFS. Esta tabela armazena todos os atributos que um arquivo pode conter, e cada arquivo ou pasta tem uma entrada na MFT.

Vários outros atributos existem, mas os principais são: Standard Information Attribute ou Atributo Padrão de Informações: Neste atributo estão contidas informações sobre quando o arquivo foi criado, modificado, ou acessado pela última vez

Page 26: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

NTFS File Name Attribute ou Atributo de Nome do Arquivo: Como o próprio nome já sugere, este atributo armazena o nome do arquivo. Data Attribute ou Atributo de Dados: Aqui é armazenado o conteúdo do arquivo:

Security Descriptor Atribute ou Atributo Descritor de Segurança: Este atributo contém as configurações de segurança do arquivo.

Page 27: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

NTFS - Metadados Arquivos de metadados são arquivos contendo informações sobre o volume em si. São criados automaticamente na formatação e armazenados no começo do volume. As primeiras 16 entradas da MFT são reservadas a esses arquivos. Alguns desses arquivos de metadados são:

$MFT: A própria MFT é um arquivo e, por isso, deve ter uma entrada na MFT.

$MFTMirr: Espelho das primeiras 16 entradas da MFT, para que os arquivos de metadados possam ser acessados em caso de corrupção da MFT original.

Page 28: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

NTFS - Metadados $LogFile: Contém o log de transações do NTFS

$Volume: Informações sobre o volume, como versão do NTFS e data de criação.

$AttrDef: Define os tipos de atributos disponíveis para serem utilizados em arquivos e pastas NTFS.

"." (ponto, sem aspas): Contém um indicador para o diretório ou pasta raiz (topo da herarquia) do volume.

$Bitmap: Mapa que descreve quais clusters estão utilizados no momento e quais estão disponíveis para gravação de dados.

Page 29: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

NTFS - Metadados $Boot: Contém a cópia do código de boot do volume ou um indicador para ela. $BadClus: Lista os clusters defeituosos do volume, para garantir que o sistema de arquivos não os utilize. $Quota: Arquivo contendo a tabela de utilização das cotas de disco. $UpCase: Tabela que contém informações de como converter os nomes de arquivos para o formato Unicode (formato que universalizou a forma de representação de caracteres em computadores, permitindo milhares de caracteres diferentes, suportando assim inclusive línguas Asiáticas, como o Japonês).

Page 30: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

Google File System

Computação de Sistema Distribuído

Desempenho

Escalabilidade

Confiabilidade

Disponibilidade

Page 31: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

Google File System-Interface

Arquivos organizados hierarquicamente

Suporte de operações usuais em arquivoscriar, deletar, ler, escrever, abrir e fechar

Snapshot

Record Append

Page 32: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

Google File System-Arquitetura

Cluster de Computadores

GFS Master

Chunkservers

GFS Client

Page 33: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

Google File System-Arquitetura

Page 34: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

Google File System-Arquitetura

Arquivos

Divididos em partes de 64MB (Chunk)

Chunk handle 64 bits

ConfiabilidadeCada chunk é replicado em diferentes chunckservers

Page 35: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

Google File System-Arquitetura

Master

Armazena os metadados do sistema de arquivosmetadados�: namespaces, informação do controle de acesso, mapeamento de arquivos para os chunks e localização atual dos chunks

Controle de atividades gerais do sistemaGerenciamento do empréstimo de chuncksColeta de lixoMigração de chunks entre chunkservers

Comunicação periódica com os chunkservers

Page 36: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

Google File System-Arquitetura

Chunkservers

Armazena chunks em disco como arquivos Linux

Client

Comunica com o master e os chunkservers Metadados obtidos pelo master Qualquer outra comunicação de dados é feita diretamente com os chunkservers

- Ambos, client e chunkservers, não fazem uso de cache para os arquivos

Page 37: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

Google File System-Escrita

Client

Master

Chunkserver primário

Chunkserver secundário

Chunkserver secundário

1 2

3

3

34 5

5

6

6

7

Page 38: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

Google File System-Leitura

Client

Master

Chunkserver #2

Chunkserver #3

Chunkserver #1

1 2

3

4

Page 39: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

Google File System

http://labs.google.com/papers/gfs.htmlhttp://communication.howstuffworks.com/google-file-system.htm/printable

Page 40: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

Referências BibliográficasGuia do Hardware - EXT3. termos técnicos do GdH. Disponível em: http://www.guiadohardware.net/termos/ext3 Acessado em 3 de agosto de 2010.M. Tim Jones.IBM. Anatomia dos Sistemas de Arquivos de journaling do Linux - Disponível em: <http://www.ibm.com/developerworks/br/library/l-journaling-filesystems/> Acessado em 3 de agosto de 2010.

Page 41: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

Referências Bibliográficashttp://www.baboo.com.br/conteudo/modelos/Tudo-sobre-NTFS_a4519_z0.aspx (Acessado em 3 de agosto de 2010)

http://www.gdhpress.com.br/hmc/leia/index.php?p=cap5-18 (Acessado em 3 de agosto de 2010)

Page 42: SEMINÁRIO Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/...Gerenciamento mais rápido de diretórios com muitos arquivos (na casa dos milhares); Estrutura de arquivos

Referencias Bibliográficas

http://web.archive.org/web/20071023172417/www.namesys.com/http://www.vivaolinux.com.br/artigo/Sistemas-de-arquivos-EXT3-e-ReiserFS-no-GNU-Linux/?pagina=http://pt.wikipedia.org/wiki/Reiser4 http://pt.wikipedia.org/wiki/Hans_Reiser