sistemas de arquivos cap 04 (iii unidade)

67
Pearson Education Sistemas Operacionais Modernos 2ª Edição 1 Sistemas Operacionais Prof.: Rodrigo Ronner [email protected]

Upload: faculdade-mater-christi

Post on 05-Jun-2015

1.232 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1

Sistemas Operacionais

Prof.: Rodrigo Ronner

[email protected]

Page 2: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição 2

Sistemas de Arquivos

Capítulo 6

1. Arquivos

2. Diretórios

3. Alocação

4. Gereciamento de Espaço Livre

5. Exemplos de sistemas de arquivos

Page 3: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Arquivos

3

Page 4: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Sistemas de Arquivos

Conceito de arquivo Arquivo – coleção nomeada e abstrata de informações que são

armazenadas em dispositivos de memória secundária.

• Os arquivos são mapeados em dispositivos físicos.

• Forma de armazenamento persistente.

• Do ponto de vista do usuário, é a menor unidade alocável de armazenamento.

• Os arquivos podem representar programas e dados.

• Seu conteúdo pode ser variável e seguindo diferentes padrões aplicados à propósitos específicos. Desde um texto

puro, até uma imagem binária.

• Os arquivos são classificados de acordo com se conteúdo.

– Arquivos texto: sequência de caracteres em linha

– Arquivos fonte: sequência de rotinas e funções

– Arquivos objeto: sequência de informações organizadas em blocos lidos por link editores.

– Arquivos executáveis: Seções de código que o carregador pode levar à memória para

execução.

Page 5: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição 5

Armazenamento da Informação

a Longo Prazo

1. Deve ser possível armazenar uma

quantidade muito grande de informação

2. A informação deve sobreviver ao término do

processo que a usa

3. Múltiplos processos devem ser capazes de

acessar a informação concorrentemente

Page 6: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Metadados (dados sobre dados)

•Metadados são informações especiais sobre os arquivos

–Armazenadas em arquivos e diretórios especiais

–Não podem ser modificadas diretamente pelos usuários

•SO mantém no disco: superbloco com metadados (tabela)

–Localizado no disco (armazenamento auxiliar)

–Ajuda a proteger a integridade do sistema de arquivos

–Possui cópias redundantes em outras partes do disco

–Informações mais importantes do superbloco são:

• Tipo de sistema de arquivos e seu número de blocos

• Localização dos blocos livres da partição e do diretório raiz

• Data e hora da última modificação

• Informações sobre integridade

•SO mantém na RAM: tabela para tratar cada arquivo aberto

–Contém detalhes dos atributos do arquivo

•SO: recebe da aplicação o descritor do arquivo (um índice)

–Número que aponta para a tabela do arquivo aberto 6

Page 7: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Nomeação de Arquivos

• Arquivo é um mecanismo de abstração. Ele

oferece meios de armazenar informações no

disco e de lê-las depois. Isso deve ser feito

de um modo que isole o usuário dos

detalhes sobre como e onde a informação

está armazenada e como os discos na

verdade funcionam.

7

Page 8: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Nomeação de Arquivos

Alguns Sistemas de arquivos distinguem letras maiúsculas de

minúsculas e outros não. O Unix pertence à primeira categoria;

Windows pertence a segunda. Portanto um sistema UNIX pode ter

três arquivos distintos chamado:

• maria

• Maria

• MARIA

No Windows , todos esses nomes referem-se ao mesmo arquivo.

8

Page 9: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Nomeação de Arquivos

Muitos sistemas Operacionais permitem nomes de arquivos com

duas partes separadas por um ponto. Como em “prog.c” A parte que

segue o ponto é chamada extensão.

No UNIX, o tamanho da extensão, se houver fica a critério do

usuário, e um arquivo pode ter até mesmo duas ou mais extensões,

como em homepage.html.zip, em .html indica uma página da web

em HTML e .zip indica que o arquivo (homepage.html.zip foi

comprimido usando o programa zip.

9

Page 10: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição 10

Nomeação de Arquivos

Extensões típicas de arquivos

Page 11: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição 11

Estrutura de Arquivos

• Três tipos de arquivos a) seqüência de bytes

b) seqüência de registros

c) árvore

Page 12: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Tipos de Arquivos

• Embora tecnicamente o arquivo seja uma

sequência de bytes, o SO somente executará

um arquivo se ele tiver um formato

apropriado. O arquivo possui cinco partes:

cabeçalho, texto, dados bits de relocação e

tabela de símbolos

12

Page 13: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição 13

Tipos de Arquivos

(a) Um arquivo executável (b) Um repositório (archive)

Page 14: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição 14

Acesso aos Arquivos

• Acesso sequencial

– lê todos os bytes/registros desde o início

– não pode saltar ou ler fora de seqüência

– conveniente quando o meio era a fita magnética

• Acesso aleatório

– bytes/registros lidos em qualquer ordem

– essencial para sistemas de bases de dados

– ler pode ser …

• mover marcador de arquivo (seek), e então ler ou …

• ler e então mover marcador de arquivo

Page 15: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição 15

Atributos de Arquivos

Possíveis atributos de arquivos

Page 16: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição 16

Operações com Arquivos

1. Create

2. Delete

3. Open

4. Close

5. Read

6. Write

7. Append

8. Seek

9. Get attributes

10.Set Attributes

11.Rename

Page 17: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Operações com Arquivos

• Os SOs realizam diferentes operações. As

mais comuns são:

– Create, cria o arquivo sem dados.

• Usado para anunciar que o arquivo existe e

definir alguns atributos.

– Delete, remove o arquivo.

– Open, realizado antes de usar um arquivo.

• O SO busca o arquivo e põe na memória

principal os atributos e lista de endereços do

disco.

• Alguns SOs limitam o número de arquivos

abertos.

Page 18: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Operações com Arquivos

– Close, realizado quando o processo termina de

usar o arquivo.

• Força a escrita do último bloco do arquivo.

– Read, lê os dados do arquivo na posição atual.

• Deve ser definida quantidade de dados

necessários para fornecer um buffer.

– Write, escreve os dados na posição atual.

• Se a posição atual estiver no final do arquivo,

este sofrerá um aumento no tamanho.

• Se a posição estiver no meio do arquivo, os

dados posteriores serão sobrescritos.

Page 19: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Operações com Arquivos

– Append, chamada restrita de Write.

• Só permite escrita no final do arquivo, não

permite sobrescrevê-lo.

– Seek, busca uma posição no arquivo.

• Modifica o ponteiro que aponta para uma

posição dentro do arquivo.

– Get Attributes, lê os atributos do arquivo.

• O make do Unix verifica os momentos de

alteração dos arquivos fonte e arquivos objeto

usando esta operação.

Page 20: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Operações com Arquivos

– Set Attributes, define atributos do arquivo.

• Alguns atributos podem ser alterados pelo

usuário.

– Rename, modifica o nome do arquivo.

Page 21: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição 21

Arquivos Mapeados em Memória

(a) Um processo segmentado antes de

mapear arquivos em seu espaço de

endereçamento

(b) Processo depois do mapeamento

arquivo abc existente em um segmento

criando novo segmento para xyz

Page 22: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Diretórios

22

Page 23: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Sistemas de Diretórios

• Controla o armazenamento/localização dos

arquivos.

• Pode ser um arquivo também, dependendo

do SO.

• Pode ser implementado de diversas formas.

Page 24: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Nível Único

• Mais simples implementação de um sistema

de diretórios.

• Um único diretório possui todos os arquivos.

– Chamado de diretório-raiz.

• Usado nos primeiros PCs.

– Por possuir apenas um usuário.

Page 25: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Nível Único

A,B e C são os proprietários dos arquivos.

Page 26: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Nível Único

• Vantagens:

– Fácil de implementar.

– Fácil localização de arquivos.

• Desvantagem:

– Sistemas com vários usuários podem criar

arquivos com mesmo nome.

• O arquivo será perdido e sobrescrito com o

novo.

Page 27: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Nível Único

• Não é mais utilizado em PCs por razões

óbvias.

• Pode ser utilizado em sistemas embarcados.

– Devido limitações de usabilidade e hardware.

– Sistemas que existe apenas um único usuário.

Page 28: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Dois Níveis

• Resolve conflitos de usuários.

– Um diretório oferecido para cada usuário.

• Está implicito que o SO identifica o usuário e

já sabe qual é o seu diretório.

• O usuário só tem acesso ao seu diretório.

– Na sua forma mais básica de implementação.

– Pode ser extendido e permitir acesso a

arquivos de outros usuários.

Page 29: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Dois Níveis

Page 30: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Dois Níveis

• Acesso ao diretório de outros usuários permite separar

um diretório para programas do sistema.

– Sem isto, haveria uma cópia dos programas do sistema no

diretório de cada usuário.

• Tem problemas quando o usuário possui muitos

arquivos.

– Um usuário pode querer arquivos com mesmo

nome.

– Uma organização melhor é necessária para

identificar os arquivos.

Page 31: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Diretórios Hierárquicos

• Os arquivos são organizados de acordo com

o usuário.

– É criada uma hierarquia de diretórios.

• É utilizado até hoje.

Page 32: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Diretórios Hierárquicos

Page 33: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Nomes de Caminhos

• Em um sistema de arquivos organizado como

árvore, é necessário um método de

especificar um arquivo.

• São utilizados dois métodos:

– Nome de caminho absoluto.

– Nome de caminho relativo.

Page 34: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Nome de Caminho Absoluto

• Quando o primeiro caractere é um separador,

então o caminho absoluto está sendo usado.

– O caractere separador é específico de cada

SO.

• Windows: \

• Linux: /

Page 35: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Nome de Caminho Relativo

• Usado em conjunto com o conceito de

diretório de trabalho.

– Também chamado de diretório atual.

• Todos os caminhos que não começam na

raiz, são assumidos como relativos ao

diretório atual.

Page 36: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição 36

Uma árvore de diretórios UNIX

Nomes de Caminhos

Page 37: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Nome de Caminho Absoluto

• Representa o caminho da raiz à folha

(arquivo) da árvore.

• Exemplo: /var/www/index.html

– Existe um diretório chamado var

– /var possui um subdiretório chamado www

– O subdiretório www possui um arquivo

chamado index.html

Page 38: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Nome de Caminho Relativo

• Se o diretório atual for /var/www, o arquivo

index.html pode ser acessado diretamente,

sem o uso do caminho absoluto.

• Cada processo possui um diretório de

trabalho.

– Um arquivo pode ser acessado usando o

caminho relativo.

– Permite que um diretório de trabalho seja

modificado sem afetar os outros processos.

Page 39: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Nomes de Caminho

• A maioria dos SOs que suportam sistema de

diretório hierárquico, possuem duas entradas

especiais:

– . (ponto)

• Refere-se ao diretório atual.

– .. (ponto-ponto)

• Refere-se ao diretório pai.

Page 40: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição 40

Operações com Diretórios

1. Create

2. Delete

3. Opendir

4. Closedir

5. Readdir

6. Rename

7. Link

8. Unlink

Page 41: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Operações com Diretórios

• As operações variam para cada SO. As mais comuns

são:

– Create, cria um diretório vazio.

• Exceto pelo ponto e ponto-ponto.

• Geralmente inseridos pelo programa mkdir.

– Delete, remove um diretório.

• O diretório deve estar vazio para ser removido.

• Ponto e ponto-ponto não são contados neste caso.

– Opendir, abre o diretório.

• Antes de ser lido, o diretório deve ser aberto.

• Após a abertura, está pronto para listar os arquivos.

Page 42: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Operações com Diretórios

– Closedir, fecha o diretório.

• Deve ser fechado para liberação de espaço na

tabela interna.

– Readdir, retorna a próxima entrada do diretório

aberto.

• Antes era feito usando a chamada de sistema

read, porém o programador precisaria

conhecer a estrutura interna usada pelo

sistema de diretórios.

• Permite ler o diretório de forma padronizada.

Page 43: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Operações com Diretórios

– Rename, modifica o nome do diretório.

– Link, técnica chamada de ligação (link).

• Permite que um arquivo apareça em mais de

um diretório, ao mesmo tempo.

• A chamada tem como entrada um diretório e

um arquivo existente.

• Incrementa o contador do i-node do arquivo.

Page 44: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Operações com Diretórios

– Unlink, remove uma entrada do diretório.

• Se o arquivo existe somente neste diretório,

o arquivo é fisicamente removido.

• Caso exista em outros diretórios, somente o

caminho especificado é removido.

• O delete na verdade é um unlink.

Page 45: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Alocação de arquivos

45

Page 46: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição 46

Alocação de arquivos

(organização do espaço ocupado)

•Alocação de arquivos em disco:

–Semelhante à alocação na RAM

–Organização dos arquivos contribuem para otimizar acessos

–Localidade (temporal e espacial) continuam valendo

•Modos de alocação mais utilizados são:

–Alocação contígua (AC)

–Alocação não contígua (ANC)

• Lista Encadeada

• Tabela na Memória (tabular)

• Indexada (i-nodes)

•Arquivos aumentam e diminuem de tamanho, por isso:

–AC foi substituída pela ANC

–Mais dinâmica e flexível

Page 47: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

47

Alocação contígua

Page 48: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

48

Alocação contígua

•Mantém dados de arquivos em seções adjacentes no disco

•Localização pelo endereço de início e tamanho do arquivo

•Vantagem:

– Registros sucessivamente dispostos, lógica e fisicamente

•Desvantagem:

– Fragmentação externa devido aos arquivos apagados

– Possível falta de espaço ao criar ou expandir um arquivo

•Uso:

– CD/DVD (permite organização antecipada dos dados)

– Nada impede que seja usada em HDs

Page 49: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

49

ANC por Lista Encadeada

Page 50: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

50

ANC por Lista Encadeada

•Blocos do arquivo ficam aleatoriamente dispostos no disco

•Cada setor armazena um ponteiro para o próximo

– No último setor, o ponteiro é nulo

•Mais fácil achar espaço livre para a gravação de dados

•A busca é sequencial (em uma direção)

– Fragmentação torna as buscas mais lentas

– Usar blocos de setores contíguos aumenta a eficiência

– Busca nas duas direções: lista duplamente encadeada

•Blocos grandes:

– Maior fragmentação interna

– Menos operações com E/S

•Desvantagem:

– Desperdício da área de armazenamento com os ponteiros

Page 51: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

51

ANC por Lista Encadeada usando Tabela na Memória

16

Page 52: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

52

ANC por Lista Encadeada

usando Tabela na Memória

•Blocos do arquivo ficam aleatoriamente dispostos no

disco

•Mantém uma Tabela de Alocação de Blocos (TAB)

– Tabela adicional mantida em disco contiguamente

– Usada em cache na RAM para acelerar acessos

– Um bloco aponta para o próximo bloco, até o último

– Facilita aumentar ou reduzir o tamanho de um arquivo

– Localiza rapidamente blocos livres contíguos (< fragmentação)

– Diminui acessos ao disco para pesquisa

•Busca é sequencial com base na TAB

•Sistema FAT (do DOS) usava essa forma de alocação

Page 53: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

53

ANC Indexada (i-Node)

Page 54: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

54

ANC Indexada (i-Node)

•Blocos do arquivo ficam aleatoriamente dispostos no disco

•i-Node (index node): estrutura de controle de cada arquivo

•Contém um ou mais blocos de índices que apontam para:

– Blocos físicos de dados do arquivo ou

– Outros blocos de índices (que apontam para dados ou índices)

Blocos de índices:

– São percorridos de modo sequencial nas buscas

• Bom desempenho de E/S

• Pouca sobrecarga no SO

– Podem estar na RAM para acelerar a pesquisa dos índices

– Permitem acomodar arquivos de tamanhos variados

– Podem ter até 3 níveis hierárquicos (arquivos grandes)

– Quanto mais níveis, mais acessos ao disco

•Ext2 e NTFS implementam variações dessa forma

Page 55: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Gerenciamento de espaço livre

55

Page 56: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Gerenciamento de espaço livre

• Há, basicamente, 2 modos de controlar os espaços livres

–Lista de livres

–Mapa de bits

• Lista de livres: lista encadeada aponta para blocos livres

–Busca por bloco livre varre a lista e suprime a entrada

–Blocos a ocupar são retirados do início da lista e

–Blocos liberados são anexados ao final da lista

• Mapa de bits: mapa associa um bit a um bloco diretamente

–“0” indica bloco livre; “1” indica bloco ocupado

–É mantida em blocos especiais

–Busca por bloco livre varre rapidamente o mapa (bit :0→1)

• Vantagens do mapa de bits sobre a lista de livres:

–Facilidade para achar blocos livres contíguos e

–Menor sobrecarga

56

Page 57: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Mapa de Bits

• Um mapa de bits é utilizado para representar os

blocos livres.

• Utiliza apenas um bit para representar um bloco

livre.

− 1: Livre

− 0: Alocado

• Também utiliza blocos do disco para armazenar o

mapa.

Page 58: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Mapa de Bits

• Só usa o disco quando o mapa está cheio.

• O mapa mantém os arquivos próximos.

• Pois estão no mesmo mapa.

Page 59: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Mapa de Bits

1 1 0 0 0 0 0 0 0 0 0 1 1 1 0 0

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1

1 1 1 1 1 1 1 1 1 0 0 0 1 1 1 0

1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0

Endereço: 0x10cc00290

0

16

32

48

64

• Representação de um mapa de bits.

Page 60: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Controle de acesso aos dados

(em disco) • Pode ser feito de 3 modos

–Matriz de controle de acesso

–Controle de acesso discricionário

–Compartilhamento

• Matriz de controle de acesso (na prática, não é mais usada):

–Organiza usuários na coluna e arquivos na linha

–Interseção usuário x arquivo: bit=1 marca permissão de acesso

–Difícil gerir com muitos usuários, arquivos e modos de acesso

• Controle discricionário:

–Metadado de cada objeto (um diretório ou um arquivo)

–Especifica quem pode acessar e o tipo de acesso

–Deve ser configurada para cada objeto

• Compartilhamento: permite o acesso através da rede

–Mais prático e seguro trabalhar com grupos em vez de usuários

–Grupo: coleção nomeada de usuários com mesmo perfil

60

Page 61: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Configurando Permissões

61

Page 62: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Proteção e integridade • SO tem ferramentas para proteger os arquivos contra:

–Acessos indevidos e

–Violações de integridade (intencionais ou não)

• Controle de acesso pode ser feito com:

–Autenticação e permissões (ACL: quem pode fazer o quê)

–Criptografia de arquivos

• Integridade pode ser protegida com:

–Discos em RAID

–Cópias de backup

–Sistemas de arquivos log-estruturados (operações atômicas)

• Registram as transações em arquivos de log (histórico)

• Pode reverter (roll back) ou terminar mais tarde (roll forward):

–Sombreamento de páginas (operações atômicas)

• Grava as transações em um novo bloco

• Validada a transação: descarta bloco antigo e habilita o novo

• Pode reverter se houver alguma falha

62

Page 63: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Exemplos de sistemas de

arquivos

63

Page 64: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Exemplos de sistemas de arquivos

EXT3

• O sistema de arquivos EXT3 é uma versão do EXT2;

• O ext3 tem as mesmas características do EXT2, mas com suporte journaling;

• A evolução tornou o EXT3 um sistema de arquivos muito estável e robusto;

• Podemos converter um sistema de arquivos EXT2 para EXT3, adicionado

suporte a journaling, e também podemos converter um sistema de arquivos

EXT3 para EXT2, removendo o suporte a journaling.

OBS: Hoje em dia já está existe o EXT4, sistema de arquivos veloz que está em

seu estágio inicial de desenvolvimento. Ainda faz sentido permanecer um pouco

mais com o EXT3.

64

Page 65: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

ReiserFS

• O sistema de arquivos ReiserFS foi criado recentemente;

• Atualmente quase todas as distribuições Linux o suportam;

• Sua performance é muito boa, principalmente para um número muito grande de arquivos

pequenos;

• ReiserFS também possui suporte a journaling.

LVM

• LVM é um acrônimo para a expressão inglesa Logical Volume Management para especificar um

padrão de gerenciamento de partições em disco IDE/SCSI/FC;

• Foi desenvolvido inicialmente pela IBM, e outras empresa e instituições, como: HP e a Open

Group;

• A implementação LVM cria um grande disco virtual, que pode inclusive ter mais de um

dispositivo de armazenamento , e divide em partições virtuais;

• A vantagem é permitir o redimensionamento das áreas de modo dinâmico, ou seja, com o sistema

operacional sendo utilizado;

• A desvantagem é que por ser um único disco virtual, a recuperação de dados em uma eventual

pane no sistema de armazenamento é bastante prejudicada.

65

Exemplos de sistemas de arquivos

Page 66: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

VISÃO GERAL DA FAT

A FAT está longe de ser o mais simples dos sistemas de arquivos suportados pelo Windows NT. O

sistema de arquivos FAT é caracterizado pela tabela de alocação de arquivos (FAT) que, na verdade, é

uma tabela que reside na parte "mais alta" do volume. Duas cópias da FAT são mantidas para proteger

o volume, caso uma delas seja danificada. Além disso, as tabelas da FAT e o diretório raiz devem ser

armazenados em um local fixo para que os arquivos de inicialização do sistema possam ser

corretamente localizados.

Um disco formatado com a FAT é alocado em clusters, cujo tamanho é determinado pelo tamanho do

volume. Quando um arquivo é criado, uma entrada é gerada no diretório e o primeiro número de

cluster contendo dados é estabelecido. Essa entrada na tabela da FAT indica que esse é o último

cluster do arquivo ou aponta para o próximo cluster.

A atualização da tabela da FAT é muito importante, assim como o tempo gasto. Se a tabela da FAT

não for atualizada regularmente, ela poderá conduzir à perda de dados. Isso leva tempo, pois os

cabeçotes de leitura do disco devem ser reposicionados para a trilha lógica zero da unidade toda vez

que a tabela da FAT for atualizada.

Não há uma organização para a estrutura de diretório da FAT e os arquivos aparecem no primeiro

local aberto na unidade. Além disso, a FAT suporta apenas atributos de arquivo morto, somente

leitura, oculto e de sistema..

66

Exemplos de sistemas de arquivos

Page 67: Sistemas de arquivos cap 04 (iii unidade)

Pearson Education Sistemas Operacionais Modernos – 2ª Edição

Principais características do NTFS

Os conceitos aplicados ao NTFS fizeram com que o Windows NT e versões posteriores do sistema

fossem bem recebidos pelo mercado. Uma dessas características diz respeito ao quesito

"recuperação": em caso de falhas, como o desligamento repentino do computador, o NTFS é capaz de

reverter os dados à condição anterior ao incidente. Isso é possível, em parte, porque, durante o

processo de boot, o sistema operacional consulta um arquivo de log que registra todas as operações

efetuadas e entra em ação ao identificar nele os pontos problemáticos. Ainda neste aspecto, o NTFS

também suporta redundância de dados, isto é, replicação, como o que é feito por sistemas RAID, por

exemplo.

Outra característica marcante do NTFS é o seu esquema de permissões de acesso. O Unix sempre foi

considerado um sistema operacional seguro por trabalhar com o princípio de que todos os arquivos

precisam ter variados níveis de permissões de uso para os usuários. O NTFS também é capaz de

permitir que o usuário defina quem pode e como acessar pastas ou arquivos.

O NTFS também é bastante eficiente no trabalho com arquivos grandes e unidades de discos

volumosos, especialmente quando comparado ao sistema de arquivos FAT. Você vai entender o

porquê no tópico a seguir.

67

Exemplos de sistemas de arquivos