430 likes | 593 Views
Sistemas Operacionais. Prof. Edivaldo Serafim Curso: Tecnólogo em Análise e Desenvolvimento de Sistemas - 2013 IFSP – Campus Capivari. Sistema de arquivos. 05/11/2013. Introdução. Aplicações necessitam buscar e gravar grande volume de informações para a sua execução;
E N D
Sistemas Operacionais Prof. Edivaldo Serafim Curso: Tecnólogo em Análise e Desenvolvimento de Sistemas - 2013 IFSP – Campus Capivari
Sistema de arquivos 05/11/2013
Introdução • Aplicações necessitam buscar e gravar grande volume de informações para a sua execução; • Essas informações podem estar em armazenamento secundário, como fitas magnéticas, HD pen drives, etc. • A forma como o SO implementa e organiza essas informações é através do sistema de arquivos; • A manipulação de arquivos deve ser de forma uniforme e independente da mídia de armazenamento. Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Arquivos • Os arquivos são constituídos de informações logicamente relacionadas: • Arquivos executáveis possuem instruções que o processador compreende; • Arquivos de dados podem ser estruturados livremente, como arquivos de texto e arquivos de banco de dados; • Para o SO, arquivo é um conjunto de registros definidos pelo sistema de arquivos; • Independente da mídia, esses registros são transparentes para o usuário, que visualiza somente o arquivo em si. Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Arquivos • Os arquivos são identificados por nome: • Uma sequência de caracteres; • Alguns SOs são case sensitive, diferindo caracteres maiúsculos de minúsculos; • Dependendo do SO podem ter tamanho de nome diferentes, e tipos de caracteres válidos para o nome; • Alguns SOs separam o nome do arquivo por um ponto em duas partes: • Nome e Extensão: • Extensão tem por função identificar o tipo de conteúdo do arquivo. Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Organização de Arquivos • A organização de arquivos consiste em como os dados estão dentro do arquivo; • Essa organização varia em função do tipo de arquivo: • Arquivos executáveis possuem propósitos diferentes de arquivos de texto; • Suas estruturas são organizadas para otimizar seu uso; • Na criação do arquivo, define-se sua organização, feita pelo SO ou pela aplicação. Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Organização de Arquivos • A maneira mais simples de organização de arquivos é uma sequencia não estruturada de bytes; • O sistema de arquivos não impões nenhuma estrutura lógica para o arquivo; • A aplicação é responsável por organizar logicamente o arquivo e estabelecer seus critérios; • É mais fácil de implementar, porém todo o controle do arquivo fica sob responsabilidade da aplicação. Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Organização de Arquivos • Alguns SOs podem ter diferentes formas de organizar os arquivos; • Cada arquivo criado deve seguir o modelo suportado pelo SO: • As organizações mais comuns variam em função do método de acesso e podem ser: • Sequencial; • Relativa; • Indexada; Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Método de acesso • Método de acesso é a forma como o sistema de arquivo recupera os registros de um arquivo; • A primeira implementação foi a sequencial: • Utilizada em fitas magnéticas; • Leitura na ordem em que foram gravados; • Gravação de registros era feita no final do arquivo; Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Método de acesso • Com o surgimento de discos magnéticos, métodos mais eficientes de acesso foi possível; • A implementação de acesso direto foi a primeira para discos magnéticos: • Leitura e gravação diretamente em posição específica do disco, independente de local; • Leitura fora da ordem em que foram gravados; • Leitura e Gravação de registros feita através do número de registro do arquivo: • Posição relativa ao início do arquivo. • Arquivos são definidos com número de registros de tamanho fixos; Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Método de acesso • Uma variação do método de acesso direto é o acesso indexado, ou acesso por chave; • Para acessar o arquivo existe uma tabela de índice; • Na tabela existem ponteiros para os diversos registros do arquivo; • Depois de resolvido esses índices, o sistema de arquivos acessam os registros; • Implementado quando volume e tamanho de arquivos aumentou; Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Operação de I/O • Todo sistema de arquivos disponibiliza rotinas para operações de I/O: • Tradução de nomes em endereços; • Leitura e gravação; • Criação e exclusão; • A função das rotinas é possibilitar uma interface amigável para aplicações e dispositivos. Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Atributos • Atributos de arquivos são informações de controle e variam de acordo com o sistema de arquivos; • Alguns são comuns na maioria dos sistemas de arquivos: • Tamanho, identificação do criador, proteção e data da criação; • Alguns atributos não podem ser alterados, como data da criação e organização; • Outros são alterados pelo SO, como tamanho e data de acesso; Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Atributos Windows Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013
Atributos Linux Prof. Edivaldo Serafim - Arquitetura de Computadores - IFSP 2013
Diretórios • A estrutura de diretórios é como o sistema de arquivos organiza logicamente a mídia; • Essa organização lógica possui informações como: • Localização física do arquivo; • Nome; • Organização; • Outros atributos. • As informações dos atributos de arquivos abertos ficam em uma tabela armazenada na memória principal. Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Diretórios • Existem várias implementações para a estrutura de diretórios; • A mais simples é chamada de nível único; • Todos os arquivos ficam em um mesmo diretório, ou seja, o sistema de arquivos possui apenas um único diretório; • Modelo bastante limitado: • No é possível ter dois arquivos com o mesmo nome; Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Diretórios Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Diretórios • Uma evolução é o modelo de diretório para cada usuário, o User File Directory(UFD); • Essa estrutura possui um diretório raiz, o Master File Directorycom os UFD dentro; • Este nível é indexado pelo nome do usuário, onde cada entrada aponta para o diretório do usuário; • Implementa a ideia igual a de árvore, com diretório raiz e ramificações; • O nome do arquivo é composto pelo patch (caminho); • Cada SO tem sua sintaxe para determinar o caminho Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Diretórios Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013 Master File Directory(MFD)
Diretórios • Outro modelo é o de estrutura de diretório em árvore, que permite melhor organização dos arquivos; • É adotado na maioria dos sistemas; • Cada usuário pode criar vários níveis de diretórios, os subdiretórios; • Cada diretório pode ter arquivos ou outros diretórios; • Cada SO possui suas regras para subdiretórios; • Diretórios também são tratados como arquivos, com atributos e identificação. Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Diretórios Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Path Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Gerência de espaço livre em disco • O sistema de arquivos deve manter os espaços livres no disco para a organização dos arquivos; • Geralmente isso é feito por uma lista ou tabela que contém os blocos livres; • Quando o sistema cria um arquivo, esse bloco é removido da tabela e vice versa; Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Gerência de alocação de espaço em disco • Basicamente existem três maneiras do sistema de arquivos gerenciar o uso de espaços ocupados: • Alocação contígua; • Alocação encadeada; • Alocação indexada. Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Gerência de alocação de espaço em disco • Alocação contígua: • Os arquivos são organizados de forma sequencial; • Localiza-se o primeiro bloco do arquivo e depois sua sequência de blocos; • O acesso aos arquivos contíguos são feitos de forma muito simples, tanto para acesso sequencial quanto direto; • O problema está na criação de novos arquivos, que podem não caber em espaços livres entre arquivos; • As estratégias para alocação de arquivos pode ser: • Firstfit, Best fite Worstfit. Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Gerência de alocação de espaço em disco Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Gerência de alocação de espaço em disco • Alocação encadeada: • Os blocos do arquivo estão espalhados no disco; • Dever haver ponteiros para localizar o próximo bloco do arquivo; • Ocorre a fragmentação de arquivos no disco; • A fragmentação aumenta o tempo de acesso e a desfragmentação deve ser periódica; • Depois de localizado o primeiro bloco, todos os outros são lidos sequencialmente. Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Gerência de alocação de espaço em disco Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Alocação encadeada • Desfragmentação
Gerência de alocação de espaço em disco • Alocação Indexada: • Os blocos do arquivo estão espalhados no disco; • Dever haver uma estrutura com todos os índices dos blocos do arquivo; • Possibilita acessar diretamente um bloco específico do arquivo; Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Gerência de alocação de espaço em disco Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Proteção de acesso • Proteção de acesso permite o uso compartilhado de recursos de forma segura; • Impede acessos não autorizados à arquivos e diretórios; • Geralmente consiste em concessões para usuários e grupos: • Leitura; • Gravação; • Execução; • Exclusão; Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Grupo de usuários • Consiste no agrupamento de usuários para compartilhamento mais eficiente de recursos; • Usuários são atribuídos a um ou mais grupos, e as proteções de acesso são aplicadas para o grupo; • Geralmente possui três níveis de proteção: • Owner (Dono); • Group(Grupo); • All(Todos). • No momento da criação do arquivo, deve-se determinar a proteção para cada nível. Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Grupo de usuários Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Lista de controle de acesso • A Lista de controle de acessos ou AccessControlList (ACL) é uma lista associada a cada arquivo; • Toda vez que um usuário acessa um arquivo, o SO consulta a ACL do arquivo para verificar suas permissões; • Em alguns SOs pode existir tanto o controle por grupo de usuários quanto ACL; Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Lista de controle de acesso Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Implementação de caches • O acesso aos discos dependem de I/O, o que compromete o sistema; • Vários SOs deixam um espaço na memória principal que serve de buffercache; • Sempre que o SO precisa acessar o arquivo, verifica se o mesmo se encontra em cache; • Se não estiver, o sistema fará o I/O e buscará o arquivo no disco; • Caso contrário, o sistema terá o arquivo mais rapidamente; Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Implementação de caches • Apesar de ser uma boa alternativa para resolver o problema de I/O, pode apresentar problemas; • Uma delas é o caso de falta de eletricidade, gerando perda de dados; • Duas maneiras de resolver esse problemas: • O sistema operacional periodicamente salva no disco os arquivos armazenados em cache; • Salvando imediatamente o arquivo em disco ao ser modificado na cache. Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013
Atividades • Pg 228 livro • Pg 244 pdf. Prof. Edivaldo Serafim Sistemas OperacionaisIFSP 2013