Escolar Documentos
Profissional Documentos
Cultura Documentos
Sistemas de Arquivos
2 de junho de 2023
Introdução
• Todas as aplicações de computadores precisam armazenar e
recuperar informações.
• Enquanto um processo está sendo executado, ele pode
armazenar uma quantidade limitada de informações dentro
do seu próprio espaço de endereçamento.
◦ Restrita ao tamanho do endereçamento
◦ Descarte ao final do processo
◦ Múltiplos processos podem querer compartilhar dados
• Assim, temos três requisitos essenciais para o armazenamento de
informações por um longo prazo:
1. Deve ser possı́vel armazenar uma quantidade muito grande de
informações.
2. As informações devem sobreviver ao término do processo que as
está utilizando.
3. Múltiplos processos têm de ser capazes de acessá-las ao mesmo
tempo.
2 of 20
Introdução
3 of 20
Nomeação de Arquivos
4 of 20
Estrutura de Arquivos
• Arquivos podem ser estruturados de
várias maneiras.
• Três tipos mais comuns
• Sequência desestruturada de bytes
◦ Máxima flexibilidade
◦ SO não tem ciência do conteúdo
◦ Organização definida pelos programas
• Sequência de registros
◦ Primeiro tipo de estruturação
◦ Leitura retorna um registro
◦ Escrita substitui ou anexa um registro
◦ Comum em computadores de grande
porte antigos
◦ Pouco utilizado atualmente
5 of 20
Estrutura de Arquivos
• Arquivos podem ser estruturados de
várias maneiras.
• Três tipos mais comuns
• Sequência desestruturada de bytes
◦ Máxima flexibilidade
◦ SO não tem ciência do conteúdo
◦ Organização definida pelos programas
• Sequência de registros
◦ Primeiro tipo de estruturação
◦ Leitura retorna um registro
◦ Escrita substitui ou anexa um registro
◦ Comum em computadores de grande
porte antigos
◦ Pouco utilizado atualmente
5 of 20
Estrutura de Arquivos
• Árvore de registros
◦ Tamanhos variáveis
◦ Cada um contendo um
campo chave → Em
uma posição fixa no
registro.
◦ Ordenada no campo
chave, a fim de permitir
uma busca rápida por
uma chave especı́fica
6 of 20
Tipos de Arquivos
7 of 20
Tipos de Arquivos
8 of 20
Acesso aos Arquivos
9 of 20
Atributos dos Arquivos
• Todos arquivos → possui um nome e
sua data
• Além disso, todos os sistemas
operacionais associam → Outras
informações ( chamados de
metadados):
◦ Data e hora da última modificação
◦ Tamanho
◦ Criador
◦ Proprietário
◦ Flags
10 of 20
Operações com Arquivos
11 of 20
Operações com Arquivos
12 of 20
Diretórios
13 of 20
Diretórios
14 of 20
Esquema do Sistema de Arquivos
• Sistemas de arquivos armazenados em disco
• Divisão em partições: cada uma com um sistema independente
• Setor 0 chamado de Master Boot Record (MBR)
◦ MBR — é usado para inicializar o computador.
• O fim do MBR contém a tabela de partição
• Quando o computador é inicializado:
◦ BIOS lê e executa MBR
◦ MBR localiza partição ativa e executa bloco de inicialização
◦ SO é carregado
• Toda partição possui um bloco de inicialização
15 of 20
Esquema do Sistema de Arquivos
• Sistemas de arquivos armazenados em disco
• Divisão em partições: cada uma com um sistema independente
• Setor 0 chamado de Master Boot Record (MBR)
◦ MBR — é usado para inicializar o computador.
• O fim do MBR contém a tabela de partição
• Quando o computador é inicializado:
◦ BIOS lê e executa MBR
◦ MBR localiza partição ativa e executa bloco de inicialização
◦ SO é carregado
• Toda partição possui um bloco de inicialização
15 of 20
Esquema do Sistema de Arquivos
• Sistemas de arquivos armazenados em disco
• Divisão em partições: cada uma com um sistema independente
• Setor 0 chamado de Master Boot Record (MBR)
◦ MBR — é usado para inicializar o computador.
• O fim do MBR contém a tabela de partição
• Quando o computador é inicializado:
◦ BIOS lê e executa MBR
◦ MBR localiza partição ativa e executa bloco de inicialização
◦ SO é carregado
• Toda partição possui um bloco de inicialização
15 of 20
Esquema do Sistema de Arquivos
• Sistemas de arquivos armazenados em disco
• Divisão em partições: cada uma com um sistema independente
• Setor 0 chamado de Master Boot Record (MBR)
◦ MBR — é usado para inicializar o computador.
• O fim do MBR contém a tabela de partição
• Quando o computador é inicializado:
◦ BIOS lê e executa MBR
◦ MBR localiza partição ativa e executa bloco de inicialização
◦ SO é carregado
• Toda partição possui um bloco de inicialização
15 of 20
Esquema do Sistema de Arquivos
• Sistemas de arquivos armazenados em disco
• Divisão em partições: cada uma com um sistema independente
• Setor 0 chamado de Master Boot Record (MBR)
◦ MBR — é usado para inicializar o computador.
• O fim do MBR contém a tabela de partição
• Quando o computador é inicializado:
◦ BIOS lê e executa MBR
◦ MBR localiza partição ativa e executa bloco de inicialização
◦ SO é carregado
• Toda partição possui um bloco de inicialização
15 of 20
Esquema do Sistema de Arquivos
• Superbloco: principais parâmetros do sistema de arquivos
• Informação sobre blocos livres: mapa de bits ou lista de
ponteiros
• i-nodes: arranjo de estruturas de dados (informação sobre cada
arquivo)
• Diretório raı́z: topo da árvore
• Todos arquivos/diretórios
16 of 20
Esquema do Sistema de Arquivos
• Superbloco: principais parâmetros do sistema de arquivos
• Informação sobre blocos livres: mapa de bits ou lista de
ponteiros
• i-nodes: arranjo de estruturas de dados (informação sobre cada
arquivo)
• Diretório raı́z: topo da árvore
• Todos arquivos/diretórios
16 of 20
Esquema do Sistema de Arquivos
• Superbloco: principais parâmetros do sistema de arquivos
• Informação sobre blocos livres: mapa de bits ou lista de
ponteiros
• i-nodes: arranjo de estruturas de dados (informação sobre cada
arquivo)
• Diretório raı́z: topo da árvore
• Todos arquivos/diretórios
16 of 20
Esquema do Sistema de Arquivos
• Superbloco: principais parâmetros do sistema de arquivos
• Informação sobre blocos livres: mapa de bits ou lista de
ponteiros
• i-nodes: arranjo de estruturas de dados (informação sobre cada
arquivo)
• Diretório raı́z: topo da árvore
• Todos arquivos/diretórios
16 of 20
Esquema do Sistema de Arquivos
• Superbloco: principais parâmetros do sistema de arquivos
• Informação sobre blocos livres: mapa de bits ou lista de
ponteiros
• i-nodes: arranjo de estruturas de dados (informação sobre cada
arquivo)
• Diretório raı́z: topo da árvore
• Todos arquivos/diretórios
16 of 20
Implementação de Arquivos
• Controle da relação: blocos ↔ arquivos
• Vários métodos existentes
• Alocação contı́gua:
◦ Esquema mais simples
◦ Armazenamento em blocos contı́guos em disco
◦ Exemplo: Disco com blocos de 1KB, Arquivo de 50KB aloca 50 blocos
◦ Vantagens: simplicidade e desempenho
◦ Desvantagem: fragmentação com o tempo
17 of 20
Implementação de Arquivos
• Alocação por lista encadeada:
◦ Cada arquivo é uma lista de blocos encadeada
◦ Primeira palavra de cada bloco → Ponteiro para próximo
◦ Não há problema com fragmentação
◦ Leitura aleatória lenta
◦ Overhead com alocação dos ponteiros
18 of 20
Implementação de Arquivos
• Alocação por lista encadeada
utilizando tabela na memória:
◦ Resolve problema de lentidão de acesso
da lista encadeada
◦ Palavras com ponteiros colocadas em
uma tabela
◦ Tabela chamada de File Allocation
Table (FAT)
◦ Leitura sequencial mas toda dentro da
memória
◦ Desvantagem: consumo de memória
19 of 20
Implementação de Arquivos
• Index-nodes(I-nodes):
◦ Monitorar quais blocos pertencem a quais arquivos
◦ Somente na memória quando arquivo aberto
◦ Memória proporcional ao número máximo de arquivos abertos
20 of 20