Sistema de Arquivos
Sistemas de Arquivos
Sistema de Arquivos
Definições Básicas
Sistema de Arquivos
1.Um arquivo é uma unidade lógica de informação
criado por processos. As informações podem
representar instruções e dados de qualquer tipo [1].
Exemplo de arquivos.
2.Os arquivos são gerenciados pelo sistema
operacional para facilitar o acesso pelos usuários. A
parte do sistema operacional responsável por este
gerenciamento é o Sistema de Arquivos [2].
Sistema de Arquivos
Considerações
1.O armazenamento e a recuperação de informações
são as atividades essenciais de qualquer aplicação;
Sistema de Arquivos
2.Um processo deve ser capaz de ler e gravar de forma
permanente grande volumes de dados em
dispositivos de armazenamento;
3.O sistema operacional estrutura e organiza estas
informações através do Sistema de Arquivos.
Organização de Arquivos
Definição
Sistema de Arquivos
A organização de arquivos consiste em como os
dados
estão
internamente
armazenados,
podendo variar em função do tipo de dados
contido no arquivo [2].
Formas de Organização de Arquivos
a)Organização não-estruturada de bytes;
b)Organização Indexada;
c)Organização Sequencial;
d)Organização Relativa.
Organização de Arquivos
Exemplos de Organização de Arquivos
Ana
C lá u d i a
Te r e sa
Sistema de Arquivos
Byte
Bea tri z
(a ) O r g a n iza çã o n ã o - e str u tu r a d a
C a m ila
D a n i ele
Pa tr íci a
Isa b e la
M a r ia
Reg i str o
(b ) O r g a n iza çã o In d exa d a
Ti n a
Va n e ssa
Métodos de Acesso
Sistema de Arquivos
Em função de como os arquivos estão
organizados, o sistema de arquivos pode
recuperar registros de diferentes maneiras:
a) Acesso sequencial;
b) Acesso direto
c) Acesso Indexado ou Acesso por Chave.
Métodos de Acesso
Acesso direto
Sistema de Arquivos
Permite a leitura/gravação de um registro
diretamente da sua posição. Este método é
implementado através através da identificação do
número do registro, que é a sua posição relativa ao
inicio do arquivo.
Reg istr o
0
Reg istr o
1
D eslo ca m en to d e
d o is reg istr o s
Reg istr o
2
Reg istr o
n
Métodos de Acesso
Acesso Indexado
Sistema de Arquivos
Considerado o mais sofisticado método de
acesso, pois tem como base o acesso
direto. Para este tipo de acesso o arquivo
deve possuir uma chave de índice onde
existam ponteiros para os diversos
registros.
Métodos de Acesso
Exemplo de Acesso Indexado
Sistema de Arquivos
Operações de Entrada/Saída
O sistema de arquivos disponibiliza
uma interface
simples e uniforme entre as aplicações e os diversos
Sistema de Arquivos
dispositivos, através das rotinas de E/S, que têm
como função realizar operações como a tradução de
nomes em endereços, leitura e gravação de dados e
criação/eliminação de arquivos.
Operações de Entrada/Saída
A figura abaixo, ilustra de forma simples a comunicação
entre a aplicação e dispositivos de entrada/saída.
A p l i ca çã o
Sistema de Arquivos
Ro ti n a s d e E/ S
D i sp o si t i v o s
Operações de Entrada/Saída
A tabela abaixo, presenta algumas destas rotinas
de E/S implementadas no sistema de Arquivos.
Sistema de Arquivos
Rotina
create
open
read
delete
Descrição
Criação de arquivos
Abertura de um arquivo
Leitura de um arquivo
Eliminação de um arquivo
Atributos do Arquivos
Sistema de Arquivos
Cada arquivo possui informações de controle
denominadas atributos, podendo variá em função do
sistema de arquivos, mas alguns são muito utilizados,
como os apresentados na tabela abaixo:
Atributo
Descrição
Tamanho
Especifica o tamanho dos arquivos
Proteção
Código de proteção de acesso
Dono
Identifica o criador do arquivo
Criação
Data e hora de criação do arquivo
Backup
Data e Hora do último backup
Organização
Indica a organização lógica do arquivo
Senha
Senha necessária para acessar o arquivo
Diretórios
O diretório é uma estrutura de dados que contém
entradas associadas aos arquivos, onde cada
Sistema de Arquivos
entrada armazena informações como localização
física, nome organização e demais atributos.
A estrutura de diretórios é a foma como o
sistema
arquivos
organiza
contidos
logicamente
em
um
armazenamento secundário [1].
os
diversos
ambiente
de
Diretórios
Tipos de Estruturas de Diretórios
Nível Único é a mais simples, pois possui apenas um
único diretório contendo todos os arquivos do disco.
Sistema de Arquivos
I d e n t i f i ca çã o
Pr o t e çã o
O r g a n i za çã o
Lo ca l i za çã o
A tr ib u t o s
D iretó rio s
A rq u ivo s
Diretórios
Tipos de Estruturas de Diretórios
Sistema de Arquivos
Estrutura de diretórios com dois níveis, neste caso, a
implementação permite a existência de um diretório
particular para cada usuário UFD (User File Directory).
Para controlar os diretórios dos usuários é necessário um
diretório adicional MFD (Master File Directory) que
controla os diretórios do usuário, isto é, a indexação é
por nome de usuário, e nele cada entrada aponta para o
diretório pessoal.
Diretórios
Tipos de Estruturas de Diretórios
Estrutura de diretórios com dois níveis
A r q u ivo
1
Sistema de Arquivos
U su á r i o
1
A r q u ivo
2
U su á r i o
2
A r q u ivo
3
U su á r i o
3
A r q u ivo
1
A r q u ivo
1
U su á r i o
n
Master File Directory
(MFD)
A r q u ivo
2
A r q u ivo
3
U se r Fi l e D i r e cto r y
(U FD )
A rq u ivo s
Diretórios
Tipos de Estruturas de Diretórios
Sistema de Arquivos
Estrutura de Diretórios em Árvore é semelhante a
estrutura em dois níveis, onde o MFD é a raiz, os
galhos são os diretórios UFD e os arquivos são as
folhas.
Neste tipo de estrutura, quando é necessário se
referenciar a um arquivo é preciso especificar, além do
seu nome, o diretório onde ele se localiza, esta
referencia é denominada de PATH (caminho).
Diretórios
Estruturas de Diretórios em Árvore
A r q u ivo
1
D ir e tó r i o
1
Sistema de Arquivos
U su á r io
1
U su á r io
2
U su á r io
3
D ir e tó r i o
2
A r q u ivo
1
A r q u ivo
1
A r q u ivo
1
D ir e tó r i o
1
U su á r io
n
A r q u ivo
2
A r q u ivo
1
D ir e tó r i o Ra iz
A r q u ivo
2
A r q u ivo
1
A r q u ivo
2
Diretórios
Estruturas de Diretórios em Árvore

Path de um arquivo
D i sco C : /
Sistema de Arquivos
CIav ralo
ns
I va n
Te ste
Pa u l o
Pe sso a l
So m a .ex e
Gerência de Espaço
Livre em Disco
Sistema de Arquivos
A criação de arquivos em discos exige que o sistema
tenha total controle
de quais áreas podem ser
utilizadas. Este controle é realizado utilizando-se
algum tipo de estrutura de dados, que armazenam
informações que possibilitam ao sistema de arquivos
gerenciar o espaço livre em disco. As formas mais
comuns de implementações são:
a) Mapa de bits;
b) Lista encadeada;
c) Tabelas de blocos livre.
Gerência de Espaço
Livre em Disco
Alocação de espaço em disco
I n íci o
Sistema de Arquivos
1100 11 01
1000 01 11
Blo co
C o n ta d o r
4
2
10
1
13
7
25
20
50
5
0111 01 00
.
.
.
1110 00 00
(a ) M a p a d e b its
(b ) Lista e n ca d e a d a
© Ta b e la d e b l o co s l iv r e s
Gerência de Alocação de
Espaço em Disco
Sistema de Arquivos
Da mesma forma que o sistema operacional gerencia
espaços livres no disco, a gerência dos espaços
alocados aos arquivos é de fundamental importância
para o sistema de arquivos. A seguir, apresenta-se as
principais técnicas de alocação:
a) Alocação Contígua;
b) Alocação Encadeada;
c)Alocação Indexada.
Alocação Contígua
Sistema de Arquivos
Alocação Contígua consiste em armazenar um arquivo
em blocos sequencialmente disposto no disco. Neste
esquema, o sistema localiza um arquivo através do
endereço do primiero bloco e da sua extensão em
blocos.
0
3
1
4
2
5
6
7
8
9
10
11
12
13
14
A r q u iv o
Blo co
Ex te n sã o
A . TXT
4
3
B. TXT
10
1
C . TXT
13
2
Alocação Contígua
Estratégias de Alocação Contígua
1.First-Fit:primeiro segmento livre é alocado com tamanho
suficiente.
2.Best-Fit:menor segmento livre é alocado com tamanho
Sistema de Arquivos
suficiente.
3.Worst-Fit: maior segmento livre é alocado com tamanho
suficiente.
0
3
1
4
2
5
6
7
8
9
10
11
12
13
14
A r q u iv o
Blo co
Ex te n sã o
A . TXT
4
3
B. TXT
10
1
C . TXT
13
2
Alocação Contígua
Desfragmentação
Sistema de Arquivos
Á r e a d e tr a b a l h o
Alocação Encadeada
Sistema de Arquivos
Na Alocação Encadeada, um arquivo pode ser
organizado como um conjunto de blocos ligados
logicamente no disco, independente de sua localização
física, onde cada bloco deve possuir um ponteiro para o
próximo bloco.
In íci o
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
A r q u iv o
Blo co
A .TXT
6
. . .
.. .
. . .
.. .
. . .
.. .
. . .
.. .
Alocação Indexada
Sistema de Arquivos
Alocação Indexada, é uma técnica que tem como
princípio manter os ponteiros de todos os blocos do
arquivo em uma única estrutura denominada de bloco
de índice.
Permite acesso direto aos blocos do arquivo, não
utiliza informações de controle nos blocos de dados.
Este tipo de alocação soluciona uma das principais
limitações da alocação encadeada, que é o acesso
direto aos blocos dos arquivos.
Alocação Indexada
Alocação Indexada utiliza um bloco de índice que
armazena os ponteiros de todos os blocos do arquivo
Sistema de Arquivos
3
10
11
7
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Blo co d e
ín d i ce
Proteção de Acesso
Sistema de Arquivos
Como os meios de armazenamento são
compartilhados entre diversos usuários é
fundamental que o sistema de arquivos implemente
mecanismos de proteção individual de arquivos e
diretórios.
Existem diferentes mecanismos e níveis de
proteção, cada qual com suas vantagens e
desvantagens, sendo que, para cada tipo de sistema,
um modelo pode ser mais adequado do que outro. A
seguir, são apresentados três mecanismos de
proteção presentes na maioria dos dos sistemas de
arquivos.
Senhas de Acesso
A associação de uma senha de acesso a um
arquivo é um principio muito simples, o controle de
acesso resume-se ao conhecimento da senha.
Sistema de Arquivos
Problemas
a)cada arquivo possui apenas uma senha;
b)não é possível determinar quais tipos de operações
podem ou não ser concedidas
c)dificuldade de compartilhamento de arquivos – todos
devem conhecer a senha.
Grupos de Usuário
Sistema de Arquivos
Proteção por grupos de usuários é baseada em
grupos de usuários, sendo implementada por
diversos dos sistemas operacionais. Neste caso, o
usuário é associado ao um grupo, sendo possivel o
compartilhamento de arquivos e diretórios entre os
membros do mesmo grupo.
O w n er
Lei tu ra
Escr ita
Execu çã o
Eli m in a çã o
G ro u p
Le i tu r a
A ll
D A D O S.TXT
Lista de Controle de Acesso
A Lista de Controle de Acesso ( LCA), consiste
Sistema de Arquivos
em uma lista de associada a cada arquivo, onde
são especificados quais os usuários e os tipos de
acesso permitido. Neste caso, quando um usuário
tenta acessar um arquivo, o sistema operacional
verifica se a lista de controle autoriza a operação.
Lista de Controle de Acesso
Problemas da LCA
Sistema de Arquivos
a)Tamanho da lista pode ser bastante extenso, já
que um arquivo pode ser compartilhado por
vários usuários;
b)Overhead adicional, se comparado com o
mecanismo de proteção por grupo de vários
usuários, devido a pesquisa sequencial que o
sistema deverá realizar na lista sempre que um
acesso for solicitado.
Lista de Controle de Acesso
Sistema de Arquivos
U su ário: M aia
A cesso: Leitura + Escrita
U su ário: M aia
A cesso: Leitura + Escrita + Execução
U su ário: M ach ad o
A cesso: Leitura
U su ário: M ach ad o
A cesso: Elim in ação
Implementação de Caches
Sistema de Arquivos
Motivação
Acesso a disco é mais lento do que o acesso a memória
principal, já que as operações de E/S com disco
causam problema de desempenho para o sistema.
Solução
Implementar a técnica de Buffer Cache
O sistema operacional reserva uma área da
memória para que se tornem disponíveis caches
utilizados em operações de acesso a disco.
Implementação de Caches
Sistema de Arquivos
Implementação do Buffer Cache
Quando uma operação é realizada, seja leitura ou
gravação, o sistema verifica se a informação desejada
se encontra no Buffer Cache. Em caso positivo, não é
necessário o acesso a disco. Coso o bloco requisitado
não se encontra no cache, a operação de E/S é
realizada e o cache é atualizado.
Problema na implementação do Buffer Cache
1) Como existe uma limitação no tamanho do cache,
cada sistema adota politicas para a substituição de
blocos como a FIFO ou a LRU.
Implementação de Caches
Problema na implementação do Buffer Cache
Sistema de Arquivos
1) Como existe uma limitação no tamanho do cache,
cada sistema adota politicas para a substituição de
blocos como a FIFO ou a LRU;
2) Problemas de Segurança – perdas de dados por por
problemas de energia
Referências
[1]Andrew S. Tanenbaum. 3a Edição. Editora Pearson
Prentice Hall – 2009. (capítulo 4)
Sistema de Arquivos
[2]Silberchatz. Abraham. Galin, Peter. Gagne, Greg..
Tradução de Adriana Rieche. Rio de Janeiro: Elvier,
2008 – 7ª Reimpressão. Editora Campus. (Capítulo 12)
Download

Material de Sistemas de Arquivos