RICARDO DE MAGALHÃES SIMÕES - Sobre o Autor
Doutorando em Engenharia Elétrica, Mestre em
Informática (2006) e Bacharel em Ciência da Computação (2003), todos
pela Universidade Federal do Espírito Santo. Atualmente, Professor
Substituto de Informática no CEFET-ES, Professor de
Programação I no Curso Superior de Tecnologia em Análise e
Desenvolvimento de Sistemas à Distância no CEFET- ES, professor de
Sistemas Operacionais pela ESAB. Tem experiência na área de Ciência da
Computação, com ênfase em Desenvolvimento de Algorítmos, Educação de
Informática para estudantes do Ensino Médio, atuando principalmente nos
seguintes temas: Informática Básica, Programação nas linguagem C/C++/C#,
Java, Pascal.
Página pessoal:
Curriculo Lattes::
UNIDADE 18
Objetivo: Conhecer o sistema de arquivos utilizado no
Linux, aprender as suas características e entender o seu modo de
funcionamento.
1. Introdução
Durante o desenvolvimento inicial do Linux, entre os
anos de 1991 e 1992, foi utilizado um sistema de arquivos chamado ext1.
Nesse período o Linux era praticamente utilizado apenas pelos
programadores. Em 1993 foi desenvolvida uma versão do sistema de
arquivos própria para o Linux, que já podia ser instalado e utilizado
por vários usuários, essa versão recebeu o nome de Linux Extended File
System Version 2, ou ext2.
Características gerais do padrão ext2:
•Tamanho Máximo do disco-rígido: 4 Terabytes;
•Tamanho da Unidade Básica de Informação: 4 KB;
•Tamanho Máximo do nome do arquivo: 255 letras (ASCII);
•Maior Data dos arquivos: 18/01/2038.
De maneira semelhante ao NTFS, o tamanho padrão da
unidade básica de informação nos discos ext2 atualmente é de 4 KB,
podendo variar entre 512 bytes e 4 KB dependendo do espaço disponível no
disco.
O padrão ext2 ainda é bastante utilizado, mas já
possui um sucessor, denominado ext3, desenvolvido em 2001. A diferença
básica entre os padrões ext2 e ext3 é a seguinte: o ext3 possui um
mecanismo especializado chamado Journaling que é utilizado para otimizar
o desempenho nas operações de busca de arquivos, e
proteção contra falhas no sistemas (queda de energia durante a gravação
de um arquivo).
Um novo padrão foi desenvolvido em 2006, denominado
ext4, apresentando um aumento no tamanho máximo do disco de 1 Exabyte,
além de melhorias no desempenho geral do sistema de arquivos.
2. Tratamento dos Arquivos
No ext2 os arquivos são tratados de maneira
diferente do tratamento feito no NTFS. As informações sobre o arquivo
são explicitamente separadas dos dados do arquivo. Basicamente, a
estrutura de arquivos do padrão ext2 se divide em: Inodes e Blocos de
Dados.
Os Inodes armazenam as propriedades dos arquivos,
como tamanho, o usuário que o criou, o grupo do usuário, data de
criação, entre outras. Um arquivo pode ter mais de um Inode, pois cada
Inode está associado a um Bloco de Dados.
Os Blocos de Dados representam os dados fisicamente
gravados no disco. Dependendo de como está a distribuição dos dados no
disco, o arquivo possuirá um ou mais blocos de dados gravados. O ext2
irá priorizar a gravação de um bloco contínuo de dados, para minimizar
as operações de leitura e gravação das informações, otimizando o
desempenho do sistema de arquivos.
Esse modelo de tratamento dos arquivos está sendo
mantido nos padrões ext3 e ext4. Sendo adicionado neles o mecanismo de
Journaling, que consiste na utilização de uma estrutura de dados
semelhante a Árvore-B+, e utilização de Meta-Dados
para representar os arquivos. O Journaling não é uma adaptação do
mecanismo utilizado no NTFS, pois ele foi criado pela IBM em 1990 e é
utilizado em vários sistemas operacionais. O mais provável é que a
Microsoft tenha adaptado o Journaling no NTFS.
No padrão ext4 uma nova funcionalidade foi
adicionada, chamada de Alocação Dinâmica de Inodes. Essa funcionalidade
garante espaço adicional para os arquivos durante as etapas de gravação e atualização dos mesmos, reservando espaço adicional no disco-rígido, evitando assim que os dados fiquem fragmentados.
Em todas as versões do padrão ext os arquivos são
organizados em uma tabela chamada: Tabela Descritiva de Grupos, que
contém a lista de arquivos e as listas de Inodes associadas a cada
arquivo.
3. Compatibilidade com outros Sistemas Operacionais
O sistema de arquivos ext2, e ext3, podem ser
acessados a partir de outros sistemas operacionais através de
utilitários disponíveis para cada sistema, como por exemplo:
•MacOS X: pode-se instalar o utilitário “ext2 driver”, permitindo que discos ext2 sejam manipular diretamente pelo MacOS X;
•MS-Windows Server: também possui um utilitário chamado ext2fsd que também permitirá aos sistemas MS-Windows 2000 e MS-Windows 2003 manipularem diretamente discos ext2 ou ext3;
•Explore2fs: este programa está disponível para praticamente todas as versões do sistema MS-Windows posteriores ao MS-Windows 95. Tem um funcionamento semelhante ao Windows Explorer, permitindo manipular arquivos em discos ext2 ou ext3.
Em todos esses casos, os utilitários e programas,
não garantem a total compatibilidade e integridade dos dados acessados.
Esses programas foram feitos por desenvolvedores independentes, não
tendo garantias na sua utilização, mas até hoje nenhum dano sério foi
identificado ou divulgado. Como o padrão ext4 é recente, e ainda está em
desenvolvimento, não existe um programa.
4. Características Gerais
Atualmente o padrão ext3 possui as seguintes características:
•Definição
Padrão dos atributos de um arquivo: os atributos que um arquivo possui
definem a maneira como será acessado. Tais atributos podem ser definidos
de acordo com o diretório em que o arquivo está armazenado, não havendo
necessidade de se modificar os atributos depois de criá-lo;
•Definição
Padrão do “Grupo de Usuário” a um diretório: um diretório pode ser
definido para permitir que apenas um determinado Grupo de Usuários tenha
acesso de gravação. Outros usuários de outros grupos podem ler os
arquivos (se for permitido pelo atributo do arquivo), mas não poderão
gravar arquivos no mesmo diretório;
•Definição do tamanho da Unidade Básica de Informação na criação do arquivo: quando o arquivo é gravado no disco-rígido,
ocupará uma determinada quantidade de unidades básicas de informação.
No padrão etx3 o tamanho da unidade básica de um arquivo pode ser
especificado de acordo com o tamanho do arquivo. Arquivos grandes podem
ser definidos com unidades de informação grandes, e arquivos pequenos
com unidades de informação menores;
•Checagem
da integridade do sistema de arquivos: em determinados momentos,
definidos previamente pelo usuário, o padrão ext3 irá realizar a
checagem da integridade dos dados armazenados na Tabela Descritiva de
Grupos, verificando se não existe falha no sistema. Esta checagem é
realizada por um programa utilitário chamado tune2fs;
Um atributo especial no arquivo pode ser definido para que o conteúdo do arquivo armazenado fisicamente no disco-rígido
seja destruído ao se apagar o arquivo da Tabela Descritiva de Grupos. O
ext3 irá gravar dados aleatórios no espaço físico onde se encontrava o
arquivo, esta propriedade é bastante útil, pois evita que outras pessoas
acessem os dados de uma empresa diretamente no disco-rígido através de um “extrator de dados”.
O sistema operacional MacOS X, por ser derivado de
um sistema semelhante ao Unix, possui atualmente um sistema de arquivos
semelhante ao ext3, chamado HFS+. O padrão HFS+ é a junção do padrão HFS
utilizado nos sistemas MacOS 8 e MacOS 9 com o padrão ext3.
Nenhum comentário:
Postar um comentário