• Nenhum resultado encontrado

IntroduçãoaosSistemasdeGerênciadeArquivos 2

N/A
N/A
Protected

Academic year: 2021

Share "IntroduçãoaosSistemasdeGerênciadeArquivos 2"

Copied!
35
0
0

Texto

(1)

Introdução aos Sistemas de

Gerência de Arquivos

Bianchi Serique Meiguins

Diovanni Moraes

Roberto Franco

Belém, 24/11/2011

(2)

Conceitos

• Arquivo:

– É um conjunto de registros definidos pelo sistema de arquivos e podem ser armazenados em

diferentes dispositivos físicos.

– É constituído de informações logicamente

relacionadas, podendo representar programas ou dados.

• A representação de dados dentro de um

computador digital é feita na forma de

(3)

Conceitos

• No Linux ou no Windows, arquivos são

concebidos e tratados como STREAMS

(minhocas) de BYTES.

• O que é um BYTE? Um BYTE é um número

entre 0 e 255.

(4)

Representação de um Arquivo

• O computador só entende números

• Portanto, para ele entender letras, números e

caracteres especiais é definido uma tabela de

códigos.

– Ex: Tabela ASCII, Tabela UNICODE

A : 65 B : 66 ... Z : 90 a : 97 b : 98 ... z : 122 0 : 48 1 : 49 ... 9 : 57 Caracteres especiais: 0 : NULO 8 : BACKSPACE 9 : TAB 10 : mudança de linha 12 : mudança de página 13 : ENTER

(5)

Representação de um Arquivo

• Representação interna do conteúdo de um

arquivo:

• Convertendo a representação interna de um

arquivo (considere para um arquivo texto):

65 66 67 10 49 50 51 10 68 69 10 97 98 10 A B C 10 1 2 3 10 D E 10 a b 10 mudança de linha mudança de linha mudança de linha mudança de linha

(6)

Sistemas de Arquivos

• O sistema de arquivos é gerenciado pelo

sistema operacional.

• Sua estrutura é apresentada de forma

independente, uniforme e visível,

possibilitando a organização das informações.

• É responsável por guardar um conjunto de

dados com características ACID (Atomididade,

Consistência, Isolamento e Durabilidade).

• Meio de armazenamento implica em uma

organização de arquivos específica.

(7)

Características dos sistemas de

arquivos

• Segurança ou permissões

• Listas de controle de acesso (ACLs)

• Mecanismo para evitar a fragmentação

• Capacidade de enlaces simbólicos (symbolic links)

ou duros (hard links)

• Integridade do sistema de arquivos (Journaling)

• Suporte para arquivos dispersos

• Suporte para quotas de discos

• Suporte de crescimento do sistema de arquivos

nativo

(8)
(9)
(10)

Métodos de Acesso

• Acesso Seqüencial

– É o mais conhecido e mais freqüentemente

utilizado. Num arquivo seqüencial, a ordem lógica e física dos registros armazenados é a mesma.

Como os registros são armazenados um após o outro em seqüencia, a leitura de um registro n requer que os n-1 registros anteriores também sejam lidos.

(11)

Métodos de Acesso

• O arquivo seqüencial pode ser:

– Ordenado  utiliza um campo chave – Não ordenado  ordem de gravação

• Tarefas que podem ser realizadas em um

arquivo seqüencial:

– Inserir registros – Remover registros – Atualizar registros – Consultar registros

(12)

Métodos de Acesso

• Acesso Direto

– Permite a leitura/gravação de um registro

diretamente na sua posição. É realizado através do número de registro. Não existe restrição a ordem em que os registros são lidos ou gravados.

Somente é possível quando é definido com registros de tamanho fixo.

– O endereço usado para localizar um registro pode ser absoluto ou relativo

(13)

Métodos de Acesso

• Acesso Indexado ou por chave

– O arquivo deve possuir uma área de índice onde existam ponteiros para os diversos registros e a partir desta informação realiza-se um acesso direto.

– Podemos fazer analogia a organização de um livro – Essa área de índice nada mais são do que arquivos

(14)

Métodos de Acesso

• O arquivo de índice pode ser criado de duas

formas:

– Índice Denso: existe um registro no arquivo de índices para cada valor de chave no arquivo principal. É mais rápido porém mais pesado

– Índice Esparso: registros de índice são criados para apenas alguns registros. Outros valores de chave são procurados a partir do registro de índice mais próximo. É menos pesado e mais lento que o

anterior, porém tem a vantagem de tomar menor esforço na manutenção para inclusões e

(15)

Métodos de Acesso

(16)

Métodos de Acesso

• Acesso Seqüencial-Indexado

– Utiliza o princípio da pesquisa seqüencial: a partir do primeiro, cada registro é lido seqüencialmente até encontrar uma chave maior ou igual a chave de pesquisa.

– Duas providências para melhorar a eficiência e não percorrer todos em seqüência:

– 1- O arquivo deve ser mantido ordenado pelo campo chave do registro

– 2- Um arquivo de índices contendo pares de valores <x, p> deve ser criado, onde x representa uma chave e

p representa o endereço da página na qual o primeiro

(17)

Métodos de Acesso

(18)

Algoritmos de Pesquisa

• Pesquisa Exaustiva

k  -1 // significa que Elem não foi encontrado em V i  0

Enquanto (i < tam) e (k = -1) Fazer Se (V[i] = Elem) então

k  i senão

i  i + 1 Se (k = -1) então

Elem não se encontra em V senão

(19)

Algoritmos de Pesquisa

• Pesquisa Seqüencial

k  -1 // significa que Elem ainda não foi encontrado em V i  0 // índice dos elementos do vector V

Enquanto (i < tam) e (k = -1) Fazer Se (V[i] = Elem) então

k  i senão

Se (V[i] < Elem) então i  i + 1 senão

k  -2; // significa que Elem não está em V Se (k ≥ 0) então

Elem encontra-se na posição k senão

(20)

Algoritmos de Pesquisa

• Pesquisa Binária

• A idéia é comparar o elemento a pesquisar

com o elemento que está ao meio do vetor e

analisar 3 situações diferentes:

1.se aquele elemento é igual ao que está ao

meio,

2.se aquele elemento está antes do meio,

3.se aquele elemento está depois do meio.

(21)

Algoritmos de Pesquisa

• Pesquisa Binária

inicio <-- 0 fim <-- tam - 1

k <-- -1 // k recebe a posição de Elem (no início presume-se que não está) Enquanto ( (inicio ≤ fim) e (k = -1) ) Fazer

meio <-- (inicio + fim) / 2 Se (Elem = V[meio]) então

k <-- meio senão

Se (Elem < V[meio]) então fim <-- meio – 1 senão

inicio <-- meio + 1 Se (k ≥ 0) então

Elem encontra-se em V na posição k senão

(22)

Cache de sistemas de arquivos

(23)

Cache de sistemas de arquivos

• Vantagens e Desvantagens da Buffer Cache

• Minimização do número de transferências entre o disco e a memória (cache hits);

• O acesso a disco é tratado de uma forma uniforme.Existe apenas uma interface para acessar os dados de um disco; • Ajudar a manter a coerências dos blocos. Se dois processos

tentam acessar o mesmo bloco a buffer cache ordena os acessos;

• Torna o sistema mais vulnerável a acidentes de parada total (falta de energia, por exemplo) ("crashes");

• Torna a transferência de grandes quantidades de informação mais lenta.

(24)

Mapa Conceitual do Sistema de

Arquivos com Cache

(25)

• Estruturas Dinâmicas

– Listas – Árvores

• Hashing

• Monitoramento de Espaço Livre

– Lista Encadeada – Mapa de Bits

• TAREFAS

– Pesquisar sobre a estrutura de arquivos do Linux – Dica: como funciona os sistemas de partições

(26)

Estruturas Dinâmicas

• Árvores

– É uma estrutura de dados que herda as características das topologias em árvore.

Conceitualmente diferente das listas encadeadas, em que os dados se encontram numa sequência, nas árvores os dados estão dispostos de forma hierárquica.

(27)

Estruturas Dinâmicas

(28)

Estruturas Dinâmicas

• Árvore de Pesquisa Binária

– É uma estrutura de dados de árvore

binária baseada em nós, onde todos os nós da subárvore esquerda possuem um valor numérico inferior ao nó raiz e todos os nós da subárvore direita possuem um valor superior ao nó raiz (pode ser invertido).

Revisando:

Tamanho = nº de nós

Profundidade = nº de níveis Raiz  8

(29)

Estruturas Dinâmicas

• Algoritmo Árvore de Pesquisa Binária

• Busca

(30)

Estruturas Dinâmicas

• Algoritmo Árvore de Pesquisa Binária

• Inserir

(31)

Estruturas Dinâmicas

• Algoritmo Árvore de Pesquisa Binária

• Exclusão

(32)

Estruturas Dinâmicas

• Hashing

– O conceito teórico diz que "hash é a transformação de

uma grande quantidade de informações em uma pequena quantidade de informações".

– Essa sequência busca identificar um arquivo ou informação unicamente. Por exemplo, uma mensagem de correio

eletrônico, uma senha, uma chave criptográfica ou mesmo um arquivo.

– Como a sequência do hash é limitada, muitas vezes não passando de 512 bits, existem colisões (sequências iguais para dados diferentes). Quanto maior for a dificuldade de se criar colisões intencionais, melhor é o algoritmo.

(33)
(34)

Monitoramento do Espaço Livre

• Mapa de Bits

– Nesta forma de gerenciamento, é utilizado um espaço fixo adicional em disco especificamente

para o mapeamento do espaço livre, de forma que para cada bloco em disco é utilizado um bit no

mapa. Sendo assim, um disco com n blocos requer um mapa de bits com n bits. Não surpreende,

portanto, que os mapas de bits requeiram menos espaço, já que ele usa 1 bit por bloco, contra 32 bits no modelo de lista encadeada.

(35)

Referências

Documentos relacionados

Podem treinar tropas (fornecidas pelo cliente) ou levá-las para combate. Geralmente, organizam-se de forma ad-hoc, que respondem a solicitações de Estados; 2)

• Quando o navegador não tem suporte ao Javascript, para que conteúdo não seja exibido na forma textual, o script deve vir entre as tags de comentário do HTML. &lt;script Language

Nos tempos atuais, ao nos referirmos à profissão docente, ao ser professor, o que pensamos Uma profissão indesejada por muitos, social e economicamente desvalorizada Podemos dizer que

Os roedores (Rattus norvergicus, Rattus rattus e Mus musculus) são os principais responsáveis pela contaminação do ambiente por leptospiras, pois são portadores

como consequˆ encia dessa linha de observa¸c˜ ao e como foi demonstrado com a proposi¸c˜ ao 5, sabemos que existe tamb´ em uma regi˜ ao em que o parˆ ametro τ ´ e grande

- O estudo dos constituintes fixos da própolis resultou no isolamento e caracterização de duas substâncias do extrato hexânico (o fenilpropanoide artepilina C e o

O processo adotado foi o resultado de uma crescente participação dos engenheiros da MMA na pesquisa: no lnlclo, simples compradores de processo; após,

-  modificação no arquivo de dados afeta apenas o índice primário -  menor complexidade de codificação -  acesso direto -  índice primário à arquivo de dados