Si t
Sistemas
O
Operacionais
i i

Entrada/Saída
Disco magnético

Disco magnético talvez seja o mais importante dispositivo de E/S
 Gerência de memória (área de swap)
 Sistema
Si t
de
d arquivos
i
(arquivos
(
i
+ diretórios)
di tó i )
Aula 22
Prós e contras:
 Meio barato de armazenamento permanente
 Se comparado com processador e memória apresenta uma velocidade de
acesso muito lenta

Necessidade:
 Otimizar o desempenho do disco visando aumentar a sua largura de banda,
i
isso
éé, quantidade
id d de
d MB transferidos
f id por segundo.
d
02/06
6/2015
Institu
uto de Informática - U
UFRGS
Insttituto d
de Info
ormátic
ca - UF
FRGS
Introdução
ç
Sistemas Operacionais I
Disco magnético
g
ou disco rígido
g
Formatação
ç de disco: física e lógica
g
cilindro
Visão Lógica
eixo

Braço
móvel
Sistemas Operacionais I
trilha
IBM Model DKLA-24320
8944 cilindros
ili d
15 cabeçotes
63 setores por trilha
3

02/06
6/2015
Velocidade linear constante
Institu
uto de Informática - U
UFRGS
02/06
6/2015
Institu
uto de Informática - U
UFRGS
Fisicamente:
2 pratos, 4 cabeçotes
Formatação física
 Realizada pelo fabricante do disco
 Normalmente
N
l
t ffeita
it apenas uma vez na vida
id útil ddo di
disco
 Consiste em criar setores e trilhas na superfície magnética
 Nos setores são colocados informações de identificação
 Assinala os badblocks
Cabeçote
r/w
setor
Zonas: Cilindros que
possuem mesmo
número de setores
2
Formatação
ç lógica
g
 Realizada através de comandos do sistema operacional
 Cria uma organização de blocos e sua estrutura gerencial
 Sistema de arquivos
 Um disco pode ser formatado logicamente várias vezes
Sistemas Operacionais I
4
Acesso a dados



Institu
uto de Informática - U
UFRGS

Discos modernos endereçam blocos lógicos sequencialmente
 Conversão de um bloco lógico para sua localização física
 Não é um mapeamento direto por haver setores fisicamente defeituosos e
pelo número de setores por trilha não ser constante
 Feito de forma transparente pela controladora de disco

Sistemas Operacionais I
Tempo de
transferência
Trilha

Tempo de busca
(seek)
Setor

tacesso = tbusca + tlatência + ttransf.
•Tempo para a leitura/escrita efetiva
dos dados
•Função da quantidade de dados
acessados (r/w) e da rotação
Características
C
t í ti lógicas
ló i do
d di
disco (f(formatação,
t ã sistemas
i t
dde
arquivos, tamanho do bloco) e mecânicas
7
N realidade
Na
lid d existem
i t ttrês
ê ttempos dde seekk
 seek time: tempo de deslocamento até uma determinada trilha
 head switch time: tempo para acionar o cabeçote de leitura/escrita
 cylinder time: tempo de deslocamento da trilha i para a trilha i+1

02/06
6/2015
Institu
uto de Informática - U
UFRGS
02/06
6/2015
Institu
uto de Informática - U
UFRGS

Sistemas Operacionais I
Influenciado pelo tempo de acionamento, aceleração e
deslocamento do cabeçote até a trilha desejada
Não é linear em função do número do trilhas
 Tempo de identificação da trilha (confirmação)
Cabeçote
leitura/escrita
Tempo de
latênica
C
Características
t í ti exclusivamente
l i
t mecânicas
â i
6
Tempo
p de busca ((seek))
Tempo
p de acesso ao disco
•Tempo para posicionar
o cabeçote no início do
bloco a ser lido/escrito
•Função da taxa de
rotação do disco
Aspectos do sistema operacional
 Escalonamento de requisições ao disco
 Emprego de caches de E/S
 Política de alocação do espaço em disco
 Métodos
Mét d contiguo,
ti
encadeado
d d ou iindexado
d d
5
Sistemas Operacionais I
•Tempo para posicionar o
cabeçote na trilha desejada
•Função do deslocamento do
cabeçote
Fornecido em MB/sec (largura de banda)
Aspectos mecânicos
 Para ler/escrever dados é necessário que o cabeçote de leitura e escrita
esteja posicionado na trilha e no ínicio do setor desejados
p busca ((seek),
) latência rotacional e transferência
 Envolve três tempos:
 Método CHS (Cylinder, Head, Sector)
 Método LBA (Linear Block Addressage)
 Tradução do L-CHS (Logical) para P-CHS (Physical)
02/06
6/2015
Institu
uto de Informática - U
UFRGS

Menor unidade de transferência é um bloco lógico (n setores)
Acessar dado implica localizar trilha, superfície e setor
Dois métodos:
02/06
6/2015

Fatores de desempenho
p
do disco
Tempo
e po médio
éd o de see
seek
 Dado fornecido pelo fabricante
 e.g.; 5 a 10 ms
Sistemas Operacionais I
8
Tempo
p de latência rotacional

Tempo
p de transferência
Definido pela velocidade de rotação do motor

 e.g. (anos 2000): discos rígidos (5400 rpm a 10000 rpm); unidades de floppy
(300 rpm a 600 rpm)

Considera-se o tempo médio
Ttransf
t
f 
 512 bytes por setor, 4200 RPM (7.1 ms), single track (4-5.5 ms read; 4-6.5 ms
write), seek time (13 -16 ms read, 14-17 ms write)
9
Sistemas Operacionais I
Sistemas Operacionais I
Ttransff 
b
 trotação
ç
N
10
Exemplo
p de tempo
p de transferência
 Seek time
 Track to track: 1.1 ms
 Average: 88.55 ms
 Full stroke: 15 ms
 Latencyy time: 4.7 ms
 Buffer size: 8 MB
 Rotation speed: 7200 RPM

Ler completamente, de forma randômica, um arquivo de dados de
1,3 Mbytes, armazenado em disco com as seguintes características:
Institu
uto de Informática - U
UFRGS
 C
Características
t í ti
físicas:
fí i
Tbusca = 10 ms, 10000 RPM
 Formatação física: 512 bytes por setor, 320 setores por trilha
 Formatação lógica: 1 bloco é formado por um setor (512 bytes)
02/06
6/2015
Institu
uto de Informática - U
UFRGS
Bytes per sector: 512 bytes
Data zones: 27
Sector per track: 536 to 1092
Platters: 3
Tracks pper cylinder:
y
6
Cylinders: 70.553
Sectors (total): 361.882.080
Total size: 185.283.264.960 bytes
b
rN
Sistemas Operacionais I
Exemplo:
p disco IBM deskstart 180 GXP








Ttransff 
02/06
6/2015
Disco exemplo:
60b
RN
b = número de bytes a serem transferidos
N = número de bytes em uma trilha
R = número de rotações por minuto (RPM)
r = número de rotações por segundo (RPS)
11
Caso I: Acesso sequêncial (2560 setores = 8 trilhas x 320 setores)
Tacesso = 10 ms + 8 x (3 + 6) ms = 0.082 s
(Obs: supondo trilhas vizinhas, despreza-se o tempo de seek)
02/06
6/2015

Institu
uto de Informática - U
UFRGS
 Não se sabe a posição relativa do cabeçote com a do setor a ser lido
 Metade do tempo de uma rotação
 e.g.: 3 ms para um disco de 10000 rpm ( 6 ms uma rotação )
02/06
6/2015
Institu
uto de Informática - U
UFRGS

Depende da velocidade de rotação do disco e da quantidade de
bytes a serem lidos ou escritos
Expresso por:
Caso II: Acesso randômico (leitura na base um bloco por vez)
Implica
p realizar 2560 pposicionamentos do cabeçote
ç
Tacesso = 2560 x (10 ms + 3 ms + 0.01875 ms) = 33.328 s
Sistemas Operacionais I
12
Estratégias
g ppara melhorar o desempenho
p
do disco

Escalonamento do disco
Mecânicas

 Requisições proveem de diferentes processos e são geradas mais
rapidamente do que são atendidas → fila de requisições
 Atendimento pode “quebrar” a ordem de acesso a um arquivo mesmo
com um bom mapeamento físico

Sistemas Operacionais I

13
Objetivos:
 Aumentar a taxa de transferência (rendimento)
 Reduzir
Red ir o tempo médio de resposta
 Ser justo no atender a requisições dos processos (variância)
First Come,, First Served ((FCFS))
Otimização de busca

As requisições são atendidas na sua ordem de chegada
 FIFO ou FCFS
 SSTF (Sh
(Shortest
t t Seek
S k Ti
Time First)
Fi t)
 Scan (elevador) e suas variações
•
Otimização rotacional
Sistemas Operacionais I
15
•
Cabeçote percorre 640 trilhas
02/06
6/2015
Institu
uto de Informática - U
UFRGS
 SLTF (Shortest Latency Time First)
 SPTF (Shortest
(
Positioningg Time First))
02/06
6/2015
Institu
uto de Informática - U
UFRGS

14
Sistemas Operacionais I
Políticas de escalonamento do disco

Solução:
 Reordenar as requisições para otimizar o tempo de busca (seek) e latência
rotacional
02/06
6/2015
Institu
uto de Informática - U
UFRGS
Software (sistema operacional)
 Otimizar o atendimento a requisições
q ç
Tópico a ser visto
 Escalonamento do disco
 Empregar cache do subsistema de E/S
 O acesso aos dados é feito em memória
 Utilizar o sistema de arquivos adequado (alocação de espaço em disco)
 Minimiza deslocamentos
02/06
6/2015
Institu
uto de Informática - U
UFRGS
 Trocar o disco por um de melhor desempenho
 e.g.: menor ttempo dde bbusca, maior
i velocidade
l id d rotação
t ã
 Adicionar mais discos físicos ao sistema
 Atendimento simultâneo de mais de uma requisição

Problema:
Sistemas Operacionais I
•
Prós:
• Simples de executar
• Justo: requisições são atendidas
na ordem
Contras:
• Padrão de busca aleatório
(movimentação mecânica)
Comportamento ruim sob carga altas
(fila de requisição grande)
16
Shortest Seek Time First (SSTF)
(
)
Seleciona a requisição com o menor tempo de seek em relação a
posição atual do cabeçote de leitura/escrita
Cabeçote percorre 236 trilhas
Prós:
• Redução do tempo de busca (maior
rendimento)
di
t )
• Tempo médio tende a ser mais baixo
Contra:
• Não garante justiça ( ”fura” a fila )
• Postergação indefinida
• Variância alta (ruim para sistema
interativos, aceitável para sistemas
batch)
Sistemas Operacionais I
•

•
17
Variação do algoritmo de SCAN
Procedimento similar ao SCAN, mas as requisições são atendidas
apenas em um sentido da varredura



 Oferece tempo médio de acesso mais uniforme que o algoritmo
g
SCAN
19
SPTF – Shortest Positioning Time First
 Reordena requisições considerando a soma do tempo de seek com a latência
 Variação: Shortest Access Time First (SATF)
 Reordena as requisições considerando a soma do tempo de seek e de
transferência

Ambas
bas são implementadas
p e e adas oorganizando
ga a do a filaa de requisições
equ s ções po
por bblocos
ocos ((n
setores) de acordo com a política usada (SLTF ou SPTF)
02/06
6/2015
Institu
uto de Informática - U
UFRGS
Ao final da varredura o cabeçote é reposiconado no início do disco
Fornece uma visão lógica onde o disco é tratado como uma fila
circular
Sistemas Operacionais I
Discos mais novos o tempo de seek está na ordem de grandeza da
latência rotacional
SLTF – Shortest Latency Time First
 Reordena o atendimento de requisições de um mesmo cilindro em função do
atraso rotacional mais curto.
02/06
6/2015
Institu
uto de Informática - U
UFRGS

18
Otimização
ç rotacional: estratégias
g combinadas
 Compensa o fato que, se a leitura ocorresse nos dois sentidos da varredura,
os setores próximo ao centro seriam acessados em um tempo médio menor

Cabeçote percorre 208 trilhas
Prós
• Oferece
Of
bons
b
ttempos médios
édi dde
resposta
• Bom rendimento
• Variância menor que o SSTF
Contra
• Não justo, pois as trilhas das
extremidades são “visitadas” menos
q
qque as trilhas
frequentemente
internas
Sistemas Operacionais I
C-SCAN

Atende requisições em uma direção
 Muda de direção ao atingir os cilindros mais interno ou mais externo
D fi i ã da
d direção
di ã preferencial
f
i l (fixa
(fi ou critério
ité i SSTF)
 Definição
02/06
6/2015
•
02/06
6/2015
Institu
uto de Informática - U
UFRGS
•

Institu
uto de Informática - U
UFRGS

Scan (elevador)
(
)
Sistemas Operacionais I
20
RAID: Redundant Arrayy of Independent*
p
Disks



Institu
uto de Informática - U
UFRGS

RAID pode ser implementado por software ou por hardware
Agrupamento de discos (JBOD – Just a bunch of disks)
 Difere de RAID por não prover desempenho e confiabilidade
*Na proposta original
original, no artigo de David Patterson,
Patterson Garth Gibson e Randy Katz,
Katz o “I”
I era de inexpensive.
inexpensive



disco
Inserir redundância da informação para obter confiabilidade
 Redundância é inserida em porção de disco (extra) e não em setores como é
o caso dos FEC (Forward Error Correction)
 Não há sobrecusto de tempo porque dados e redundância podem ser
acessados em paralelo
Sistemas Operacionais I
23
Faz apenas striping
Não inclui redundância
Fornece alta taxa de transferência
Problema é falta de confiabilidade
02/06
6/2015


Institu
uto de Informática - U
UFRGS
stripp
02/06
6/2015
Institu
uto de Informática - U
UFRGS
 A
Acelerar
l
o acesso e alta
lt taxa
t
de
d ttransferência
f ê i
 A unidade de divisão é o strip e pode ser setor, bloco ou trilha
stripe
22
RAID nível 0
Dividir os dados de uma operação de E/S em vários discos fazendo
as operações em paralelo
registro
Diferentes discos físicos são organizados de forma a compor um disco lógico
Organização
g
ç é configurada
g
e ggerenciada ppelo controlador de disco RAID
Controlador realiza a geração das informações de redundância (firmware)
Implementa todos os níveis de RAID
Sistemas Operacionais I
RAID: Princípio
p de funcionamento

RAID em hardware:




21
Sistemas Operacionais I
RAID em software:
 Diferentes partições (discos lógicos) compõem um único disco
 RAID é feito
f it pelo
l driver
d i de
d disco
di
(software)
( ft
)
 Normalmente implementa RAID nível 1 e RAID nível 5
 RAID 1, RAID 2, RAID 3, RAID 4 e RAID 5
 Diferentes capacidades de desempenho e confiabilidade
 Padrões posteriores: níveis RAID 0, RAID 6 e combinações (RAID 10)
02/06
6/2015
Institu
uto de Informática - U
UFRGS

Conjunto de discos rigídos visto pelo sistema operacional como um
único disco lógico
Definição de 5 níveis (original)
02/06
6/2015

Implementação
p
ç de RAID
Sistemas Operacionais I
24
RAID nível 1



RAID nível 2
Faz espelhamento (mirroring)
Redundância de 100%
Não melhora a taxa de escrita, apenas a de leitura

 Oito superfícies para gravar um byte

 Não encontrado em unidades comerciais
11010010
25
Discos de dados

 Emprega apenas uma unidade para armazenar a paridade
 Paridade
P id d pode
d ser iimplementada
l
t d ffacilmente
il
t em hhardware
d
(XOR)

RAID 4 é similar ao RAID 3
 Usa um bloco de dados como unidade de striping invés de bit
Sistemas Operacionais I
Similar a configuração de RAID 4, mas distribui as paridades entre
os discos, ou seja
27
Permite a recuperação dos dados em caso de falha de disco única
Paridade
02/06
6/2015
0
1
Institu
uto de Informática - U
UFRGS
1
1

Paridade
02/06
6/2015
Institu
uto de Informática - U
UFRGS
0
1
26
 Não
Nã faz
f distinção
di ti ã entre
t discos
di
dde dados
d d e disco
di
dde paridade
id d
Pi = b3 xor b2 xor b1 xor bo
Letra W : 0101 0111
1
1
Discos de paridade (Hamming)
RAID nível 5
O RAID 3 é similar ao RAID 2
0
0
0 1 0 ((nibble superior
p
apenas)
p
)
Sistemas Operacionais I
RAID nível 3 e RAID nível 4
0101
0111
U id d dde di
Unidades
disco ddevem ser rigorosamente
i
t sincronizadas
i
i d
02/06
6/2015
Institu
uto de Informática - U
UFRGS
02/06
6/2015
Institu
uto de Informática - U
UFRGS


Redundância é inserida em unidades adicionais (discos)
 Código de Hamming (detecção e correção de erros)
 Dados podem ser lidos em paralelos nos diferentes discos
Sistemas Operacionais I
A unidade de striping é o bit
Sistemas Operacionais I
28
RAID nível 6

Outros tipos
p de RAID
Emprega dois cálculos de paridade

 Permite a reconstrução dos dados na presença de falha dupla de discos
 Espelha um bloco de dados e realiza o striping
 Emprega duas paridades
 Funções linearmente independentes
 Uma das paridades é calculada na diagonal
29
Sistemas Operacionais I
Backupp

Cópia de segurança

Diferencial
 Copia todos os arquivos criados ou modificados desde o último backup
normal ou diferencial
 Não desmarca atributo de arquivamento
Sistemas Operacionais I
31
A. Silberchatz, P. Galvin; Sistemas Operacionais. (7a edição).
Campus 2008
Campus,
2008.
 Capítulo 9: seções 9.5 a 9.9

A. Ca
arissimi -02/06/2
2015
Incremental
Institu
uto de Informática - U
UFRGS
02/06
6/2015
Institu
uto de Informática - U
UFRGS

 Copia todos os arquivos criados ou modificados desde o último backup
normal ou incremental
 Desmarca atributo de arquivamento

A. Tanenbaum. Sistemas Operacionais Modernos (3a edição),
Pearson Brasil, 2010.
 Capítulo
C ít l 9:
9 seção
ã 3.5
35
Normal
 Copia todos os arquivos selecionados para o backup
 Desmarca atributo de arquivamento

30
Leituras complementares
p
 Baseado em atributo de arquivamento e/ou datas criação/modificação

RAID DP (Dupla paridade)
02/06
6/2015
Institu
uto de Informática - U
UFRGS
Paridade
02/06
6/2015
Institu
uto de Informática - U
UFRGS

Sistemas Operacionais I
RAID 1+0 (RAID 10)
R. Oliveira,
R
Oliveira A
A. Carissimi,
Carissimi S.
S Toscani; Sistemas Operacionais.
Operacionais Editora
Bookman 4a edição, 2010
 Capítulo 6 e capítulo 7
Sistemas Operacionais I
32
Download

Si t O i i Sistemas Operacionais