Gerência de Armazenamento: Interface do Sistema de Arquivos

4.056 visualizações

Publicada em

Explicar a função do sistema de arquivos
Descrever as interface com os sistemas de arquivos
Discutir decisões de projeto de sistemas de arquivos, incluindo métodos de acesso, compartilhamento, bloqueio e estruturas de diretórios
Explorar o conceito de proteção em sistemas de arquivos

Publicada em: Educação
0 comentários
1 gostou
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
4.056
No SlideShare
0
A partir de incorporações
0
Número de incorporações
1
Ações
Compartilhamentos
0
Downloads
202
Comentários
0
Gostaram
1
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Gerência de Armazenamento: Interface do Sistema de Arquivos

  1. 1. Sistemas Operacionais I Gerência de Armazenamento: Interface do Sistema de Arquivos Prof. Alexandre Duarte : http://alexandrend.com Centro de Informática | Universidade Federal da Paraíba Estes slides são baseados no material que acompanha o livro Operating Systems Concepts de Silberschatz, Galvin and Gagne
  2. 2. Objetivos  Explicar a função do sistema de arquivos  Descrever a interface dos sistemas de arquivos  Discutir decisões de projeto de sistemas de arquivos, incluindo métodos de acesso, compartilhamento, bloqueio e estruturas de diretórios  Explorar o conceito de proteção em sistemas de arquivos
  3. 3. O conceito de arquivo  Espaço de endereçamento lógico contínuo  Tipos:  Dados  número  caracteres  binário  Programas
  4. 4. Estrutura de um arquivo  Sem estrutura: - sequência de palavras, bytes  Estrutura de registro simples  Linhas  Tamanho fixo  Tamanho variável  Estruturas complexas  Quem decide:  Sistemas operacional  Programa
  5. 5. Atributos de um arquivo  Nome – única informação mantida em formato legível  Identificador – chave numérica única que identifica um arquivo em todo o sistema de arquivos  Tipo – necessário para sistemas que suportam diferentes tipos de arquivos  Localização – ponteiro para a localização do arquivo no dispositivo de armazenamento  Tamanho – tamanho do arquivo em bytes  Proteção – controla quem pode ler, escrever ou executar um arquivo  Hora, data e identificação do usuário – dados para proteção, segurança e monitoramento do uso
  6. 6. Operações com arquivos  Criação  Escrita  Leitura  Reposicionamento  Remoção  Truncagem  Open(Fi) – procura o arquivo Fi na estrutura de diretórios e move o conteúdo da entrada para a memória  Close (Fi) – move o conteúdo da entrada de Fi da memória para a estrutura de diretórios no disco
  7. 7. Abrindo arquivos  Varias informações são necessárias para lidar com arquivos abertos  Ponteiro de arquivo: aponta para a última posição lida/escrita pelo processo que abriu o arquivo  Contador de aberturas: conta quantas vezes um arquivo foi aberto – permite a remoção de dados da tabela de arquivos abertos quando o último processo fechar o arquivo  Localização do arquivo no disco: cache das informações para acesso ao arquivo  Permissões de acesso: permissões de acesso ao arquivo pelo processo
  8. 8. Bloqueio de arquivos abertos  Fornecido pelo sistema de arquivos de alguns sistemas operacionais  Modera o acesso aos arquivos  Obrigatório ou Recomendado:  Obrigatório – o acesso é negado dependendo do bloqueio  Recomendado – os processos podem consultar o estado de um bloqueio e decidir o que fazer
  9. 9. Métodos de acesso  Acesso sequêncial  read next  write next  reset  Acesso direto  read n  write n  position to n  read next  write next
  10. 10. Acesso sequencial
  11. 11. Simulando acesso sequencial com arquivos de acesso direto
  12. 12. Exemplo de arquivo de índice e arquivos relacionados
  13. 13. Estrutura de disco  Discos podem ser subdivididos em partições  Discos ou partições podem ser protegidos de falhas por um RAID  Discos e partições podem ser utilizadas tanto em modo raw – sem um sistema de arquivos, quanto formatados com um sistema de arquivos  A entidade que contem um sistema de arquivos é conhecida como volume  Cada volume mantem informações sobre o sistema de arquivos em um diretório de dispositivos ou tabela de conteúdo de volumes  Assim como existem sistemas de arquivo de propósito geral, existem vários sistemas de arquivos de propósito específico, frequentemente convivendo em um mesmo sistema operacional ou computador
  14. 14. Organização típica de um sistema de arquivos
  15. 15. Operações em diretórios  Localizar um arquivo  Criar um arquivo  Remover um arquivo  Listar o conteúdo de um diretório  Renomear um arquivo  Percorrer o sistema de arquivos
  16. 16. Diretório de nível único  Um único diretório para todos os usuários
  17. 17. Estrutura de dois níveis  Um diretório separado para cada usuário
  18. 18. Estrutura de árvore
  19. 19. Estrutura de grafo acíclico  Apresenta arquivos e diretórios compartilhados
  20. 20. Estrutura geral de grafo
  21. 21. Montagem de sistemas de arquivos  Um sistema de arquivos precisa ser montado antes de ser acessado
  22. 22. Compartilhamento de arquivos  É desejável poder compartilhar arquivos em sistemas com múltiplos usuários  Esse compartilhamento pode ser obtido por meio de um esquema de proteção  Em sistema distribuídos os arquivos podem ser compartilhados através de uma rede
  23. 23. Compartilhamento de arquivos: múltiplos usuários  Os usuários possuem identificadores, permitindo que sejam definidas permissões de acesso por usuário  Identificadores de grupo permitem que sejam definidas permissões de acesso para grupos de usuários
  24. 24. Compartilhamento de arquivos: sistemas de arquivos remotos  Permite acesso ao sistema de arquivos através da rede  Manualmente, através de programas como o FTP  Automaticamente e de forma transparente utilizando sistemas de arquivos distribuídos  O modelo cliente-servidor permite que clientes montem sistemas de arquivos remotos disponibilizados por servidores  Um servidor pode server múltiplos clientes  NFS é o protocolo cliente-servidor padrão do UNIX  CIFS é o protocolo padrão no Windows  Operações padrão do sistema de arquivos são mapeadas em chamadas remotas
  25. 25. Compartilhamento de arquivos: modelo de falhas  O uso de sistemas de arquivos remotos implica em um novo modelo de falhas devido a falhas na rede e nos servidores  A recuperação de uma falha pode envolver a obtenção de informações de estado sobre todas as requisições remotas  Protocolos stateless como o NFS incluem em cada requisição toda a informação de estado, facilitando a recuperação
  26. 26. Compartilhamento de arquivos: semântica de consistência  A semântica de consistência especifica como múltiplos usuários podem acessar simultaneamente um arquivo compartilhado  Bastante semelhante aos algoritmos de sincronização de processos  Geralmente menos complexo devido as latências de disco e de rede  O sistema de arquivo do Unix implementa a seguinte semântica:  Escreve imediatamente em um arquivo aberto visível por outros usuários  Ponteiro de arquivo compartilhado para permitir que múltiplos usuários possa ler e escrever de forma concorrente
  27. 27. Proteção  O dono/criador do arquivo deve ser capaz de controlar:  o que pode ser feito  por quem  Tipos de acesso  Leitura  Escrita  Execução  Acréscimo  Remoção  Listagem
  28. 28. Listas de acesso e de grupo  Modo de acesso: leitura, escrita e execução  Três classes de usuário RWX a) acesso de dono 7 ⇒ 1 1 1 RWX b) acesso de grupo 6 ⇒ 1 1 0 RWX c) acesso público 1 ⇒ 0 0 1  O gerente pode criar um grupo (nome único), digamos G, e adicionar usuários ao grupo.  Para um artigo ou diretório em particular (digamos game), definir uma forma de acesso apropriada. owner group public chmod 761 game Adicionar um artigo ao grupo chgrp G game

×