SlideShare uma empresa Scribd logo
Sistemas Distribuídos
Parte 1
Sistemas de Arquivos
Professor Eduardo Xavier
Introduçao
• Os primeiros computadores executavam seus programas
contando exclusivamente com a informação carregada na
memória primária.
• Que problemas essa abordagem causava?
– O espaço de endereçamento de cada processo que estava
executando era muito limitado em seu tamanho. Por
vezes, aplicações muito grandes não cabiam inteiramente
na memória.
– Quando o processo terminava, toda a informação que ele
manipulava era eliminada da memória junto com o
mesmo.
Professor Eduardo Xavier
Introduçao
• Outros problemas:
– Falhas no funcionamento do hardware comprometiam a
informação manipulada.
– Múltiplos processos precisavam acessar uma determinada
informação (ou apenas parte dela) ao mesmo tempo e isso
não era possível, pois cada processo tinha seu próprio
espaço de endereçamento protegido do acesso dos
demais.
• A solução para todos estes problemas era uma só: tornar a
informação independente dos processos que a manipulavam
– Assim nasceu o conceito de ARQUIVO
Professor Eduardo Xavier
Arquivos
• Para resolver os problemas já citados, os arquivos
devem atender a alguns requisitos essenciais:
– Conseguir suportar grandes capacidades de
armazenamento
– Garantir a “persistência” da informação, ou seja,
providenciar que a informação sobreviva ao término do
processo
– Suportar acesso compartilhado da informação por
múltiplos processos simultaneamente
Professor Eduardo Xavier
Arquivos
• Os arquivos são gerenciados pelo sistema
operacional no que diz respeito a:
– Estrutura de armazenamento
– Identificação (nomeação e outras características)
– Proteção (garantia de integridade)
– Uso (como pode ser manipulado)
– Acesso (controle de quem e como pode ter acesso)
– Implementação (como manipular a estrutura de
armazenamento)
• A parte do SO que cuida disso chama-se “Sistema
de Arquivo”
Professor Eduardo Xavier
Sistemas de Arquivos
Professor Eduardo Xavier
Nomeação de Arquivos
• Cada sistema operacional tem regras próprias para
definir o que é válido e o que não é aceito na
definição de um nome válido para seus arquivos.
– A ideia básica é possibilitar que diversos
processos possam acessar um certo conjunto de
dados usando apenas a identificação deste
conjunto (um nome)
– Assim, os processos deixam de preocupar com a
forma de armazenamento destes dados ou com
o funcionamento do hardware onde estão
hospedados
Professor Eduardo Xavier
Nomeação de Arquivos
• Extensões de arquivos
– Parte do nome do arquivo que indica alguma
característica específica daquele tipo de arquivo
– Não é algo obrigatório na maioria dos sistemas
operacionais modernos e seu objetivo é apenas
facilitar o uso do arquivo
Professor Eduardo Xavier
Nomeação de Arquivos
• Alguns Exemplos:
Professor Eduardo Xavier
Estruturas de Arquivos
• O sistema operacional normalmente não sabe (e
nem precisa saber) qual o conteúdo de cada arquivo.
– O que o SO “vê” é apenas um conjunto de bytes.
– Dessa forma, a manipulação do arquivo ganha
flexibilidade
Professor Eduardo Xavier
Estruturas de Arquivos
• As estruturas de arquivos mais comuns são:
– Sequência de bytes
• É a estrutura mais flexível
– Sequência de registros
• Cada registro é um bloco de tamanho fixo de bytes
– Árvore de registros
• Cada “folha” (registro) pode ter um tamanho diferente
• Cada registro possui em uma posição fixa um campo-
chave pelo qual a árvore se liga e é ordenada
Professor Eduardo Xavier
Estruturas de Arquivos
Professor Eduardo Xavier
Seqüência de Bytes Seqüência de
Registros
Árvore de Registros
Tipos de Arquivos
• Os sistemas operacionais costumam suportar diversos tipos
de arquivos, mas geralmente eles se dividem em dois
grupos:
– Arquivos regulares
• São arquivos que contém informações dos usuários
• Podem ser:
– Arquivos de texto
» Linhas de texto em código ASCII
– Arquivos binários
» Conjunto de códigos binários cuja estrutura interna é
conhecida apenas pelos programas projetados para
manipular estes arquivos
» O que chamamos de arquivos EXECUTÁVEIS são arquivos
binários codificados em um formato reconhecido pelo SO
sem ajuda de nenhum outro programa
– Diretórios
• Arquivos de controle que contém parte da estrutura suportada pelo
sistema de arquivos
Professor Eduardo Xavier
Acesso a Arquivos
• Os primeiros computadores e seus sistemas operacionais
só suportavam acessos a seus arquivos de forma sequencial
– Exemplos: fitas magnéticas, cartões perfurados,
impressoras,...
• Com o surgimento dos discos magnéticos, o acesso
aleatório passou a ser mais frequente, em virtude das
novas aplicações que surgiram com a nova tecnologia (ex:
bancos de dados)
– Nos primeiros modelos, o tipo de acesso ao arquivo era
definido quando o mesmo era criado, ou seja, ao criar
um novo arquivo seu dono definia se este seria
acessado de forma sequencial ou aleatória
– Hoje em dia, todos os arquivos são criados permitindo-
se o acesso aleatório (porém o acesso sequencial
também é suportado em alguns casos)
Professor Eduardo Xavier
Atributos
• Atributos são itens informativos sobre determinado
arquivo, mas que não fazem parte dos dados.
• Alteração da informação contida nos atributos
– Alguns atributos são informações fixas, como a data de
criação do arquivo.
– Outros podem ser modificados pelo SO, a exemplo da
data da última alteração no arquivo
– Existem ainda atributos que podem ser alterados pelo
próprio usuário, de acordo com sua conveniência.
Exemplo: permissões de acesso ao arquivo
• Dependendo do sistema de arquivos, os atributos podem
variar, embora alguns deles sejam praticamente “padrões
de mercado”, como identificação do dono, tamanho do
arquivo, data de criação e informações de proteção.
Professor Eduardo Xavier
Exemplos de Atributos
Professor Eduardo Xavier
Operações com Arquivos
• O sistema de arquivos é responsável por prover uma série de
system calls ou primitivas que permitam a manipulação dos
arquivos gerenciados
• As system calls mais comuns são:
– Create: Cria o arquivo e estabelece os primeiros atributos básicos
– Open: Carrega o arquivo na memória e lê certos atributos para definir
como o mesmo será manipulado
– Seek: Procura determinado ponto no arquivo
– Read: Lê o arquivo (geralmente de forma sequencial) a partir de
determinado ponto
– Write: Escreve dados no arquivo (existe uma variação chamada
“append” que indica que o dado será adicionado ao final do arquivo)
– Get/Set atributes: Recupera/Altera o valor de certos atributos
– Close: Remove qualquer controle ou informação que indique que o
arquivo está sendo usado (isso foi estabelecido no “open”)
– Delete :Apaga o arquivo
Professor Eduardo Xavier
Diretórios
• Diretórios são uma forma de organizar os diversos arquivos
contidos em um armazenamento secundário
• São estruturas de dados que contém entradas associadas a
cada arquivo
• A estrutura dos diretórios foi evoluindo desde os primeiros
computadores até hoje. Podemos destacar 3 grandes passos:
– Sistemas de Diretório em Nível Único
– Sistemas de Diretório em Dois Níveis
– Sistemas de Diretório em Hierárquicos
Professor Eduardo Xavier
Sist. de Diretórios em Nível Único
• Cada entrada possui os atributos de um
determinado arquivo
• É a solução mais antiga – muito usada nos
primeiros computadores
• Embora mais simples de implementar, é uma
alternativa muito limitada
• Seu maiores problemas são:
– Não permitir dois arquivos com o mesmo nome
– Cada usuário conhece os arquivos dos demais
Professor Eduardo Xavier
Sist. de Diretórios em Nível Único
Professor Eduardo Xavier
Diretório
Arquivos
Arquivo 1 Arquivo 2 Arquivo 3 ... Arquivo N
Sist. de Diretórios em Dois Níveis
• Para cada usuário do sistema existe um diretório particular
que gerencia seus arquivos, chamdo UFD (User File
Directory)
• Em um nível acima dos UFDs, existe outro diretório que os
controla, chamado MFD (Master File Directory) que é
indexado por usuário
• Para localizar um arquivo, é preciso saber qual o caminho
(PATH) necessário para chegar até ele
• Para evitar que arquivos de uso comum sejam duplicados
desnecessariamente:
– Cria-se um UFD especial onde todos os usuários têm
acesso (OBS: podem haver vários)
– O sistema procura qualquer arquivo primeiramente no
diretório corrente e, caso não ache, procura nesse
diretório especial
Sist. de Diretórios em Dois Níveis
Professor Eduardo Xavier
UFDs
Arquivos
Arquivo 1 Arquivo 2 Arquivo 3 Arquivo 1 Arquivo 2 Arquivo 1 Arquivo 2
Usuário 1 Usuário 2 ... Usuário NMFD
Sist. de Diretórios Hierárquico
• É uma organização em árvore, criada a partir de uma
extensão da idéia dos sistemas de diretórios em dois níveis,
que permitiu mais organização e flexibilidade
• Neste sistema, é possível criar quantos diretórios se queira
e cada um pode conter arquivos e outros diretórios
• Cada arquivo possui um PATH único que descreve como
chegar até ele a partir do MDF
• O MDF não agrupa mais entradas por usuário e sim por
diretórios
• A grande maioria dos sistemas operacionais modernos
adota este sistema de diretórios
Professor Eduardo Xavier
Sist. de Diretórios Hierárquico
Professor Eduardo Xavier
UFDs
... Arquivo ...MFD Diretório DiretórioArquivo
Diretório Arquivo
DiretórioDiretório
Arquivo Arquivo
Arquivo Arquivo Arquivo
Operações com Diretórios
• As system calls para gerenciamento de diretórios variam mais
de sistema para sistema que as chamadas para
gerenciamento de arquivos
• Alguns exemplos de system calls do sistema UNIX:
– Create: Cria um diretório vazio, exceto pelo “.” e pelo “..”
– Delete :Apaga o diretório (só funciona para diretórios vazios)
– OpenDir: “Abre” o diretório deixando o mesmo pronto para
manipulação
– CloseDir: “Fecha” o diretório
– ReadDir: Lê a próxima entrada de um diretório previamente aberto
– Rename: Altera o nome de um diretório
– Link: Efetua uma “ligação” que permite que um arquivo seja
visualizado em mais de um diretório
– Unlink: Remove uma entrada do diretório. Se o arquivo “desligado”
estiver presente apenas em um diretório o mesmo será apagado. Se
estiver em visível em mais de um diretório apenas a ligação será
desfeita Professor Eduardo Xavier
Sistemas Baseados em Disco
• Cada unidade de disco magnético contém os seguintes componentes
básicos:
– Diversos discos com faces magnetizáveis paralelamente posicionados
– Um dispositivo de tração que mantém o disco em rotação à velocidade
constante
– Um pente de cabeças de leitura/gravação
• Uma cabeça para cada face magnetizável do disco (existem dispositivos com mais
de uma cabeça por face, visando reduzir o tempo de acesso à informação)
• Organização do disco
– O disco armazena as informações em trilhas concêntricas
– Um grupo de trilha sobrepostas no disco compõe um cilindro
– Cada trila possui várias divisões radiais (como em uma pizza cortada)
chamadas setores.
Professor Eduardo Xavier
Sistemas Baseados em Disco
Professor Eduardo Xavier
Sistemas Baseados em Disco
• A visão do controlador de discos
– Cada setor tem, geralmente, 512 bytes e é a
unidade mínima de armazenamento
manipulada pelo controlador de disco
– Para acessar a informação no disco, o
controlador precisa saber:
• Qual a face do disco
• Qual a trilha ou o cilindro
• Qual o setor dentro da trilha
Professor Eduardo Xavier
Sistemas Baseados em Disco
• A visão do SO
– O SO enxerga os setores de forma continuada,
ignorando trilhas, cilindros e faces
• Estes setores são chamados de blocos contínuos ou
registros físicos
– As vezes, é mais interessante para o SO trabalhar com
unidades diferentes de 1 setor (exemplo: para obter
mais velocidade em discos de alta capacidade)
• Neste caso, o SO passa a trabalhar com registros
lógicos ou blocos, que são agrupamentos de
registros físicos (mais comum hoje em dia)
• Isso aumenta a velocidade de acesso, mas aumenta
também o espaço perdido pro registro
Professor Eduardo Xavier
Sistemas Baseados em Disco
• Gerenciamento de espaço livre no disco
– O espaço de um arquivo que foi apagado pode
ser reutilizado
– Por este motivo, é preciso ter estratégias para
gerenciar este espaço
– Estratégias :
• Lista Encadeada
• Lista de Blocos Contíguos
Professor Eduardo Xavier
Sistemas Baseados em Disco
• Gerenciamento de espaço LIVRE no disco
– Estratégia : Lista Encadeada
• Ligação de todos os blocos livres do disco, formando uma
“corrente”
• Cada bloco possui uma área reservada para armazenar o
endereço do próximo bloco livre
• Problema: a pesquisa nos blocos é sempre sequencial
– Estratégia : Lista de Blocos Contíguos
• Guarda o endereço do primeiro bloco livre de uma série de
blocos adjacentes em uma tabela de controle
• Para cada endereço guardado, também se armazena a
quantidade de blocos contíguos
Professor Eduardo Xavier
Sistemas Baseados em Disco
Professor Eduardo Xavier
DISCO
Lista Encadeada
1 2 3 4 5 6 7 8 9 10
11 12 13 14 15 16 17 18 19 20
Bloco Ocupado
Bloco Livre
Sistemas Baseados em Disco
Professor Eduardo Xavier
DISCO
Lista de Blocos Contíguos
1 2 3 4 5 6 7 8 9 10
11 12 13 14 15 16 17 18 19 20
Bloco Ocupado
Bloco Livre
Primeiro Bloco Livre Número de Blocos Contíguos
1 2
5 1
7 1
10 2
14 1
17 4
Sistemas Baseados em Disco
• Alocação de espaço OCUPADO no disco
– Estratégia : Alocação Contígua
• Consiste em armazenar um arquivo em blocos
sequencialmente dispostos no disco
• O sistema passa a localizar o arquivo pelo endereço
do primeiro bloco e a quantidade de blocos
contíguos do mesmo
• Embora possuindo um gerenciamento simples, este
método apresenta alto índice de fragmentação do
disco, o que obriga a execução freqüente de rotinas
de desfragmentação, causando impacto no
desempenho
Professor Eduardo Xavier
Sistemas Baseados em Disco
Professor Eduardo Xavier
DISCO
Alocação Contígua
1 2 3 4 5 6 7 8 9 10
11 12 13 14 15 16 17 18 19 20
Tabela de Blocos Contíguos
Arquivo Bloco Extensão
Arq01.txt 3 4
Arq02.txt 8 2
Arq03.txt 11 3
Arq04.txt 15 2
Bloco Ocupado
Bloco Livre
Sistemas Baseados em Disco
• Alocação de espaço OCUPADO no disco
– Estratégia : Alocação Encadeada
• Conjunto de blocos ligados logicamente no disco,
independente de localização física
• Cada bloco do arquivo possui um ponteiro apontando
para o bloco seguinte do arquivo
• Este método lida melhor com a fragmentação do disco
do que a alocação contígua, porém:
– Não elimina o problema de desempenho causado
por excesso de fragmentação
– Continua necessitando de eventuais
desfragmentações
– Outro problema neste método é a impossibilidade
de acesso direto aos blocos dos arquivos
Sistemas Baseados em Disco
Professor Eduardo Xavier
DISCO
Alocação Encadeada
1 2 3 4 5 6 7 8 9 10
11 12 13 14 15 16 17 18 19 20
Início do arquivo
Fim do arquivo
Bloco Ocupado
Bloco Livre
Sistemas Baseados em Disco
• Alocação de espaço OCUPADO no disco
– Estratégia : Alocação Indexada
• Mantém o endereço de todos os blocos (ponteiros)
de um arquivo em uma estrutura separada chamada
bloco de índice
• Para arquivos grandes, pode-se encadear vários
blocos de índices, onde o último valor de um bloco
aponta para o próximo bloco
• Este método resolve o problema de acesso direto
mencionado na alocação encadeada
Professor Eduardo Xavier
Sistemas Baseados em Disco
Professor Eduardo Xavier
DISCO
Alocação Indexada
1 2 3 4 5 6 7 8 9 10
11 12 13 14 15 16 17 18 19 20
Bloco Ocupado
Bloco Livre
Diretório
Arquivo Bloco de
Índice
Arq01.txt 3
3 9 – 6 – 5 – 8 – 11 – 13 – 15 – 16
Tópicos para Discussão
• Confiabilidade do sistema de arquivos
– Cópias de segurança
• Procedimentos, Desastres e reprocessamentos
– Consistência
• Detecção e verificação
• Desempenho
– Cache de blocos (ou cache de buffer)
– Leitura antecipada
– Redução do movimento no braço do disco
Professor Eduardo Xavier

Mais conteúdo relacionado

Mais procurados (20)

PPTX
Sistemas operacionais de redes particionamento de discos ii
Carlos Melo
 
PPTX
Modelo osi
Cristiano Esperto Lage
 
PPTX
Aula 3: Introdução a sistema de arquivos
camila_seixas
 
DOC
Sistemas de arquivos artigo
Daiana de Ávila
 
PPSX
Linguagem SQL
André Nobre
 
PPTX
Aula 09 - Memórias do Computador
Suzana Viana Mota
 
PPTX
Simplex, Half-Duplex e Full-Duplex
Yohana Alves
 
PDF
Módulo 3-Sistema Operativo Servidor - V3.pdf
FChico2
 
PDF
Banco de Dados - Conceitos Básicos
Adriano Leite da Silva
 
PDF
Convenção de nomenclatura de computadores
Deangelis | Design
 
DOCX
Atividade fundamentos-de-redes
Arlimar Jacinto
 
PPTX
Treinamento de SQL Básico
Igor Alves
 
PPTX
Protocolo http
Biel2013a
 
PPTX
Redes de computadores
Jakson Silva
 
PDF
Apresentação Sistemas Distribuídos - Conceito
Thiago Marinho
 
PPT
Introdução ao HTML
Vinícius Roggério da Rocha
 
PDF
Apostila Informática Básica - Completa.pdf
JonalvoAbsairLopesLo
 
PPT
Servidor proxy
Silvino Neto
 
Sistemas operacionais de redes particionamento de discos ii
Carlos Melo
 
Aula 3: Introdução a sistema de arquivos
camila_seixas
 
Sistemas de arquivos artigo
Daiana de Ávila
 
Linguagem SQL
André Nobre
 
Aula 09 - Memórias do Computador
Suzana Viana Mota
 
Simplex, Half-Duplex e Full-Duplex
Yohana Alves
 
Módulo 3-Sistema Operativo Servidor - V3.pdf
FChico2
 
Banco de Dados - Conceitos Básicos
Adriano Leite da Silva
 
Convenção de nomenclatura de computadores
Deangelis | Design
 
Atividade fundamentos-de-redes
Arlimar Jacinto
 
Treinamento de SQL Básico
Igor Alves
 
Protocolo http
Biel2013a
 
Redes de computadores
Jakson Silva
 
Apresentação Sistemas Distribuídos - Conceito
Thiago Marinho
 
Introdução ao HTML
Vinícius Roggério da Rocha
 
Apostila Informática Básica - Completa.pdf
JonalvoAbsairLopesLo
 
Servidor proxy
Silvino Neto
 

Destaque (20)

PPTX
Árvore B
Marcelo Carvalho
 
PDF
Árvore B estruturas de dados e técnicas de programação
Everson Wolf
 
PPTX
Sistema de arquivos
Virgínia
 
PPTX
Aula 07 disco rígido e mídias de armazenamento
Leewan Meneses
 
PDF
Arvores
darosajoseluiz
 
PPT
Armazenamento de dados Sistema de Informacao
Jefferson Martins
 
DOCX
Dispositivo de armazenamento de dados
Filipe Simão Kembo
 
PDF
Sistemas de arquivos cap 04 (iii unidade)
Faculdade Mater Christi
 
PPT
A evolução dos dispositivos de armazenamento
Nuno Pereira
 
PPTX
Dispositivos de armazenamento
felipefaleiro
 
PDF
Meios de armazenamento
Louriedson Soares
 
ODT
TECNOLOGIAS DE ARMAZENAMENTO DE INFORMAÇÃO
Renan Souza Daniel
 
PDF
MC - Aula 05 - Memória e Dispositivos de Armazenamento
Felipe J. R. Vieira
 
PPT
EDII14 [2012.1] Árvores B e B+
KianeLedok
 
PPTX
Apresentação sobre Árvores B
Thiago Colares
 
PPT
Dispositivos de Armazenamento
Melissa Rubert Heller
 
PPTX
Dispositivos de armazenamento
Vinicius Buffolo
 
PPTX
Aula 4 (tecnologias de armazenamento)
Evandro Júnior
 
PPS
Dispositivos e Periféricos de Armazenamento: Pen Drives e Cartões de Memória
Sara Coelho
 
PDF
Caderno de info(banco de dados).
Ajudar Pessoas
 
Árvore B
Marcelo Carvalho
 
Árvore B estruturas de dados e técnicas de programação
Everson Wolf
 
Sistema de arquivos
Virgínia
 
Aula 07 disco rígido e mídias de armazenamento
Leewan Meneses
 
Armazenamento de dados Sistema de Informacao
Jefferson Martins
 
Dispositivo de armazenamento de dados
Filipe Simão Kembo
 
Sistemas de arquivos cap 04 (iii unidade)
Faculdade Mater Christi
 
A evolução dos dispositivos de armazenamento
Nuno Pereira
 
Dispositivos de armazenamento
felipefaleiro
 
Meios de armazenamento
Louriedson Soares
 
TECNOLOGIAS DE ARMAZENAMENTO DE INFORMAÇÃO
Renan Souza Daniel
 
MC - Aula 05 - Memória e Dispositivos de Armazenamento
Felipe J. R. Vieira
 
EDII14 [2012.1] Árvores B e B+
KianeLedok
 
Apresentação sobre Árvores B
Thiago Colares
 
Dispositivos de Armazenamento
Melissa Rubert Heller
 
Dispositivos de armazenamento
Vinicius Buffolo
 
Aula 4 (tecnologias de armazenamento)
Evandro Júnior
 
Dispositivos e Periféricos de Armazenamento: Pen Drives e Cartões de Memória
Sara Coelho
 
Caderno de info(banco de dados).
Ajudar Pessoas
 
Anúncio

Semelhante a Sd01 (si) sistemas de arquivos (20)

PPT
Apostila 8 sistema de arquivos
Paulo Fonseca
 
PPTX
Gerenciamento de Arquivos Nos Sistemas Operacionais
Leandro Júnior
 
PPTX
Aula 04 informática aplicada - comando básicos
Robson Ferreira
 
PDF
SO04 - Sistemas-Operacionais - Gerencia de Arquivos.pdf
Silvano Oliveira
 
PPT
Gerência de Armazenamento: Interface do Sistema de Arquivos
Alexandre Duarte
 
PPTX
Sistemas operacionais sistemas de arquivos-atualizado-senai
Carlos Melo
 
PPTX
FACULDADE DE CIÊNCIAS EXACTAS E TECNOLÓGICAS SLIDE 4 GRUPO.pptx
RolleynMachoco
 
PDF
Material sobre sistemas de arquivos do Windows,como é a organização e o supor...
Julio Oliveira
 
PDF
Unidade 3.3 Estrutura de Diretórios Linux
Juan Carlos Lamarão
 
PPTX
Perícia Forense - Análise dos Sistemas de Arquivos
Sofia Trindade
 
PDF
Perícia Forense - Análise dos Sistemas de Arquivos
Thaís Favore
 
PPTX
Módulo 7 – Tratamento de ficheiros.pptx
BrancaSilva12
 
PPT
Introdução ao linux
Filipe Jesus
 
PPTX
Aula 5 - Sistemas Operacionais - Sistema de Arquivos (1).pptx
RicardoCristovao2
 
PDF
Entendendo FHS - Palestra Debian Day 2013
Juliana Felix, MBA, ITIL v3
 
PPTX
1ª Unidade Sistemas de arquivos
Cleiton Cunha
 
DOC
Comandos do linux
Jussara Novaes
 
PDF
Uma Apresentação sobre sistemas de arquivo
MateusSoares325300
 
PPT
Sd08 (si) sistemas de arquivos distribuídos
Computação Depressão
 
PPT
2010 02 26 Sistemas Operacionais Aula1
Universal.org.mx
 
Apostila 8 sistema de arquivos
Paulo Fonseca
 
Gerenciamento de Arquivos Nos Sistemas Operacionais
Leandro Júnior
 
Aula 04 informática aplicada - comando básicos
Robson Ferreira
 
SO04 - Sistemas-Operacionais - Gerencia de Arquivos.pdf
Silvano Oliveira
 
Gerência de Armazenamento: Interface do Sistema de Arquivos
Alexandre Duarte
 
Sistemas operacionais sistemas de arquivos-atualizado-senai
Carlos Melo
 
FACULDADE DE CIÊNCIAS EXACTAS E TECNOLÓGICAS SLIDE 4 GRUPO.pptx
RolleynMachoco
 
Material sobre sistemas de arquivos do Windows,como é a organização e o supor...
Julio Oliveira
 
Unidade 3.3 Estrutura de Diretórios Linux
Juan Carlos Lamarão
 
Perícia Forense - Análise dos Sistemas de Arquivos
Sofia Trindade
 
Perícia Forense - Análise dos Sistemas de Arquivos
Thaís Favore
 
Módulo 7 – Tratamento de ficheiros.pptx
BrancaSilva12
 
Introdução ao linux
Filipe Jesus
 
Aula 5 - Sistemas Operacionais - Sistema de Arquivos (1).pptx
RicardoCristovao2
 
Entendendo FHS - Palestra Debian Day 2013
Juliana Felix, MBA, ITIL v3
 
1ª Unidade Sistemas de arquivos
Cleiton Cunha
 
Comandos do linux
Jussara Novaes
 
Uma Apresentação sobre sistemas de arquivo
MateusSoares325300
 
Sd08 (si) sistemas de arquivos distribuídos
Computação Depressão
 
2010 02 26 Sistemas Operacionais Aula1
Universal.org.mx
 
Anúncio

Mais de Computação Depressão (20)

PPT
Sd06 (si) exclusão mútua
Computação Depressão
 
PPT
Sd05 (si) relógios e sincronização
Computação Depressão
 
PPT
Sd04 (si) comunicação em sd
Computação Depressão
 
PPT
Sd03 (si) conceitos básicos de sd
Computação Depressão
 
PPT
Sd02 (si) gerenciamento de entrada e saída
Computação Depressão
 
PPT
Sd07 (si) eleição
Computação Depressão
 
PDF
Ufbamat2013
Computação Depressão
 
PDF
Ufbaingles2013
Computação Depressão
 
PDF
Ufbagab mat 2013
Computação Depressão
 
PDF
Ufbagab ingles2013
Computação Depressão
 
PDF
Ufbagab fis 2013
Computação Depressão
 
PDF
Ufbafisqui2013
Computação Depressão
 
PDF
Ufbagab qui 2013
Computação Depressão
 
PDF
Questesdetecnologia ano2002
Computação Depressão
 
PDF
Questesdematemtica ano2003
Computação Depressão
 
PDF
Questesdematemtica ano2002
Computação Depressão
 
PDF
Questesdefundamentos ano2003
Computação Depressão
 
PDF
Questesdefundamentos ano2002
Computação Depressão
 
PDF
Gabarito ano2011
Computação Depressão
 
PDF
Gabarito ano2010
Computação Depressão
 
Sd06 (si) exclusão mútua
Computação Depressão
 
Sd05 (si) relógios e sincronização
Computação Depressão
 
Sd04 (si) comunicação em sd
Computação Depressão
 
Sd03 (si) conceitos básicos de sd
Computação Depressão
 
Sd02 (si) gerenciamento de entrada e saída
Computação Depressão
 
Sd07 (si) eleição
Computação Depressão
 
Ufbaingles2013
Computação Depressão
 
Ufbagab mat 2013
Computação Depressão
 
Ufbagab ingles2013
Computação Depressão
 
Ufbagab fis 2013
Computação Depressão
 
Ufbafisqui2013
Computação Depressão
 
Ufbagab qui 2013
Computação Depressão
 
Questesdetecnologia ano2002
Computação Depressão
 
Questesdematemtica ano2003
Computação Depressão
 
Questesdematemtica ano2002
Computação Depressão
 
Questesdefundamentos ano2003
Computação Depressão
 
Questesdefundamentos ano2002
Computação Depressão
 
Gabarito ano2011
Computação Depressão
 
Gabarito ano2010
Computação Depressão
 

Sd01 (si) sistemas de arquivos

  • 1. Sistemas Distribuídos Parte 1 Sistemas de Arquivos Professor Eduardo Xavier
  • 2. Introduçao • Os primeiros computadores executavam seus programas contando exclusivamente com a informação carregada na memória primária. • Que problemas essa abordagem causava? – O espaço de endereçamento de cada processo que estava executando era muito limitado em seu tamanho. Por vezes, aplicações muito grandes não cabiam inteiramente na memória. – Quando o processo terminava, toda a informação que ele manipulava era eliminada da memória junto com o mesmo. Professor Eduardo Xavier
  • 3. Introduçao • Outros problemas: – Falhas no funcionamento do hardware comprometiam a informação manipulada. – Múltiplos processos precisavam acessar uma determinada informação (ou apenas parte dela) ao mesmo tempo e isso não era possível, pois cada processo tinha seu próprio espaço de endereçamento protegido do acesso dos demais. • A solução para todos estes problemas era uma só: tornar a informação independente dos processos que a manipulavam – Assim nasceu o conceito de ARQUIVO Professor Eduardo Xavier
  • 4. Arquivos • Para resolver os problemas já citados, os arquivos devem atender a alguns requisitos essenciais: – Conseguir suportar grandes capacidades de armazenamento – Garantir a “persistência” da informação, ou seja, providenciar que a informação sobreviva ao término do processo – Suportar acesso compartilhado da informação por múltiplos processos simultaneamente Professor Eduardo Xavier
  • 5. Arquivos • Os arquivos são gerenciados pelo sistema operacional no que diz respeito a: – Estrutura de armazenamento – Identificação (nomeação e outras características) – Proteção (garantia de integridade) – Uso (como pode ser manipulado) – Acesso (controle de quem e como pode ter acesso) – Implementação (como manipular a estrutura de armazenamento) • A parte do SO que cuida disso chama-se “Sistema de Arquivo” Professor Eduardo Xavier
  • 7. Nomeação de Arquivos • Cada sistema operacional tem regras próprias para definir o que é válido e o que não é aceito na definição de um nome válido para seus arquivos. – A ideia básica é possibilitar que diversos processos possam acessar um certo conjunto de dados usando apenas a identificação deste conjunto (um nome) – Assim, os processos deixam de preocupar com a forma de armazenamento destes dados ou com o funcionamento do hardware onde estão hospedados Professor Eduardo Xavier
  • 8. Nomeação de Arquivos • Extensões de arquivos – Parte do nome do arquivo que indica alguma característica específica daquele tipo de arquivo – Não é algo obrigatório na maioria dos sistemas operacionais modernos e seu objetivo é apenas facilitar o uso do arquivo Professor Eduardo Xavier
  • 9. Nomeação de Arquivos • Alguns Exemplos: Professor Eduardo Xavier
  • 10. Estruturas de Arquivos • O sistema operacional normalmente não sabe (e nem precisa saber) qual o conteúdo de cada arquivo. – O que o SO “vê” é apenas um conjunto de bytes. – Dessa forma, a manipulação do arquivo ganha flexibilidade Professor Eduardo Xavier
  • 11. Estruturas de Arquivos • As estruturas de arquivos mais comuns são: – Sequência de bytes • É a estrutura mais flexível – Sequência de registros • Cada registro é um bloco de tamanho fixo de bytes – Árvore de registros • Cada “folha” (registro) pode ter um tamanho diferente • Cada registro possui em uma posição fixa um campo- chave pelo qual a árvore se liga e é ordenada Professor Eduardo Xavier
  • 12. Estruturas de Arquivos Professor Eduardo Xavier Seqüência de Bytes Seqüência de Registros Árvore de Registros
  • 13. Tipos de Arquivos • Os sistemas operacionais costumam suportar diversos tipos de arquivos, mas geralmente eles se dividem em dois grupos: – Arquivos regulares • São arquivos que contém informações dos usuários • Podem ser: – Arquivos de texto » Linhas de texto em código ASCII – Arquivos binários » Conjunto de códigos binários cuja estrutura interna é conhecida apenas pelos programas projetados para manipular estes arquivos » O que chamamos de arquivos EXECUTÁVEIS são arquivos binários codificados em um formato reconhecido pelo SO sem ajuda de nenhum outro programa – Diretórios • Arquivos de controle que contém parte da estrutura suportada pelo sistema de arquivos Professor Eduardo Xavier
  • 14. Acesso a Arquivos • Os primeiros computadores e seus sistemas operacionais só suportavam acessos a seus arquivos de forma sequencial – Exemplos: fitas magnéticas, cartões perfurados, impressoras,... • Com o surgimento dos discos magnéticos, o acesso aleatório passou a ser mais frequente, em virtude das novas aplicações que surgiram com a nova tecnologia (ex: bancos de dados) – Nos primeiros modelos, o tipo de acesso ao arquivo era definido quando o mesmo era criado, ou seja, ao criar um novo arquivo seu dono definia se este seria acessado de forma sequencial ou aleatória – Hoje em dia, todos os arquivos são criados permitindo- se o acesso aleatório (porém o acesso sequencial também é suportado em alguns casos) Professor Eduardo Xavier
  • 15. Atributos • Atributos são itens informativos sobre determinado arquivo, mas que não fazem parte dos dados. • Alteração da informação contida nos atributos – Alguns atributos são informações fixas, como a data de criação do arquivo. – Outros podem ser modificados pelo SO, a exemplo da data da última alteração no arquivo – Existem ainda atributos que podem ser alterados pelo próprio usuário, de acordo com sua conveniência. Exemplo: permissões de acesso ao arquivo • Dependendo do sistema de arquivos, os atributos podem variar, embora alguns deles sejam praticamente “padrões de mercado”, como identificação do dono, tamanho do arquivo, data de criação e informações de proteção. Professor Eduardo Xavier
  • 17. Operações com Arquivos • O sistema de arquivos é responsável por prover uma série de system calls ou primitivas que permitam a manipulação dos arquivos gerenciados • As system calls mais comuns são: – Create: Cria o arquivo e estabelece os primeiros atributos básicos – Open: Carrega o arquivo na memória e lê certos atributos para definir como o mesmo será manipulado – Seek: Procura determinado ponto no arquivo – Read: Lê o arquivo (geralmente de forma sequencial) a partir de determinado ponto – Write: Escreve dados no arquivo (existe uma variação chamada “append” que indica que o dado será adicionado ao final do arquivo) – Get/Set atributes: Recupera/Altera o valor de certos atributos – Close: Remove qualquer controle ou informação que indique que o arquivo está sendo usado (isso foi estabelecido no “open”) – Delete :Apaga o arquivo Professor Eduardo Xavier
  • 18. Diretórios • Diretórios são uma forma de organizar os diversos arquivos contidos em um armazenamento secundário • São estruturas de dados que contém entradas associadas a cada arquivo • A estrutura dos diretórios foi evoluindo desde os primeiros computadores até hoje. Podemos destacar 3 grandes passos: – Sistemas de Diretório em Nível Único – Sistemas de Diretório em Dois Níveis – Sistemas de Diretório em Hierárquicos Professor Eduardo Xavier
  • 19. Sist. de Diretórios em Nível Único • Cada entrada possui os atributos de um determinado arquivo • É a solução mais antiga – muito usada nos primeiros computadores • Embora mais simples de implementar, é uma alternativa muito limitada • Seu maiores problemas são: – Não permitir dois arquivos com o mesmo nome – Cada usuário conhece os arquivos dos demais Professor Eduardo Xavier
  • 20. Sist. de Diretórios em Nível Único Professor Eduardo Xavier Diretório Arquivos Arquivo 1 Arquivo 2 Arquivo 3 ... Arquivo N
  • 21. Sist. de Diretórios em Dois Níveis • Para cada usuário do sistema existe um diretório particular que gerencia seus arquivos, chamdo UFD (User File Directory) • Em um nível acima dos UFDs, existe outro diretório que os controla, chamado MFD (Master File Directory) que é indexado por usuário • Para localizar um arquivo, é preciso saber qual o caminho (PATH) necessário para chegar até ele • Para evitar que arquivos de uso comum sejam duplicados desnecessariamente: – Cria-se um UFD especial onde todos os usuários têm acesso (OBS: podem haver vários) – O sistema procura qualquer arquivo primeiramente no diretório corrente e, caso não ache, procura nesse diretório especial
  • 22. Sist. de Diretórios em Dois Níveis Professor Eduardo Xavier UFDs Arquivos Arquivo 1 Arquivo 2 Arquivo 3 Arquivo 1 Arquivo 2 Arquivo 1 Arquivo 2 Usuário 1 Usuário 2 ... Usuário NMFD
  • 23. Sist. de Diretórios Hierárquico • É uma organização em árvore, criada a partir de uma extensão da idéia dos sistemas de diretórios em dois níveis, que permitiu mais organização e flexibilidade • Neste sistema, é possível criar quantos diretórios se queira e cada um pode conter arquivos e outros diretórios • Cada arquivo possui um PATH único que descreve como chegar até ele a partir do MDF • O MDF não agrupa mais entradas por usuário e sim por diretórios • A grande maioria dos sistemas operacionais modernos adota este sistema de diretórios Professor Eduardo Xavier
  • 24. Sist. de Diretórios Hierárquico Professor Eduardo Xavier UFDs ... Arquivo ...MFD Diretório DiretórioArquivo Diretório Arquivo DiretórioDiretório Arquivo Arquivo Arquivo Arquivo Arquivo
  • 25. Operações com Diretórios • As system calls para gerenciamento de diretórios variam mais de sistema para sistema que as chamadas para gerenciamento de arquivos • Alguns exemplos de system calls do sistema UNIX: – Create: Cria um diretório vazio, exceto pelo “.” e pelo “..” – Delete :Apaga o diretório (só funciona para diretórios vazios) – OpenDir: “Abre” o diretório deixando o mesmo pronto para manipulação – CloseDir: “Fecha” o diretório – ReadDir: Lê a próxima entrada de um diretório previamente aberto – Rename: Altera o nome de um diretório – Link: Efetua uma “ligação” que permite que um arquivo seja visualizado em mais de um diretório – Unlink: Remove uma entrada do diretório. Se o arquivo “desligado” estiver presente apenas em um diretório o mesmo será apagado. Se estiver em visível em mais de um diretório apenas a ligação será desfeita Professor Eduardo Xavier
  • 26. Sistemas Baseados em Disco • Cada unidade de disco magnético contém os seguintes componentes básicos: – Diversos discos com faces magnetizáveis paralelamente posicionados – Um dispositivo de tração que mantém o disco em rotação à velocidade constante – Um pente de cabeças de leitura/gravação • Uma cabeça para cada face magnetizável do disco (existem dispositivos com mais de uma cabeça por face, visando reduzir o tempo de acesso à informação) • Organização do disco – O disco armazena as informações em trilhas concêntricas – Um grupo de trilha sobrepostas no disco compõe um cilindro – Cada trila possui várias divisões radiais (como em uma pizza cortada) chamadas setores. Professor Eduardo Xavier
  • 27. Sistemas Baseados em Disco Professor Eduardo Xavier
  • 28. Sistemas Baseados em Disco • A visão do controlador de discos – Cada setor tem, geralmente, 512 bytes e é a unidade mínima de armazenamento manipulada pelo controlador de disco – Para acessar a informação no disco, o controlador precisa saber: • Qual a face do disco • Qual a trilha ou o cilindro • Qual o setor dentro da trilha Professor Eduardo Xavier
  • 29. Sistemas Baseados em Disco • A visão do SO – O SO enxerga os setores de forma continuada, ignorando trilhas, cilindros e faces • Estes setores são chamados de blocos contínuos ou registros físicos – As vezes, é mais interessante para o SO trabalhar com unidades diferentes de 1 setor (exemplo: para obter mais velocidade em discos de alta capacidade) • Neste caso, o SO passa a trabalhar com registros lógicos ou blocos, que são agrupamentos de registros físicos (mais comum hoje em dia) • Isso aumenta a velocidade de acesso, mas aumenta também o espaço perdido pro registro Professor Eduardo Xavier
  • 30. Sistemas Baseados em Disco • Gerenciamento de espaço livre no disco – O espaço de um arquivo que foi apagado pode ser reutilizado – Por este motivo, é preciso ter estratégias para gerenciar este espaço – Estratégias : • Lista Encadeada • Lista de Blocos Contíguos Professor Eduardo Xavier
  • 31. Sistemas Baseados em Disco • Gerenciamento de espaço LIVRE no disco – Estratégia : Lista Encadeada • Ligação de todos os blocos livres do disco, formando uma “corrente” • Cada bloco possui uma área reservada para armazenar o endereço do próximo bloco livre • Problema: a pesquisa nos blocos é sempre sequencial – Estratégia : Lista de Blocos Contíguos • Guarda o endereço do primeiro bloco livre de uma série de blocos adjacentes em uma tabela de controle • Para cada endereço guardado, também se armazena a quantidade de blocos contíguos Professor Eduardo Xavier
  • 32. Sistemas Baseados em Disco Professor Eduardo Xavier DISCO Lista Encadeada 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Bloco Ocupado Bloco Livre
  • 33. Sistemas Baseados em Disco Professor Eduardo Xavier DISCO Lista de Blocos Contíguos 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Bloco Ocupado Bloco Livre Primeiro Bloco Livre Número de Blocos Contíguos 1 2 5 1 7 1 10 2 14 1 17 4
  • 34. Sistemas Baseados em Disco • Alocação de espaço OCUPADO no disco – Estratégia : Alocação Contígua • Consiste em armazenar um arquivo em blocos sequencialmente dispostos no disco • O sistema passa a localizar o arquivo pelo endereço do primeiro bloco e a quantidade de blocos contíguos do mesmo • Embora possuindo um gerenciamento simples, este método apresenta alto índice de fragmentação do disco, o que obriga a execução freqüente de rotinas de desfragmentação, causando impacto no desempenho Professor Eduardo Xavier
  • 35. Sistemas Baseados em Disco Professor Eduardo Xavier DISCO Alocação Contígua 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Tabela de Blocos Contíguos Arquivo Bloco Extensão Arq01.txt 3 4 Arq02.txt 8 2 Arq03.txt 11 3 Arq04.txt 15 2 Bloco Ocupado Bloco Livre
  • 36. Sistemas Baseados em Disco • Alocação de espaço OCUPADO no disco – Estratégia : Alocação Encadeada • Conjunto de blocos ligados logicamente no disco, independente de localização física • Cada bloco do arquivo possui um ponteiro apontando para o bloco seguinte do arquivo • Este método lida melhor com a fragmentação do disco do que a alocação contígua, porém: – Não elimina o problema de desempenho causado por excesso de fragmentação – Continua necessitando de eventuais desfragmentações – Outro problema neste método é a impossibilidade de acesso direto aos blocos dos arquivos
  • 37. Sistemas Baseados em Disco Professor Eduardo Xavier DISCO Alocação Encadeada 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Início do arquivo Fim do arquivo Bloco Ocupado Bloco Livre
  • 38. Sistemas Baseados em Disco • Alocação de espaço OCUPADO no disco – Estratégia : Alocação Indexada • Mantém o endereço de todos os blocos (ponteiros) de um arquivo em uma estrutura separada chamada bloco de índice • Para arquivos grandes, pode-se encadear vários blocos de índices, onde o último valor de um bloco aponta para o próximo bloco • Este método resolve o problema de acesso direto mencionado na alocação encadeada Professor Eduardo Xavier
  • 39. Sistemas Baseados em Disco Professor Eduardo Xavier DISCO Alocação Indexada 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Bloco Ocupado Bloco Livre Diretório Arquivo Bloco de Índice Arq01.txt 3 3 9 – 6 – 5 – 8 – 11 – 13 – 15 – 16
  • 40. Tópicos para Discussão • Confiabilidade do sistema de arquivos – Cópias de segurança • Procedimentos, Desastres e reprocessamentos – Consistência • Detecção e verificação • Desempenho – Cache de blocos (ou cache de buffer) – Leitura antecipada – Redução do movimento no braço do disco Professor Eduardo Xavier