Pirmide de armazenamento Sistemas de arquivos O sistema

  • Slides: 25
Download presentation
Pirâmide de armazenamento

Pirâmide de armazenamento

Sistemas de arquivos O sistema de arquivos FAT-16 O sistema de arquivos utilizado pelo

Sistemas de arquivos O sistema de arquivos FAT-16 O sistema de arquivos utilizado pelo MS-DOS chama-se FAT 16. Neste sistema existe uma Tabela de Alocação de Arquivos (File Allocation Table, FAT) que na verdade é um mapa de utilização do disco. A FAT mapeia a utilização do espaço do disco, ou seja, graças à ela o sistema operacional é capaz de saber onde exatamente no disco um determinado arquivo está armazenado. O sistema FAT-16 não trabalha com setores, mas sim com unidades de alocação chamadas clusters, que são conjuntos de setores. Em vez de cada posição da FAT apontar a um setor, cada posição aponta para um cluster, que é um conjunto de setores que poderá representar 1, 2, 4 ou mais setores do disco.

Desperdício: Um grave problema O tamanho do cluster é definido automaticamente pelo sistema operacional

Desperdício: Um grave problema O tamanho do cluster é definido automaticamente pelo sistema operacional quando o disco é formatado, seguindo a tabela. Um disco rígido de 630 MB utilizará clusters de 16 KB, enquanto um de 1, 7 GB utilizará clusters de 32 KB. Como a menor unidade a ser acessada pelo sistema operacional será o cluster, isto significa que os arquivos deverão ter, obrigatoriamente, múltiplos do tamanho do cluster. Isto significa que um arquivo de 100 KB em um disco rígido que utilize clusters de 8 KB obrigatoriamente ocupará 13 clusters, ou 104 KB, pois este é o valor mais próximo de 100 KB que conseguimos chegar utilizando clusters de 8 KB. Neste caso, 4 KB serão desperdiçados.

Exemplo 13 CLUSTERS 8 KB 8 KB Arquivo de 100 KB 8 KB 4

Exemplo 13 CLUSTERS 8 KB 8 KB Arquivo de 100 KB 8 KB 4 4 K K B B

FAT 32 Com o sistema FAT-32 o tamanho dos clusters é sensivelmente menor, o

FAT 32 Com o sistema FAT-32 o tamanho dos clusters é sensivelmente menor, o que faz com que haja bem menos desperdício. Este sistema permite, também, que discos rígidos de até 2 terabytes (1 TB = 2^40 bytes) sejam reconhecidos e acessados diretamente, sem a necessidade de particionamento.

Desvantagens do FAT 32 Não é mais rápido. No geral é cerca de 6

Desvantagens do FAT 32 Não é mais rápido. No geral é cerca de 6 % mais lento que o sistema FAT-16. Quanto mais clusters o disco rígido tiver e quanto menor eles forem, mais lento será o sistema de armazenamento de dados.

Solução: NTFS A verdadeira solução para o problema de desperdício em disco é a

Solução: NTFS A verdadeira solução para o problema de desperdício em disco é a utilização de um outro sistema de arquivos que não o FAT. O sistema operacional Windows NT também possui o seu próprio (e também excelente) sistema de arquivos, denominado NTFS (New Technology File System). A vantagem destes sistemas de arquivo é que não há desperdício em disco, pois não há clusters: a menor unidade de alocação é o próprio setor de 512 bytes. Mas em sistemas operacionais antigos esse sistema de arquivos não é enxergado.

Origem do NTFS O NTFS foi desenvolvido pela Microsoft e IBM e muitos até

Origem do NTFS O NTFS foi desenvolvido pela Microsoft e IBM e muitos até hoje pensam que ele é um sistema de arquivos inteiramente desenvolvido pela Microsoft, o que não é verdade. Seu projeto foi baseado nas análises das necessidades do novo sistema operacional, mas seus conceitos funcionais foram "herdados" do sistema de arquivos HPFS (High Performance File System). Um sistema operacional muito conhecido nesta época era o OS/2, um projeto realizado em conjunto entre a Microsoft e a IBM.

Características do NTFS O NTFS possui características importantes, que o fez ser considerado um

Características do NTFS O NTFS possui características importantes, que o fez ser considerado um bom sistema de arquivos. Entre essas qualidades estão: confiança, pois permite que o sistema operacional se recupere de problemas sem perder informações, fazendo-o ser tolerante a falhas; segurança, onde é possível ter um controle de acesso preciso e ter aplicações que rodem em rede, fazendo com que seja possível o gerenciamento de usuários, incluindo suas permissões de acesso e escrita de dados; armazenamento, onde é possível trabalhar com uma grande quantidade de dados, permitindo inclusive o uso de arrays RAID; rede, fazendo do sistema plenamente funcional para o trabalho e o fluxo de dados em rede.

Funcionamento do NTFS Conforme as características herdadas do HPFS, o NTFS trabalha de uma

Funcionamento do NTFS Conforme as características herdadas do HPFS, o NTFS trabalha de uma forma mais eficiente no gerenciamento do espaço de disco. Isso porque as informações são armazenadas em uma base por setor do disco, em vez de utilizar clusters de múltiplos setores (veja mais sobre isso lendo o artigo sobre FAT). Essa forma de trabalho, traz várias vantagens, como menor necessidade de desfragmentação de disco e maior consistência de dados. Isso porque essa arquitetura de dados por base em setor permite manter os dados próximos, ou seja, não espalhados pelo disco. Até o gerenciamento de grandes quantidades de dados é beneficiado por esta característica, já que como acontecia com o FAT, trabalhar com clusters por setor, fazia do sistema de arquivos dependente de um número pré-determinado de setores.

Sistemas de arquivos Linux Torvalds adaptou o sistema de arquivos do Mimix, de Andrew

Sistemas de arquivos Linux Torvalds adaptou o sistema de arquivos do Mimix, de Andrew Tanenbaum, para Linux, mas aquele sistema de arquivos tinha várias limitações, como o tamanho do volume que suportava apenas 64 Mega Bytes e nome de arquivos de no máximo 14 caracteres Em 1992, Rémy Card criou o Ext , esse sistema de arquivos aumentou o limite do volume para 2 Giba Bytes e o tamanho do nome de arquivos para 255 caracteres. O Ext ainda possui algumas limitações. No inicio de 1993 foram disponibilizados 2 novos sistemas: o Xia. FS, de Frank Xia, também baseado no Minix; e o Ext 2, de Rémy Card e Stephen Tweedie, baseado no Ext, que tornou-se o sistema de arquivos padrão para Linux.

Sistema EXT 2 Ficha técnica 1. Oferece suporte aos tipos de arquivos UNIX padrão:

Sistema EXT 2 Ficha técnica 1. Oferece suporte aos tipos de arquivos UNIX padrão: arquivos, diretórios, arquivos especiais de dispositivos e links simbólicos. 2. Suporta 4 TB para o sistema de arquivos. 3. Pode-se estender o tamanho do nome de arquivos para no máximo 1012 caracteres. 4. Reserva de 5% dos blocos para o ROOT. 5. Contador de mount/unmount para força verificação de integridade (presente no Ubuntu mesmo sendo EXT 3). 6. Quando um bloco é lido vários blocos contíguos também são lidos para aumentar a performance. 7. O Kernel sempre tenta alocar o bloco de dados do arquivo no mesmo grupo que seu Inode. 8. O EXT 3 é fortemente baseado no EXT 2, o que significa que um sistema EXT 2 pode ser desmontado e remontado como EXT 3 e vice-versa, tendo inclusive compatibilidade de metadados.

Estrutura de EXT 2 O espaço em um disco é dividido em blocos, que

Estrutura de EXT 2 O espaço em um disco é dividido em blocos, que tem tamanho fixo de 1024, 2048 ou 4096 bytes e podem ser fragmentados em 2, 4 ou 8 partes. Os blocos são agrupados formando os grupos de blocos que reduzirão a fragmentação, e as informações sobre cada grupo de bloco é mantida em uma tabela armazenada no bloco imediatamente após o superbloco. O superbloco contém todas as informações sobre a configuração do sistema de arquivamento. Uma cópia primária do superbloco é armazenada em 1024 bytes a partir do início do disco, e isto é para a montagem do sistema de arquivos. As informações do superbloco são tão importantes que são armazenadas em grupos de blocos ao longo do sistema de arquivos.

Estrutura de EXT 2 O inode (nó de índice) é um conceito fundamental no

Estrutura de EXT 2 O inode (nó de índice) é um conceito fundamental no Ext 2, de forma que cada objeto em um sistema de arquivos é representado por um inode. Um arquivo ou diretório é descrito por um e somente um inode, o inode possui alguns campos como: Modo: campo que possui a descrição do inode e permissões de usuários (leitura, escrita ou execução). Informações do Proprietátio: identificação do usuário e do grupo do proprietário do arquivo ou diretório. �Tamanho: tamanho do arquivo em bytes. �Controle de data e hora: controla a criação e alteração de um arquivo ou diretório. Bloco de Dados: ponteiros para os blocos em que o inode está descrito.

Estrutura de EXT 2 O Ext 2 mantém uma certa quantidade de blocos livres,

Estrutura de EXT 2 O Ext 2 mantém uma certa quantidade de blocos livres, os quais são reservados ao super-usuário (root). Desta maneira se o sistema utilizar todos os blocos, o super-usuário poderá ainda continuar utilizando o sistema. O sistema de segurança aos arquivos e diretórios do Ext 2 recebem três tipos diferentes de privilégio, como podemos ver a seguir: Privilégio de proprietário: somente o dono do arquivo ou diretório poderá acessá- lo; Privilégio de grupo: somente poderão acessar o arquivo ou diretório os usuários que fazem parte do grupo; Privilégio de outros: neste caso qualquer usuário poderá acessar o arquivo ou diretório.

O que é Journaling Se o desligamento incorreto do computador ocorreu quando dados estavam

O que é Journaling Se o desligamento incorreto do computador ocorreu quando dados estavam sendo gravados no disco, o fsck não conseguirá completar esses processos, ocasionando a perda das informações que estavam sendo gravadas. Diante desse problema, foi apresentada uma solução viável: a utilização de sistemas de arquivos com a tecnologia "Journaling", que possuem a capacidade de acompanhar as mudanças que serão feitas no sistema de arquivos (por exemplo, gravações/atualizações de dados) antes que realmente sejam feitas. Essas informações que o Journaling captura são então armazenadas em uma parte separada do sistema de arquivos, denominada "Journal" (mas também conhecida por "registros de log"). Quando as informações são armazenadas no Journal, o sistema de arquivos aplica as mudanças registradas nele e então, remove as informações do Journal.

Funcionamento do Journaling Entenda o porquê do Journaling ser uma solução eficiente para os

Funcionamento do Journaling Entenda o porquê do Journaling ser uma solução eficiente para os problemas de erro. Os registros de log são escritos antes que as mudanças efetivamente ocorram no sistema de arquivos e esses registros somente são eliminados quando as mudanças são feitas. Assim, se o computador é indevidamente desligado, o processo de montagem no próximo startup verificará se há mudanças gravadas no Journal "marcadas" como não feitas. Se houver, tais mudanças são então aplicadas ao sistema de arquivos. Isso faz com que os riscos de perda de dados sejam reduzidos drasticamente.

Sistema de Arquivos EXT 3 O sistema de arquivos ext 3 é baseado no

Sistema de Arquivos EXT 3 O sistema de arquivos ext 3 é baseado no sistema de arquivos ext 2 mas com recursos de Journaling. Talvez, essa seja a razão de seu uso amplo: ele é totalmente compatível com ext 2 (que foi um sistema de arquivos muito usado), o que nenhum outro sistema de arquivos baseado em Journaling é. O ext 3 passou a ser efetivamente suportado pelo kernel do Linux a partir da versão 2. 4. Conseqüentemente, todas as distribuições Linux lançadas com esse kernel ou superior, tem suporte padrão para ext 3.

Journaling no EXT 3 No ext 3, o código de Journaling usa uma camada

Journaling no EXT 3 No ext 3, o código de Journaling usa uma camada chamada "Journaling Block Device" (JBD). A JBD foi criada com o propósito de implementar Journal em qualquer tipo de dispositivo com base em blocos de dados. Por exemplo, o código ext 3 informa e "pede autorização" à JDB para efetuar as mudanças, antes de modificar/adicionar qualquer dado no disco. É o JDB que verdadeiramente "gerencia" o Journal. O ext 3 também armazena "réplicas" completas dos blocos modificados em memória para rastrear as operações que ficaram pendentes.

Tipos de Journaling no ext 3 O ext 3 suporta três diferentes modos de

Tipos de Journaling no ext 3 O ext 3 suporta três diferentes modos de trabalho do Journaling. São eles: Journal: grava todas as mudanças em sistema de arquivos. É o mais lento dos três modos, mas é o que possui maior capacidade de evitar perda de dados; Ordered: grava somente mudanças em arquivos metadata (arquivos que guardam informações sobre outros arquivos), mas guarda as atualizações no arquivo de dados antes de fazer as mudanças associadas ao sistema de arquivos. Este Journaling é o padrão nos sistemas de arquivos ext 3; Writeback: também só grava mudanças para o sistema de arquivo em metadata, mas utiliza o processo de escrita do sistema de arquivos em uso para gravação. É o mais rápido Journaling ext 3, mas o menos confiável.

Sistema de arquivos Reiser. FS O sistema de arquivos Reiser. FS teve sua primeira

Sistema de arquivos Reiser. FS O sistema de arquivos Reiser. FS teve sua primeira aparição no ano de 2001 pelas mãos de Hans Reiser (daí o nome do padrão), que também montou uma equipe de nome NAMESYS para gerenciar os trabalhos do projeto. Desde então, o Reiser. FS vem sendo cada vez mais utilizado, principalmente por estar disponível como padrão em muitas distribuições Linux.

Características do Reiser. FS - Journaling; - Suporte a arquivos com mais de 2

Características do Reiser. FS - Journaling; - Suporte a arquivos com mais de 2 GB (limitação existente em alguns filesystems); - Organização dos objetos do sistema de arquivos em uma estrutura de dados chamada B+Trees (árvores B+). Nesse esquema, os dados são fixados em posições organizadas por divisões denominadas folhas. Por sua vez, as folhas são organizadas por nós ou ponteiros chamados de subárvores, que estão ligados a um nó raiz.

Estrutura do Reiser. FS

Estrutura do Reiser. FS

Sucessor do Reiser. FS O Reiser 4 é uma nova implementação do Reiser. FS,

Sucessor do Reiser. FS O Reiser 4 é uma nova implementação do Reiser. FS, ou seja, é seu sucessor natural. Sua proposta é a de oferecer, entre outros recursos, o seguinte: - 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á.

EXT 4 Algumas novidades do ext 4: Agora ele suporta volumes de até 1

EXT 4 Algumas novidades do ext 4: Agora ele suporta volumes de até 1 exabyte e também suportara arquivos tão grandes quanto o volume propriamente dito. Compatibilidade com ext 3 Uma pré-alocação persistente. A tão esperada alocação tardia, que consiste em uma técnica de não alocar os dados necessários para escrevê-los no disco enquanto eles ainda estão na ram. A única coisa feita na hora é o calculo da quantidade de espaço livre. Os dados posteriormente serão alocados e escritos. No sistema ext 3 o numero máximo de sub-diretórios (pastas) era de 32000. No ext 4 esse numero foi duplicado, ou seja, agora é de 64000. O ext 4 irá ter uma ferramenta para desfragmentação de arquivos únicos e do volume completo Irá usar um sistema de checksum para o journal, já que o mesmo é muito utilizado e corre sempre riscos de acabar corrompido.