Sistemas Operacionais. BC Sistemas Operacionais

Documentos relacionados
BC Sistemas Operacionais Sistema de Arquivos (aula 10 Parte 2) Prof. Marcelo Z. do Nascimento

Sistemas de Arquivos

Implementação de Sistemas de Arquivos. Na Aula Anterior... Esquema do Sistema de Arquivos. Nesta Aula 31/10/2016. Estrutura de Baixo Nível de um Disco

Capítulo 11 Sistemas de Arquivos

Sistemas Operacionais. Prof. André Y. Kusumoto

Capítulo 6 Nível do Sistema Operacional

Sistemas de arquivos

Sistemas Operacionais

Memória Virtual. Prof. M.Sc. Bruno R. Silva CEFET-MG Campus VII

Caching. Caches do Sistema de Ficheiros

SISTEMAS OPERACIONAIS. 3ª. Lista de Exercícios

Introdução à Informática. Alexandre Meslin

Sistemas Operacionais

Armazenamento Secundário. Endereços no disco. Organização da informação no disco. Organização da informação no disco

Pesquisa em Memória Secundária. Prof. Jonas Potros

ARMAZENAMENTO SECUNDÁRIO, PARTE 1 Professora Rosane Minghim

Gerência de memória III

Gerência de Memória. Paginação

Gerenciamento de Memória

Introdução aos Sistemas Operacionais. Subsistema de Arquivos

Fundamentos de Arquivos e Armazenamento Secundário

Gerenciamento de memória

Estados dos processos. Infra Estruturas Computacionais. A troca de contexto. Escalonamento de Processos. Escalonamento de Processos


Organização e Arquitetura de Computadores I

Algoritmos de Substituição de Páginas. Igor Gustavo Hoelscher Renan Arend Rogério Corrêa Medeiros

- Campus Salto. Disciplina: Sistemas de Arquivos Docente: Fernando Santorsula

DISCO MAGNÉTICO Cabeçote Trilha

Durante a evolução das arquiteturas de computadores e principalmente dos Sistemas Operacionais, muitas tecnologias tiveram que ser aprimoradas para

Introdução. Introdução

Capítulo 5 Livro do Mário Monteiro Conceituação. Elementos de projeto de memória cache

Memoria. UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática

Teoria da Computação. Aula 9 Pesquisa em Memória Secundária 5COP096. Aula 9 Prof. Dr. Sylvio Barbon Junior. Sylvio Barbon Jr

implementação Nuno Ferreira Neves Faculdade de Ciências de Universidade de Lisboa Fernando Ramos, Nuno Neves, Sistemas Operativos,

ORGANIZAÇÃO DE COMPUTADORES CAPÍTULO4: MEMÓRIAPRINCIPAL

Capítulo 10: Interface de Sistemas de Arquivos. Operating System Concepts 8 th Edition

Gerência do Sistema de Arquivos. Adão de Melo Neto

Lista - RAID. c) Redundância d) Capacidade

Memória virtual. Sistemas de Computação

Gerência de Memória Algoritmos de Substituição de Páginas

Estruturas de Dados I

Organização e Arquitetura de computadores

Capítulo 8: Memória Principal. Operating System Concepts 8 th Edition

Introdução Métodos de Busca Parte 1

Estrutura do Sistema Operacional

Implementação de sistema de arquivos

Arquitetura e Organização de Computadores

O que faz? De tudo um pouco.

Memória Virtual. Ciclo 4 AT2. Prof. Hermes Senger

SISTEMASDE. SW, APP e SO - 2º trimestre Patrícia Lucas

Apresentação. Ementa da Disciplina. Objetivo da Disciplina. DCA-108 Sistemas Operacionais. Referências Bibliográfica. Referências Bibliográfica

Sistemas Operacionais

Acesso Sequencial Indexado

Gerência de Dispositivos. Adão de Melo Neto

ICET CURSO: Ciência da Computação e Sistemas de Informação (Sistemas Operacionais Abertos) Estudos Disciplinares. Campus: Data: / / Nome: Questão 1:

Unidade II. Diretório raiz. Diretório de usuário A A B B B. Arquivo de usuário

Administração de Sistemas Operacionais. Prof.: Marlon Marcon

ORGANIZANDO DADOS E INFORMAÇÕES: Bancos de Dados

Hierarquia de Memória

UNIVERSIDADE ESTADUAL DO PARÁ UEPA LISTA DE EXERCÍCIOS DE INTRODUÇÃO A COMPUTAÇÃO. 2. O que diferencia os computadores de 1ª geração dos da 2ª.

Chamadas de Sistema (SYSCALL)

Organização de Computadores

Estrutura de Dados. Estrutura de Dados Recursividade. Exemplo: 5! = 5 x 4! 4! = 4 x 3! 3! = 3 X 2! 2! = 2 x 1! 1! = 1 x 0!

Sistemas Operacionais. Prof. MSc. André Yoshimi Kusumoto

Sistemas de Informação. Sistemas Operacionais

Ordenação Externa. Ordenação Externa. Ordenação Externa. Ordenação Externa

Níveis de memória. Diferentes velocidades de acesso. Memória Cache. Memórias Auxiliar e Auxiliar-Backup

RAID: Conceito e Tipos

Sistemas Operacionais

Organização e Arquitetura de Computadores I

Assunto 2 - Software. Prof. Miguel Damasco

ESTRUTURA DOS SISTEMAS OPERACIONAIS

Funções de um SO. Gerência de processos Gerência de memória Gerência de Arquivos Gerência de I/O Sistema de Proteção

Gerência do Sistema de Arquivos. Adão de Melo Neto

Capítulo 13: Sistemas de E/S. Operating System Concepts 8 th Edition

FUNDAMENTOS DE ARQUITETURAS DE COMPUTADORES MEMÓRIA CACHE CAPÍTULO 5. Cristina Boeres

Faculdades Santa Cruz

Programação de Sistemas

Curso de Sistemas Distribuídos

Organização e Arquitetura de Computadores. Ivan Saraiva Silva

Na Aula Anterior... Sistemas de Arquivos no Linux. Sistemas de Arquivos Linux. Nesta Aula. EXT2 e Suas Versões Posteriores

Organização de Arquivos. SCE-183 Algoritmos e Estruturas de Dados II

Classificação e Pesquisa de Dados. Aula 23 Organização de Arquivos: Arquivos Indexados, Diretos e Arquivos Invertidos

TRANSMISSÃO DE DADOS Prof. Ricardo Rodrigues Barcelar

Sistemas Operacionais Estrutura do Sistema Operacional. Arquiteturas do Kernel

Gerência de Memória. Algoritmos de Substituição de Páginas


DEFINIÇÃO É TODO AQUELE DISPOSITIVO CAPAZ DE ARMAZENAR INFORMAÇÃO. A

ELECTRÓNICA DE COMPUTADORES. Sumário

Sistemas de Arquivos. Sistemas de arquivos: Mecanismos para armazenamento on-line e acesso de dados e programas.

indexação e hashing Construção de Índices e Funções Hash Diego Gomes Tomé - MSc. Informática Orientador: Prof. Dr. Eduardo Almeida October 13, 2016

Unidade II. Organização de Computadores. Prof. Renato Lellis

Sistemas de Ficheiros

LINUX. Prof. Camila. Pedro de Assis Sobreira Jr.

Sistemas de Ficheiros. Ficheiros Diretórios Implementação de sistemas de ficheiros Exemplos de sistemas de ficheiros

Exercícios de revisão V2

Transcrição:

BC 1518 - Sistemas Operacionais Sistema de Arquivos (aula 10 Parte 2) Prof. Marcelo Z. do Nascimento 1

Estrutura do Sistema de Arquivo Gerência de espaço em disco Roteiro Cópia de segurança do sistema de arquivo Confiabilidade Desempenho do SA Leituras Sugeridas 2

Estrutura do Arquivo Estrutura do Sistema de Arquivo Unidade de Armazenamento Lógica Coleção de informações relacionadas Sistema de arquivos reside em armazenamento secundário (discos). Sistema de arquivos organizado em camadas. Bloco de Controle de Arquivo (File control block) estrutura de armazenamento contendo informações sobre um arquivo. 3

Estrutura do Sistema de Arquivo Bloco de controle de arquivo típico 4

Sistema de Arquivos Virtuais Virtual File Systems (VFS) tenta integrar diferentes sistemas de arquivos em uma estrutura ordenada; A ideia principal é abstrair a parte comum aos diferentes sistemas e colocar o código em uma camada separada que chama o sistema de arquivos subjacentes para fazer o gerenciamento do dado. O VFS possui: uma interface superior com os processo de usuário. São as chamadas (system call) como open, read, etc. Também há uma interface inferior com os arquivos de um sistema de arquivo denominada por interface VFS. 5

Sistema de Arquivos Virtuais 6 Sistemas Operacionais

Sistema de Arquivos O VFS define quatro objetos básicos: Virtuais Objeto INODE que armazena informações gerais sobre um arquivo específico (bloco de controle de arquivo). Cada objeto inode é associado a um número inode, que identifica de forma única. Objeto Superbloco contém informações sobre um sistema de arquivos montado (corresponde ao bloco de controle do sistema de arquivos armazenado em disco). Objeto Dentry armazena informações sobre a linkagem de um diretório (isso é, o nome do arquivo) com o arquivo correspondente. Objeto File armazena informações sobre a interação entre um arquivo aberto e um processo. 7

Implementação de diretório Estruturas de dados que podem ser usadas : lista não ordenada: é simples novas entradas são inseridas onde houver uma vaga ou no fim arquivos removidos tem sua estrutura marcada como inválida exige uma pesquisa seqüencial para localizar um arquivo lista ordenada: há um pequeno custo para manter a lista ordenada a pesquisa é mais rápida tabela de dispersão (hash): a pesquisa é rápida e não é necessário manter a lista ordenada necessita de algoritmos mais complexos 8

Gerenciamento de espaço em disco O SO pode utilizar uma das duas estratégias possíveis para armazenar um arquivo de n bytes: São alocados ao arquivo n bytes consecutivos do espaço disponível em disco; Arquivo é espalhado por um número de blocos não necessariamente contíguos blocos com tamanho fixo; A maioria dos sistemas de arquivos utilizam essa estratégia; ARQUIVO CRESCE Algo próximo ao que ocorre na memória. 9

Tamanho do bloco Gerenciamento de espaço em disco Qual é o tamanho ideal para um bloco? Se for muito grande, ocorre desperdício de espaço; Se for muito pequeno, um arquivo irá ocupar muitos blocos, tornando o acesso/busca lento; O tamanho do bloco tem uma grande influência na eficiência de utilização e de acesso ao disco (desempenho). Exemplos: UNIX -> 1kB; MS-DOS -> 512 bytes a 32 kb; Tamanho do bloco depende do tamanho do disco; 10

Monitoramento dos blocos livres Contém a localização dos blocos livres; Lista encadeada de blocos; Gerenciamento de espaço em disco Última entrada da lista armazena um ponteiro nulo para indicar que não há mais lista de blocos livres; Vantagens: (a)requer menos espaço se existem poucos blocos livres (disco quase cheio); (b)armazena apenas um bloco de ponteiros na memória; Desvantagem: Precisa de mais espaço se houver um grande conjunto de blocos livres (disco quase vazio); 11

Monitoramento dos blocos livres Exemplo: Gerenciamento de espaço em disco 42 136 41 48 310 516 Lista 230 162 214 160 216 NULL Exemplo: Disco 16 Gb lista de 16.794 blocos 12

Mapa de bits: contém um bit para cada bloco do sistema de arquivos; Gerenciamento de espaço em disco Cada bloco pode armazenar número de 32 bits; Vantagem: o sistema de arquivo pode determinar rapidamente se há blocos contíguos disponíveis em certa localização; Desvantagem: Terá que pesquisar o mapa de bits inteiro para encontrar um bloco livre, resultando em sobrecarga de execução; 13

Gerenciamento de espaço em disco Bitmap 100110110110 011011011111 101011011011 011011011011 111011101110 110111110111 Blocos livres = 0 Blocos ocupados = 1 ou vice-versa; 14

Cópia de segurança do sistema de arquivo Danos causados ao sistema de arquivos podem ser desastrosos; Para um sistema de arquivos de um computador que estiver irrecuperavelmente perido, seja por causa de hardware ou software, a restauração da informação será muito difícil; Restaurar informações pode, e geralmente é, custoso, difícil e, em muitos casos, impossível; Sistemas de arquivos são projetados para proteger as informações de danos lógicos e não físicos; 15

Backups Cópias de segurança Cópia de segurança do sistema de arquivo Cópia de um arquivo ou conjunto de arquivos mantidos por questão de segurança; Mídia: normalmente fitas magnéticas; Razões : Recuperar de desastres: problemas físicos com disco; Recuperar de estupidez : usuários que acidentalmente apagam seus arquivos; Alguns SOs criam um diretório conhecido como Lixeira (diretório especial recycle bin): arquivos apagados são armazenados nesse diretório; 16

Estratégias utilizadas para backup: Física: a cópia se inicia no bloco 0 e termina somente no último bloco (independentemente se existem ou não arquivos nesses blocos); Desvantagens: Cópia de segurança do sistema de arquivo Copia blocos ainda não utilizados; Possibilidade de copiar blocos com defeitos; Difícil restaurar um determinado diretório; Vantagens: Simples; Deve-se fazer cópias de segurança de todo o sistema de arquivo ou parte dele? Fazer cópia apenas de diretórios específicos e de tudo que está neles; 17

Lógica: inicia-se em um diretório específico e recursivamente copia seus arquivos e diretórios; A idéia é copiar somente os arquivos (diretórios) que foram modificados; Cópias incrementais; Cópia de segurança do sistema de arquivo Cópia completa (semanal ou mensal) e fazer uma cópia diária somente dos arquivos modificados desde a última cópia completa. Vantagem: Facilita a recuperação de arquivos ou diretórios específicos; Forma mais comum de backup; 18

Cópia de segurança do sistema de arquivo Um sistema de arquivos a ser copiado (Ex. UNIX) Os quadrados são diretórios e os círculos são arquivos Os itens sombreados foram modificados desde a última cópia Cada diretório e arquivo rotulado por seu número de i-node 19

Cópia de segurança do sistema de arquivo 1 fase arquivos e diretórios modificados foram marcados; 2 fase - desmarca qualquer diretório que não tenha arquivos ou diretórios modificados dentro deles; 3 fase varrer os i-nodes e copiar todos os diretórios que estiverem marcados para cópia; 4 fase arquivos marcados são copiados; 20

Cópia de segurança do sistema de arquivo Mapas de bits usados pelo algoritmo de cópia lógica 21

Confiabilidade Inconsistência de dados Se o sistema cair antes que todos os blocos alterados tenham sido escritos, o sistema de arquivo pode ficar no estado inconsistente. Os SOs possuem diferentes programas utilitários para lidar com inconsistências: UNIX: fsck; Windows: scandisk; Técnicas que buscam utilizar a redundância interente do sistema de arquivos 22

FSCK (file system checker) baseado em blocos: O programa constrói 2 tabelas; Confiabilidade cada qual com um contador (inicialmente com valor 0) para cada bloco; Os contadores da 1 tabela registram quantas vezes cada bloco está presente em um arquivo; os contadores da 2 tabela registram quantas vezes cada bloco está presente na lista de blocos livres; 23

Confiabilidade FSCK (file system checker) baseado em blocos: Lendo o i-node, o programa constrói uma lista com todos os blocos utilizados por um arquivo (incrementa contadores da 1ª tabela); Lendo a lista de bloco livres, o programa verifica quais blocos não estão sendo utilizado (incrementa contadores da 2ª tabela); 24

Exemplo: 1º Caso 0 15 a) 1 1 0 1 0 1 1 1 1 0 0 1 1 1 0 0 0 0 1 0 1 0 0 0 0 1 1 0 0 0 1 1 Confiabilidade Blocos em uso Blocos livres Se problemas acontecerem, podemos ter as seguintes situações: OCUPA ESPAÇO 0 2 15 b) 1 1 0 1 0 1 1 1 1 0 0 1 1 1 0 0 0 0 0 0 1 0 0 0 0 1 1 0 0 0 1 1 Blocos em uso Blocos livres Defeito: Bloco perdido (missing block) Solução: colocá-lo na lista de livres 25

Exemplo: 2º Caso 0 15 a) 1 1 0 1 0 1 1 1 1 0 0 1 1 1 0 0 0 0 1 0 1 0 0 0 0 1 1 0 0 0 1 1 Confiabilidade Blocos em uso Blocos livres Se problemas acontecerem, podemos ter as seguintes situações: 0 4 15 b) 1 1 0 1 0 1 1 1 1 0 0 1 1 1 0 0 0 0 1 0 2 0 0 0 0 1 1 0 0 0 1 1 Blocos em uso Blocos livres Bloco duplicado na lista de livres Solução: reconstruir a lista 26

3º Caso 0 15 a) 1 1 0 1 0 1 1 1 1 0 0 1 1 1 0 0 0 0 1 0 1 0 0 0 0 1 1 0 0 0 1 1 Blocos em uso Blocos livres Se problemas acontecerem, podemos ter as seguintes situações: Mesmo bloco de dados em 2 0 5 arquivos 15 b) 1 1 0 1 0 2 1 1 1 0 0 1 1 1 0 0 0 0 1 0 1 0 0 0 0 1 1 0 0 0 1 1 Confiabilidade Blocos em uso Blocos livres Bloco duplicado na lista de em uso (dois arquivos) Problemas: - Se um arquivo for removido, o bloco vai estar nas duas listas; - Se ambos forem removidos, o bloco vai estar na lista de livres duas vezes; Solução: alocar um bloco livre, copiar para esse bloco o conteúdo do bloco 5, e inserir cópia em um dos dois arquivos; 27

Desempenho do SA Ler uma palavra na memória pode levar uns 10 ns, a leitura em um disco rígido pode chegar a 10 MB/s, que é 40 vezes mais lento; Problemas de desempenho no acesso a disco: Movimentação do disco; Movimentação do braço; Técnicas para otimizar o acesso: Caching; Leitura prévia de blocos; Reduzir a quantidade de movimentos do braço do disco; 28

Desempenho do SA Técnica mais utilizada para acesso ao disco: Cache de bloco ou buffer cache; Cache: um conjunto de blocos que pertencem logicamente ao disco, mas são colocados na memória para melhorar o desempenho do sistema (reduzir acesso em disco); Quando um bloco é requisitado, o sistema verifica se o bloco não está no cache: se estiver => o acesso é realizado sem necessidade de ir até o disco; caso contrário =>o bloco é copiado do disco para o cache; 29

Desempenho do SA Para se carregar um novo bloco no cache => poderá ser necessário remover um dos blocos, reescrevendo-o no disco caso tenha sido modificado; Necessidade de troca de blocos (semelhante à troca de páginas); Algoritmos empregados em memória paginada podem ser utilizados; O algoritmo mais utilizado é o LRU (least recently used); Algumas SO integram a cache de buffer e a cache de páginas da memória. 30

Desempenho do SA Importante: Não convém manter blocos de dados no cache por um longo tempo antes de escrevê-los de volta ao disco (modificado); SO realizam update dos blocos modificados para o disco de tempos em tempos; UNIX a cada 30 segundos; MS-DOS copia o bloco para o disco assim que ocorra uma modificação (cache write-through) 31

Desempenho do SA Leitura prévia do bloco: transferir os blocos para a cache antes de serem requisitados para aumentar a taxa de acertos; Essa estratégia só funciona quando os arquivos que estejam sendo lidos seqüencialmente; Arquivos aleatórios piora a situação, pois carrega blocos não usados e remove blocos potencialmente úteis da cache; 32

Desempenho do SA Redução do movimento do braço do disco: técnica que coloca os blocos que são mais prováveis de serem acessados próximos uns dos outros em seqüência (mesmo cilindro do disco); O gerenciamento do disco é feito por grupos de blocos consecutivos e não somente por blocos; 33

Desempenho do SA Para sistemas que utilizam os i-nodes, são necessários dois acessos: uma para o bloco e outro para o i-node; Três estratégias podem ser utilizadas para armazenamento dos i-nodes: Os i-nodes são colocados no início do disco; Os i-nodes são colocados no meio do disco; Dividir o disco em grupos de cilindros, nos quais cada cilindro tem seus próprios i-nodes, blocos e lista de blocos livres (bitmap); 34

Desempenho do SA 1. I-nodes colocados no início do disco 2. Disco dividido em grupos de cilindros cada qual com seus próprios blocos e i-nodes 35

Gerência de espaço em disco: Monitoramento de blocos livres Mapa de bits Sumário Cópia de segurança do sistema de arquivo: Backup físico e lógico Confiabilidade: Scandisk Desempenho do SA 36

Leituras Sugeridas Silberschatz, A., Galvin, P. B. Gagne, G. Sistemas Operacionais com Java. 7º edição. Editora Campus, 2008. TANENBAUM, A. Sistemas Operacionais Modernos. Rio de Janeiro: Pearson, 3 ed. 2010 37

Acesse o link abaixo: Notas de Aula http://hostel.ufabc.edu.br/~marcelo.nascimento/ Obrigado!!! 38