INTRODUÇÃO À TECNOLOGIA DA INFORMAÇÃO ACESSO, ATRIBUTOS E OPERAÇÕES COM ARQUIVOS PROFESSOR CARLOS MUNIZ

Documentos relacionados
Capítulo 11 Sistemas de Arquivos

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

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

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

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

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

Gerenciamento de memória

Capítulo 6 Nível do Sistema Operacional

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

Sistemas Operacionais. Prof. André Y. Kusumoto

O que é um jogo digital?

Sistemas Operacionais

Introdução à Informática. Alexandre Meslin

Sistemas Operacionais

SISTEMA DE ARQUIVOS DO SISTEMA OPERACIONAL

Fundamentos de Arquivos e Armazenamento Secundário

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

ARMAZENAMENTO SECUNDÁRIO, PARTE 1 Professora Rosane Minghim

Organização e Arquitetura de Computadores I

LABORATÓRIO DE SISTEMAS OPERACIONAIS. PROFª. M.Sc. JULIANA HOFFMANN QUINONEZ BENACCHIO

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

Acesso Sequencial Indexado

Memória virtual. Sistemas de Computação

Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado em Ciência da Computação.

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

Tecnólogo em Análise e Desenvolvimento de Sistemas. Sistemas Operacionais (SOP A2)

FUNDAMENTOS DE ARQUITETURAS DE COMPUTADORES MEMÓRIA CACHE CONTINUAÇÃO CAPÍTULO 5. Cristina Boeres

Sistemas de Informação. Sistemas Operacionais

Arquitetura de Sistemas Operacionais

Linguagem de Maquina II. Visão Geral

Sistemas Operacionais

Gerenciamento de memória

Sistemas Operacionais Memória Virtual

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

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

Eletrônica Digital II (Memórias) Prof. Eng. Antonio Carlos Lemos Júnior

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

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!

Gerência de Memória. Execução de um Programa (1) Introdução. Introdução

Gerência da Memória. Adão de Melo Neto

Capítulo 6 Sistema de ficheiros

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

Armazenamento Secundário

Sistemas de Informação. Sistemas Operacionais 4º Período

Introdução. Considerações:

Fundamentos de Sistemas Operacionais

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

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

Organização e Arquitetura de Computadores I


SISTEMAS OPERACIONAIS

Sistemas operacionais P A G I N A Ç Ã O D E M E M Ó R I A

Gerência da Memória. Adão de Melo Neto

- UNIVERSIDADE DO VALE DO RIO DOS SINOS CIÊNCIAS EXATAS E TECNOLÓGICAS Curso: Informática / Ciência da Computação

Gerenciamento de Memória

Universidade Federal de Minas Gerais. Sistemas Operacionais. Aula 18. Sistema de Arquivos - Implementação

Sistemas Operacionais. - Gerência de Memória -

SISTEMAS OPERACIONAIS. 3ª. Lista de Exercícios

Sistemas Operacionais I Memória Virtual

Estruturas de Dados I

ENADE 2011 SISTEMAS OPERACIONAIS

O que faz? De tudo um pouco.

Programação de Sistemas

Organização de Computadores

Sistemas Operacionais

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

Memória. Memória Cache

Arquitetura de Sistemas Operacionais

9 Sistemas de ficheiros

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

Fundamentos de Sistemas Operacionais. Gerência de Memória. Prof. Edwar Saliba Júnior Março de Unidade Gerência de Memória

Aula 10 Gerenciamento de Memória

Exercícios de revisão V2

Sistemas Operacionais. Roteiro. Introdução. Marcos Laureano

Matrizes esparsas: definição

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

Sistemas Operacionais

EA075 Memória virtual

Memória Virtual. Adriano J. Holanda 1/3/2016

Administração Sistemas Operacionais de Rede

Gerenciamento de Memória

Sistemas Operacionais

Sistemas Operacionais

Gerência de memória III

Gerenciamento de memória Memória Virtual

Exercícios de Sistemas Operacionais 3 B (1) Gerência de Dispositivos de Entrada e Saída

SISTEMAS OPERACIONAIS. Gerência de Memória Apostila 7

ESTRUTURA DOS SISTEMAS OPERACIONAIS

Subsistemas de E/S Device Driver Controlador de E/S Dispositivos de E/S Discos Magnéticos Desempenho, redundância, proteção de dados

Indexação de Arquivos III:

Introdução. Gerenciamento de Armazenamento

Gerência da Memória Memória Virtual. Adão de Melo Neto

Fundamentos de Sistemas Operacionais. Sistema de Arquivos. Prof. Edwar Saliba Júnior Março de Unidade Sistemas de Arquivos

SISTEMAS OPERACIONAIS. Sistemas de Arquivos Apostila 09

Sistemas Operacionais II Unix: Memória e E/S. Geraldo Braz Junior

Ambiente de tempo de Execução Cap. 7

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

Transcrição:

INTRODUÇÃO À TECNOLOGIA DA OPERAÇÕES COM ARQUIVOS PROFESSOR CARLOS MUNIZ

INTRODUÇÃO O Sistema de Arquivos é o modo como as informações são armazenadas nos dispositivos físicos de armazenamento, exemplo Disco Rígido, disquete, pendrive, etc... O Sistema de Arquivos é a parte mais visível de um Sistema Operacional, pois a manipulação de arquivos é uma atividade freqüentemente realizada pelos usuários, devendo sempre ocorrer de maneira uniforme, independente dos diferentes dispositivos de armazenamento. Professor Carlos Muniz professorcarlosmuniz@gmail.com 2

ARQUIVOS INTRODUÇÃO À TECNOLOGIA DA Os arquivos são constituído de informações logicamente relacionados, podendo representar programas ou dados, ou melhor, é um conjunto de registros definidos pelo sistema de arquivos. Um arquivo pode ser identificado por um nome, com formato e extensão máxima variando conforme o sistema operacional. Alguns Sistemas Operacionais definem o arquivo em duas partes, possibilitando a identificação do seu tipo através da segunda parte, como exemplo: MeuPrograma.exe (executável), MeuTexto.txt (arquivo texto), MinhaClasse.Java (arquivo texto, fonte de um programa Java). Professor Carlos Muniz professorcarlosmuniz@gmail.com 3

ORGANIZAÇÃO DOS ARQUIVOS A organização dos arquivos consiste no modo como os dados estão internamente armazenados, podendo, sua estrutura, variar em função do tipo de informação contida no arquivo. A forma mais simples de organização é através de uma seqüência não estruturadas de bytes. A aplicação deve definir toda a organização, com vantagem da flexibilidade, porém de inteira responsabilidade da aplicação. Professor Carlos Muniz professorcarlosmuniz@gmail.com 4

ORGANIZAÇÃO DOS ARQUIVOS Alguns Sistemas Operacionais estabelecem diferentes organizações de arquivos e cada arquivo deve seguir a um modelo suportado. As organizações mais conhecidas e implementadas são a seqüencial, relativa e indexada. Professor Carlos Muniz professorcarlosmuniz@gmail.com 5

MÉTODOS DE ACESSO Seqüencial: A gravação de novos registros só é possível no final do arquivo. Exemplo : Fita magnética. Professor Carlos Muniz professorcarlosmuniz@gmail.com 6

MÉTODOS DE ACESSO Acesso Direto: É mais eficiente que o seqüencial; Permite a leitura/gravação de um registro diretamente na sua posição através do número do registro, que é a posição relativa ao início do arquivo. Não existe restrição à ordem em que os registros são lidos ou gravados, sendo sempre necessário especificar o número do registro. Possível apenas quando o arquivo é definido com registros de tamanho fixo. Professor Carlos Muniz professorcarlosmuniz@gmail.com 7

MÉTODOS DE ACESSO Acesso Direto + Acesso Seqüencial: Possível acessar diretamente um registro qualquer de um arquivo, e, a partir deste, acessar seqüencialmente os demais. Professor Carlos Muniz professorcarlosmuniz@gmail.com 8

MÉTODOS DE ACESSO Acesso Indexado ou Acesso por Chave: É o mais sofisticado dos métodos; Tem como base o acesso direto; O arquivo deve possuir uma área de índice onde existam ponteiros para os diversos registros. Quando a aplicação deseja acessar um registro, deverá ser especificada uma chave através da qual o sistema pesquisará, na área de índice, o ponteiro correspondente, a partir disso, acessando diretamente o arquivo. Professor Carlos Muniz professorcarlosmuniz@gmail.com 9

ATRIBUTOS Os atributos são informações de controle dos arquivos que variam dependendo do Sistema Operacional, por exemplo: tamanho, proteção, identificação do criador e data e hora de criação; Alguns atributos específicos são alterados apenas pelo próprio Sistema Operacional, como data e hora de criação, tamanho e outros podem ser alterados pelo usuário como proteção. Professor Carlos Muniz professorcarlosmuniz@gmail.com 10

A organização por diretórios é o modo como o Sistema organiza logicamente os diversos arquivos contidos em um dispositivo físico de armazenamento. O diretório contém entradas associadas aos arquivos onde são armazenadas informações como localização física, nome, organização e demais atributos. Ao abrir um arquivo, o Sistema Operacional procura a sua entrada na estrutura de diretórios em uma tabela mantida na memória principal, contendo todos os arquivos. É necessário fechar o arquivo ao término de seu uso. Professor Carlos Muniz professorcarlosmuniz@gmail.com 11

Nível Único: Organização mais simples de uma estrutura de diretórios. Existe apenas um único diretório contendo todos os arquivos do disco. O nível único é bastante limitado, não permitindo que usuários criem arquivos com mesmo nome. Professor Carlos Muniz professorcarlosmuniz@gmail.com 12

Master File Directory (MFD): Existe um nível de diretório adicional para controlar os diretórios individuais dos usuários. indexado pelo nome do usuário e, nele, cada entrada aponta para o diretório(ufd) pessoal. Professor Carlos Muniz professorcarlosmuniz@gmail.com 13

Estrutura de diretórios em árvore: Existe o diretório MFD que é a raíz, os galhos são os UFD e os arquivos são as folhas. Cada subdiretório abaixo do MDF pode conter arquivos e novos subdiretórios e assim por diante. Quando se referencia a um arquivo, é necessário especificar seu nome, bem como o diretório onde ele se encontra, referência chamada PATH. Professor Carlos Muniz professorcarlosmuniz@gmail.com 14

Estrutura de diretórios em árvore: Mais organizada e adotada pela maioria dos Sistemas Operacionais. Na maioria dos sistemas, diretórios também são tratados como arquivos, com identificação de atributos, proteção identificação do criador e data da criação. Professor Carlos Muniz professorcarlosmuniz@gmail.com 15

Alocação de Espaço em Disco O Sistema Operacional possui uma estrutura de dados que armazena informações que possibilitam ao sistema de arquivos gerenciar as áreas ou blocos livres. Nessa estrutura, geralmente uma lista ou tabela, é possível identificar blocos livres que poderão ser alocados por um novo arquivo. Quando um arquivo é eliminado, todos os seus blocos são liberados para a estrutura de espaços livres. Professor Carlos Muniz professorcarlosmuniz@gmail.com 16

Mapa de Bits: Forma mais simples de implementar uma estrutura de espaços livres; Cada entrada da tabela é associada a um bloco do disco representado por um bit que pode ser 0 (livre) ou 1 (ocupado). Professor Carlos Muniz professorcarlosmuniz@gmail.com 17

Lista encadeada: Existe uma lista encadeada de todos os blocos livres do disco; Cada bloco possui uma área reservada para armazenamento do endereço do próximo bloco; A partir do primeiro bloco livre pode-se ter acesso seqüencial aos demais de forma encadeada; Problema: para se achar espaço livre, o algoritmo deve sempre realizar uma pesquisa seqüencial na lista. Professor Carlos Muniz professorcarlosmuniz@gmail.com 18

Blocos Contíguos: Blocos contíguos são geralmente alocados ou liberados simultaneamente; Enxerga o disco como um conjunto de segmentos de blocos livres; Possível manter uma tabela com o endereço do primeiro bloco de cada segmento e o número de blocos livres contíguos que se seguem. Professor Carlos Muniz professorcarlosmuniz@gmail.com 19

Alocação Contígua A alocação contígua consiste em armazenar um arquivo em blocos seqüencialmente dispostos, permitindo ao sistema localizar um arquivo através do endereço do primeiro bloco e da sua extensão em blocos. O aceso é feito de maneira simples, tanto para a forma seqüencial quanto para a direta. Um problema desse tipo de alocação é que quando um arquivo é criado com n blocos, é necessário que exista uma cadeia de n blocos livres disposto seqüencialmente. Nesse tipo de alocação, o disco é visto como um grande vetor, com segmentos ocupados e livres. Professor Carlos Muniz professorcarlosmuniz@gmail.com 20

Alocação Contígua A alocação em um novo segmento livre consiste técnicas para escolha, algumas das principais são: First-fit: Seleciona o primeiro segmento livre com o tamanho suficiente para alocar o arquivo e a busca é feita seqüencialmente, interrompendo ao achar um segmento livre do tamanho adequado. Best-fit: Seleciona o menor segmento livre disponível com o tamanho suficiente para armazenar o arquivo e é necessária a busca em toda a lista, caso esta não esteja ordenada por tamanho. Worst-fit: Seleciona o maior segmento livre e a busca funciona como no caso anterior. Professor Carlos Muniz professorcarlosmuniz@gmail.com 21

Alocação Contígua Um problema na alocação contígua é a fragmentação dos espaços livres causado pela criação e eliminação constante de arquivos é que com o tempo surgem espaços vagos sem o tamanho suficiente para se alocar novos arquivos. A desfragmentação busca solucionar o problema da fragmentação, reorganizando os arquivos no disco de maneira que só exista um único segmento de blocos. A desfragmentação é lenta e deve ser realizada periodicamente. Professor Carlos Muniz professorcarlosmuniz@gmail.com 22

Alocação Encadeada Na alocação encadeada um arquivo pode ser organizado como um conjunto de blocos ligados logicamente no disco, independente da sua localização física, sendo que cada bloco possui um ponteiro para o bloco seguinte do arquivo e assim sucessivamente. Professor Carlos Muniz professorcarlosmuniz@gmail.com 23

Alocação Encadeada Neste tipo de alocação, ocorre grande fragmentação dos arquivos devido aos blocos livres dos arquivos não precisarem ser contíguos, existe a quebra do arquivo em diversos pedaços, denominados extents. Essa fragmentação aumenta o tempo de acesso aos arquivos, pois exige que o mecanismo de leitura/gravação se desloque diversas vezes sob sua superfície. Dessa forma se torna necessário a execução da operação de defragmentação periódicamente Professor Carlos Muniz professorcarlosmuniz@gmail.com 24

Alocação Encadeada Um problema na alocação encadeada é que ela só permite o acesso seqüencial aos blocos dos arquivos, não possuindo acesso direto aos blocos e desperdiça espaço nos blocos com o armazenamento de ponteiros. Professor Carlos Muniz professorcarlosmuniz@gmail.com 25

Alocação Indexada A alocação indexada soluciona o problema da alocação encadeada referente ao acesso direto aos blocos dos arquivos pois mantém os ponteiros detodos os blocos do arquivoemuma única estrutura denominada bloco de índice. Professor Carlos Muniz professorcarlosmuniz@gmail.com 26

Proteção de Acesso A proteção de acesso aos arquivos visa possibilitar o compartilhamento seguro de arquivos entre usuários, quando desejado. Em geral, existe concessão ou não de acessos como leitura, gravação, execução e eliminação. Existem diferentes mecanismos de níveis de proteção. Alguns deles são: Professor Carlos Muniz professorcarlosmuniz@gmail.com 27

Senha de Acesso: O sistema concede acesso a determinados arquivos/diretórios através de uma senha; Cada arquivo possui apenas uma senha e o acesso pode ter diversos níveis de acesso Desvantagem de compartilhamento, pois além do dono, todos os demais usuários precisam conhecer a senha de acesso. Professor Carlos Muniz professorcarlosmuniz@gmail.com 28

Grupos de Usuários: Existente em diversos Sistemas Operacionais; Associa cada usuário a um grupo de usuários que compartilham arquivos e diretórios; Existe três níveis de proteção: owner (dono), group (grupo) all (todos); Necessário associar o tipo do acesso (leitura, escrita, execução e eliminação) aos três níveis de proteção. Professor Carlos Muniz professorcarlosmuniz@gmail.com 29

Lista de Controle de Acesso (Access Control List - ACL): Consiste em uma lista associada a cada arquivos, especificando usuários e tipos de acesso permitido; O Sistema Operacional verifica se a lista de controle autoriza a operação desejada pelo usuário; A estrutura pode ter um tamanho bastante extenso considerando que um arquivo pode ter seu acesso compartilhado por diversos usuários; A pesquisa seqüencial na lista pode causar overhead. Professor Carlos Muniz professorcarlosmuniz@gmail.com 30

IMPLEMENTAÇÃO DE CACHES Um dos principais problemas para o desempenho do sistema é que o acesso é bastante lento comparado ao acesso a memória principal. Para contornar este problema, são implementados nos sistemas operacionais sistemas de cache. O buffer cache é uma área da memória que armazena informações de disco e busca minimizar o problema da lentidão, pois ao se acessar o disco, se a informação desejada estiver no buffer cache, não será necessário o acesso ao disco. O tamanho do buffer cache é limitado, necessitando políticas para substituição de blocos como FIFO ou Last Recently Used (LRU). Professor Carlos Muniz professorcarlosmuniz@gmail.com 31

IMPLEMENTAÇÃO DE CACHES A falta de energia pode acarretar perda de dados que foram modificados no cache e não foram atualizados no disco. Neste caso, existem duas possíveis soluções: Solução 1: Atualizar periodicamente em disco todos os blocos modificados no cache; Solução 2: Atualizar imediatamente no disco toda a vez que os blocos são modificados no cache. Professor Carlos Muniz professorcarlosmuniz@gmail.com 32