18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material...
Transcript of 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material...
![Page 1: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/1.jpg)
18/02/13 FAFIMAN 1
Sistemas Operacionais:Gerenciamento de Arquivos
Prof. Leandro Magno
Material gentilmente cedido pelo prof.Dr. Ronaldo Augusto de Lara Gonçalves
DIN - UEM
![Page 2: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/2.jpg)
18/02/13 FAFIMAN 2
Gerenciamento de Arquivos
Terminologia Disco Controladores Drivers do SO Rotinas do SO Rotinas do usuário Interrupções Arquivos (descritores, tipos) Diretórios Cache de blocos do disco Algoritmos de alocação de
espaço livre e ocupado
![Page 3: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/3.jpg)
18/02/13 FAFIMAN 3
Diretórios
Arq1
Nome do Arquivo
Arq5 5
:
:
Arq2 20
Arq8 34
Arq1 50
:
:
Diretório
Atributos
251060 :
Descritorde Arquivo
50
blocosde dados
60
10
25
![Page 4: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/4.jpg)
18/02/13 FAFIMAN 4
Diretório de Nível Simples
nometipoetc...
.....Diretório
Arquivos
![Page 5: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/5.jpg)
18/02/13 FAFIMAN 5
Diretório de Dois Níveis
usuário 1 usuário 2 usuário 3DiretórioMestre
Diretóriosdos
Usuários
Arquivos
![Page 6: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/6.jpg)
18/02/13 FAFIMAN 6
Diretórios em Árvores
util exe fontes
dos vacinas pilha lista pilha lista
scan cura norton pctools
raíz
![Page 7: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/7.jpg)
18/02/13 FAFIMAN 7
Diretórios em Grafos Acíclicos
alunos professorraíz
bcc pd
bete lu gil ana
din dema
luiz ana dina maria
trab2 turbo clipper projeto
![Page 8: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/8.jpg)
18/02/13 FAFIMAN 8
Gerenciamento de Espaço Livre em Disco
Mapa de Bits Lista Encadeada de Blocos Livres Tabela (Bloco) de Endereços de Blocos
Livres Tabela de Blocos Livres Contíguos
![Page 9: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/9.jpg)
18/02/13 FAFIMAN 9
Mapa de Bits
Cada bloco é representado por 1 bit
Fácil procura de n blocos livres consecutivos
Gasto de disco para armazenar o mapa de bits
Em uma única leitura no disco (leitura do mapa de bits), é possível saber a situação de um grande número de setores
![Page 10: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/10.jpg)
18/02/13 FAFIMAN 10
Lista Encadeada de Blocos Livres
Cada bloco é acessado por 1 ponteiro, iniciando pela cabeça e seguindo o encadeamento
Difícil procura de n blocos livres quaisquer (caminhamento seqüencial bloco a bloco)
Extremamente difícil procura de n blocos livres consecutivos
Gasto de disco para armazenar os ponteiros, mas somente para aqueles que estão livres.
Não se tem uma visão geral sobre a proximidade dos blocos – dificulta controle de fragmentação
![Page 11: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/11.jpg)
18/02/13 FAFIMAN 11
Lista Encadeada de Blocos Livres
: : :
head 0 1 2 3
4 5 6 7
8 9 1011
![Page 12: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/12.jpg)
18/02/13 FAFIMAN 12
Tabela (Bloco) de Endereços de Blocos Livres
Cada bloco é acessado por 1 ponteiro. Existe uma tabela com ponteiros para todos os blocos livres
Difícil procura de n blocos livres consecutivos com custo médio entre o Mapa de Bits e a Lista de Blocos Livres
Gasto de disco para armazenar os ponteiros com a exigência de blocos de discos específicos para esta finalidade
![Page 13: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/13.jpg)
18/02/13 FAFIMAN 13
Tabela (Bloco) de Endereços de Blocos Livres
: : :
head
![Page 14: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/14.jpg)
18/02/13 FAFIMAN 14
Tabela de Blocos Livres Contíguos
Existe uma tabela onde cada entrada controla uma seqüencia de blocos livres
Fácil procura de n blocos livres consecutivos Semelhante ao mapa de bits: não tão
econômico mas sem a necessidade de cálculo da posição final do bloco.
Quanto mais disjuntos os blocos livres maior a tabela
![Page 15: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/15.jpg)
18/02/13 FAFIMAN 15
Tabela de Blocos Livres Contíguos
1 3
7 8
: :
2030 20
tamanho da sequencia
início da sequencia
![Page 16: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/16.jpg)
18/02/13 FAFIMAN 16
Pergunta 1
Na tabela de blocos livres contiguos, do exemplo anterior, como poderia a mesma ser atualizada, se o SO alocasse 2 setores da segunda sequência?
![Page 17: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/17.jpg)
18/02/13 FAFIMAN 17
Pergunta 2
Em quais situações cada método poderá gastar mais espaço de controle/gerenciamento do que os demais?
![Page 18: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/18.jpg)
18/02/13 FAFIMAN 18
Gerenciamento de Espaço Ocupado em Disco
Alocação Contígua Alocação Ligada
Alocação Indexada
![Page 19: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/19.jpg)
18/02/13 FAFIMAN 19
Alocação Contígua
0 1 2 3
4 5 6 7
8 9 10 11
12 13 14 15: :
Disco
: :
arquivo início tamanhocarta 2 3tese 9 5 : : :
diretório
![Page 20: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/20.jpg)
18/02/13 FAFIMAN 20
Alocação Ligada
0 1 2 3
4 5 6 7
8 9 10 11
12 13 14 15: :
Disco
: :
arquivo início fimrelato 2 11
: : :
diretório
![Page 21: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/21.jpg)
18/02/13 FAFIMAN 21
Alocação Indexada
0 1 2 3
4 5 6 7
8 9 10 11
12 13 14: :
Disco
: :
arquivo end. bloco índicecarta 15
: :
diretório
42
3 12 -1 -1
bloco de índices
![Page 22: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/22.jpg)
18/02/13 FAFIMAN 22
Escalonamento de Disco
Tempos Importantes Deslocamento (seek) Rotação Transferência
Algoritmos Comuns FIFO/FCFS SSTF SCAN (elevador)
![Page 23: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/23.jpg)
18/02/13 FAFIMAN 23
Exemplo: Posição Inicial = 53Ordem das Solicitações = 98, 183, 37, 122, 14, 124, 65
e 67
14 37 53 65 67 98 122 124 183
FCFS
SSTF
SCAN
640 trilhas
236 trilhas
208 trilhas
![Page 24: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/24.jpg)
18/02/13 FAFIMAN 24
Gerenciamento de Arquivos no DOS
FAT (File Allocation Table) - 1
Disco é dividido em boot, FAT, diretório e cluster de dados
A FAT trabalha semelhante ao Mapa de Bits, para gerenciamento de espaço livre, e como Alocação Indexada (Bloco de Índices Único), para a alocação de espaço ocupado, onde as 2 primeiras entradas são reservadas e as demais são associadas a clusters do disco, em ordem. A 3o entrada é associada ao 1o cluster de dados, a 4o entrada ao 2o cluster e assim por diante.
![Page 25: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/25.jpg)
18/02/13 FAFIMAN 25
Gerenciamento de Arquivos no DOS
FAT (File Allocation Table) - 2
Assim, o cluster n é associado a entrada de índice (n+2) da FAT
No diretório, cada arquivo mantém o valor da entrada na FAT relativo ao seu primeiro cluster de dados
Cada entrada da FAT pode conter: 0, indicando disponibilidade do cluster endereço do próximo cluster de algum arquivo código de “fim”, indicando que o cluster
associado é o último de algum arquivo.
![Page 26: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/26.jpg)
18/02/13 FAFIMAN 26
Visão Geral do Disco Formatado
BOOT FAT ... C1 C2 C3 C4 ...
Ci = cluster i
![Page 27: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/27.jpg)
18/02/13 FAFIMAN 27
Controle de Espaço Livre na FAT
4
reservado
reservado
FAT
1
2
3
5
:
n+2
DISCO
C1 C2 C3
C4 C5 C6
C7 .. Cn
![Page 28: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/28.jpg)
18/02/13 FAFIMAN 28
Alocação de Espaço Ocupado na FAT
4
reservado
reservado
FAT
5
n+2
1
2
3
5
:
fimn+2
DISCO
C1 C2 C3
C4 C5 C6
C7 .. Cn
Nome doarquivo
Índice daFAT
carta.doc 3
: :
Diretório
![Page 29: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/29.jpg)
18/02/13 FAFIMAN 29
Sistema de Arquivos do UNIX
Diretório hierárquico iniciado no root
Os diretórios principais são subsistemas de arquivos separados mas subordinados ao root e podem ser montados no mesmo disco do root ou em discos diferentes
Um sistema de arquivos pode ser ligado como diretório de um outro sistema de arquivos através de mount
Contém superbloco, vetor de i-nodes, blocos de dados e blocos livres.
![Page 30: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/30.jpg)
18/02/13 FAFIMAN 30
Subsistemas de Arquivos do UNIX
/ root
etc bin usr dev lib tmp
comandos deadministraçãodo sistema
comandosUNIX maiscomumenteusados
contas dos usuários ealguns comandos
arquivos de dispositivos
arquivosbiblioteca para programaçãoem C
armazenamentotemporário
![Page 31: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/31.jpg)
18/02/13 FAFIMAN 31
Características Gerais
Um mesmo arquivo físico pode aparecer em mais de uma entrada no diretório, com nomes #s (links)
Os links no diretório apontam para os i-nodes que por sua vez apontam para os arquivos físicos
O arquivo desaparece quando o último link é removido
![Page 32: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/32.jpg)
18/02/13 FAFIMAN 32
TDA - Tabela de Descritores de Arquivos TAS - Tabela de Arquivos do Sistema e
Cada usuário contém uma TDA com informações de todos os seus arquivos.
Cada entrada da TDA aponta para uma entrada da TAS
A TAS representa o diretório do sistema e contém uma entrada para todos os arquivos do sistema. A TODA representa o diretório do usuário.
Cada entrada da TAS possui um ponteiro para o i-node (descritor) do arquivo
O i-node é uma estrutura contendo
![Page 33: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/33.jpg)
18/02/13 FAFIMAN 33
identificação do usuário e grupo proprietários
bits de proteção locador de blocos (contém endereços físicos
do disco para os conteúdos do arquivo) tamanho do arquivo tempo de criação tempo da última modificação número de links do arquivo indicador que diz se o arquivo é um arquivo
comum, diretório, arquivo de dispositivo ou pipe
![Page 34: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/34.jpg)
18/02/13 FAFIMAN 34
Componentes do Diretório
TabelaDescritor
de Arquivos
:
Tabelade Arquivosdo Sistema
do processo
:
:
:
:
:
Tabelade i-nodes
![Page 35: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/35.jpg)
18/02/13 FAFIMAN 35
LocadorDe Blocos
locador de blocos
456789
10 11 12
0123
blocos dedados
: :
bloco indireto
blocos dedados
: :
:
:
blocoduplamenteindireto
: :
:
:
: :
:
:
:
:
:
:
:
:
blocoindiretotriplo
:
:
:
:
![Page 36: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/36.jpg)
18/02/13 FAFIMAN 36
Exercícios para Entregar
• Analise os desempenho de cada algoritmo de escalonamento de disco para a seguinte situação: Posição Inicial = 70Ordem das Solicitações = 198, 1, 6, 183, 38, 71, 72, 3, 140, 50
• Explique o esquema de gerenciamento de arquivos no DOS
• Explique o esquema de gerenciamento de arquivos no UNIX
![Page 37: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/37.jpg)
18/02/13 FAFIMAN 37
Gerenciamento de E/S
Principais Atividades Gerenciamento do espaço de nomes dos
dispositivos Controle de acesso aos dispositivos Alocação de espaço e alocação de dispositivos Gerenciamento de áreas temporárias, cache e
spool Escalonamento das solicitações de E/S Controle de status, erro e recuperação Configuração das rotinas de controle dos
dispositivos
![Page 38: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/38.jpg)
18/02/13 FAFIMAN 38
Tipos e Componentes
Tipos de Dispositivos Blocos (endereçáveis – permite seek)
HDs, CDs, Floppys ... Caracteres (fluxo contínuo – não permite seek)
Impressoras, Terminais ...
Componentes Componente Eletro-Mecânico (acionador) Componente Eletrônico (adaptador,
controlador) Software Controlador (driver)
![Page 39: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/39.jpg)
18/02/13 FAFIMAN 39
Taxas de Transmissão
![Page 40: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/40.jpg)
18/02/13 FAFIMAN 40
Controladores ou Adaptadores
Modos de Endereçamento E/S Programada E/S Dirigida por Interrupção E/S Usando DMA
Controladordo Disco
Discos
MemóriaCPU Controladorda Impressora
Impressora
Outros...
![Page 41: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/41.jpg)
18/02/13 FAFIMAN 41
Endereçamento Direto
Os controladores podem ser acessados através de seus registradores de controle os quais tem portas (endereços) associadas, usando instruções especiais do tipo IN e OUT. Ex:
IN REG, PORT /* lê um dado do controlador */
OUT PORT, REG /* escreve um dado no controlador */
![Page 42: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/42.jpg)
18/02/13 FAFIMAN 42
Endereçamento Mapeado na Memória
Os controladores podem ser acessados através de seus registradores de controle os quais são mapeados em endereços convencionais de memória, usando instruções convencionais do tipo LOAD e STORE. Ex:
LOAD REG, (END) /* lê um dado do controlador */
STORE (END), REG /* escreve um dado no controlador */
![Page 43: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/43.jpg)
18/02/13 FAFIMAN 43
Vantagens Acesso pode ser feito em código de alto nível,
pois estes endereços podem ser acessados como variáveis comuns.
Não requer mecanismo especial de proteção, pois estes endereços podem ser mapeados no espaço de memória virtual de cada usuário.
Desvantagens Memórias podem ser “cacheadas” e com isso os
programas podem estar acessando a cache ao invés do dispositivo.
Como o espaço de endereçamento é único, todos os módulos de memória e todos os dispositivos de E/S devem examinar todas as referências a memória para identificar cada um as suas.
![Page 44: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/44.jpg)
18/02/13 FAFIMAN 44
Endereços de Portas Tradicionais em PCs
![Page 45: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/45.jpg)
18/02/13 FAFIMAN 45
E/S Programada
A cada solicitação da CPU para um dispositivo de E/S, a própria CPU deve checar junto ao dispositivo (em um loop) se a sua solicitação já foi ou não atendida, ou melhor, se o dispositivo já está pronto ou não para realizar uma próxima operação. Esta espera pela CPU é conhecida como “espera ocupada” (busy waiting ou polling) e consome tempo desnecessário da CPU.
![Page 46: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/46.jpg)
18/02/13 FAFIMAN 46
Exemplo
copia_do_usuario (buffer, p, contador);for (i=0; i < contador; i++) { while (*reg_status_impressora != PRONTO); *reg_dado_impressora = p[i]; }retorna_para_usuario();
Obs: buffer é do usuário, p é do núcleo
![Page 47: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/47.jpg)
18/02/13 FAFIMAN 47
E/S Dirigida por Interrupção
Neste caso, após o driver ter solicitado a operação de E/S ao controlador do dispositivo, a CPU prossegue a execução de outras atividades e não pergunta pelo término da E/S. Quando o dispositivo terminar a sua operação, ele interrompe a CPU para avisá-la do término e que está pronto para atender outra solicitação.
![Page 48: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/48.jpg)
18/02/13 FAFIMAN 48
Interrupção de Hardware e Software (Trap)
programa
CPUdispositivo
de E/S
interrupçãode softwareinterrupção
de hardware
rotina deE/S
![Page 49: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/49.jpg)
18/02/13 FAFIMAN 49
Hardware de Interrupção
relógio
impressora
disco
Controladorde
InterrupçõesCPU
int
posiçãodo vetor
![Page 50: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/50.jpg)
18/02/13 FAFIMAN 50
Vetor de Interrupções
ender do tratadorde teclado
:
ender do tratadordo relógio
:
tratador dorelógio
0
:
n
:
tratador doteclado
MEM
:
vetor deinterrupções
rotinas donúcleo para
tratar asinterrupções
![Page 51: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/51.jpg)
18/02/13 FAFIMAN 51
Interrupção Precisa
Ocorre quando a máquina fica em um estado bem definido após uma interrupção, sendo que: O PC deve ser salvo em lugar conhecido (pilha) Todas as instruções anteriores aquela apontada pelo
PC devem ser executadas completamente Nenhuma instrução após aquela apontada pelo PC
deve ser executada com aproveitamento O estado da execução da instrução apontada pelo PC
deve ser conhecido
![Page 52: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/52.jpg)
18/02/13 FAFIMAN 52
Exemplo do funcionamento básico de um dispositivo de caractere com
buffering
Device
Buffer
Controlador
Processo
variáveis locais
DeviceDriver
Rotinasde E/S
buffer de
caracteres
Character
1 caracter
read e write
interrupção
interrupção de hardware
desoftware
chamada de procedimento
![Page 53: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/53.jpg)
18/02/13 FAFIMAN 53
Ciclo de E/S com Interrupção - Visão Geral -
Driver do Dispositivoinicia operação de E/S
CPU testa ocorrência deinterrupções entre instruções
CPU detecta ocorrênciade interrupção, transferecontrole para tratador da
interrupção
Tratador da interrupçãoprocessa os dados e
retorna da interrupção
CPU reiniciaprocessamento da tarefa
interrompida
CPU
1
Inicia E/S
Entrada pronta, saídacompleta ou erro.
Gera sinal deinterrupção.
2
3
4
5
6
7
Controlador de E/S
![Page 54: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/54.jpg)
18/02/13 FAFIMAN 54
Ciclo de E/S com Interrupção - Visão Mais Detalhada -
requisição de E/S
chama rotina do sistema
requisiçãojá pode seratendida?
envia requisição ao driverdo controlador e bloqueia
proc chamador ( se devido)
não
processa requisição e enviacomandos ao controlador.
Configura o driver para ficarbloq até ocorrer uma intpt
comandos ao controlador
controla o dispos e causaintept quando termina a E/S
processodo usuário
subsistema deE/S do núcleo
subsistema deE/S do núcleo
driver dodispositivo
tratador deinterrupções
controlador doteclado
E/S terminada.Gera interrupção
tempo
recebe o controle, colocadados em área do driver
(qdo entrada) e envia sinalpara desbloquear o driver
determina qual operação deE/S terminou e indica
mudança de estado para osubsistema de E/S
transfere dados (seadequado) ao processo eretorna código de erro ou
sucesso
E/S terminada
sim
![Page 55: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/55.jpg)
18/02/13 FAFIMAN 55
E/S com DMA (Direct Access Memory)
Usa-se DMA para evitar que a CPU transfira byte a byte grandes quantidades de dados. A CPU informa ao controlador DMA o início, o fim e o número de bytes que deseja transferir (por ex: do disco para a memória) e prossegue com outra atividade. O DMA também prossegue transferindo sem a ajuda da CPU, usando o barramento e quando termina interrompe a CPU.
![Page 56: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/56.jpg)
18/02/13 FAFIMAN 56
Observações
Quando o DMA usa o barramento da memória, a CPU fica momentaneamente impedida de usar a memória principal, embora ela possa ainda usar suas caches.
Placas de E/S com gerenciamento de uso de barramento contém normalmente seu próprio hardware de DMA de alta velocidade.
![Page 57: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/57.jpg)
18/02/13 FAFIMAN 57
Organização DMA
CPU MEMÓRIA
: :
Controlador doDisco c/ DMA
buffer
end. da memóriaend. do bloconro de bytes
Disco
![Page 58: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/58.jpg)
18/02/13 FAFIMAN 58
Tipos de Barramentos
ISA (industry Standard Architecture) Original do PC/AT da IBM Opera a 8.33 MHz Pode transferir 2 bytes por vez a uma
velocidade máxima de 16,67 MB/s Possui compatibilidade com
dispositivos mais lentos
![Page 59: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/59.jpg)
18/02/13 FAFIMAN 59
Tipos de Barramentos
PCI (Peripheral Component Interconnect) Sucessor do ISA - Inventado pela Intel Pode operar a 66 MHz Pode transferir 8 bytes por vez a uma
velocidade de 528 MB/s Maioria dos dispositivos de E/S de alta
velocidade usam PCI
![Page 60: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/60.jpg)
18/02/13 FAFIMAN 60
Tipos de Barramentos
USB (Universal Serial Bus) Para ligar dispositivos lentos (teclado,
mouse) Controlador centralizado que varre a cada
1 ms para ver se existe tráfego Pode transmitir até 1,5 MB/s serialmente Driver único para todos dispositivos
conectados Não precisam de reboot para nova adição
![Page 61: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/61.jpg)
18/02/13 FAFIMAN 61
Tipos de Barramentos
SCSI (Small Computer System Interface) Barramento de alto desempenho para
dispositivos que precisam de alta taxa de transferência tais como discos e scanners.
Pode transferir até 160 MB/s Presente no Macintosh Apple desde sua
criação e é muito popular em ambientes UNIX
![Page 62: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/62.jpg)
18/02/13 FAFIMAN 62
Tipos de Barramentos
Barramento IEEE 1394 Chamado as vezes de FireWire Usado em equipamentos Macintosh Apple Pode transmitir até 50 MB/s serialmente Útil para conectar câmeras de vídeo digital Não tem controlador centralizado
![Page 63: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/63.jpg)
18/02/13 FAFIMAN 63
Facilidade Plug and Play
Como era antes?
O próprio sistema (BIOS) detecta os dispositivos e configura seus valores para interrupção e endereços de portas de E/S e então informa estes valores para cada controlador de dispositivo. Você pode eventualmente ter ainda controladores antigos com valores pré-fixados.
![Page 64: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/64.jpg)
18/02/13 FAFIMAN 64
Estrutura Possível de um Pentium
![Page 65: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/65.jpg)
18/02/13 FAFIMAN 65
Relógios e Temporizadores
Funções básicas Informar o instante atual Informar intervalo de tempo decorrido Ajustar temporizador para iniciar certa operação
em certo instante de tempo Hardware (temporizador programável):
pode ser programado para gerar uma interrupção após certo intervalo de tempo
Taxa comum de 18 a 60 interrupções/s
Note: Um processador moderno pode executar centenas de milhões de instruções/s
![Page 66: 18/02/13 FAFIMAN 1 Sistemas Operacionais: Gerenciamento de Arquivos Prof. Leandro Magno Material gentilmente cedido pelo prof. Dr. Ronaldo Augusto de Lara.](https://reader034.fdocument.pub/reader034/viewer/2022051615/552fc0f8497959413d8b4d3a/html5/thumbnails/66.jpg)
18/02/13 FAFIMAN 66
Como melhorar o desempenho da E/S
Reduzir trocas de contextos
Reduzir número de vezes que dados são copiados na MEM na transferência entre dispositivo e programa
Reduzir freqüência das interrupções usando grandes transferências
Aumentar concorrência usando DMA e canais específicos de E/S para reduzir o número de cópias feitas pela CPU