Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/aulas... · 2010-07-28 ·...

32
Sistemas Operacionais 1 BC 1518 - Sistemas Operacionais Sistema de Arquivos Sistema de Arquivos (aula 10 (aula 10 Parte Parte 2) 2) Prof. Marcelo Z. do Nascimento Prof. Marcelo Z. do Nascimento

Transcript of Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/aulas... · 2010-07-28 ·...

Page 1: Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/aulas... · 2010-07-28 · Sistema de Arquivos (aula 10 –Parte 2) ... Gerenciamento de espaço ... ufabc_SO_Aula12_Gerenciamento

Sistemas Operacionais

1

BC 1518 - Sistemas Operacionais

Sistema de ArquivosSistema de Arquivos(aula 10 (aula 10 –– ParteParte 2)2)

Prof. Marcelo Z. do NascimentoProf. Marcelo Z. do Nascimento

Page 2: Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/aulas... · 2010-07-28 · Sistema de Arquivos (aula 10 –Parte 2) ... Gerenciamento de espaço ... ufabc_SO_Aula12_Gerenciamento

Sistemas Operacionais

2

Roteiro

• Gerência de espaço em disco

• Cópia de segurança do sistema de arquivo

• Confiabilidade

• Desempenho do SA

• Leituras Sugeridas

Page 3: Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/aulas... · 2010-07-28 · Sistema de Arquivos (aula 10 –Parte 2) ... Gerenciamento de espaço ... ufabc_SO_Aula12_Gerenciamento

Sistemas Operacionais

3

Gerenciamento de espaço em disco

• O SO pode utilizar uma das duas estratégias possíveis para armazenar um arquivo de n bytes:

– São alocados ao arquivo n bytes consecutivos do espaço disponível em disco;

– Arquivo é espalhado por um número de blocos não necessariamente contíguos � blocos com tamanho fixo;• A maioria dos sistemas de arquivos utilizam essa estratégia;

.Algo próximo ao que ocorre na memória.

ARQUIVO CRESCE

Page 4: Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/aulas... · 2010-07-28 · Sistema de Arquivos (aula 10 –Parte 2) ... Gerenciamento de espaço ... ufabc_SO_Aula12_Gerenciamento

Sistemas Operacionais

4

Tamanho do bloco

• Qual é o tamanho ideal para um bloco?– Se for muito grande, ocorre desperdício de espaço;

– Se for muito pequeno, um arquivo irá ocupar muitos blocos, tornando o acesso/busca lento;

• O tamanho do bloco tem uma grande influência na eficiência de utilização e de acesso ao disco(desempenho).

• Exemplos:

• UNIX -> 1kB;

• MS-DOS -> 512 bytes a 32 kB;

– Tamanho do bloco depende do tamanho do disco;

Gerenciamento de espaço em disco

Page 5: Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/aulas... · 2010-07-28 · Sistema de Arquivos (aula 10 –Parte 2) ... Gerenciamento de espaço ... ufabc_SO_Aula12_Gerenciamento

Sistemas Operacionais

5

Monitoramento dos blocos livres

• Contém a localização dos blocos livres;

• Lista encadeada de blocos;

• Última entrada da lista armazena um ponteiro nulopara indicar que náo há mais lista de blocos livres;

• Vantagens: • (a)Requer menos espaço se existem poucos blocos livres (disco quase cheio);

• (b)armazena apenas um bloco de ponteiros na memória;

• Desvantagem:• Precisa de mais espaço se houver um grande conjunto de blocos livres (disco quase vazio);

Gerenciamento de espaço em disco

Page 6: Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/aulas... · 2010-07-28 · Sistema de Arquivos (aula 10 –Parte 2) ... Gerenciamento de espaço ... ufabc_SO_Aula12_Gerenciamento

Sistemas Operacionais

6

Monitoramento dos blocos livres

• Exemplo:

42

136

41

48

310

230

162

214

160

216

516

� �

NULL

��

Lista

Exemplo: Disco 16 Gb – lista de 16.794 blocos

Gerenciamento de espaço em disco

Page 7: Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/aulas... · 2010-07-28 · Sistema de Arquivos (aula 10 –Parte 2) ... Gerenciamento de espaço ... ufabc_SO_Aula12_Gerenciamento

Sistemas Operacionais

7

–Mapa de bits:

•contém um bit para cada bloco do sistema de

arquivos;

•Cada bloco pode armazenar número de 32 bits;

•Vantagem:

• o sistema de arquivo pode determinar rapidamente se

há blocos contíguos disponíveis em certa localização;

•Desvantagem:

• Terá que pesquisar o mapa de bits inteiro para

encontrar um bloco livre, resultando em sobrecarga de

execução;

Gerenciamento de espaço em disco

Page 8: Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/aulas... · 2010-07-28 · Sistema de Arquivos (aula 10 –Parte 2) ... Gerenciamento de espaço ... ufabc_SO_Aula12_Gerenciamento

Sistemas Operacionais

8

Bitmap100110110110

011011011111

101011011011

011011011011

111011101110

110111110111

��

Blocos livres = 0Blocos ocupados = 1ou vice-versa;

Gerenciamento de espaço em disco

Page 9: Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/aulas... · 2010-07-28 · Sistema de Arquivos (aula 10 –Parte 2) ... Gerenciamento de espaço ... ufabc_SO_Aula12_Gerenciamento

Sistemas Operacionais

9

Cópia de segurança do sistema de arquivo

•Danos causados ao sistema de arquivos podem

ser desastrosos;

•Para um sistema de arquivos de um computador

que estiver irrecuperavelmente perido, seja por

causa de hardware ou software, a restauração

da informação será muito difícil;• Restaurar informações pode, e geralmente é, custoso,

difícil e, em muitos casos, impossível;

•Sistemas de arquivos são projetados para

proteger as informações de danos lógicos e não

físicos;

Page 10: Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/aulas... · 2010-07-28 · Sistema de Arquivos (aula 10 –Parte 2) ... Gerenciamento de espaço ... ufabc_SO_Aula12_Gerenciamento

Sistemas Operacionais

10

• Backups – Cópias de segurança

– Cópia de um arquivo ou conjunto de arquivos

mantidos por questão de segurança;

• Mídia: normalmente fitas magnéticas;

– Razões :

• Recuperar de desastres: problemas físicos com disco;

• Recuperar de “estupidez”: usuários que

acidentalmente apagam seus arquivos;

– Alguns SOs criam um diretório conhecido como

Lixeira (diretório especial – recycle bin): arquivos

apagados são armazenados nesse diretório;

Cópia de segurança do sistema de arquivo

Page 11: Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/aulas... · 2010-07-28 · Sistema de Arquivos (aula 10 –Parte 2) ... Gerenciamento de espaço ... ufabc_SO_Aula12_Gerenciamento

Sistemas Operacionais

11

• Estratégias utilizadas para backup:– Física: a cópia se inicia no bloco 0 e termina somente no último bloco (independentemente se existem ou não arquivos nesses blocos);

• Desvantagens:

– Copia blocos ainda não utilizados;

– Possibilidade de copiar blocos com defeitos;

– Difícil restaurar um determinado diretório;

• Vantagens:

– Simples;

• Deve-se fazer cópias de segurança de todo o sistema de arquivo ou parte dele?– Fazer cópia apenas de diretórios específicos e de tudo que está neles;

Cópia de segurança do sistema de arquivo

Page 12: Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/aulas... · 2010-07-28 · Sistema de Arquivos (aula 10 –Parte 2) ... Gerenciamento de espaço ... ufabc_SO_Aula12_Gerenciamento

Sistemas Operacionais

12

– Lógica: inicia-se em um diretório específico e recursivamente copia seus arquivos e diretórios;

– A idéia é copiar somente os arquivos (diretórios) que foram modificados;• Cópias incrementais;

– Cópia completa (semanal ou mensal) e fazer uma cópia diária somente dos arquivos modificados desde a última cópia completa.

• Vantagem:

– Facilita a recuperação de arquivos ou diretórios específicos;

• Forma mais comum de backup;

Cópia de segurança do sistema de arquivo

Page 13: Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/aulas... · 2010-07-28 · Sistema de Arquivos (aula 10 –Parte 2) ... Gerenciamento de espaço ... ufabc_SO_Aula12_Gerenciamento

Sistemas Operacionais

13

• Um sistema de arquivos a ser copiado (Ex. UNIX)– Os quadrados são diretórios e os círculos são arquivos– Os itens sombreados foram modificados desde a últimacópia

– Cada diretório e arquivo rotulado por seu número de i-node

Cópia de segurança do sistema de arquivo

Page 14: Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/aulas... · 2010-07-28 · Sistema de Arquivos (aula 10 –Parte 2) ... Gerenciamento de espaço ... ufabc_SO_Aula12_Gerenciamento

Sistemas Operacionais

14

1 fase – arquivos e diretórios modificados foram marcados;

2 fase - desmarca qualquer diretório que não tenha arquivos ou diretórios modificados dentro deles;

3 fase – varrer os i-nodes e copiar todos os diretórios que estiverem marcados para cópia;

4 fase – arquivos marcados são copiados;

Cópia de segurança do sistema de arquivo

Page 15: Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/aulas... · 2010-07-28 · Sistema de Arquivos (aula 10 –Parte 2) ... Gerenciamento de espaço ... ufabc_SO_Aula12_Gerenciamento

Sistemas Operacionais

15

Mapas de bits usados pelo algoritmo de cópia lógica

Cópia de segurança do sistema de arquivo

Page 16: Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/aulas... · 2010-07-28 · Sistema de Arquivos (aula 10 –Parte 2) ... Gerenciamento de espaço ... ufabc_SO_Aula12_Gerenciamento

Sistemas Operacionais

16

• Se o sistema cair antes que todos os blocos

alterados tenham sido escritos, o sistema de

arquivo pode ficar no estado inconsistente.

• Os SOs possuem diferentes programas utilitários

para lidar com inconsistências:

– UNIX: fsck;

– Windows: scandisk;

• Técnicas que buscam utilizar a redundância interente

do sistema de arquivos

Inconsistência de dados

Confiabilidade

Page 17: Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/aulas... · 2010-07-28 · Sistema de Arquivos (aula 10 –Parte 2) ... Gerenciamento de espaço ... ufabc_SO_Aula12_Gerenciamento

Sistemas Operacionais

17

• FSCK (file system checker) baseado em blocos:

– O programa constrói 2 tabelas;

• cada qual com um contador (inicialmente com valor 0) para cada bloco;

– Os contadores da 1 tabela registram quantas vezes cada bloco está presente em um arquivo;

– os contadores da 2 tabela registram quantas vezes cada bloco está presente na lista de blocos livres;

Confiabilidade

Page 18: Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/aulas... · 2010-07-28 · Sistema de Arquivos (aula 10 –Parte 2) ... Gerenciamento de espaço ... ufabc_SO_Aula12_Gerenciamento

Sistemas Operacionais

18

• FSCK (file system checker) baseado em blocos:

– Lendo o i-node, o programa constrói uma lista com todos os blocos utilizados por um arquivo (incrementa contadores da 1ª tabela);

– Lendo a lista de bloco livres, o programa verifica quais blocos não estão sendo utilizado (incrementa contadores da 2ª tabela);

Confiabilidade

Page 19: Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/aulas... · 2010-07-28 · Sistema de Arquivos (aula 10 –Parte 2) ... Gerenciamento de espaço ... ufabc_SO_Aula12_Gerenciamento

Sistemas Operacionais

19

a) 1 1 0 1 010 11 1 1 1 10 0 0

0 0 1 0 101 00 0 0 0 01 1 1

Blocos em uso

Blocos livres

0 15

Se problemas acontecerem, podemos ter as seguintes situações:

Defeito: Bloco perdido (missing block)Solução: colocá-lo na lista de livres

b) 1 1 0 1 010 11 1 1 1 10 0 0

0 0 0 0 101 00 0 0 0 01 1 1

Blocos em uso

Blocos livres

0 152

Exemplo: 1º Caso

OCUPA ESPAÇO

Confiabilidade

Page 20: Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/aulas... · 2010-07-28 · Sistema de Arquivos (aula 10 –Parte 2) ... Gerenciamento de espaço ... ufabc_SO_Aula12_Gerenciamento

Sistemas Operacionais

20

a) 1 1 0 1 010 11 1 1 1 10 0 0

0 0 1 0 101 00 0 0 0 01 1 1

Blocos em uso

Blocos livres

0 15

Se problemas acontecerem, podemos ter as seguintes situações:

Bloco duplicado na lista de livresSolução: reconstruir a lista

b) 1 1 0 1 010 11 1 1 1 10 0 0

0 0 1 0 102 00 0 0 0 01 1 1

Blocos em uso

Blocos livres

0 154

Exemplo: 2º Caso

Confiabilidade

Page 21: Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/aulas... · 2010-07-28 · Sistema de Arquivos (aula 10 –Parte 2) ... Gerenciamento de espaço ... ufabc_SO_Aula12_Gerenciamento

Sistemas Operacionais

21

a) 1 1 0 1 010 11 1 1 1 10 0 0

0 0 1 0 101 00 0 0 0 01 1 1

Blocos em uso

Blocos livres

0 15

Se problemas acontecerem, podemos ter as seguintes situações:

Bloco duplicado na lista de “em uso” (dois arquivos)Problemas: - Se um arquivo for removido, o bloco vai estar nas duas listas;- Se ambos forem removidos, o bloco vai estar na lista de livres duas vezes;Solução: alocar um bloco livre, copiar para esse bloco o conteúdo do bloco 5, e inserir cópia em um dos dois arquivos;

b) 1 1 0 1 020 11 1 1 1 10 0 0

0 0 1 0 101 00 0 0 0 01 1 1

Blocos em uso

Blocos livres

0 155

3ºCaso

Mesmo bloco de dados em 2 arquivos

Confiabilidade

Page 22: Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/aulas... · 2010-07-28 · Sistema de Arquivos (aula 10 –Parte 2) ... Gerenciamento de espaço ... ufabc_SO_Aula12_Gerenciamento

Sistemas Operacionais

22

• Ler uma palavra na memória pode levar uns 10 ns, a leitura em um disco rígido pode chegar a 10 MB/s, que é 40 vezes mais lento;

• Problemas de desempenho no acesso a disco:

– Movimentação do disco;

– Movimentação do braço;

• Técnicas para otimizar o acesso:

• Caching;

• Leitura prévia de blocos;

• Reduzir a quantidade de movimentos do braço do disco;

Desempenho do SA

Page 23: Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/aulas... · 2010-07-28 · Sistema de Arquivos (aula 10 –Parte 2) ... Gerenciamento de espaço ... ufabc_SO_Aula12_Gerenciamento

Sistemas Operacionais

23

• Técnica mais utilizada para acesso ao disco:• Cache de bloco ou buffer cache;

– Cache: um conjunto de blocos que pertencem logicamente ao disco, mas são colocados na memória para melhorar o desempenho do sistema (reduzir acesso em disco);

• Quando um bloco é requisitado, o sistema verifica se o bloco não está no cache:

–se estiver => o acesso é realizado sem necessidade de ir até o disco;

–caso contrário =>o bloco é copiado do disco

Desempenho do SA

Page 24: Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/aulas... · 2010-07-28 · Sistema de Arquivos (aula 10 –Parte 2) ... Gerenciamento de espaço ... ufabc_SO_Aula12_Gerenciamento

Sistemas Operacionais

24

• Para se carregar um novo bloco no cache =>

poderá ser necessário remover um dos blocos,

reescrevendo-o no disco caso tenha sido

modificado;

– Necessidade de troca de blocos (semelhante à troca de

páginas);

– Algoritmos empregados em memória paginada podem ser

utilizados;

– O algoritmo mais utilizado é o LRU (least recently used);

– Algumas SO integram a cache de buffer e a cache de

páginas da memória.

Desempenho do SA

Page 25: Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/aulas... · 2010-07-28 · Sistema de Arquivos (aula 10 –Parte 2) ... Gerenciamento de espaço ... ufabc_SO_Aula12_Gerenciamento

Sistemas Operacionais

25

• Importante: Não convém manter blocos de dados no cache por um longo tempo antes de escrevê-los de volta ao disco (modificado);

• SO realizam update dos blocos modificados para o disco de tempos em tempos;– UNIX � a cada 30 segundos;– MS-DOS � copia o bloco para o disco assim que ocorra uma modificação (cache write-through)

Desempenho do SA

Page 26: Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/aulas... · 2010-07-28 · Sistema de Arquivos (aula 10 –Parte 2) ... Gerenciamento de espaço ... ufabc_SO_Aula12_Gerenciamento

Sistemas Operacionais

26

• Leitura prévia do bloco: transferir os blocos para a cache antes de serem requisitados para aumentar a taxa de acertos;

– Essa estratégia só funciona quando os arquivos que estejam sendo lidos seqüencialmente;

– Arquivos aleatórios piora a situação, poiscarrega blocos não usados e remove blocospotencialmente úteis da cache;

Desempenho do SA

Page 27: Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/aulas... · 2010-07-28 · Sistema de Arquivos (aula 10 –Parte 2) ... Gerenciamento de espaço ... ufabc_SO_Aula12_Gerenciamento

Sistemas Operacionais

27

• Redução do movimento do braço do disco:• técnica que coloca os blocos que são mais prováveis de serem acessados próximos uns dos outros em seqüência (mesmo cilindro do disco);

• O gerenciamento do disco é feito por grupos de blocos consecutivos e não somente por blocos;

Desempenho do SA

Page 28: Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/aulas... · 2010-07-28 · Sistema de Arquivos (aula 10 –Parte 2) ... Gerenciamento de espaço ... ufabc_SO_Aula12_Gerenciamento

Sistemas Operacionais

28

• Para sistemas que utilizam os i-nodes, são necessários dois acessos: uma para o bloco e outro para o i-node;

• Três estratégias podem ser utilizadas para armazenamento dos i-nodes:

– Os i-nodes são colocados no início do disco;– Os i-nodes são colocados no meio do disco;– Dividir o disco em grupos de cilindros, nos quais cada cilindro tem seus próprios i-nodes, blocos e lista de blocos livres (bitmap);

Desempenho do SA

Page 29: Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/aulas... · 2010-07-28 · Sistema de Arquivos (aula 10 –Parte 2) ... Gerenciamento de espaço ... ufabc_SO_Aula12_Gerenciamento

Sistemas Operacionais

29

1. I-nodes colocados no início do disco2. Disco dividido em grupos de cilindros cada qual com

seus próprios blocos e i-nodes

Desempenho do SA

Page 30: Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/aulas... · 2010-07-28 · Sistema de Arquivos (aula 10 –Parte 2) ... Gerenciamento de espaço ... ufabc_SO_Aula12_Gerenciamento

Sistemas Operacionais

30

Sumário

• Gerência de espaço em disco:

– Monitoramento de blocos livres

– Mapa de bits

• Cópia de segurança do sistema de arquivo:

– Backup físico e lógico

• Confiabilidade:

– Scandisk

• Desempenho do SA

Page 31: Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/aulas... · 2010-07-28 · Sistema de Arquivos (aula 10 –Parte 2) ... Gerenciamento de espaço ... ufabc_SO_Aula12_Gerenciamento

Sistemas Operacionais

31

• Silberschatz, A., Galvin, P. B. Gagne, G. Sistemas Operacionais com Java. 7º edição. Editora Campus, 2008 .

• TANENBAUM, A. Sistemas Operacionais Modernos. Rio de Janeiro: Pearson, 3 ed. 2010

Leituras Sugeridas

Page 32: Sistema de Arquivoshostel.ufabc.edu.br/~marcelo.nascimento/BC1518/aulas... · 2010-07-28 · Sistema de Arquivos (aula 10 –Parte 2) ... Gerenciamento de espaço ... ufabc_SO_Aula12_Gerenciamento

Sistemas Operacionais

32

Acesse o link abaixo:

http://hostel.ufabc.edu.br/~marcelo.nascimento/

Obrigado!!!

Notas de Aula