S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e...

36
SISTEMAS OPERACIONAIS Aulas 17-18

Transcript of S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e...

Page 1: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

SISTEMAS OPERACIONAISAulas 17-18

Page 2: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

AGENDA

Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos

FAT NTFS XFS EXT3 RAISER

Page 3: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

DISCOS, PARTIÇÕES E VOLUMES

Discos são os dispositivos físicos instalados e reconhecidos pela BIOS e SO.

Partições: são subdivisões feitas em cada disco físico. Cada partição pode conter um sistema de arquivos diferente. Consequentemente, vários sistemas operacionais podem ser instalados na mesma unidade de disco.

Volumes: são partições ou conjunto de partições prontas para armazenamento de dados.

Page 4: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

PARTICIONAMENTO

Para particionar (dividir) o disco rígido em uma ou mais partes é necessário o uso de um programa de particionamento. Os programas mais conhecidos para particionamento de discos Linux:

fdisk, cfdisk e o Disk Druid. No Windows: Fdisk e assistente de instalação

Page 5: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

FORMATAÇÃO FÍSICA

Os discos magnéticos do HD são um terreno inexplorado, uma mata virgem sem qualquer organização.

Para que os dados possam ser armazenados e lidos de forma organizada, é necessário que o HD seja previamente formatado.

Formatação física: os discos são divididos em trilhas, setores e cilindro e são gravadas as marcações servo, que permitem que a placa lógica posicione corretamente as cabeças de leitura.

Nos HDs atuais, a formatação física é feita em fábrica, durante a fabricação dos discos.

O processo envolve o uso de máquinas especiais e, apenas para garantir, restrições são adicionadas no firmware do drive, para que a placa lógica seja realmente impedida de fazer qualquer modificação nas áreas reservadas.

Graças a isso, é impossível reformatar fisicamente um drive atual, independentemente do software usado.

Page 6: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

FORMATAÇÃO LÓGICA Após a instalação física do dispositivo no computador, uma formatação

lógica é efetuada nesse dispositivo, determinando a maneira que os dados são gravados e recuperados e as propriedades desses conjuntos de dados.

Essas opções estão relacionadas à segurança de acesso e metadados, tais como: tamanho em bytes, hora de criação e modificação, tipo do arquivo e diversas outras propriedades que qualificam um arquivo.

Segundo WIRZENIUS (1998), durante a formatação pode-se encontrar blocos ruins no disco, chamados de blocos defeituosos (bad blocks) ou setores defeituosos (bad sectors). Esses blocos defeituosos são marcados pelo sistema operacional como não utilizáveis. A presença de muitos blocos defeituosos indica a possibilidade de falha no dispositivo e recomenda-se sua troca.

O processo de formatação apaga de modo irremediável os dados, caso existam, em uma partição. Isso ocorre porque uma nova estrutura lógica é gravada no disco para a partição destruindo a existente.

Observa-se que o disco rígido normalmente é subdividido em regiões independentes denominadas partições.

Page 7: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

FORMATAÇÃO LÓGICA

Em seguida, temos a formatação lógica, que adiciona as estruturas utilizadas pelo sistema operacional.

Ao contrário da formatação física, ela é feita via software e pode ser refeita quantas vezes você quiser.

Risco: ao reformatar o HD, você perde o acesso aos dados armazenados, embora ainda seja possível recuperá-los usando as ferramentas apropriadas, como veremos mais adiante.

Define-se o sistema de arquivos: FAT16, que utilizamos em cartões de memória, até sistemas como o NTFS, EXT3 e ReiserFS, que incorporam recursos muito mais avançados.

Page 8: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

FORMATAÇÃO NO LINUX Nos Linux a formatação pode ser realizada pelo

utilitário mkfs (make file system). Esse comando constrói um sistema de arquivos do

tipo especificado pelo administrador e que seja suportado pelo Linux.

Caso o tipo não seja especificado é usado o EXT3. A sintaxe para o comando é:

mkfs -t <type> /dev/<dispositivo>

Onde <type> é um tipo de sistema de arquivos válido e <dispositivo> é a partição que se deseja formatar. Por exemplo:

# mkfs -t ext3 /dev/hda3

Criará uma partição do tipo EXT3 na terceira partição primária (a3) de um disco tipo IDE (hd).

Page 9: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

SISTEMA DE ARQUIVOS

É criado durante a "formatação" da partição de disco (quando se usa o comando mkfs.ext3).

Após a formatação toda a estrutura para leitura/gravação de arquivos e diretórios pelo sistema operacional estará pronta para ser usada.

Normalmente este passo é feito durante a instalação de sua distribuição GNU/Linux.

Cada sistema de arquivos tem uma característica em particular mas seu propósito é o mesmo: Oferecer ao sistema operacional a estrutura necessária para ler/gravar os arquivos/diretórios.

Page 10: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

CARACTERÍSTICAS E TIPOS DE SA Ext2 - Usado em partições Linux Nativas para o armazenamento de

arquivos. É identificado pelo código 83. Seu tamanho deve ser o suficiente para acomodar todo os arquivos e programas que deseja instalar no GNU/Linux (você encontra isto no manual de sua distribuição).

Ext3 - Este sistema de arquivos possui melhorias em relação ao ext2, como destaque o recurso de jornaling. Ele também é identificado pelo tipo 83 e totalmente compatível com o ext2 em estrutura. O journal mantém um log de todas as operações no sistema de arquivos, caso aconteça uma queda de energia elétrica (ou qualquer outra anormalidade que interrompa o funcionamento do sistema), o fsck verifica o sistema de arquivos no ponto em que estava quando houve a interrupção, evitando a demora para checar todo um sistema de arquivos (que pode levar minutos em sistemas de arquivos muito grandes).

Swap - Usado em partições Linux Swap para oferecer memória virtual ao sistema. Note que é altamente recomendado o uso de uma partição Swap no sistema (principalmente se você tiver menos que 16MB de memória RAM). Este tipo de partição é identificado pelo código 82.

proc - Sistema de arquivos do kernel FAT12 - Usado em disquetes no DOS FAT16 - Usado no DOS e oferece suporte até discos de 2GB FAT32 - Também usado no DOS e oferece suporte a discos de até 2

Terabytes

Page 11: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

O SISTEMA DE ARQUIVOS FAT

FAT é a sigla para File Allocation Table (ou tabela de alocação de arquivos).

O primeiro FAT surgiu em 1977, para funcionar com a primeira versão do DOS.

Trata-se de um sistema que funciona através de uma espécie de tabela que contém indicações para onde estão as informações de cada arquivo.

Page 12: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

EXEMPLO FAT:

Quando um arquivo é salvo num disquete por, o FAT divide a área do disco em pequenos blocos. Assim, um arquivo pode (e ocupa) vários blocos, mas eles não precisam estar numa seqüência.

Os blocos de determinados arquivos podem estar em várias posições diferentes. Daí a necessidade de uma tabela para indicar cada bloco.

Page 13: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

FUNCIONAMENTO DO SISTEMA FAT

Formatação física: Este processo, divide os discos em trilhas (uma espécie de caminho circular) e setores (subdivisões de cada trilha, com geralmente 512 bytes). Um conjunto de trilhas recebe o nome de cilindro.

A formatação física já vem de fábrica e pode ser alterada se o usuário quiser dividir o disco em partições.

Formatação lógica: depois deve-se fazer uma formatação lógica, que nada mais é do que "instalar" o sistema de arquivos no dispositivo de armazenamento.

O sistema de arquivos FAT não trabalha diretamente com cada setor, mas sim com um grupo de setores.

Esse grupo é chamado de cluster (ou unidade de alocação).

Exemplo: um disco com setor de 512 bytes, tiver 5 KB de tamanho, ele terá

10 setores e 5 clusters, se cada cluster ocupar dois setores. Sendo assim, quando o FAT precisar acessar um determinado setor, primeiro ele descobre em qual cluster ele se encontra. É válido citar que tanto o FAT quanto o FAT32 trabalham de acordo com este princípio.

Page 14: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

TAMANHO DE CLUSTER

O sistema FAT exige que cada cluster do disco seja usado somente para um único arquivo, ou seja, num mesmo cluster, não pode haver informações sobre mais de um arquivo.

Problema: desperdício. Exemplo 1: Um disquete com um arquivo de 5 KB. Imaginemos que este disquete tenha 8 KB de

espaço e dois clusters de 4 KB. Um cluster ocuparia 4 KB do arquivo,

enquanto o outro cluster ocuparia apenas 1 KB. Como o cluster só pode trabalhar com um arquivo, haveria desperdício de 3 KB.

Page 15: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

EXEMPLO 2:

Imaginemos que este disquete tenha 8 KB de espaço distribuídos em 4 clusters de 2 KB.

3 clusters seriam usados, sendo que um ainda apresentaria desperdício de 1 KB.

Sobra um cluster com 2 KB, que pode ser usado por outro arquivo.

Page 16: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

ALGUMAS DIFERENÇAS ENTRE FAT E FAT32

O sistema FAT (ou FAT16) consegue trabalhar com 65536 clusters. Esse número é obtido elevando o número 2 a 16 (daí a terminologia FAT16).

Mas, na verdade, o sistema FAT16 usa apenas 65525 clusters por disco (ou partição).

O tamanho do cluster deve obedecer também uma potência de 2: 2 KB, 4 KB, 8 KB, 16 KB e 32 KB, ou seja, não é possível ter cluster de 5 KB, 7 KB, etc.

O tamanho dos clusters no sistema FAT também é uma potência de 2. O limite máximo de tamanho para uma partição em FAT16 é de 2 GB (correspondente a 2 elevado a 16).

O sistema de arquivos FAT32 (seu nome se deve ao mesmo motivo que no FAT32), o tamanho dos clusters é determinado através da relação entre os comandos FDISK e FORMAT, apesar de que é possível determinar o tamanho do cluster do FAT32 também por programas de terceiros, com o Partition Magic (não é possível ter clusters de diferentes tamanhos).

O tamanho máximo da partição em FAT32 é de 2 TB.

Page 17: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

NTFS

NTFS é a sigla para New Technology File System. Desde a época do DOS, a Microsoft vinha utilizando o sistema de arquivos FAT, que foi sofrendo variações ao longo do tempo, de acordo com o lançamento de seus sistemas operacionais. No entanto, o FAT apresenta algumas limitações, principalmente no quesito segurança. Por causa disso, a Microsoft lançou o sistema de arquivos NTFS, usado inicialmente em versões do Windows para servidores.

Page 18: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

XFS

O XFS é um sistema de arquivos inicialmente desenvolvido pela Silicon Graphics, Inc. para o seu sistema operacional IRIX. Posteriormente teve seu código fonte liberado e foi adaptado para funcionar no Linux.

Page 19: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

HISTÓRIA DO XFS

A SGI usava, no seu sistema operacional IRIX, o sistema de arquivos EFS (Extent File System), o qual era baseado no FFS (Fast File System) de Berkeley (criado por Marshall McKusick [McKusick, 2004]). O EFS usava alocação por extensões, em vez da alocação por blocos do FFS.

As principais limitações do EFS eram: limite de 8 GiB para o volume, arquivos com tamanho máximo de 2 GiB, taxa de transferência menor que a disponibilizada

pelo hardware. Isso no início da década de 1990. Assim, o XFS

foi projetado para substituir o EFS, visando escalabilidade e suporte a arquivos grandes. [SWEENEY et al, 1996]

Page 20: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

HISTORIA XFS Em outubro de 1993 foram publicados alguns

artigos descrevendo o projeto para um novo sistema de arquivos [ANDERSON et al, 1993; DOUCETTE, 1993] — o nome do projeto era xFS. O XFS foi disponibilizado em dezembro de 1994 no IRIX 5.3 [ELLIS e RAITHEL, 1994].

Em outubro de 1999, no 3rd annual Atlanta Linux Showcase, Mostek et al apresentaram um trabalho mostrando como adaptar o XFS para o Linux [MOSTEK, 1999].

Em maio de 2001 foi lançada a versão 1.0 para Linux, por meio de patches. Finalmente, foi incorporado ao kernel 2.4.25, em fevereiro de 2004.

Page 21: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

O SISTEMA DE ARQUIVOS EXT3

O sistema de arquivos EXT3 é uma evolução do sistema de arquivos EXT2, que foi originalmente desenvolvido por Stephen Tweedie, Rémy Card e Theodore Ts'o e outros para a Red Hat.

O EXT3 possui uma vantagem significativa sobre todos os outros sistemas atuais, que é a sua total compatibilidade com o sistema de arquivos EXT2.

O EXT3 é praticamente um EXT2 acrescido das propriedades de "journal". Conseqüentemente, pode empregar todas as aplicações existentes desenvolvidas para manipular o sistema de arquivos EXT2, bem como permitir uma migração para EXT3 sem grande esforço.

Essa ampla base de usuários faz parecer que o EXT2 é o sistema de arquivos padrão do GNU/Linux. Tal afirmação não é de todo correta, já que o GNU/Linux reconhece os sistemas de arquivos através de uma funcionalidade incorporada ao kernel denominada VFS (Virtual File System).

Não existe realmente um sistema de arquivos considerado padrão e sim o mais adotado pelos usuários.

O SO Linux pode reconhecer mais de vinte sistemas de arquivos em diferentes níveis de funcionalidade. Entre eles estão alguns que são proprietários e outros que são populares em diversas plataformas. Parte dessas características ainda é experimenta,l não estando totalmente funcionais. O padrão EXT3 pode ser assim compreendido, conforme NEMETH et al (2004):

Page 22: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

O SISTEMA DE ARQUIVOS EXT3

O sistema de arquivos ext3 é basicamente o sistema de arquivos ext2 com recursos de Journaling.

Talvez, essa seja a razão de seu uso amplo: ele é totalmente compatível com ext2 (que foi um sistema de arquivos muito usado), o que nenhum outro sistema de arquivos baseado em Journaling é.

O ext3 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 ext3.

No ext3, o código de Journaling usa uma camada chamada "Journaling Block Device" (JBD).

Page 23: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

A 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 ext3 informa e "pede autorização" à JDB

para efetuar as mudanças, antes de modificar/adicionar qualquer dado no disco. Sendo assim, é o JDB que verdadeiramente "gerencia" o Journal.

A JDB funciona como uma entidade independente, permitindo que não só o ext3 a use, mas também outros sistemas de arquivos.

A JDB utiliza um método diferente de outros Journalings para recuperação de informações. Ao invés de armazenar as informações em bytes que depois devem ser implementados, a JDB grava os próprios blocos modificados do sistema de arquivos.

Assim, o ext3 também armazena "réplicas" completas dos blocos modificados em memória para rastrear as operações que ficaram pendentes. A desvantagem desta forma de trabalho é que o Journal acaba sendo maior. No entanto, o ext3 não precisa lidar com a complexidade dos Journalings que trabalham gravando bytes.

Page 24: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

JOURNALING - ORIGEM

Origem Erros e corrompimento do sistema de arquivos Os sistemas de arquivos para Linux já sofreram muitos tipos de

tratamentos e reescrita de código para eliminar o corrompimento causado por aplicações ou pelo próprio kernel. No entanto, eliminar o corrompimento de dados em arquivos causados, por exemplo, pela queda de energia ou pelo desligamento incorreto por parte do usuário, sempre foi uma tarefa praticamente impossível. Quando o sistema é desligado incorretamente o bit do cabeçalho do sistema de arquivos não é ajustado. A solução foi fazer com que, no próximo processo de carregamento do Linux, seja verificado se o cabeçalho está com o bit de cabeçalho setado para indicar que o sistema de arquivos está consistente e não manipulável. Caso não esteja, a ferrramenta "fsck" verifica o sistema na busca de erros.

O fsck consegue prover resultados satisfatórios, mas a correção de erros pode levar muito tempo, algo inaceitável em aplicações críticas. Além disso, 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.

Page 25: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

Diante desses problemas, 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.

Page 26: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

JOURNALING – SA QUE USAM

Sistema de arquivos ext3 Existem vários sistemas de arquivos

disponíveis com a tecnologia Journaling, como o: XFS, desenvolvido originalmente pela Silicon

Graphics e posteriormente disponibilizado com código aberto,

o ReiserFS, desenvolvido especialmente para Linux, JFS, desenvolvido originalmente pela IBM mas também liberado com código aberto, e

o mais conhecido deles: o ext3, desenvolvido pelo Dr. Stephen Tweedie juntamente com outros colaboradores, na Red Hat,

Page 27: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

VANTAGENS DO JOURNALING

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.

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.

Page 28: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

TIPOS DE JOURNALING NO EXT3

O ext3 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 ext3;

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 ext3, mas o menos confiável.

O modo Ordered é o padrão no ext3, mas é possível especificar qual o modo que você deseja usar, através da atualização do arquivo fstab. Por exemplo, pode ser que a linha /dev/hda1/opt tenha sua opção data com o valor ordered. Você pode mudar este valor para writeback ou journal.

Page 29: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

O SISTEMA DE ARQUIVOS REISERFS

Um modo de se organizar os dados é no formato de árvores. Quando organizamos a informação em um computador, a classificamos tipicamente em pilhas (chamadas de nós ou nodes), e há um nome (ponteiro) para cada pilha. Esse ponteiro é usado para encontrar a pilha. Alguns dos nós podem conter ponteiros através dos quais podemos localizar outros ponteiros para outros nós.

Uma árvore é uma estrutura organizada que tem algumas propriedades úteis para essa finalidade

Assim define-se, segundo Namesys (2004), uma árvore como:

1. Um conjunto de nós organizados em um nó raiz (Root node), e zero ou mais conjuntos adicionais de nós chamados sub-árvores.

2. Cada sub-árvore é uma árvore.

3. Nenhum nó na árvore aponta ao nó raiz, e há exatamente um ponteiro de nó na árvore que aponta para cada nó da árvore que não seja o nó raiz.

4. O nó raiz tem um ponteiro para cada uma das sub-árvores, isto é, um ponteiro para o nó raiz da sub-árvore.

Page 30: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

REPRESENTAÇÃO DE ÁRVORE DE NÓS

ReiserFS

Page 31: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

O REISERFS As árvores balanceadas ("balanced tree") (B*) usadas pelo ReiserFS para

organizar o sistema de arquivos são uma versão melhorada de árvores B+, onde não existe uma árvore diferente para cada diretório e sim, cada qual possui uma sub-árvore da principal.

O ReiserFS é um sistema de arquivos com suporte a "journaling" concebido por Hans Reiser e mantido pela empresa The Naming System Venture . São seus patrocinadores as empresas SuSE e Linspire. O ReiserFS já é o sistema de arquivos padrão nas distribuições Linux da SuSE, Gentoo e Linspire.

O ReiserFS é uma camada semântica com métodos e funções que são referenciados para executar tarefas no sistema de arquivos fazendo o uso de plug-ins que evocam chamadas de sistema para esses métodos e funções.

Esse método de acesso 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.

A implantação dessa característica exigiu que técnicas mais complexas de indexação fossem implementadas no ReiserFS, tornando mais eficientes seus tempos de resposta comparados aos de outros sistemas.

ReiserFS usa uma árvore finita (o número de nós é limitado). Outro termo importante para a definição de árvores é o termo Edge.

Diferentemente de um ponteiro que é unidirecional, o Edge é bidirecional, ou seja, pode ser seguido de um nó a outro e desse para seu antecessor. Então se pode dizer que Edge não é ponteiro.

Page 32: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

CONCLUSÕES Em sistemas EXT2 sem journal as falhas e erros são corrigidos

com o utilitário fsck. Apesar dos resultados satisfatórios de correção e recuperação desse utilitário, em sistemas de alta disponibilidade o tempo gasto para solucionar inconsistências é um transtorno. Há uma demora para concluir a checagem, já que todos os arquivos são analisados por referências cruzadas. Essa abordagem somente funciona bem para inconsistências comuns.

Conclui-se desta forma que o uso de um sistema de arquivos sem journal é atualmente inaceitável para os padrões de disponibilidade e principalmente em relação à questão de segurança dos dados.

A abordagem dos sistemas com "journal" economiza bastante tempo e contribui para melhorar o índice de disponibilidade de sistemas críticos que não podem ficar indisponíveis por muito tempo. Essa característica é atendida satisfatoriamente tanto pelo EXT3 quanto pelo ReiserFS.

Page 33: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

CONCLUSÕES O ext3 é um dos sistemas de arquivos mais utilizados

no Linux, tendo como principal "adversário" o filesystem ReiserFS, que também possui recursos de Journaling como uma de suas principais características.

Qual é o melhor ? Existem vários testes na internet que tentam

responder essa questão. De qualquer forma, as equipes de ambos os sistemas

de arquivos se empenham para oferecer os melhores recursos possíveis aos seus usuários.

No caso do ext3, por exemplo, já está em desenvolvimento o ext4 (que estava disponível como "experimental" na data de atualização deste artigo), que deverá "entrar em cena" oferecendo melhorias em sua estrutura e suporte a arquivos grandes (com centenas de megabytes), por exemplo.

Page 34: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

CONCLUSÕES No quesito velocidade de acesso à árvore de diretórios, o ReiserFS é

mais rápido que o EXT3 devido aos algoritmos otimizados. Conforme PISZCZ (2004) em seus testes comparativos.

Uma das vantagens do ReiserFS sobre o EXT3 é o seu desempenho para lidar com partições que possuem um grande número de arquivos pequenos. Esses arquivos são lidos em apenas uma operação de entrada/saída do disco rígido, sendo esse sistema ideal para esse tipo de aplicação. Isso deve ser levado em conta pelo administrador de sistemas.

Mesmo com as características e funcionalidades avançadas do ReiserFS, tais como árvores balanceadas, velocidade de acesso e melhor desempenho com operações de entrada e saída em disco, esse sistema ainda não se encontra em um estágio avançado de desenvolvimento. Isso faz com que o EXT3 ainda seja uma boa opção para servidores de produção, já que é possível realizar a migração para o EXT3 com relativa facilidade, evitando-se a reinstalação de sistemas.

O ReiserFS tende a superar o EXT3 após a implementação de novas características na versão Reiser4.

A escolha entre o uso do sistema EXT3 ou do ReiserFS deve ser uma decisão própria do administrador, visto que o desempenho de ambos os sistemas é bastante próximo e específico para cada caso de uso.

Page 35: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

BIBLIOGRAFIA Referências bibliográficas

BARBOSA, Jorge L. V. Artigo. Disponível em http://atlas.ucpel.tche.br/~barbosa/consiso/consiso9/so/sites/s15/reiserfs.htmAcesso em Novembro de 2004.

BARION, Ettore F. R. - Dicas Unicamp - Disponível em http://www.dicas-l.unicamp.br/dicas-l/20010517.shtmlAcesso em Novembro de 2004.

BREVIGLIERI, Rafael Leandro. Sistemas de arquivos. Disponível em http://www.slackware-brasil.com.br/.../artigo_completo.php?aid=108Acesso em Novembro de 2004.

CRANE, Aaron. HowTo-Sistemas de arquivos. Disponível em http://br.tldp.org/projetos/howto/.../ext2fs-undeletions.pt_BR-606.htmlAcesso em Novembro de 2004.

EQUIPE P&D em H.A Conectiva - Primeiros passos HA mini-Howto - Disponível em http://ha.underlinux.com.br/doc/heartbeat-0.4.8e-doc/Primeiros_Passos_HA _miniHOWTO.txtAcesso em Novembro de 2004.

Page 36: S ISTEMAS O PERACIONAIS Aulas 17-18. AGENDA Discos, Partições e Volumes Formatação Física e Lógica Sistemas de Arquivos FAT NTFS XFS EXT3 RAISER.

BIBLIOGRAFIA INFOWESTER. Sistema de Arquivo EXT3. Disponível em

http://www.infowester.com/linext3.phpAcesso em Novembro de 2004.

MORIMOTO, Carlos E. Dicas. Disponível em http://www.guiadohardware.net/linux/dicas/36.htm

NAMESYS. Conceitos, Definições sobre árvores balanceadas e o ReiserFS. Site oficial do ReiserFS disponível em http://www.namesys.com.

NEMETH, Evi, et al. Manual Completo do Linux - Guia do Administrador. Tradução de Ariovaldo Griesi. São Paulo: Makron Books, 2004.

PISZCZ, Justin. Teste comparativo entre sistemas de arquivos com journal. Tradução de Bruno Bellantuono. Disponível em http://www.pczone.com.br/html/modules.php?name=News&file=article&sid=126Acesso em Novembro de 2004.

RIBEIRO, Uirá. Certificação Linux. Rio de Janeiro: Axcel Books, 2004.

SILVA, Gleydson Mazioli da. Guia FOCA GNU/Linux. Versão 5.44. Disponível em http://www.cipsga.org.br. Acesso em Agosto de 2004.

WIRZENIUS, Lars, et al. Guia do Administrador de Sistemas Linux. Tradução de Conectiva Informática. São Paulo: Conectiva, 1998.