gerência de armazenamento: interface do sistema de arquivos
Post on 05-Jun-2015
2.858 Views
Preview:
DESCRIPTION
TRANSCRIPT
Sistemas Operacionais I
Gerência de Armazenamento: Interface do Sistema de Arquivos
Prof. Alexandre Duarte : http://alexandrend.comCentro 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
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
O conceito de arquivo
Espaço de endereçamento lógico contínuo
Tipos: Dados
número caracteres binário
Programas
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
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
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
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
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
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
Acesso sequencial
Simulando acesso sequencial com arquivos de acesso direto
Exemplo de arquivo de índice e arquivos relacionados
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
Organização típica de um sistema de arquivos
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
Diretório de nível único Um único diretório para todos os usuários
Estrutura de dois níveis
Um diretório separado para cada usuário
Estrutura de árvore
Estrutura de grafo acíclico
Apresenta arquivos e diretórios compartilhados
Estrutura geral de grafo
Montagem de sistemas de arquivos Um sistema de arquivos precisa ser
montado antes de ser acessado
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
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
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
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
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
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
Listas de acesso e de grupo
Modo de acesso: leitura, escrita e execução Três classes de usuário
RWXa) acesso de dono 7 1 1 1
RWXb) acesso de grupo 6 1 1 0
RWXc) 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
top related