Arquitetura de Sistemas Operacionais – Machado/Maia Cap. 11 – Sistema de Arquivos1 Arquitetura...
Transcript of Arquitetura de Sistemas Operacionais – Machado/Maia Cap. 11 – Sistema de Arquivos1 Arquitetura...
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 11 – Sistema de Arquivos 1
Arquitetura de Sistemas Arquitetura de Sistemas OperacionaisOperacionais
• Técnico em Informática MBI1 e NBI2Técnico em Informática MBI1 e NBI2
Sistema de ArquivosSistema de Arquivos
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 11 – Sistema de Arquivos 2
Sumário
• Introdução • Arquivos
– Organização de Arquivos – Métodos de Acesso – Operações de Entrada/Saída
• Atributos • Diretórios • Gerência de Espaço Livre em Disco • Gerência de Alocação de Espaço em Disco• Implementação de Caches
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 11 – Sistema de Arquivos 3
Conceito de Arquivos
• Existem várias definições possíveis para o conceito de arquivos. Tanembaum afirma que, de forma simplificada, os arquivos podem ser entendidos como seqüências de bytes não interpretadas pelo sistema, dependendo-se de aplicações apropriadas para sua correta utilização (1995, p. 246). Deitel coloca que arquivos são uma coleção identificada de dados (1992, p. 389) enquanto Guimarães explica: “Um arquivo é um conjunto de informações relacionadas entre si e residentes no sistema de memória secundária: discos, fitas, cartões, etc.” (1986, p. 211)
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 11 – Sistema de Arquivos 4
Introducão
• Um processo deve ser capaz de ler e gravar grande volume de dados em dispositivos como fitas e discos de forma permanente, além de poder compartilhá-los com outros processos
• A manipulação de arquivos é uma atividade freqüentemente realizada pelos usuários, devendo sempre ocorrer de maneira uniforme, independente dos diferentes dispositivos de armazenamento
• A maneira pela qual o sistema operacional estrutura e organiza estas informações é através da implementação de arquivos
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 11 – Sistema de Arquivos 5
Arquivos
• Extensão de arquivos
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 11 – Sistema de Arquivos 6
Organização de Arquivos
• Organização de Arquivos
Byte
(a ) O rg an iza çã o n ã o - estruturad a
A na C lá ud ia Teresa
Bea triz C a m ila D an iele Pa tr ícia Tina Va nessa
Isab ela M ar ia
Registro
(b ) O rgan izaçã o Ind exa da
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 11 – Sistema de Arquivos 7Arq
uite
tura
de
Sis
tem
as O
pera
cion
ais
– M
acha
do/M
aia
Métodos de Acesso
• Acesso direto
Registro0
Registro1
Registro2
Registron
D esloca m en to ded o is reg istro s
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 11 – Sistema de Arquivos 8Arq
uite
tura
de
Sis
tem
as O
pera
cion
ais
– M
acha
do/M
aia
Operações de Entrada/Saída
D ispo sitivo s
Ro tina s d e E/ S
A plicaçã o
• Operações de Entrada/Saída
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 11 – Sistema de Arquivos 9Arq
uite
tura
de
Sis
tem
as O
pera
cion
ais
– M
acha
do/M
aia
Operações de Entrada/Saída
• Rotinas de E/S
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 11 – Sistema de Arquivos 10Arq
uite
tura
de
Sis
tem
as O
pera
cion
ais
– M
acha
do/M
aia
Atributos
• Atributos de arquivos
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 11 – Sistema de Arquivos 11
Diretórios
• Estrutura de diretórios de nível único
Iden tifica çãoPro teçã o
O rg an iza çãoLo ca l iza ção
A tr ib utos
D iretó rio s A rq u ivos
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 11 – Sistema de Arquivos 12
Diretórios
• Estrutura de diretórios com dois níveis
U su á r io1
U su á r io2
U su á r io3
U su á r ion
A rq u ivo1
A rq u ivo2
A rq u ivo3
A rq u ivo1
A rq u ivo1
A rq u ivo2
A rq u ivo3
U ser F ile D irecto ry(U FD )
A rq u ivos
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 11 – Sistema de Arquivos 13
Diretórios
• Estrutura de diretórios em árvore
U su á r io1
U su á r io2
U su á r io3
U su á r ion
D iretó rio Ra iz
D iretó rio1
D iretó rio2
A rq u ivo1
A rq u ivo1
D iretó rio1
A rq u ivo1
A rq u ivo2
A rq u ivo1
A rq u ivo2
A rq u ivo1
A rq u ivo1
A rq u ivo2
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 11 – Sistema de Arquivos 14
Diretórios
• Path de um arquivo
D isco C :/
IvanIvanC a r lo s Pa u lo
Teste Pessoa l
Som a .exe
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 11 – Sistema de Arquivos 15
Gerência de Espaço Livre em Disco
• A criação de arquivos em disco exige que o sistema operacional tenha o controle de quais áreas ou bloco do disco estão livres. Geralmente, há o uso de uma lista ou tabela para identificar blocos livres que poderão ser alocados a um novo arquivo. Neste caso, o espaço é removido da estrutura para que não seja reutilizado. Da mesma forma, quando um arquivo é eliminado, todos os seus blocos são liberados para a lista de espaços livres.
• A forma mais simples de implementar uma estrutura de espaços livres é através de uma tabela denominada mapa de bits ( bits map ). Cada entrada da tabela é associada a um bloco do disco representado por um bit, que pode assumir estado 0 ( livre ) ou 1 ( ocupado ). O grande problema dessa implementação é o grande consumo de memória, já que para cada bloco deve existir uma entrada na tabela.
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 11 – Sistema de Arquivos 16
Gerência de Espaço Livre em Disco
• Uma segunda maneira de realizar esse controle é com uma estrutura de lista encadeada de todos os blocos livres do disco. Para que isso seja possível, cada bloco deve armazenar um endereço do bloco seguinte. A partir do primeiro bloco, então, é possível o acesso seqüencial aos demais. Como desvantagens deste modelo, tem-se o consumo de espaço em disco para armazenamento do caminho de acesso e um algoritmo seqüencial de pesquisa na lista.
• Uma outra solução faz uma tabela de blocos livres, contendo o endereço inicial do bloco de cada segmento e o número de blocos contíguos livres que o seguem.
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 11 – Sistema de Arquivos 17
Gerência de Espaço Livre em Disco
• Alocação de espaço em disco
11 00 11 01
11 10 00 00
.
.
.
01 11 01 00
10 00 01 11
(a ) M ap a d e b its
In ício
(b ) Lista en ca dea da
Blo co C on ta do r
4 2
10 1
25 20
13 7
50 5
© Tab ela de b loco s l ivres
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 11 – Sistema de Arquivos 18
Alocação Contígua
• Uma forma de organizar-se os arquivos fisicamente é através da armazenagem dos dados em áreas adjacentes dos dispositivos físicos, isto é, em setores consecutivos das unidades de disco. Sistemas de arquivos implementados desta forma são denominados de alocação contígua ou contínua e neles o armazenamento físico corresponde à organização lógica do arquivo, ou seja, o primeiro bloco de dados ocupa o primeiro setor alocado e assim sucessivamente.
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 11 – Sistema de Arquivos 19
Gerência de Alocação de Espaço em Disco
• Alocação Contígua
0 1 2
3 4 5
6 7 8
9 10 11
12 13 14
A rq u ivo Blo co
A . TXT 4
B. TXT 10
C . TXT 13
3
1
2
Exten são
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 11 – Sistema de Arquivos 20
Gerência de Alocação de Espaço em Disco
• Desfragmentação
Á rea d e tra b a lho
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 11 – Sistema de Arquivos 21
Alocação não contígua
• A outra forma possível de organizar-se fisicamente o armazenamento de arquivos é através da alocação não contígua. Neste esquema cada bloco do arquivo pode estar armazenado num setor distinto da unidade de disco, de forma que o armazenamento físico não corresponde à organização lógica do arquivo.
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 11 – Sistema de Arquivos 22
Alocação não contígua
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 11 – Sistema de Arquivos 23
Gerência de Alocação de Espaço em Disco
• Alocação Indexada
0 1 2
3 4 5
6 7 8
9 10 11
12 13 14
Blo co d eínd ice
310117
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 11 – Sistema de Arquivos 24
Proteção de Acesso
• Lista de Controle de Acesso
U su á r io : M a iaA cesso : Leitura + Escr ita
U su á r io : M ach a d oA cesso : Leitura
U su á r io : M a iaA cesso : Leitura + Escr ita + Execuçã o
U su á r io : M ach a d oA cesso : El im in a ção
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 11 – Sistema de Arquivos 25
Implementação de Caches
• Acesso a disco é bastante lento• Buffer cache minimiza este problema• Quando uma operação é realizada o sistema verifica
se a informação se encontra no buffer cache– Em caso positivo, não é necessário o acesso ao disco– Caso o bloco requisitado não se encontre no cache, a
operação de E/S é realizada e o cache é atualizado