capítulo 11 – sistemas de arquivos - gestÃo - … · sistemas operacionais prof. esp. andré...

17
1 Sistemas Operacionais Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Capítulo 11 – Sistemas de Arquivos 2

Upload: vothu

Post on 13-Oct-2018

257 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Capítulo 11 – Sistemas de Arquivos - GESTÃO - … · Sistemas Operacionais Prof. Esp. André Luís Belini ... Organização de arquivos ... 4 2 10 1 25 20 13 7 50 5

1

Sistemas OperacionaisProf. Esp. André Luís BeliniBacharel em Sistemas de InformaçõesMBA em Gestão Estratégica de Negócios

Capítulo 11 – Sistemas de Arquivos

2

Page 2: Capítulo 11 – Sistemas de Arquivos - GESTÃO - … · Sistemas Operacionais Prof. Esp. André Luís Belini ... Organização de arquivos ... 4 2 10 1 25 20 13 7 50 5

2

3

Introdução

• O armazenamento e a recuperação de informações sãoatividades essenciais para qualquer tipo de aplicação.

• Um processo deve ser capaz de ler e gravar de forma permanente grande volume de dados em dispositivoscomo fitas e discos, além de poder compartilhá-los com outros processos.

• A maneira pela qual o sistema operacional estrutura e organiza estas informações é por intermédio do sistemade arquivos.

4

Arquivo

• Um arquivo é constituído por informações logicamenterelacionadas. Essas informações podem representarinstruções ou dados.

• Um arquivo é um conjunto de registros definidos pelosistema de arquivos, tornando seu conceito abstrato egeneralista.

• Um arquivo é identificado por um nome, composto poruma sequência de caracteres.

• Em alguns S.O., a identificação de um arquivo écomposta por duas partes separadas por um ponto. Aparte após o ponto é a extensão do arquivo.

Page 3: Capítulo 11 – Sistemas de Arquivos - GESTÃO - … · Sistemas Operacionais Prof. Esp. André Luís Belini ... Organização de arquivos ... 4 2 10 1 25 20 13 7 50 5

3

5

Organização de arquivos

• A organização de arquivos consiste em como os seusdados estão internamente armazenados. A estrutura dosdados pode variar em função do tipo de informaçãocontida no arquivo.

• No momento da criação de um arquivo, seu criador podedefinir qual a organização adotada. Esta organizaçãopode ser uma estrutura suportada pelo S.O. ou definidapela própria aplicação.

6

• A forma mais simples de organização de arquivos éatravés de uma sequência não estruturada de bytes(próximo slide). Nesse tipo de organização, o sistema dearquivos não impõe nenhuma estrutura lógica para osdados. A aplicação deve definir toda a organização,estando livre para estabelecer seus próprios critérios.

• A grande vantagem deste modelo é a flexibilidade paracriar diferentes estruturas de dados, porém todo ocontrole de acesso ao arquivo é de inteiraresponsabilidade da aplicação.

Page 4: Capítulo 11 – Sistemas de Arquivos - GESTÃO - … · Sistemas Operacionais Prof. Esp. André Luís Belini ... Organização de arquivos ... 4 2 10 1 25 20 13 7 50 5

4

7

Organização de Arquivos

Byte

(a) Organização não-estruturada

Ana Cláudia Teresa

Beatriz Camila Daniele Patrícia Tina Vanessa

Isabela Maria

Registro

(b) Organização Indexada

8

Métodos de Acesso

• Em função de como o arquivo está organizado, osistema de arquivos pode recuperar registros dediferentes maneiras.

• Inicialmente, nos primeiros S.O., estavam limitados àleitura dos registros na ordem em que eram gravados ea gravação de novos registros só era possível no final doarquivo.

• Esse tipo de acesso era chamando de sequencial, erapróprio da fita magnética.

Page 5: Capítulo 11 – Sistemas de Arquivos - GESTÃO - … · Sistemas Operacionais Prof. Esp. André Luís Belini ... Organização de arquivos ... 4 2 10 1 25 20 13 7 50 5

5

9

Acesso direto

• Permite a leitura/gravação de um registro diretamente nasua posição. Este método é realizado através do número doregistro, que é a sua posição relativa ao início do arquivo.

• No acesso direto não existe restrição à ordem em que osregistros são lidos ou gravados.

• O acesso direto pode ser combinado com o acessosequencial. Com isso é possível acessar diretamente umregistro qualquer de um arquivo e, a partir deste, acessarsequencialmente os demais.

• Um método mais sofisticado, que tem como base o acessodireto, é o chamado acesso indexado ou acesso por chave.Para este acesso, o arquivo deve possuir uma área deíndice onde existam ponteiros para diversos registros.

10

Acesso direto

Registro0

Registro1

Registro2

Registron

Deslocamento dedois registros

Page 6: Capítulo 11 – Sistemas de Arquivos - GESTÃO - … · Sistemas Operacionais Prof. Esp. André Luís Belini ... Organização de arquivos ... 4 2 10 1 25 20 13 7 50 5

6

11

Operações de Entrada / Saída

• O sistema de arquivos disponibiliza um conjunto derotinas que permite às aplicações realizarem operaçõesde E/S, como tradução de nomes em endereços, leiturae gravação de dados e criação/eliminação de arquivos.

Dispositivos

Rotinas de E/ S

Aplicação

Operações de entrada/saída

12

Atributos

• Cada arquivo possui informações denominadasatributos. Os atributos variam dependendo do sistemade arquivos, porém alguns, como tamanho do arquivo,proteção, identificação do criador e data da criação,estão presentes em quase todos os sistemas.

• Atributos como não podem ser modificados.

Page 7: Capítulo 11 – Sistemas de Arquivos - GESTÃO - … · Sistemas Operacionais Prof. Esp. André Luís Belini ... Organização de arquivos ... 4 2 10 1 25 20 13 7 50 5

7

13

Diretórios

• A estrutura de diretórios é como o sistema organiza logicamenteos diversos arquivos contidos em um disco. O diretório é umaestrutura de dados que contém entradas associadas aosarquivos onde cada entrada armazena informações comolocalização física, nome, organização e demais atributos.

• Quando um arquivo é aberto, o S.O. procura a sua entrada naestrutura de diretórios, armazenando as informações sobreatributos e localização do arquivo em uma tabela mantida namemória principal.

• Essa tabela contém todos os arquivos abertos, sendofundamental para aumentar o desempenho das operações com arquivos.

• É importante que ao término do uso de arquivos estes sejamfechados, ou seja, que se libere o espaço na tabela de arquivosaberta.

14

Estrutura de diretórios de nível único

IdentificaçãoProteção

OrganizaçãoLocalização

Atributos

Diretórios Arquivos

Page 8: Capítulo 11 – Sistemas de Arquivos - GESTÃO - … · Sistemas Operacionais Prof. Esp. André Luís Belini ... Organização de arquivos ... 4 2 10 1 25 20 13 7 50 5

8

15

Estrutura de diretórios com dois níveis

Usuário1

Usuário2

Usuário3

Usuárion

Arquivo1

Arquivo2

Arquivo3

Arquivo1

Arquivo1

Arquivo2

Arquivo3

User File Directory(UFD)

Arquivos

16

Estrutura de diretórios em árvore

Usuário1

Usuário2

Usuário3

Usuárion

Diretório Raiz

Diretório1

Diretório2

Arquivo1

Arquivo1

Diretório1

Arquivo1

Arquivo2

Arquivo1

Arquivo2

Arquivo1

Arquivo1

Arquivo2

Page 9: Capítulo 11 – Sistemas de Arquivos - GESTÃO - … · Sistemas Operacionais Prof. Esp. André Luís Belini ... Organização de arquivos ... 4 2 10 1 25 20 13 7 50 5

9

17

Path de um arquivo

Disco C:/

IvanIvanCarlos Paulo

Teste Pessoal

Soma.exe

18

Gerência de Espaço Livre em Disco

• A criação de arquivos em disco exige que o S.O. tenha ocontrole de quais áreas ou blocos no disco estão livres.

• A forma mais simples de implementar uma estrutura deespaços livres é através de uma tabela denominadamapa de bits (bit map). Cada entrada na tabela éassociada a um bloco do disco representado por um bit,podendo assumir valor igual a 0 (bloco livre) ou 1 (blocoocupado).

• Uma segunda maneira de realizar este controle é comuma estrutura de lista encadeada de todos os blocoslivres do disco.

Page 10: Capítulo 11 – Sistemas de Arquivos - GESTÃO - … · Sistemas Operacionais Prof. Esp. André Luís Belini ... Organização de arquivos ... 4 2 10 1 25 20 13 7 50 5

10

19

• Para que isto seja possível, cada bloco possui uma áreareservada para armazenamento do endereço dopróximo bloco. A partir do primeiro bloco livre é, então,possível o acesso sequencial aos demais de formaencadeada.

• Este esquema apresenta algumas restrições seconsiderarmos que, além do espaço utilizado no blococom informação de controle, o algoritmo de busca deespaço livre sempre deve realizar uma pesquisasequencial na lista.

• Uma outra solução leva em consideração que blocoscontíguos são geralmente alocados ou liberadossimultaneamente.

20

Alocação de espaço em disco

11001101

11100000

.

.

.

01110100

10000111

(a) Mapa de bits

Início

(b) Lista encadeada

Bloco Contador

4 2

10 1

25 20

13 7

50 5

© Tabela de blocos livres

Page 11: Capítulo 11 – Sistemas de Arquivos - GESTÃO - … · Sistemas Operacionais Prof. Esp. André Luís Belini ... Organização de arquivos ... 4 2 10 1 25 20 13 7 50 5

11

21

Gerência de alocação de espaço em disco

Alocação contígua:

• A alocação contígua consiste em armazenar um arquivoem blocos sequencialmente dispostos no disco.

• O acesso a arquivos dispostos contiguamente no disco ébastante simples tanto para a forma sequencial quantopara a direta. Seu principal problema é a alocação deespaço livre para novos arquivos. Caso um arquivo devaser criado com determinado tamanho, é necessárioexistir uma quantidade suficiente de blocos contíguos nodisco para realizar a alocação.

22

Principais estratégias

• First-Fit: O primeiro segmento livre com tamanhosuficiente para alocar o arquivo é selecionado

• Best-Fit: seleciona o menor segmento livre disponívelcom tamanho suficiente para armazenar o arquivo.

• Worst-Fit: O maior segmento é alocado. Mais uma vez abusca em toda a lista se faz necessária, a menos queexista uma ordenação por tamanho.

Page 12: Capítulo 11 – Sistemas de Arquivos - GESTÃO - … · Sistemas Operacionais Prof. Esp. André Luís Belini ... Organização de arquivos ... 4 2 10 1 25 20 13 7 50 5

12

23

Desfragmentação

Área de trabalho

24

Alocação Encadeada

• Na alocação encadeada, um arquivo pode ser organizadocomo um conjunto de blocos ligados logicamente no disco,independente da sua localização física. Cada bloco devepossuir um ponteiro para o bloco seguinte do arquivo, eassim sucessivamente.

Início

0 1 2

3 4 5

6 7 8

9 10 11

12 13 14

Arquivo Bloco

A.TXT 6

. . . . . .

. . . . . .

. . . . . .

. . . . . .

Page 13: Capítulo 11 – Sistemas de Arquivos - GESTÃO - … · Sistemas Operacionais Prof. Esp. André Luís Belini ... Organização de arquivos ... 4 2 10 1 25 20 13 7 50 5

13

25

Alocação Indexada

• A alocação indexada soluciona uma das principaislimitações da alocação encadeada, que é aimpossibilidade do acesso direto aos blocos dosarquivos. O princípio desta técnica é manter os ponteirosde todos os blocos do arquivo em uma única estruturadenominada bloco de índice

• A alocação indexada, além de permitir o acesso diretoaos blocos do arquivo, não utiliza informações decontrole nos blocos de dados, como existente naalocação encadeada.

26

Alocação Indexada

0 1 2

3 4 5

6 7 8

9 10 11

12 13 14

Bloco deíndice

310117

Page 14: Capítulo 11 – Sistemas de Arquivos - GESTÃO - … · Sistemas Operacionais Prof. Esp. André Luís Belini ... Organização de arquivos ... 4 2 10 1 25 20 13 7 50 5

14

27

Proteção de Acesso

• Qualquer sistema de arquivos deve possuir mecanismospróprios para proteger o acesso às informações gravadasem disco e fitas, além de possibilitar o compartilhamentode arquivos entre usuários.

• O tipo de acesso a arquivos é implementado mediante aconcessão ou não dos diferentes acessos que podem serrealizados, como leitura (read), gravação (write),execução (execute) e eliminação (delete).

28

Senha de acesso

• A associação de uma senha de acesso a um arquivo éum mecanismo bastante simples.

• Como cada arquivo possui apenas uma senha, o acessoé liberado ou não na sua totalidade. Isto significa que nãoé possível determinar quais tipos de operação podem ounão ser concedidas. Outra desvantagem deste método éa dificuldade de compartilhamento de arquivos, pois,além do dono do arquivo, todos os demais usuáriosteriam que conhecer a senha de acesso.

Page 15: Capítulo 11 – Sistemas de Arquivos - GESTÃO - … · Sistemas Operacionais Prof. Esp. André Luís Belini ... Organização de arquivos ... 4 2 10 1 25 20 13 7 50 5

15

29

Grupos de usuários

• A proteção baseada em grupos de usuários éimplementada por diversos S.O.

• Este tipo de proteção tem como princípio a associação decada usuário do sistema a um grupo. Os grupos deusuários são organizados logicamente com o objetivo decompartilhar arquivos e diretórios – os usuários quedesejam compartilhar arquivos entre si devem pertencera um mesmo grupo.

30

Proteção por grupos de usuários

DADOS.TXT

Owner

Group

All

LeituraEscrita

ExecuçãoEliminação

Leitura

Page 16: Capítulo 11 – Sistemas de Arquivos - GESTÃO - … · Sistemas Operacionais Prof. Esp. André Luís Belini ... Organização de arquivos ... 4 2 10 1 25 20 13 7 50 5

16

31

Lista de Controle de Acesso

• A lista de Controle de Acesso (ACL) consiste em umalista associada a cada arquivo, onde são especificadosquais os usuários e os tipos de acesso permitidos.

• Nesse caso, quando um usuário tenta acessar umarquivo, o S.O. verifica se a lista de controle autoriza aoperação desejada.

32

Lista de Controle de Acesso

Usuário: MaiaAcesso: Leitura + Escrita

Usuário: MachadoAcesso: Leitura

Usuário: MaiaAcesso: Leitura + Escrita + Execução

Usuário: MachadoAcesso: Eliminação

Page 17: Capítulo 11 – Sistemas de Arquivos - GESTÃO - … · Sistemas Operacionais Prof. Esp. André Luís Belini ... Organização de arquivos ... 4 2 10 1 25 20 13 7 50 5

17

33

Implementação de Caches

• O acesso a disco é bastante lento se comparado aoacesso à memória principal, devido à arquitetura dosdiscos magnéticos. Este é o principal motivo dasoperações de E/S com discos serem um problema para odesempenho do sistema.

• Para minimizar esse problema, a maioria dos S.O.implementa a técnica de buffer cache.

• Neste esquema, o S.O. reserva uma área da memóriapara que se tornem disponíveis caches utilizados emoperações de acesso ao disco.

Prof. André Luís Belini E-mail: [email protected]

Blog: http://profandreluisbelini.wordpress.com/