Академический Документы
Профессиональный Документы
Культура Документы
Sistemas Operacionais I
Prof Rita de Cssia Cassiano Lopes
Sistemas de Arquivos
uma estrutura que indica como os dados devem ser gravados em dispositivos de gravao. de acordo com os recursos oferecidos por essa estrutura que possvel determinar o espao disponvel e ocupado em disco, e gerenciar como partes de um arquivo podem ficar "distribudas" nas reas de armazenamento. tambm o sistema de arquivos que determina como os dados podem ser acessados, copiados, movidos, renomeados, protegidos e eliminados. Portanto, sem um sistema de arquivos, impossvel utilizar um disco rgido (e outros dispositivos) para armazenamento de informaes.
Arquivos
Arquivos podem ser vistos como recipientes que contm dados ou como um grupo de registros correlatos. Os arquivos armazenam informaes que sero utilizadas, em geral, por programas aplicativos. Os arquivos so implementados atravs da criao, para cada arquivo no sistema, de uma estrutura de dados composta por registros. O descritor de arquivo um registro que mantm informaes sobre o arquivo, como posio de incio e fim.
Arquivos
As informaes tpicas (atributos) mantidas pelo sistema operacional so:
do arquivo 2. Tamanho (bytes) 3. Data e hora da criao, do ltimo acesso, da ltima modificao 4. Identificao do usurio que criou o arquivo 5. Listas de controle de acesso 6. Local do disco fsico onde o contedo do arquivo foi colocado
1. Nome
Arquivos
As operaes mais comuns relacionadas manipulao dos arquivos so:
Create Append
Delete Seek
Open
Close
Read Rename
Write
Arquivos
Para controlar e organizar os arquivos, em geral, so criados diretrios ou pastas. Os diretrios podem ser organizados em um nico nvel (contendo todos os arquivos) ou em mltiplos nveis (diretrios dentro de diretrios). Um dos principais problemas como alocar espao em disco para que os arquivos sejam armazenados de forma eficiente e que permita acesso rpido.
Sistema de Arquivos
Existem alguns mtodos que podem ser utilizados, tais como:
1. Alocao contgua 2. Alocao com Lista Ligada 3. Alocao com Lista Usando um ndice
Alocao Contgua
Este o esquema mais simples de alocao de arquivos, onde cada arquivo armazenado no disco como um bloco contguo de dados. Neste esquema, em um disco com blocos de 1 KB, um pequeno arquivo de 20 KB seria armazenado em 20 blocos consecutivos.
Alocao Contgua
Principais vantagens:
o simples implementao: controle de onde est cada arquivo no disco feito por um nico nmero (endereo em disco do 1 bloco). o performance: todo o bloco (arquivo) pode ser lido do disco de uma nica vez. necessrio o tempo de somente um seek.
Problemas:
Alocao Contgua
o a estratgia s pode ser usada se o tamanho mximo do arquivo for conhecido no momento de sua criao (devido necessidade de saber o tamanho total do arquivo ou quantidade de blocos que ele ocupa). o fragmentao do disco: perde-se muito espao til com este esquema de alocao. Ao remover um arquivo a rea ocupada pelo mesmo liberada ocasionando lacunas por todo o disco. Necessidade de compactao (custo alto).
I-node
A cada arquivo associa-se uma pequena tabela, denominada I-node, que lista os atributos e os endereos em discos dos blocos do arquivo. Os primeiros endereos de disco so armazenados no prprio i-node. Se o arquivo for pequeno, toda a informao encontrada diretamente no i-node. O contedo do arquivo s transferido do disco para a memria quando o arquivo for aberto (esquema utilizado pelo UNIX).
Proteo de Arquivos
Confiabilidade: cpia de arquivos com intervalos regulares (backup) Proteo de acesso aos arquivos
Proteo de Arquivos
Nveis de Proteo de Sistemas no permitem o acesso a outros usurios, no precisam de proteo (default) tm proteo completa, proibindo o acesso tm livre acesso sem nenhuma proteo Proteo atravs de um controle de acesso
Proteo de Arquivos
Proteo atravs de controle de acesso login + senha (password) dependendo da operao sobre arquivos leitura, escrita e execuo tm livre acesso sem nenhuma proteo usurios com necessidades de acesso diferentes lista de acesso associada a cada arquivo ou diretrio
Proteo de Arquivos
Lista de acesso pode ser muito grande dependendo da forma de implementao Reduo do tamanho da lista operaes de leitura, escrita e execuo classificao dos usurios em grupos proprietrio: usurio que criou o arquivo grupo: vrios usurios que compartilham e necessitam de acesso similar ao arquivo universo: todos os outros usurios
Proteo de Arquivos
A primeira fornece um nome de arquivo e um endereo virtual, fazendo com que o SO mapeie o arquivo e um endereo virtual. A segunda remove os arquivos do espao de endereamento.
FAT32
Derivativo do sistema de arquivos FAT, o FAT32 suporta tamanhos de cluster menores e volumes maiores que a FAT, o que resulta na alocao de espao mais eficiente em volumes FAT32.
Prs
Aceita volumes de at 2 TB; O tamanho do arquivo limitado apenas pelo tamanho do volume; Aceita nomes de volumes de at 32 caracteres; Oferece suporte a compactao, criptografia e indexao; Oferece suporte a clusters de 512 bytes; possvel inserir imagem do sistema em um volume NTFS; um sistema de arquivos muito mais seguro que o FAT; Permite polticas de segurana e gerenciamento; Volumes NTFS so menos vulnerveis a fragmentos; Melhor desempenho, em geral; Volumes NTFS podem se recuperar de um erro mais facilmente.
Contras
Se usado em uma mdia removvel, ela pode se corromper mais facilmente; No possvel otimizar para remoo rpida; Apenas verses a partir do NT 3.1 reconhecem volumes; Pode ser necessrio drivers extra para acesso a plataformas no-Windows; mais lento que o FAT32, pois pelas diversas diretivas de segurana tanto de acesso quanto de leitura e gravao tornam a partio mais lenta que FAT32 que no possui nenhuma diretiva de segurana ou confiabilidade adequado.
Ext2
O Ext2 (Second Extended file system) um sistema de arquivos para dispositivos de blocos (disco rgido, disquete, pen drive). Foi desenvolvido para o Linux por Rmy Card para substituir o Ext (Extended file system), que tambm havia sido criado por Rmy Card.
Ext3
O Ext3 (Third Extended file system) um sistema de arquivos desenvolvido para o Linux, que acrescenta alguns recursos ao Ext2, dos quais o mais visvel o journaling.
o A principal diferena entre o Ext2 e o Ext3 a implementao do journaling, que consiste em um registro (log ou journal) de transaes cuja finalidade recuperar o sistema em caso de desligamento no programado.
Journaling
Tcnica onde o sistema de arquivos passa a registrar em uma rea especial chamada "journal" ou "log" as aes que sero feitas nos arquivos (gravao ou alterao de dados, por exemplo) antes da execuo em si. Aps a execuo, as operaes registradas no log so tidas como concludas e, portanto, eliminadas. Esse procedimento acontece de maneira extremamente rpida.
Journaling
Os registros de log so escritos antes que as mudanas efetivamente ocorram no sistema de arquivos. Esses registros somente so eliminados quando as mudanas so executadas. Se, por exemplo, o computador for desligado repentinamente (como ocorre em falta de energia eltrica), o sistema de arquivos verificar os registros existentes no journal e executar aquilo que estiver marcado como no realizado. Isso faz com que o risco de perda de dados diminua drasticamente, j que o sistema operacional saber "onde parou".
Journaling
H trs nveis de journaling disponveis na implementao do Ext3: Journal: os metadados e os dados (contedo) dos arquivos so escritos no journal antes de serem de fato escritos no sistema de arquivos principal. Isso aumenta a confiabilidade do sistema com uma perda de desempenho, devido a necessidade de todos os dados serem escritos no disco duas vezes.
Journaling
Writeback: os metadados so escritos no journal mas no o contedo dos arquivos. Essa opo permite um melhor desempenho em relao ao modo journal, porm introduz o risco de escrita fora de ordem onde, por exemplo, arquivos que so escritos durante um trash podem ter adicionados a eles trechos de lixo na prxima montagem.
Journaling
Ordered: como o writeback, mas fora que a escrita do contedo dos arquivos seja feita aps a marcao de seus metadados como escritos no journal. Esse considerado um meio-termo aceitvel entre confiabilidade e performance, sendo, portanto, o nvel padro.
Ext4
O Ext4 um sistema de arquivos do Linux desenvolvido para ser o sucessor do Ext3 a partir de 2006.
o o o o o o o suporte para tamanhos maiores de volumes e arquivos; mais extenses so introduzidas; compatibilidade com verses anteriores; pr alocao; mais rpido; alocador multibloco; deixa de existir um limite de sub-diretrios
ReiserFS
O sistema de arquivos ReiserFS teve sua primeira apario no ano de 2001 pelas mos de Hans Reiser (da o nome do padro). Desde ento, o ReiserFS vem sendo cada vez mais utilizado, principalmente por estar disponvel como padro em muitas das distribuies Linux, fazendo frente ao sistema de arquivos ext3.
ReiserFS
Entre seus principais recursos, destacam-se:
o Jornaling, um recurso que ajuda a manter a integridade dos dados em caso de erros no sistema causados por desligamento incorreto ou determinadas falhas de hardware, por exemplo. o Suporte a arquivos com mais de 2 GB (limitao existente em alguns filesystems); o Organizao dos objetos do sistema de arquivos em uma estrutura de dados chamada B+Trees (rvores B+). Nesse esquema, os dados so fixados em posies organizadas por divises denominadas folhas. Por sua vez, as folhas so organizadas por ns ou ponteiros chamados de sub-rvores, que esto ligados a um n raiz. Esse processo organizacional exige algoritmos mais complexos, porm apresenta performance superior na gravao e no acesso aos dados, se comparado a outros sistemas de arquivos;
ReiserFS
o Alocao dinmica de inodes (estruturas que contm informaes sobre os arquivos), diminuindo o desperdcio de espao. Outros sistemas de arquivos tm blocos de tamanho fixo para alocao, assim, se no for necessrio usar um bloco inteiro, o espao restante fica em desuso. No ReiserFS, a alocao feita com base no tamanho do arquivo.
Reiser4
um sucessor do ReiserFS e sua proposta a de oferecer, entre outros recursos: Journaling mais eficiente; Melhor suporte a grandes quantidades de arquivos pequenos; Gerenciamento mais rpido de diretrios com muitos arquivos (na casa dos milhares); Estrutura de arquivos dinamicamente otimizada; Transaes atmicas na modificao do sistema de arquivos. Neste caso, uma operao s pode ser tida como concluda se executada por completo, ou seja, no h meio termo: ou est feito ou no est.
Exerccios
1. O que um arquivo? 2. Como os arquivos podem ser organizados? 3. Diferencie os mtodos de acesso: sequencial, direto e indexado. 4. O que alocao contgua de blocos e quais benefcios a desfragmentao pode proporcionar quando esta tcnica utilizada? 5. Quais os tipos de proteo de acesso a arquivos existentes e quais suas principais vantagens? 6. Em alguns sistemas operacionais possvel mapear parte de um arquivo na memria. Quais restries devem ser impostas a esses sistemas? Como implementado esse mapeamento parcial? 7. O que um Sistema de Arquivos?
Exerccios
8. Apresente as diferenas entre os sistemas FAT32 e NTFS. 9. Fale sobre o ReiserFs. 10. Qual a principal diferena entre os sistemas Ext2 e Ext3? 11. Explique a tcnica de journaling em sistemas de arquivos. 12. Como se divide a tcnica de journaling?
Bibliografia
SILBERSCHATZ, A. et al. Sistemas Operacionais: conceitos e aplicaes. Campus, 2001. STALLINGS, W. Operating Systems. Prentice Hall, 4th Ed, 2001.