quarta-feira, 2 de abril de 2014

Sistema De Arquivos

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 16

Objetivo: Apresentar o funcionamento básico do gerenciamento dos arquivos feito pelo sistema operacional e as características gerais que podem ser encontradas nos sistemas atuais.

1. Introdução

Um sistema de arquivos é o conjunto de regras que definem a maneira como os dados do usuário, programas, informações de configuração, entre outras, serão gravados e gerenciados nos dispositivos de armazenamento acessados pelo computador. Essas informações serão armazenadas fisicamente nos dispositivos, e gerenciadas pelo sistema operacional através de estruturas de dados, que serão a representação lógica das informações.

Um sistema operacional geralmente é caracterizado pelo sistema de arquivos que utiliza, mas um mesmo sistema operacional pode utilizar mais de um sistema de arquivos para gerenciar os do computador.

2. Organização de um Sistema de Arquivos

A maioria dos sistemas de arquivos trabalha organizando os dados em blocos de informação, sendo que o tamanho de cada bloco dependerá de algumas características específicas de cada sistema de arquivos, e do dispositivo de armazenamento utilizado. Um exemplo de utilização de blocos de informação pode ser o seguinte: em um disco-rígido de 40 GB utilizam-se blocos de informação de 4 KB de tamanho, assim o disco é dividido em 10 milhões de blocos de informação.

Os blocos de informação são utilizados, pois todo o controle da informação é feito utilizando- se os blocos como unidade básica de informação. Esse conceito surgiu no início da utilização de computadores, pois a limitação dos computadores impedia um controle mais apurado. O ideal era que cada unidade de informação correspondesse a um byte, se isso fosse feito, seriam necessários 40 bilhões de unidades de informação separadas no disco-rígido de 40 GB (em um computador de 32bits o maior número que pode ser interpretado pelo processador é um pouco maior que quatro bilhões).

Como os computadores trabalham com números binários, os blocos de informação são múltiplos de dois e geralmente abrangem o seguinte intervalo: 512 bytes, 1024 bytes, 2048 bytes, até 65536 bytes, este último praticamente não utilizado nos sistemas operacionais atuais. O primeiro valor de 512 bytes também é raramente utilizado, pois foi desenvolvido para discos-rígidos de pequena capacidade (inferior a 32 MB) e unidades de disquete. Não existe atualmente nenhum sistema que utiliza um bloco de informação inferior a 512 bytes, pois todos os discos-rígidos são divididos em blocos físicos (chamados clusters) de informação de 512 bytes. Os blocos de informação podem ser entendidos como sendo formados por grupos de blocos físicos de dados.

Os dados gravados no sistema recebem o nome de arquivo. Um arquivo pode conter um relatório de trabalho, um desenho, uma música, ou um programa. Cada arquivo possui um conjunto de propriedades que definirão a maneira como a informação dentro dele poderá ser acessada.

3. Propriedades dos Arquivos

Os arquivos possuem uma série de propriedades que são utilizadas para definir a maneira como os dados serão lidos, atualizados, apagados, como será mostrado o arquivo para o usuário, a data em que o arquivo foi criado, dentre outras. As principais propriedades de um arquivo encontradas nos sistemas operacionais atuais são:

Modo de Acesso: esta propriedade define a maneira como o arquivo será acessado, podendo ser basicamente da seguinte forma: o arquivo poderá ou não ser lido, poderá ou não ser escrito, e se for um programa, o programa poderá ou não ser executado;

Modo de Exibição: aqui é definido se o arquivo será exibido ao usuário normalmente, ou se ficará oculto, não sendo exibido;

Data de Criação: quando o arquivo é criado, a data de criação é armazenada;

Data de Alteração: a cada instante que o conteúdo do arquivo for modificado, ficará armazenada a data da alteração. Em sistemas que possuem apenas uma data como propriedade do arquivo, utiliza-se geralmente a data de alteração do arquivo na propriedade Data;

Nome do Arquivo: esta propriedade identifica o arquivo, e é através do nome que se tem acesso ao conteúdo do arquivo;

Extensão do Arquivo: aqui será definido o tipo do arquivo. Esta propriedade geralmente faz a associação do conteúdo de um arquivo com o programa utilizado, por exemplo, um arquivo “relatório de trabalho.doc” possui o nome: “relatório de trabalho” e a “extensão.doc”, que o associa com o programa MS-Word.

Nos sistemas operacionais mais avançados, que utilizam critérios para diferenciar os usuários que utilizam o computador, os arquivos podem ter algumas propriedades que irão armazenar informações sobre o usuário que criou o arquivo, e o modo de acesso que os outros usuários terão ao arquivo. O conjunto completo de propriedades que um arquivo possuirá dependerá diretamente do sistema de arquivos utilizado pelo sistema operacional.

4. Organização dos Arquivos

Os arquivos ficam armazenados no disco-rígido e para facilitar o gerenciamento dos arquivos, várias técnicas são empregadas, as principais são: a separação dos arquivos em Diretórios, e a utilização de uma Tabela de Arquivos.

Um diretório é um mecanismo de organização dos arquivos. Os arquivos são, sob um aspecto lógico-computacional, organizados primariamente em diretórios. Os diretórios podem ser criados e removidos pelo usuário, e por meio deles, o usuário consegue realizar a separação dos arquivos a partir de critérios definidos previamente. Alguns sistemas operacionais, durante a instalação do sistema no computador, criam alguns diretórios iniciais, que são utilizados para organizar os arquivos do próprio sistema operacional, e também para auxiliar o usuário apresentando uma pré-organização que poderá ou não ser seguida. Os diretórios recebem vários nomes, entre eles: pastas e caminhos. No MS-Windows XP, a pasta “Meus Documentos” na área de trabalho, corresponde ao diretório: “C:\Documents and Settings\<usuário>\Meus documentos”.

A Tabela de Arquivos é um outro mecanismo utilizado pelos sistemas operacionais para organizar os arquivos, mas nesse caso a organização pretendida é para o tratamento dos dados fisicamente gravados no disco-rígido. Graças à utilização dessa tabela, os arquivos podem ser encontrados e editados sem que haja necessidade de mecanismos complexos ou demorados para se realizar esse trabalho. Na Tabela de arquivos ficarão armazenadas basicamente as seguintes informações: um identificador do arquivo (geralmente sendo o caminho do arquivo que inclui o diretório completo e o nome do arquivo, mais um número de identificação único para cada arquivo), e o número do primeiro bloco físico de dados no disco-rígido.

5. Nomeação dos Arquivos e Diretórios

Os sistemas de arquivos atualmente utilizados nos sistemas operacionais permitem a criação de arquivos e diretórios com nomes de até 255 caracteres. Mas no início, esse número era bem inferior. Na década de 1980 era comum o uso do MS-DOS, e este sistema permitia a criação de arquivos com no máximo 11 caracteres (8 caracteres no nome + 3 caracteres de extensão).

Um detalhe importante na nomeação dos arquivos e diretórios é o cuidado que se deve ter para não utilizar nenhum caractere especial, pois alguns são utilizados para auxiliar a organização, exibição e administração dos arquivos, como por exemplo, os caracteres: “/”, “?”, “$”, etc. Estes dependem do sistema de arquivos, que depende do sistema operacional. Por exemplo, nos sistemas Unix, se um arquivo começa com o caractere “.”, indica que o arquivo ficará oculto, e se começa com “~” significa que é uma cópia de segurança.

O sistema MS-Windows 95 ao ser lançado permitiu a utilização de nomes de arquivos com 255 caracteres, mas teve que ser feito com uma Tabela de Arquivos especial, pois deveria ser compatível com o sistema MS-DOS e MS-Windows 3. Quando o arquivo era visualizado a partir do MS-Windows 95 o nome era exibido corretamente, mas quando era visto no MS- DOS ou MS-Windows 3 o nome era exibido no formato “8.3” caracteres.

6. Metadados dos Arquivos

Existe um grupo de informações que são armazenadas na Tabela de Arquivos, chamada de Meta-dados. Essas informações podem ser por exemplo: o tamanho em bytes dos dados do arquivo, o formato do conteúdo, a data de criação, data de modificação, nome do usuário que criou, propriedades do modo de acesso, resumo do conteúdo do arquivo, e várias outras informações (dependendo do sistema operacional).
As informações contidas nos meta-dados são úteis para o sistema operacional oferecer algumas funções adicionais ao usuário, como por exemplo, se o usuário precisar acessar os arquivos que uma determinada pessoa criou em uma certa data, o sistema operacional deverá possuir essas informações para poder dar a resposta correta ao usuário.

7. Classificação dos Sistemas de Arquivos:

Os sistemas de arquivos podem ser classificados em dois tipos básicos:

Sistemas de Disco: uma unidade de armazenamento não-volátil (disco-rígido, CD-R, flashdrive) é utilizada para guardar os arquivos e seus dados. A Tabela de Arquivos geralmente fica armazenada na própria unidade de armazenamento onde se encontram os arquivos referenciados por ela. Exemplos de sistemas de arquivo em disco são: FAT32, NTFS, HFS, ext2, ext3, isso 9660, etc.

Sistemas de Arquivo em Rede: Um sistema de arquivo em rede é um sistema em que o gerenciamento e armazenagem dos arquivos de um computador é feito em um outro computador conectado à rede, que permite o acesso aos dados de maneira transparente, como se estivessem no próprio computador do usuário. O sistema mais utilizado é o NFS.

Um comentário: