SlideShare uma empresa Scribd logo
1 de 45
Baixar para ler offline
Sistemas de Arquivos
2 Sistemas Operacionais
LPRM/DI/UFES
Funções de um SO
■ Gerência de processos
■ Gerência de memória
■ Gerência de Arquivos
■ Gerência de I/O
■ Sistema de Proteção
3 Sistemas Operacionais
LPRM/DI/UFES
Necessidade de Armazenamento
■ Grandes quantidades de informação têm de ser
armazenadas
■ Informação armazenada tem de sobreviver ao fim
do processo que a utiliza
■ Múltiplos processos devem poder acessar a
informação de um modo concorrente
■ ARQUIVO
■ Abstração criada pelo S.O. para gerenciar e representar
os dados
4 Sistemas Operacionais
LPRM/DI/UFES
Gerência de Arquivos
■ Oferece a abstração de arquivos (e diretórios)
■ Atividades suportadas
■ Primitivas para manipulação (chamadas de sistema para
manipulação de arquivos)
■ criar, deletar
■ abrir, fechar
■ ler, escrever
■ posicionar
■ Mapeamento para memória secundária
5 Sistemas Operacionais
LPRM/DI/UFES
Estrutura Interna do Kernel UNIX
User application
Standard Unix libraries
System call interface
File Subsystem
Buffer cache
Interprocess
communication
scheduler
Memory management
Process
control
system
Character block
Device drivers
Hardware control
Hardware
User level
Kernel level
Hardware level
6 Sistemas Operacionais
LPRM/DI/UFES
Sistema de Arquivos
■ O que é?
■ Um conjunto de arquivos, diretórios, descritores e estruturas de
dados auxiliares gerenciados pelo sub sistema de gerência de
arquivos
■ Permitem estruturar o armazenamento e a recuperação de dados
persistentes em um ou mais dispositivos de memória secundária
(discos ou bandas magnéticas)
■ Arquivo
■ Um conjunto de dados persistentes, geralmente relacionados,
identificado por um nome
■ É composto por:
■ Nome: identifica o arquivo perante o utilizador
■ Descritor de arquvo: estrutura de dados em memória secundária com
informação sobre o arquivo (dimensão, datas de criação, modificação e
acesso, dono, autorizações de acesso)
■ Informação: dados guardados em memória secundária
7 Sistemas Operacionais
LPRM/DI/UFES
Estrutura Interna de Arquivos (1)
Seqüência
não-estrutura
da de bytes
Seqüência de
Registros
Seqüência de
Registros
Árvore de Registros
8 Sistemas Operacionais
LPRM/DI/UFES
Estrutura Interna de Arquivos (2)
■ Seqüência não-estruturada de bytes
■ Forma mais simples de organização de arquivos
■ Sistema de arquivos não impõe nenhuma estrutura lógica
para os dados, a aplicação deve definir toda a
organização
■ Vantagem: flexibilidade para criar estruturas de dados,
porém todo o controle de dados é de responsabilidade da
aplicação
■ Estratégia adotada tanto pelo UNIX quanto pelo Windows
9 Sistemas Operacionais
LPRM/DI/UFES
Estrutura Interna de Arquivos (3)
■ Seqüência de Registros
■ Em geral, registros de tamanho fixo
■ Operação de leitura retorna um registro
■ Operação de escrita sobrepõe/anexa um registro
■ Árvore de Registros
■ Cada registro é associado a uma chave
■ Árvore ordenada pela chave
■ Computadores de grande porte / aplicações que fazem
muita leitura aleatória
10 Sistemas Operacionais
LPRM/DI/UFES
Tipos de Arquivos (1)
■ Arquivos Regulares
■ Arquivos ASCII
■ Binários
■ Apresentam uma estrutura interna conhecida pelo S.O.
■ Diretórios
■ Arquivos do sistema
■ Mantêm a estrutura do Sistemas de Arquivos
11 Sistemas Operacionais
LPRM/DI/UFES
Arquivos Binários no Unix
Arquivo
Executável
(UNIX)
Repositório
ou Archive
(UNIX)
12 Sistemas Operacionais
LPRM/DI/UFES
Operações sobre Arquivos
■ Dependem do tipo
■ create
■ delete
■ open
■ close
■ read
■ write
■ append
■ seek
■ get attributes
■ set attributes
■ rename
13 Sistemas Operacionais
LPRM/DI/UFES
Diretórios
■ ATUALMENTE!! Estrutura de diretórios Hierárquicos
■ Adotado pela maioria dos sistemas operacionais
■ Logicamente melhor organizado
■ É possível criar quantos diretórios quiser
■ Um diretório pode conter arquivos e outros diretórios
(chamados subdiretórios)
■ Cada arquivo possui um path único que descreve todos
os diretórios da raiz (MFD – Master File Directory) até o
diretório onde o arquivo está ligado
■ Na maioria dos S.O.s os diretórios são tratados como
arquivos tendo atributos e identificação
14 Sistemas Operacionais
LPRM/DI/UFES
Diretórios (4)
■ Estrutura de diretórios Hierárquicos (cont.)
Programas
Carlos Paulo
Ivan
Pessoal
Pessoal
Teste
Disco C:/
Soma.exe
O path do arquivo é seu
“nome ou identificador”
único
15 Sistemas Operacionais
LPRM/DI/UFES
Esquema do Sistema de Arquivos (1)
16 Sistemas Operacionais
LPRM/DI/UFES
Esquema do Sistema de Arquivos (2)
■ A maioria dos discos é dividida em uma ou mais partições com
Sistemas de arquivos independentes para cada partição
■ O setor 0 do disco é chamado de Master Boot Record (MBR)
■ Na inicialização do sistema, a BIOS lê e executa o MBR
■ O programa do MBR localiza a partição ativa, lê seu primeiro bloco, chamado
de bloco de boot
■ O programa no bloco de boot carrega o S.O. contido na partição
■ Havendo um boot manager, como o GRUB, no MBR se encontra uma parte
“inicial” dele
■ O esquema da partição varia de um S.O. para outro, mas é
comum:
■ A definição de um SuperBloco: contém os principais parâmetros do sistema
de arquivos (tipo, no. de blocos, etc.)
■ As informações sobre os blocos livres
17 Sistemas Operacionais
LPRM/DI/UFES
Implementação do Sistema de Arquivos (1)
■ Alocação Contígua
■ Consiste em armazenar um arquivo em blocos sequencialmente
dispostos
■ O sistema localiza um arquivo por meio do endereço do primeiro
bloco e da sua extensão em blocos
■ O acesso é bastante simples
■ Seu principal problema é a alocação de novos arquivos nos espaços
livres
■ Para armazenar um arquivo que ocupa n blocos, é necessário uma
cadeia com n blocos dispostos seqüencialmente no disco
■ Além disso, como determinar o espaço necessário a um arquivo que
possa se estender depois da sua criação?
■ Pré-alocação (fragmentação interna)
18 Sistemas Operacionais
LPRM/DI/UFES
Implementação do Sistema de Arquivos (2)
■ Alocação Contígua (cont.)
readme.txt 010 003
prova.doc 002 008
Aula.pdf 017 005
arquivo inicio #blocos
0 1 2 3 4 5 6 7
19 Sistemas Operacionais
LPRM/DI/UFES
Implementação do Sistema de Arquivos (3)
■ Alocação Contígua (cont.)
Fragmentação
Externa !
E se o arquivo fosse dividido em Blocos
lógicos?
20 Sistemas Operacionais
LPRM/DI/UFES
Implementação do Sistema de Arquivos (4)
■ Alocação por Lista Encadeada
■ O arquivo é organizado como um conjunto de blocos
ligados no disco
■ Cada bloco deve possuir um ponteiro para o bloco
seguinte
■ Aumenta o tempo de acesso ao arquivo, pois o disco
deve deslocar-se diversas vezes para acessar todos os
blocos
■ É necessário que o disco seja desfragmentado
periodicamente
■ Esta alocação só permite acesso sequencial
■ Compromete-se parte do espaço nos blocos com
armazenamento de ponteiros
21 Sistemas Operacionais
LPRM/DI/UFES
Implementação do Sistema de Arquivos (5)
■ Alocação por Lista Encadeada (cont.)
14
11
8
10
13
7
5
4
12
9
6
3
2
1
0
Início
O final do bloco é
reservado para
armazenar o
número do próximo
bloco do arquivo
Solução pouco eficiente!
Por exemplo, para se
adicionar uma informação no
final do arquivo, é necessário
fazer vários acessos a disco
22 Sistemas Operacionais
LPRM/DI/UFES
Implementação do Sistema de Arquivos (6)
■ Alocação por Lista Encadeada usando Tabela
na Memória
■ Mantém os ponteiros de todos os blocos de arquivos em
uma única estrutura denominada Tabela de Alocação
de Arquivos
■ FAT (File Allocation Table)
■ Vantagens:
■ Permitir o acesso direto aos blocos
■ Não mantém informações de controle dentro dos blocos de dados
■ FAT : Esquema usado pelo MS-DOS (FAT-16), Win95,Win98,
Windows Millennium Edition (FAT-32) … discos externos
23 Sistemas Operacionais
LPRM/DI/UFES
Implementação do Sistema de Arquivos (7)
■ Alocação por Lista Encadeada usando
Tabela na Memória (cont.)
■ Desvantagem
■ A tabela deve estar na memória
o tempo todo
■ Disco de 20 G, blocos de 1k?
■ Mas é possível paginar a FAT!
■ Com isso “partes” dela são
carregadas em memória
Diretório x
A 4
B 6
FAT
1º
Bloco
ocupado
pelo
arquivo A
■ i-nodes
■ Cada arquivo está associado a
um único i-node no disco
■ O i-node só precisa estar na
memória quando o arquivo
correspondente estiver aberto
■ Ocupa menos espaço que a FAT
■ Tamanho da FAT cresce
linearmente com o tamanho do
disco
■ I-nodes requerem um espaço
proporcional à quantidade
máxima de arquivos abertos
■ Usados por sistemas baseados no
UNIX
24 Sistemas Operacionais
LPRM/DI/UFES
Implementação do Sistema de Arquivos (8)
25 Sistemas Operacionais
LPRM/DI/UFES
i-nodes (1)
26 Sistemas Operacionais
LPRM/DI/UFES
i-nodes (2)
10 entradas
diretas
A quantidade de
entradas diretas (direct
block pointers) varia
de implementação
para implementação
27 Sistemas Operacionais
LPRM/DI/UFES
i-nodes (3)
Dado que:
TBD – Tamanho bloco de dados
TR – Tamanho referência (endereço do bloco)
Qual será...?
Bmax
– Nº Blocos máximo de um arquivo
Fmax
– dimensão máxima de um arquivo
Bmax
= 10 + TBD + TBD 2
+ TBD 3
TR TR TR
Fmax
= Bmax
x TBD
TBD = 4K
TR = 4 bytes
278
279
5119
2559 5511
2559 5511
28
Sistemas Operacionais
LPRM/DI/UFES
Relação entre Diretórios e i-nodes (1)
■ Diretórios incluem nomes de arquivos e referências
para os respectivos i-nodes
29 Sistemas Operacionais
LPRM/DI/UFES
Relação entre Diretórios e i-nodes (2)
■ Passos para alcançar /usr/ast/mbox
Sistemas de Arquivos
Diretórios
Gerenciamento de Espaço em Disco
Sistemas Operacionais
LPRM/DI/UFES
Implementação de Diretórios (1)
■ Contém informações que permitem acessar os
arquivos
■ As entradas do diretório fornecem informações para
encontrar os blocos de discos
■ Possui várias entradas, uma por arquivo:
■ nome
■ tipo; tamanho
■ proprietário; proteção
■ data de criação; data da última modificação
■ lista de blocos usados
Sistemas Operacionais
LPRM/DI/UFES
Implementação de Diretórios (2)
■ (a) Diretório simples com
■ Entradas de dimensão fixa
■ Endereços de disco e atributos na entrada de diretório
■ (b) Diretório em que cada entrada apenas refere um i-node
Sistemas Operacionais
LPRM/DI/UFES
Implementação de Diretórios (3)
■ Entrada de diretório no DOS
■ No Unix (eg. System V)
Implementação de Diretórios - NTFS
Sistemas Operacionais
LPRM/DI/UFES
Implementação de Diretórios - UNIX
■ Quais os passos para alcançar o arquivo /usr/ast/mbox?
Boot
block
Super
block
Inodes Data
Sistemas Operacionais
LPRM/DI/UFES
Implementação de Diretórios - UNIX
■ Quais os passos para alcançar o arquivo /home/joao/psh.c?
Boot
block
Super
block
Inodes Data
/home
home
/home/joao
/home
joao
psh.c
#1 #2
#3 #4
#5 buscar inode 92
#6 buscar bloco 278
Sistemas Operacionais
LPRM/DI/UFES
Arquivos Compartilhados (1)
■ Hierarquia de diretórios: Grafo acíclico orientado
Sistemas Operacionais
LPRM/DI/UFES
Arquivos Compartilhados (2)
■ O diretório contém a lista (endereços) dos blocos que pertencem
ao arquivo
■ é feita uma cópia dos endereços dos blocos para o diretório do
arquivo “link”
■ Problema: não existe compartilhamento,
■ mudanças em uma versão (e.g. append no fim do arquivo)
não são vistas em outra
■ Soluções
■ 1a. Solução: os blocos não fazem parte do diretório, mas sim
de estruturas de dados associadas aos descritores. O diretório
aponta para essa estrutura de dados (UNIX)
■ 2a. Solução: “link” simbólico - o diretório contém o nome do
arquivo “linkado”
Sistemas Operacionais
LPRM/DI/UFES
Arquivos Compartilhados (3)
■ 1a. Solução
Sistemas Operacionais
LPRM/DI/UFES
Arquivos Compartilhados (3)
■ 1a. Solução - Como é possível no Unix?
○ Temos diferentes entradas em diferentes diretórios que referenciam o mesmo i-node
potato
tomato
Sistemas Operacionais
LPRM/DI/UFES
Arquivos Compartilhados (3)
■ 2a. Solução
■ não existe o problema de deleção do
arquivo por parte do proprietário
■ Problema: número de acessos a disco
pode ser elevado
■ Vantagem: link de arquivos em
máquinas diferentes
Diretório Diretório
Arquivos Compartilhados (4)
Sistemas Operacionais
LPRM/DI/UFES
Hard Link
Soft Link
Sistemas Operacionai
LPRM/DI/UFES
Gerenciamento de Espaço em Disco (HDs) (1)
■ Tamanho de Bloco
■ Bloco Grande
■ Menos acessos a disco
■ Aumenta fragmentação interna
■ Bloco Pequeno
■ Diminui a fragmentação interna
■ Arquivo contendo muitos blocos => acesso mais lento
• Tempo para se ler um bloco em discos magnéticos
○ E no SSD?
Tmp médio de seek + latência rotacional + tempo de leitura
I/O
Sistemas Operacionais
LPRM/DI/UFES
Gerenciamento de Espaço em Disco (2)
■ Gerenciamento do Espaço Livre
■ Necessário manter a informação de blocos livres e ocupados
■ Métodos Básicos
■ Mapa de bits
■ Lista de blocos livres
■ Ambos os métodos consideram que os blocos são
numerados sequencialmente
Sistemas Operacionais
LPRM/DI/UFES
Gerenciamento de Espaço em Disco (2)
■ Gerenciamento do Espaço Livre (cont.)

Mais conteúdo relacionado

Semelhante a Sistema de Arquivos.pdf

Sistemas de arquivos feito em latex
Sistemas de arquivos feito em latexSistemas de arquivos feito em latex
Sistemas de arquivos feito em latexBruno Teixeira
 
Sistema de arquivos - HPFS e ReiserFS/4
Sistema de arquivos - HPFS e ReiserFS/4Sistema de arquivos - HPFS e ReiserFS/4
Sistema de arquivos - HPFS e ReiserFS/4Anderson Rodrigues
 
Material sobre sistemas de arquivos do Windows,como é a organização e o supor...
Material sobre sistemas de arquivos do Windows,como é a organização e o supor...Material sobre sistemas de arquivos do Windows,como é a organização e o supor...
Material sobre sistemas de arquivos do Windows,como é a organização e o supor...Julio Oliveira
 
Sistemas de arquivos cap 04 (iii unidade)
Sistemas de arquivos cap 04 (iii unidade)Sistemas de arquivos cap 04 (iii unidade)
Sistemas de arquivos cap 04 (iii unidade)Faculdade Mater Christi
 
Sistemas de Arquivos FAT x NTFS
Sistemas de Arquivos FAT x NTFSSistemas de Arquivos FAT x NTFS
Sistemas de Arquivos FAT x NTFSCleber Ramos
 
Introdução ao linux
Introdução ao linuxIntrodução ao linux
Introdução ao linuxFilipe Jesus
 
Sistemas operacionais sistemas de arquivos-atualizado-senai
Sistemas operacionais   sistemas de arquivos-atualizado-senaiSistemas operacionais   sistemas de arquivos-atualizado-senai
Sistemas operacionais sistemas de arquivos-atualizado-senaiCarlos Melo
 
SO04 - Sistemas-Operacionais - Gerencia de Arquivos.pdf
SO04 - Sistemas-Operacionais - Gerencia de Arquivos.pdfSO04 - Sistemas-Operacionais - Gerencia de Arquivos.pdf
SO04 - Sistemas-Operacionais - Gerencia de Arquivos.pdfSilvano Oliveira
 
Apostila 8 sistema de arquivos
Apostila 8   sistema de arquivosApostila 8   sistema de arquivos
Apostila 8 sistema de arquivosPaulo Fonseca
 
Unidade 3.3 Estrutura de Diretórios Linux
Unidade 3.3 Estrutura de Diretórios LinuxUnidade 3.3 Estrutura de Diretórios Linux
Unidade 3.3 Estrutura de Diretórios LinuxJuan Carlos Lamarão
 
1ª Unidade Sistemas de arquivos
1ª Unidade Sistemas de arquivos1ª Unidade Sistemas de arquivos
1ª Unidade Sistemas de arquivosCleiton Cunha
 
Aula 5 - Sistemas Operacionais - Sistema de Arquivos (1).pptx
Aula 5 - Sistemas Operacionais - Sistema de Arquivos (1).pptxAula 5 - Sistemas Operacionais - Sistema de Arquivos (1).pptx
Aula 5 - Sistemas Operacionais - Sistema de Arquivos (1).pptxRicardoCristovao2
 
DESMISTIFICANDO A FSTAB - Ricardo José Maraschini
DESMISTIFICANDO A FSTAB - Ricardo José Maraschini DESMISTIFICANDO A FSTAB - Ricardo José Maraschini
DESMISTIFICANDO A FSTAB - Ricardo José Maraschini Tchelinux
 
AIX - Sistemas de Arquivos
AIX - Sistemas de ArquivosAIX - Sistemas de Arquivos
AIX - Sistemas de ArquivosJean Pimentel
 
Sistemas Operacionais parte 3
Sistemas Operacionais parte 3Sistemas Operacionais parte 3
Sistemas Operacionais parte 3Matheus Brito
 
Módulo 7 – Tratamento de ficheiros.pptx
Módulo 7 – Tratamento de ficheiros.pptxMódulo 7 – Tratamento de ficheiros.pptx
Módulo 7 – Tratamento de ficheiros.pptxBrancaSilva12
 

Semelhante a Sistema de Arquivos.pdf (20)

Sistemas de arquivos feito em latex
Sistemas de arquivos feito em latexSistemas de arquivos feito em latex
Sistemas de arquivos feito em latex
 
Sistema de arquivos - HPFS e ReiserFS/4
Sistema de arquivos - HPFS e ReiserFS/4Sistema de arquivos - HPFS e ReiserFS/4
Sistema de arquivos - HPFS e ReiserFS/4
 
Material sobre sistemas de arquivos do Windows,como é a organização e o supor...
Material sobre sistemas de arquivos do Windows,como é a organização e o supor...Material sobre sistemas de arquivos do Windows,como é a organização e o supor...
Material sobre sistemas de arquivos do Windows,como é a organização e o supor...
 
Sistemas de arquivos cap 04 (iii unidade)
Sistemas de arquivos cap 04 (iii unidade)Sistemas de arquivos cap 04 (iii unidade)
Sistemas de arquivos cap 04 (iii unidade)
 
Sistemas de Arquivos FAT x NTFS
Sistemas de Arquivos FAT x NTFSSistemas de Arquivos FAT x NTFS
Sistemas de Arquivos FAT x NTFS
 
Introdução ao linux
Introdução ao linuxIntrodução ao linux
Introdução ao linux
 
Sgf
SgfSgf
Sgf
 
Sistemas operacionais sistemas de arquivos-atualizado-senai
Sistemas operacionais   sistemas de arquivos-atualizado-senaiSistemas operacionais   sistemas de arquivos-atualizado-senai
Sistemas operacionais sistemas de arquivos-atualizado-senai
 
SO04 - Sistemas-Operacionais - Gerencia de Arquivos.pdf
SO04 - Sistemas-Operacionais - Gerencia de Arquivos.pdfSO04 - Sistemas-Operacionais - Gerencia de Arquivos.pdf
SO04 - Sistemas-Operacionais - Gerencia de Arquivos.pdf
 
Apostila 8 sistema de arquivos
Apostila 8   sistema de arquivosApostila 8   sistema de arquivos
Apostila 8 sistema de arquivos
 
Unidade 3.3 Estrutura de Diretórios Linux
Unidade 3.3 Estrutura de Diretórios LinuxUnidade 3.3 Estrutura de Diretórios Linux
Unidade 3.3 Estrutura de Diretórios Linux
 
Sistemas de arquivos
Sistemas de arquivosSistemas de arquivos
Sistemas de arquivos
 
1ª Unidade Sistemas de arquivos
1ª Unidade Sistemas de arquivos1ª Unidade Sistemas de arquivos
1ª Unidade Sistemas de arquivos
 
teAula 11
teAula 11teAula 11
teAula 11
 
Aula 5 - Sistemas Operacionais - Sistema de Arquivos (1).pptx
Aula 5 - Sistemas Operacionais - Sistema de Arquivos (1).pptxAula 5 - Sistemas Operacionais - Sistema de Arquivos (1).pptx
Aula 5 - Sistemas Operacionais - Sistema de Arquivos (1).pptx
 
DESMISTIFICANDO A FSTAB - Ricardo José Maraschini
DESMISTIFICANDO A FSTAB - Ricardo José Maraschini DESMISTIFICANDO A FSTAB - Ricardo José Maraschini
DESMISTIFICANDO A FSTAB - Ricardo José Maraschini
 
AIX - Sistemas de Arquivos
AIX - Sistemas de ArquivosAIX - Sistemas de Arquivos
AIX - Sistemas de Arquivos
 
Sistemas Operacionais parte 3
Sistemas Operacionais parte 3Sistemas Operacionais parte 3
Sistemas Operacionais parte 3
 
Módulo 7 – Tratamento de ficheiros.pptx
Módulo 7 – Tratamento de ficheiros.pptxMódulo 7 – Tratamento de ficheiros.pptx
Módulo 7 – Tratamento de ficheiros.pptx
 
Aula 04 - Filesystem Hierarchy Standard.pdf
Aula 04 - Filesystem Hierarchy Standard.pdfAula 04 - Filesystem Hierarchy Standard.pdf
Aula 04 - Filesystem Hierarchy Standard.pdf
 

Sistema de Arquivos.pdf

  • 2. 2 Sistemas Operacionais LPRM/DI/UFES Funções de um SO ■ Gerência de processos ■ Gerência de memória ■ Gerência de Arquivos ■ Gerência de I/O ■ Sistema de Proteção
  • 3. 3 Sistemas Operacionais LPRM/DI/UFES Necessidade de Armazenamento ■ Grandes quantidades de informação têm de ser armazenadas ■ Informação armazenada tem de sobreviver ao fim do processo que a utiliza ■ Múltiplos processos devem poder acessar a informação de um modo concorrente ■ ARQUIVO ■ Abstração criada pelo S.O. para gerenciar e representar os dados
  • 4. 4 Sistemas Operacionais LPRM/DI/UFES Gerência de Arquivos ■ Oferece a abstração de arquivos (e diretórios) ■ Atividades suportadas ■ Primitivas para manipulação (chamadas de sistema para manipulação de arquivos) ■ criar, deletar ■ abrir, fechar ■ ler, escrever ■ posicionar ■ Mapeamento para memória secundária
  • 5. 5 Sistemas Operacionais LPRM/DI/UFES Estrutura Interna do Kernel UNIX User application Standard Unix libraries System call interface File Subsystem Buffer cache Interprocess communication scheduler Memory management Process control system Character block Device drivers Hardware control Hardware User level Kernel level Hardware level
  • 6. 6 Sistemas Operacionais LPRM/DI/UFES Sistema de Arquivos ■ O que é? ■ Um conjunto de arquivos, diretórios, descritores e estruturas de dados auxiliares gerenciados pelo sub sistema de gerência de arquivos ■ Permitem estruturar o armazenamento e a recuperação de dados persistentes em um ou mais dispositivos de memória secundária (discos ou bandas magnéticas) ■ Arquivo ■ Um conjunto de dados persistentes, geralmente relacionados, identificado por um nome ■ É composto por: ■ Nome: identifica o arquivo perante o utilizador ■ Descritor de arquvo: estrutura de dados em memória secundária com informação sobre o arquivo (dimensão, datas de criação, modificação e acesso, dono, autorizações de acesso) ■ Informação: dados guardados em memória secundária
  • 7. 7 Sistemas Operacionais LPRM/DI/UFES Estrutura Interna de Arquivos (1) Seqüência não-estrutura da de bytes Seqüência de Registros Seqüência de Registros Árvore de Registros
  • 8. 8 Sistemas Operacionais LPRM/DI/UFES Estrutura Interna de Arquivos (2) ■ Seqüência não-estruturada de bytes ■ Forma mais simples de organização de arquivos ■ Sistema de arquivos não impõe nenhuma estrutura lógica para os dados, a aplicação deve definir toda a organização ■ Vantagem: flexibilidade para criar estruturas de dados, porém todo o controle de dados é de responsabilidade da aplicação ■ Estratégia adotada tanto pelo UNIX quanto pelo Windows
  • 9. 9 Sistemas Operacionais LPRM/DI/UFES Estrutura Interna de Arquivos (3) ■ Seqüência de Registros ■ Em geral, registros de tamanho fixo ■ Operação de leitura retorna um registro ■ Operação de escrita sobrepõe/anexa um registro ■ Árvore de Registros ■ Cada registro é associado a uma chave ■ Árvore ordenada pela chave ■ Computadores de grande porte / aplicações que fazem muita leitura aleatória
  • 10. 10 Sistemas Operacionais LPRM/DI/UFES Tipos de Arquivos (1) ■ Arquivos Regulares ■ Arquivos ASCII ■ Binários ■ Apresentam uma estrutura interna conhecida pelo S.O. ■ Diretórios ■ Arquivos do sistema ■ Mantêm a estrutura do Sistemas de Arquivos
  • 11. 11 Sistemas Operacionais LPRM/DI/UFES Arquivos Binários no Unix Arquivo Executável (UNIX) Repositório ou Archive (UNIX)
  • 12. 12 Sistemas Operacionais LPRM/DI/UFES Operações sobre Arquivos ■ Dependem do tipo ■ create ■ delete ■ open ■ close ■ read ■ write ■ append ■ seek ■ get attributes ■ set attributes ■ rename
  • 13. 13 Sistemas Operacionais LPRM/DI/UFES Diretórios ■ ATUALMENTE!! Estrutura de diretórios Hierárquicos ■ Adotado pela maioria dos sistemas operacionais ■ Logicamente melhor organizado ■ É possível criar quantos diretórios quiser ■ Um diretório pode conter arquivos e outros diretórios (chamados subdiretórios) ■ Cada arquivo possui um path único que descreve todos os diretórios da raiz (MFD – Master File Directory) até o diretório onde o arquivo está ligado ■ Na maioria dos S.O.s os diretórios são tratados como arquivos tendo atributos e identificação
  • 14. 14 Sistemas Operacionais LPRM/DI/UFES Diretórios (4) ■ Estrutura de diretórios Hierárquicos (cont.) Programas Carlos Paulo Ivan Pessoal Pessoal Teste Disco C:/ Soma.exe O path do arquivo é seu “nome ou identificador” único
  • 15. 15 Sistemas Operacionais LPRM/DI/UFES Esquema do Sistema de Arquivos (1)
  • 16. 16 Sistemas Operacionais LPRM/DI/UFES Esquema do Sistema de Arquivos (2) ■ A maioria dos discos é dividida em uma ou mais partições com Sistemas de arquivos independentes para cada partição ■ O setor 0 do disco é chamado de Master Boot Record (MBR) ■ Na inicialização do sistema, a BIOS lê e executa o MBR ■ O programa do MBR localiza a partição ativa, lê seu primeiro bloco, chamado de bloco de boot ■ O programa no bloco de boot carrega o S.O. contido na partição ■ Havendo um boot manager, como o GRUB, no MBR se encontra uma parte “inicial” dele ■ O esquema da partição varia de um S.O. para outro, mas é comum: ■ A definição de um SuperBloco: contém os principais parâmetros do sistema de arquivos (tipo, no. de blocos, etc.) ■ As informações sobre os blocos livres
  • 17. 17 Sistemas Operacionais LPRM/DI/UFES Implementação do Sistema de Arquivos (1) ■ Alocação Contígua ■ Consiste em armazenar um arquivo em blocos sequencialmente dispostos ■ O sistema localiza um arquivo por meio do endereço do primeiro bloco e da sua extensão em blocos ■ O acesso é bastante simples ■ Seu principal problema é a alocação de novos arquivos nos espaços livres ■ Para armazenar um arquivo que ocupa n blocos, é necessário uma cadeia com n blocos dispostos seqüencialmente no disco ■ Além disso, como determinar o espaço necessário a um arquivo que possa se estender depois da sua criação? ■ Pré-alocação (fragmentação interna)
  • 18. 18 Sistemas Operacionais LPRM/DI/UFES Implementação do Sistema de Arquivos (2) ■ Alocação Contígua (cont.) readme.txt 010 003 prova.doc 002 008 Aula.pdf 017 005 arquivo inicio #blocos 0 1 2 3 4 5 6 7
  • 19. 19 Sistemas Operacionais LPRM/DI/UFES Implementação do Sistema de Arquivos (3) ■ Alocação Contígua (cont.) Fragmentação Externa ! E se o arquivo fosse dividido em Blocos lógicos?
  • 20. 20 Sistemas Operacionais LPRM/DI/UFES Implementação do Sistema de Arquivos (4) ■ Alocação por Lista Encadeada ■ O arquivo é organizado como um conjunto de blocos ligados no disco ■ Cada bloco deve possuir um ponteiro para o bloco seguinte ■ Aumenta o tempo de acesso ao arquivo, pois o disco deve deslocar-se diversas vezes para acessar todos os blocos ■ É necessário que o disco seja desfragmentado periodicamente ■ Esta alocação só permite acesso sequencial ■ Compromete-se parte do espaço nos blocos com armazenamento de ponteiros
  • 21. 21 Sistemas Operacionais LPRM/DI/UFES Implementação do Sistema de Arquivos (5) ■ Alocação por Lista Encadeada (cont.) 14 11 8 10 13 7 5 4 12 9 6 3 2 1 0 Início O final do bloco é reservado para armazenar o número do próximo bloco do arquivo Solução pouco eficiente! Por exemplo, para se adicionar uma informação no final do arquivo, é necessário fazer vários acessos a disco
  • 22. 22 Sistemas Operacionais LPRM/DI/UFES Implementação do Sistema de Arquivos (6) ■ Alocação por Lista Encadeada usando Tabela na Memória ■ Mantém os ponteiros de todos os blocos de arquivos em uma única estrutura denominada Tabela de Alocação de Arquivos ■ FAT (File Allocation Table) ■ Vantagens: ■ Permitir o acesso direto aos blocos ■ Não mantém informações de controle dentro dos blocos de dados ■ FAT : Esquema usado pelo MS-DOS (FAT-16), Win95,Win98, Windows Millennium Edition (FAT-32) … discos externos
  • 23. 23 Sistemas Operacionais LPRM/DI/UFES Implementação do Sistema de Arquivos (7) ■ Alocação por Lista Encadeada usando Tabela na Memória (cont.) ■ Desvantagem ■ A tabela deve estar na memória o tempo todo ■ Disco de 20 G, blocos de 1k? ■ Mas é possível paginar a FAT! ■ Com isso “partes” dela são carregadas em memória Diretório x A 4 B 6 FAT 1º Bloco ocupado pelo arquivo A
  • 24. ■ i-nodes ■ Cada arquivo está associado a um único i-node no disco ■ O i-node só precisa estar na memória quando o arquivo correspondente estiver aberto ■ Ocupa menos espaço que a FAT ■ Tamanho da FAT cresce linearmente com o tamanho do disco ■ I-nodes requerem um espaço proporcional à quantidade máxima de arquivos abertos ■ Usados por sistemas baseados no UNIX 24 Sistemas Operacionais LPRM/DI/UFES Implementação do Sistema de Arquivos (8)
  • 26. 26 Sistemas Operacionais LPRM/DI/UFES i-nodes (2) 10 entradas diretas A quantidade de entradas diretas (direct block pointers) varia de implementação para implementação
  • 27. 27 Sistemas Operacionais LPRM/DI/UFES i-nodes (3) Dado que: TBD – Tamanho bloco de dados TR – Tamanho referência (endereço do bloco) Qual será...? Bmax – Nº Blocos máximo de um arquivo Fmax – dimensão máxima de um arquivo Bmax = 10 + TBD + TBD 2 + TBD 3 TR TR TR Fmax = Bmax x TBD TBD = 4K TR = 4 bytes 278 279 5119 2559 5511 2559 5511
  • 28. 28 Sistemas Operacionais LPRM/DI/UFES Relação entre Diretórios e i-nodes (1) ■ Diretórios incluem nomes de arquivos e referências para os respectivos i-nodes
  • 29. 29 Sistemas Operacionais LPRM/DI/UFES Relação entre Diretórios e i-nodes (2) ■ Passos para alcançar /usr/ast/mbox
  • 31. Sistemas Operacionais LPRM/DI/UFES Implementação de Diretórios (1) ■ Contém informações que permitem acessar os arquivos ■ As entradas do diretório fornecem informações para encontrar os blocos de discos ■ Possui várias entradas, uma por arquivo: ■ nome ■ tipo; tamanho ■ proprietário; proteção ■ data de criação; data da última modificação ■ lista de blocos usados
  • 32. Sistemas Operacionais LPRM/DI/UFES Implementação de Diretórios (2) ■ (a) Diretório simples com ■ Entradas de dimensão fixa ■ Endereços de disco e atributos na entrada de diretório ■ (b) Diretório em que cada entrada apenas refere um i-node
  • 33. Sistemas Operacionais LPRM/DI/UFES Implementação de Diretórios (3) ■ Entrada de diretório no DOS ■ No Unix (eg. System V)
  • 35. Sistemas Operacionais LPRM/DI/UFES Implementação de Diretórios - UNIX ■ Quais os passos para alcançar o arquivo /usr/ast/mbox? Boot block Super block Inodes Data
  • 36. Sistemas Operacionais LPRM/DI/UFES Implementação de Diretórios - UNIX ■ Quais os passos para alcançar o arquivo /home/joao/psh.c? Boot block Super block Inodes Data /home home /home/joao /home joao psh.c #1 #2 #3 #4 #5 buscar inode 92 #6 buscar bloco 278
  • 37. Sistemas Operacionais LPRM/DI/UFES Arquivos Compartilhados (1) ■ Hierarquia de diretórios: Grafo acíclico orientado
  • 38. Sistemas Operacionais LPRM/DI/UFES Arquivos Compartilhados (2) ■ O diretório contém a lista (endereços) dos blocos que pertencem ao arquivo ■ é feita uma cópia dos endereços dos blocos para o diretório do arquivo “link” ■ Problema: não existe compartilhamento, ■ mudanças em uma versão (e.g. append no fim do arquivo) não são vistas em outra ■ Soluções ■ 1a. Solução: os blocos não fazem parte do diretório, mas sim de estruturas de dados associadas aos descritores. O diretório aponta para essa estrutura de dados (UNIX) ■ 2a. Solução: “link” simbólico - o diretório contém o nome do arquivo “linkado”
  • 40. Sistemas Operacionais LPRM/DI/UFES Arquivos Compartilhados (3) ■ 1a. Solução - Como é possível no Unix? ○ Temos diferentes entradas em diferentes diretórios que referenciam o mesmo i-node potato tomato
  • 41. Sistemas Operacionais LPRM/DI/UFES Arquivos Compartilhados (3) ■ 2a. Solução ■ não existe o problema de deleção do arquivo por parte do proprietário ■ Problema: número de acessos a disco pode ser elevado ■ Vantagem: link de arquivos em máquinas diferentes Diretório Diretório
  • 42. Arquivos Compartilhados (4) Sistemas Operacionais LPRM/DI/UFES Hard Link Soft Link
  • 43. Sistemas Operacionai LPRM/DI/UFES Gerenciamento de Espaço em Disco (HDs) (1) ■ Tamanho de Bloco ■ Bloco Grande ■ Menos acessos a disco ■ Aumenta fragmentação interna ■ Bloco Pequeno ■ Diminui a fragmentação interna ■ Arquivo contendo muitos blocos => acesso mais lento • Tempo para se ler um bloco em discos magnéticos ○ E no SSD? Tmp médio de seek + latência rotacional + tempo de leitura I/O
  • 44. Sistemas Operacionais LPRM/DI/UFES Gerenciamento de Espaço em Disco (2) ■ Gerenciamento do Espaço Livre ■ Necessário manter a informação de blocos livres e ocupados ■ Métodos Básicos ■ Mapa de bits ■ Lista de blocos livres ■ Ambos os métodos consideram que os blocos são numerados sequencialmente
  • 45. Sistemas Operacionais LPRM/DI/UFES Gerenciamento de Espaço em Disco (2) ■ Gerenciamento do Espaço Livre (cont.)