A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Sistemas Operacionais Adriana Vettorazzo

Apresentações semelhantes


Apresentação em tema: "Sistemas Operacionais Adriana Vettorazzo"— Transcrição da apresentação:

1 Sistemas Operacionais Adriana Vettorazzo
Sistema de Arquivos Sistemas Operacionais Adriana Vettorazzo

2 Funções de um SO Gerência de Processos Gerência de Memória
Gerência de Arquivos Gerência de I/O

3 Introdução Os arquivos são gerenciados pelo sistema operacional e é mediante a implementação de arquivos que o sistema operacional estrutura e organiza as informações. A parte do sistema responsável pela gerência é denominada sistema de arquivo que é a parte mais visível do sistema operacional pois é uma atividade freqüentemente realizada pelos usuários. Deve ocorrer de maneira uniforme independente dos diferentes dispositivos de armazenamento.

4 Introdução O Sistema de Arquivos é a parte do SO mais visível para os usuários; Arquivos são normalmente implementados a partir de discos magnéticos; Como um acesso a disco demora cerca de vezes mais que um acesso à memória, são necessárias estruturas de dados e algoritmos que otimizem os acessos ao disco.

5 Introdução Sistemas de Arquivos implementam um recurso em software que não existe em hardware. O Hardware oferece apenas espaço em disco na forma de setores para serem acessados individualmente de forma aleatória.

6 Introdução Fazendo analogias, o sistema de arquivos assemelha-se à organização de uma biblioteca; O bibliotecário (sistema operacional) organiza os livros (arquivos) por assuntos (diretórios); A organização deve ser de tal forma que a busca (métodos de busca) seja eficiente ; O armazenamento é feito de forma que se tenha uma economia de espaço na prateleira (dispositivos de armazenamento secundário);

7 Tipos de Arquivos Diferentes tipos de informações podem ser armazenados em um arquivo: programas fonte, texto, dados numéricos, som, imagem, vídeo, etc; Cada arquivo possui uma estrutura interna, conforme sua aplicação; O SO limita-se a conhecer as informações contidas no Registro Descritor do Arquivo;

8 No início.... Sistemas baseados em Fitas

9 Sistemas baseados em Fita
No início cada arquivo era mapeado para uma única fita; (desperdício de espaço); Para resolver o desperdício, foi desenvolvido o sistema de arquivamento Multi-volume; (vários arquivos em uma única fita);

10 Sistemas baseados em Fita
Para acessar precisava do nome do arquivo e sua posição na fita. Para um programa poder trabalhar simultaneamente com dois arquivos, eles tinham que estar em fitas diferentes.

11 Sistemas baseados em Disco

12 Sistemas baseados em Disco
Um disco é dividido em Trilhas; Uma trilha é dividido em Setores; Possuem discos sobrepostos; SO trata o disco como um grande vetor unidimensional de blocos numerados de 0 até N-1;

13 Sistemas baseados em Disco
Para acessar um um setor: informar face, trilha e setor desejado as cabeças de leitura e gravação são deslocadas até a trilha correta (tempo de seek), o cabeçote da face correta é selecionado eletronicamente; esperar até o setor desejado passar por baixo do cabeçote (tempo de latência);

14 Sistemas baseados em Disco

15 Hierarquia de Dados

16 Hierarquia de Dados Informações são armazenadas em computadores segundo uma hierarquia de dados: Campo: é um grupo de caracteres (nome, endereço, nr de telefone); Registro: é um conjunto de Campos; Arquivo: é um grupo de registros relacionados; O nível mais alto é o Sistema de Arquivo que são coleções de arquivos ou dados. Volume: Representa uma unidade de armazenamento de dados.

17 Hierarquia de Dados

18 Hierarquia de Dados Pastas ou diretórios
Além da estrutura externa, ainda é necessário adaptarmos internamente o espaço, visando melhor organização e otimização do local.

19 Hierarquia de Dados Pastas ou diretórios
Pegando como exemplo o edifício mencionado anteriormente, ainda seria necessário que os andares (comparados a partições de um meio físico) fossem divididos em apartamentos.

20 Hierarquia de Dados Pastas ou diretórios
Esses seriam considerados pastas, numa visão computacional. A divisão interna dos apartamentos (cozinha, quarto, sala) as subpastas.

21 Hierarquia de Dados Arquivos – Dados que geram funcionalidades
Os drives e as pastas servem apenas para organizar uma estrutura. O que tornará o sistema de arquivos funcional serão os arquivos, os quais estarão abrigados dentro de locais específicos.

22 Hierarquia de Dados Arquivos – Dados que geram funcionalidades
Alguns deverão estar sempre no mesmo local (arquivos que são organizados pelo próprio sistema operacional); Outros consistem em dados que seguem o livre arbítrio do usuário (arquivos de texto, planilhas, imagens, instalações personalizadas de programas, etc.).

23 Hierarquia de Dados Arquivos – Dados que geram funcionalidades
Os arquivos poderiam ser comparados a determinadas mobílias e objetos, muitos exigem um local específico dentro da estrutura outros não. (ex.: um chuveiro), Isso também ocorre no computador, em que determinados arquivos devem constar em pastas específicas (configurações do sistema operacional seria um bom exemplo), e outros podem ser submetidos às decisões do utilizador (arquivos pessoais, programas, entre outros).

24 Hierarquia de Dados

25 Arquivo São recipientes que contém dados
Coleção de dados relacionados entre si Referenciados através de nomes Possuem atributos mantidos pelo SO como: tipo momento da criação tamanho nome do criador

26 Identificação de Arquivo
É identificado por meio de um nome, formado por uma seqüência de caracteres. A identificação de um arquivo é composta por duas partes separadas por um ponto, a parte após o ponto é chamada extensão do arquivo e serve para identificar o conteúdo Nomearq.ext

27 Tipos de Arquivos Cada arquivo possui uma estrutura interna, conforme sua aplicação: Um arquivo texto (.doc) é composto por uma sequência de caracteres organizados em linhas e parágrafos um programa executável é uma sequência de bytes representando instruções em código de máquina um programa fonte é uma sequência de caracteres que representam comandos de uma linguagem de programação E como vimos...o SO limita-se a conhecer somente as informações contidas no Registro Descritor.

28 Tipos de Arquivos arquivo.doc arquivo.cob arquivo.exe arquivo.obj
Extensão Descrição arquivo.doc arquivo.cob arquivo.exe arquivo.obj arquivo.pas arquivo.txt arquivo.mp3 arquivo.dll arquivo.cdr Arquivo de texto Arquivo fonte em Cobol Arquivo executável Arquivo objeto Arquivo fonte em Pascal Arquivo texto Arquivo de música Arquivo de biblioteca dinâmica Arquivo Corel Draw - vetorial

29 Sistemas de Arquivos Um SA organiza arquivos e gerencia o acesso aos dados. Eles são responsáveis por: Gerenciamento de arquivos; Gerenciamento de armazenamento; Mecanismos de integridade do arquivo; Métodos de acesso

30 Sistemas de Arquivos Gerenciamento de arquivos
Fornecer mecanismos para que os arquivos sejam armazenados, compartilhados e fiquem em segurança.

31 Sistemas de Arquivos Gerenciamento de armazenamento
Alocar espaço para arquivos em dispositivos de armazenamento secundário

32 Sistemas de Arquivos Mecanismos de integridade do arquivo
Garantir que as informações armazenadas em um arquivo não sejam corrompidas.

33 Sistemas de Arquivos Métodos de acesso
Como os dados armazenados podem ser acessados.

34 Suporte a Arquivos

35 Suporte a Arquivos O SO permite realizar um conjunto de operações sobre arquivos; Essas operações são solicitadas através de chamadas de sistema.

36 Suporte a Arquivos O que o SO deve fazer para realizar as diversas operações sobre arquivos: criar um arquivo escrever no arquivo ler o arquivo remover o arquivo Alterar lista de usuários que podem acessar os arquivos

37 Operações em Arquivos Criar um arquivo: necessita de dois passos:
encontrar e alocar espaço suficiente no disco; adicionar uma entrada no diretório para conter as informações referentes ao arquivo (nome, tamanho, localização, ...)

38 Operações em Arquivos Escrever no Arquivo:
para escrever em um arquivo o usuário executa uma chamada de sistema fornecendo o nome do arquivo; O sistema procura através do nome, a localização do arquivo no disco e a posição do ponteiro que indica o final do arquivo.

39 Operações em Arquivos Ler o Arquivo:
o usuário executa uma chamada de sistema fornecendo o nome do arquivo e a posição da memória principal para onde as informações serão copiadas

40 Operações em Arquivos Remover o Arquivo: Diretório é pesquisado;
O espaço alocado é liberado e a entrada correspondente é removida do diretório; Libera o espaço em disco ocupado pelo arquivo.

41 Operações em Arquivos Todas as operações sobre um arquivo envolvem uma pesquisa no diretório em busca da entrada correspondente ao arquivo desejado. Cada entrada do diretório, corresponde a um Descritor de Arquivo O descritor contém todas as informações necessárias para a manipulação do arquivo (nome, extensão, tamanho, datas, usuários, etc)

42 Tabela de Descritores de Arquivos Abertos (TDAA)
O acesso a um arquivo é feito através do seu descritor Para evitar a pesquisa freqüente ao disco, o SO mantém na memória uma Tabela de Descritores de Arquivos Abertos; Assim, sempre que uma operação é solicitada, apenas a TDAA é pesquisada.

43 Tabela de Descritores de Arquivos Abertos (TDAA)
O arquivo é aberto quando ele começa a ser utilizado (desse modo, todas as informações sobre os arquivos em uso são mantidas na memória principal) Para cada arquivo há apenas uma entrada na TDAA; Assim que o processo termina o DA é atualizado em disco e a entrada da TDAA é liberada.

44 TDAA e TAAP Um mesmo arquivo pode ser utilizado simultaneamente por vários processos Por isso, cada entrada da TDAA contém uma indicação de quantos processos estão utilizando o arquivo correntemente

45 TDAA e TAAP O mesmo arquivo pode estar sendo acessado por diferentes processos em pontos diferentes e com direitos de acesso diferentes Por isso, cada processo contém uma tabela extra com informações apenas sobre os arquivos abertos por esse processo. Essa tabela é denominada Tabela de Arquivos Abertos por Processo (TAAP)

46 Tabela de Arquivos Abertos por Processo (TAAP)
No mínimo, a TAAP contém em cada entrada as seguintes informações: Posição corrente no arquivo; Tipo de acesso (apenas leitura ou leitura e escrita); Apontador para a entrada correspondente na TDAA.

47 TDAA e TAAP

48 Controle de Acesso Em Sistemas Multiusuários é importante controlar o acesso aos arquivos; O controle de acesso inicia com a identificação dos usuários. Isso é feito através de usuário e senha; O SO valida os dados e a partir daí o usuário passa a ter os direitos de acesso associados ao seu perfil.

49 Controle de Acesso Exemplo:
Usuário Direito Professor Leitura e escrita Secretária Leitura Aluno Leitura As permissões podem ser feitas por usuário ou cria-se grupos de usuários. As permissões serão dadas ao grupo.

50 Métodos de Acesso Método de acesso diz respeito à forma como o conteúdo de um arquivo é acessado.

51 Métodos de Acesso Acesso seqüencial Acesso direto Acesso indexado

52 Acesso Sequencial A leitura sempre acessa o próximo registro e avança um ponteiro sobre o arquivo. Este ponteiro indica qual a próxima posição a ser lida. Método muito usado Compiladores, impressão de arquivos Copiar o conteúdo de um arquivo para outro correspondente, há uma leitura seqüencial do arquivo origem e escrita seqüencial no arquivo destino.

53 Acesso Seqüencial

54 Acesso Direto Uma sequência numerada de registros;
Qualquer registro pode ser diretamente lido ou escrito; Programa inclui na chamada de sistema qual a posição a ser lida;

55 Acesso Direto

56 Acesso indexado Envolve a construção de índices nos descritores de arquivos; Usa como base o serviço de acesso direto

57 Métodos de Alocação

58 Métodos de Alocação Na maioria das vezes muitos arquivos estarão armazenados no mesmo disco; O espaço para alocar estes arquivos necessita de organização para utilização mais eficiente do disco; Os arquivos precisam ser acessados rapidamente.

59 Métodos de Alocação Métodos principais de alocação de espaço em disco:
Contígua Encadeada Indexada

60 Gerência do Espaço Livre
Espaço em disco é limitado, por isto é necessário reaproveitar todo o espaço disponível; Lista de setores livres: mantida pelo SO para controlar os espaços livres no disco; Para criar um arquivo o espaço necessário é obtido da lista; Mapa de Bit

61 Métodos de Alocação Métodos principais de alocação de espaço em disco:
Contígua Exige que cada arquivo ocupe um conjunto de setores contíguos; Podem ser acessados de forma sequencial e direto; Desvantagem? Os algoritmos que podem ser utilizados (First-fit, best-fit e worst-fit)

62 Desfragmentação Mover arquivos para reagrupar os fragmentos em espaços maiores; Visa permitir alocar arquivos maiores; Deve ser feita periodicamente;

63 Estratégias de desfragmentação
Situação inicial Moveu 6 blocos Moveu 4 blocos Moveu 2 blocos

64 Desfragmentação

65 Métodos de Alocação Métodos principais de alocação de espaço em disco:
Encadeada Corresponde a uma lista encadeada de blocos; Qualquer setor do disco, independente da posição pode ser aproveitado; Cada setor contém o endereço do setor seguinte;

66 Métodos de Alocação Métodos principais de alocação de espaço em disco:
Encadeada Acesso apenas Sequencial; Qualquer setor do disco poderá ser utilizado; Problemas de Confiabilidade;

67 Endereço do Bloco Inicial
Quantidade de Blocos Em cada bloco há o endereço do bloco seguinte

68 Métodos de Alocação Métodos principais de alocação de espaço em disco:
Indexada Cada arquivo possui uma tabela de índices; Cada entrada dessa tabela contém o endereço de um dos blocos físicos que formam o arquivo;

69 Nr.do bloco físico Aponta para o Nr. Lógico. Sequência indexada do Arquivo.

70 Sistema de Diretórios

71 Sistema de Diretórios Sistemas de Diretórios diz respeito às possíveis formas de organizar os diretórios.

72 Sistema de Diretórios Diretório de nível único
Diretório de dois níveis Diretórios em forma de árvore

73 Diretório de Nível Único
Todos os arquivos fazem parte do mesmo diretório; Problemas de organização no caso de muitos arquivos. É necessário nome único para cada arquivo

74 Diretório de Dois Níveis
Criam-se diretórios separados para cada usuário; No diretório principal mantém-se apenas os endereços dos diretórios dos usuários; Nos diretórios de usuários mantém-se informações sobre os arquivos;

75 Diretório de Dois Níveis
Quando o usuário faz referência a um arquivo apenas seu diretório é pesquisado; Não há mais problemas com nomes de arquivos; Proteção contra acessos indevidos; Criação de um diretório especial com programas e utilitários do sistema;

76 Diretórios Estruturados em Árvore
Os usuários podem criar seus próprios sub-diretórios para organizar seus arquivos; A árvore possui um diretório raiz; Cada arquivo possui um pathname (nome do arquivo composto pelos nomes de diretórios que formam o caminho da raiz até ele)

77 Diretórios Estruturados em Árvore
Pathname podem ser completos ou relativos; Completo, inicia na raiz e vai até o arquivo a ser identificado; Relativo, começa no diretório corrente;

78 Proteção dos Arquivos

79 Proteção dos Arquivos Quando a informação é mantida em um computador, ela deve ser protegida contra dano físico (confiabilidade) e acesso indevido (proteção).

80 Proteção dos Arquivos Confiabilidade:
obtêm-se criando cópias dos arquivos Back up Proteção: obtêm-se impossibilitando o acesso por outros usuários tipos de acesso: leitura, gravação, execução, criação e remoção;

81 Proteção dos Arquivos Operações de leitura, gravação e execução envolvem acesso a arquivos; Operações de criação e remoção envolvem acesso a diretórios; O método de proteção bastante utilizado é vincular o acesso à identificação do usuário ou de grupos de usuários.

82 Questões de Implementação

83 Questões de Implementação
Um sistema de arquivos envolve dois problemas diferentes: Como o SA deve aparecer para o usuário; Quais algoritmos e estruturas de dados serão usados para mapear o SA lógicos visto pelo usuário;

84 Questões de Implementação
Conceitualmente, um sistema de arquivos é dividido em três níveis de serviço: serviço de disco serviço de arquivo básico serviço de diretório

85 Níveis de Serviço Serviço de disco: responsável pela leitura e escrita de setores diretamente no disco, sem se preocupar com a organização dos arquivos; Serviço de arquivo básico: lida com a abstração de arquivos, compostos por um conjunto de registros (blocos). Operações básicas do tipo leitura e escrita a partir de uma determinada posição do arquivo;

86 Níveis de Serviço Serviço de diretório: preocupa-se com a identificação e proteção de arquivos descritos a partir de diretórios, de forma que eles sejam acessados de forma segura e conveniente. Os diretórios mapeiam nomes simbólicos em identificadores numéricos utilizados pelo serviço de arquivos (camada de baixo)

87 Níveis de Serviço Usuários Serviço de Diretório Serviço de Arquivo
Serviço de Disco Serviço de Arquivo Básico Serviço de Diretório Usuários


Carregar ppt "Sistemas Operacionais Adriana Vettorazzo"

Apresentações semelhantes


Anúncios Google