SlideShare uma empresa Scribd logo
Aula 13 – Mem´oria Virtual e Pagina¸c˜ao
Norton Trevisan Roman
5 de outubro de 2017
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 1 / 40
Sobrecarga de Mem´oria
O que acontece quando a mem´oria dispon´ıvel n˜ao ´e
suficiente para todos os processos?
Existem 2 m´etodos gerais para lidar com a
sobrecarga de mem´oria:
A troca de processos (swapping):
Consiste em trazer, em sua totalidade, cada processo para a
mem´oria, execut´a-lo durante um tempo e, ent˜ao, devolvˆe-lo ao disco
Assim, processos ociosos acabam ficando no disco
Mem´oria Virtual:
Permite que programas possam ser executados mesmo que estejam
parcialmente carregados na mem´oria principal
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 2 / 40
Swapping
Chaveamento de processos inteiros entre a mem´oria
principal e o disco
Swap-out
Da mem´oria para uma regi˜ao especial do disco, chamada
“´area de swap”
Swap-in
Do disco pra mem´oria
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 3 / 40
Swapping
Funcionamento:
Inicialmente o processo A est´a na mem´oria
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 4 / 40
Swapping
Funcionamento:
Inicialmente o processo A est´a na mem´oria
Ent˜ao B e C s˜ao criados ou trazidos do disco (swap-in)
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 4 / 40
Swapping
Funcionamento:
Inicialmente o processo A est´a na mem´oria
Ent˜ao B e C s˜ao criados ou trazidos do disco (swap-in)
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 4 / 40
Swapping
Funcionamento:
Inicialmente o processo A est´a na mem´oria
Ent˜ao B e C s˜ao criados ou trazidos do disco (swap-in)
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 4 / 40
Sobrecarga de Mem´oria – Swapping
Funcionamento:
D ´e iniciado. O processo A ´e devolvido ao disco (swap-out),
dando espa¸co a D, que entra na mem´oria
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 5 / 40
Sobrecarga de Mem´oria – Swapping
Funcionamento:
D ´e iniciado. O processo A ´e devolvido ao disco (swap-out),
dando espa¸co a D, que entra na mem´oria
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 5 / 40
Sobrecarga de Mem´oria – Swapping
Funcionamento:
D ´e iniciado. O processo A ´e devolvido ao disco (swap-out),
dando espa¸co a D, que entra na mem´oria
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 5 / 40
Sobrecarga de Mem´oria – Swapping
Funcionamento:
D ´e iniciado. O processo A ´e devolvido ao disco (swap-out),
dando espa¸co a D, que entra na mem´oria
A precisa rodar novamente. B ´e retirado, e A ´e novamente
trazido do disco para a mem´oria
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 5 / 40
Sobrecarga de Mem´oria – Swapping
Funcionamento:
D ´e iniciado. O processo A ´e devolvido ao disco (swap-out),
dando espa¸co a D, que entra na mem´oria
A precisa rodar novamente. B ´e retirado, e A ´e novamente
trazido do disco para a mem´oria
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 5 / 40
Sobrecarga de Mem´oria – Swapping
Funcionamento:
D ´e iniciado. O processo A ´e devolvido ao disco (swap-out),
dando espa¸co a D, que entra na mem´oria
A precisa rodar novamente. B ´e retirado, e A ´e novamente
trazido do disco para a mem´oria
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 5 / 40
Swapping
Note que A agora est´a em
outra por¸c˜ao da mem´oria
Devemos realocar os
endere¸cos em A via software
durante a carga na mem´oria
Realoca¸c˜ao est´atica
Ou via hardware durante a
execu¸c˜ao do programa
Ex: via registradores base e
limite (realoca¸c˜ao dinˆamica) Antes Depois
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 6 / 40
Swapping
Problema
A opera¸c˜ao de swap pode criar
muitos “buracos” na mem´oria
– fragmenta¸c˜ao externa
Pode ficar dif´ıcil de acomodar outro processo no buraco
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 7 / 40
Swapping
Problema
A opera¸c˜ao de swap pode criar
muitos “buracos” na mem´oria
– fragmenta¸c˜ao externa
Pode ficar dif´ıcil de acomodar outro processo no buraco
Solu¸c˜ao: Compacta¸c˜ao de mem´oria:
Mova todos os processos o mais para
baixo poss´ıvel na mem´oria – haver´a um
´unico espa¸co vazio acima
Consome bastante CPU
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 7 / 40
Swapping
Compacta¸c˜ao de Mem´oria – Ex:
Qual o tempo para compactar 1GB?
Se copia 4B (32b) em 20ns
1.073.741.824B × 20ns
4B
= 5.368.709.120ns
ou ≈ 5.4s
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 8 / 40
Swapping – Aloca¸c˜ao de Mem´oria
A aloca¸c˜ao de mem´oria muda `a medida em que
Os processos chegam `a mem´oria
Os processos deixam a mem´oria
Quanto de mem´oria devemos alocar a um processo
quando ele ´e criado ou trazido do disco?
Se eles tiverem tamanho fixo, aloque o que ele precisa
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 9 / 40
Swapping – Aloca¸c˜ao de Mem´oria
Mas e se o segmento de dados crescer com o
tempo?
Ex: O processo aloca mem´oria
dinamicamente
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 10 / 40
Swapping – Aloca¸c˜ao de Mem´oria
Mas e se o segmento de dados crescer com o
tempo?
Ex: O processo aloca mem´oria
dinamicamente
Se houver um “buraco” adjacente `a
mem´oria atual do processo, ele pode ser
alocado, e o processo cresce nesse
buraco
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 10 / 40
Swapping – Aloca¸c˜ao de Mem´oria
E se ele for adjacente a outro processo?
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 11 / 40
Swapping – Aloca¸c˜ao de Mem´oria
E se ele for adjacente a outro processo?
Ou o movemos a um buraco maior na
mem´oria
Ou um ou mais processos ter˜ao que ser
transferidos para o disco, para criar esse
buraco
Se o processo n˜ao puder crescer na
mem´oria e a ´area de troca de disco
(swap) estiver cheia, ele pode ser suspenso at´e que algum
espa¸co seja liberado
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 11 / 40
Swapping – Aloca¸c˜ao de Mem´oria
Alternativamente:
Se o esperado ´e que a maioria dos processos cres¸ca durante
a execu¸c˜ao, podemos alocar uma mem´oria extra quando o
processo ´e carregado
Reduz o overhead de ter que fazer swap ou
movˆe-lo na mem´oria
Se ainda assim o processo for para o disco,
somente a mem´oria realmente em uso ´e
gravada
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 12 / 40
Swapping – Aloca¸c˜ao de Mem´oria
Se os processos tiverem dois segmentos que crescem
(dados e pilha, por exemplo), podemos usar a
mesma ideia
Nesse caso, a pilha cresce para baixo
enquanto que o segmento de dados
cresce para cima
A por¸c˜ao de mem´oria entre essas duas
´areas pode ser usada por ambas
Se ainda assim ficar sem espa¸co:
Transfere o processo a outro local, faz swap, ou termina o
processo
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 13 / 40
Gerenciando a Mem´oria
Quando se atribui mem´oria dinamicamente, o SO
deve gerenci´a-la
O gerenciamento pode ser feito por:
Mapas de bits
Listas ligadas
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 14 / 40
Gerenciando a Mem´oria: Mapas de Bits
Mem´oria ´e dividida em unidades de aloca¸c˜ao
Pode conter at´e v´arios KB
Cada unidade corresponde a um bit no bitmap:
0 → livre
1 → ocupado
Tamanho do bitmap depende do tamanho da
unidade e do tamanho da mem´oria
unidades de aloca¸c˜ao pequenas → bitmap grande
unidades de aloca¸c˜ao grandes → perda de espa¸co
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 15 / 40
Gerenciando a Mem´oria: Mapas de Bits
Vantagem:
Ocupa um tamanho fixo na mem´oria, pois s´o depende do
tamanho da mem´oria e da unidade de aloca¸c˜ao
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 16 / 40
Mapas de Bits – Fragmenta¸c˜ao
Interna
Desperd´ıcio de mem´oria dentro da ´area alocada para um
processo
Ex.: Unidades de aloca¸c˜ao grandes e um processo cujo
tamanho n˜ao ´e m´ultiplo da unidade de aloca¸c˜ao
Externa:
Desperd´ıcio fora da ´area alocada para um processo
Ex: Mem´oria fragmentada ap´os v´arias trocas com o disco,
sem que haja compacta¸c˜ao
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 17 / 40
Gerenciando a Mem´oria: Listas Ligadas
Mantˆem-se uma lista ligada de segmentos de
mem´oria livres e alocados
Cada segmento ou cont´em um processo ou ´e um buraco
vazio entre dois processos
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 18 / 40
Gerenciando a Mem´oria: Listas Ligadas
A lista ordenada por endere¸co fica f´acil de ser
atualizada:
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 19 / 40
Gerenciando a Mem´oria: Listas Ligadas
Com uma lista ordenada por endere¸co, como alocar
mem´oria a um processo?
Supondo que o gerenciador de mem´oria saiba quanta
mem´oria deve ser alocada ao processo
Primeiro encaixe (First fit):
O gerenciador percorre a lista de segmentos, desde o in´ıcio,
at´e que encontre um buraco grande o bastante
Quebra o buraco em dois peda¸cos – um para o processo e um para a
mem´oria ainda livre
Varia¸c˜ao: inicie a busca a partir de onde parou na vez
anterior (next fit – pr´oximo encaixe)
Deve memorizar a ´ultima posi¸c˜ao em que encontrou mem´oria
dispon´ıvel suficientemente grande
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 20 / 40
Gerenciando a Mem´oria: Listas Ligadas
Melhor encaixe (Best fit):
Busca a lista inteira, at´e o fim, e toma o menor buraco que
seja adequado
N˜ao quebra buracos grandes que poderiam ser ´uteis mais
tarde
Problema: permite o surgimento de buracos min´usculos
Pior encaixe (worst fit):
Sempre tome o maior buraco dispon´ıvel
Reduz a chance de buracos min´usculos e in´uteis
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 21 / 40
Gerenciando a Mem´oria: Listas Ligadas
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 22 / 40
Gerenciando a Mem´oria: Listas Ligadas
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 22 / 40
Gerenciando a Mem´oria: Listas Ligadas
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 22 / 40
Gerenciando a Mem´oria: Listas Ligadas
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 22 / 40
Gerenciando a Mem´oria: Listas Ligadas
Principais consequˆencias dos algoritmos:
Melhor encaixe:
Deixa o menor resto. Por´em, ap´os um longo processamento,
poder´a deixar “buracos” muito pequenos para serem ´uteis
Pior encaixe:
Deixa o maior espa¸co ap´os cada aloca¸c˜ao, mas tende a
espalhar as por¸c˜oes n˜ao utilizadas sobre ´areas n˜ao cont´ınuas
de mem´oria e, portanto, pode tornar dif´ıcil alocar grandes
processos
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 23 / 40
Gerenciando a Mem´oria: Listas Ligadas
Principais consequˆencias dos algoritmos:
Primeiro encaixe:
Tende a ser um meio termo entre a melhor e a pior escolha,
com a caracter´ıstica adicional de fazer com que os espa¸cos
vazios migrem para o final da mem´oria.
Na pr´atica, uma boa escolha.
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 24 / 40
Gerenciando a Mem´oria: Listas Ligadas
Esses algoritmos poderiam ser mais r´apidos se
segmentos de mem´oria em uso e livres fossem
mantidos em listas separadas
A busca se daria somente na lista de segmentos livres
Se ordenada por tamanho, a lista de livres tornaria o best fit
e worst fit mais r´apidos
Problema
Liberar mem´oria fica mais lento e complicado
Deve-se remover da lista de segmentos em uso e incluir na de livres
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 25 / 40
Gerenciando a Mem´oria: Listas Ligadas
Encaixe r´apido (Quick fit)
Mant´em listas separadas para alguns dos tamanhos de
mem´oria livre mais comumente requisitados
Uma para cada tamanho
A busca por um segmento livre de um determinado tamanho ´e r´apida
Tamanhos incomuns s˜ao incluidos em uma lista `a parte, ou na lista
existente mais pr´oxima
Problema quando processo ´e desalocado:
Encontrar os vizinhos ao buraco que ele deixou, para uni˜ao
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 26 / 40
Mem´oria Virtual
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 27 / 40
Mem´oria Virtual
Registradores base e limite criam a abstra¸c˜ao de
espa¸co de endere¸co
Swap trata do problema de n˜ao termos mem´oria
suficiente para todos os processos
Exige que haja mem´oria para cada processo individualmente
E se um ´unico processo ocupar mais mem´oria que o
dispon´ıvel (um bloatware)?
Hoje em dia ´e comum necessidade de rodar programas
grandes demais para a mem´oria
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 28 / 40
Sobrecarga de Mem´oria – Mem´oria Virtual
Que fazer?
Mem´oria virtual (Fotheringham, 1961)
M´etodo para aloca¸c˜ao de processos na mem´oria
Continuamos “enganando” o processo, quanto a que
endere¸co de mem´oria ele est´a realmente usando
Usa duas t´ecnicas principais (normalmente juntas):
Pagina¸c˜ao – blocos de tamanho fixo
Segmenta¸c˜ao – blocos de tamanho vari´avel
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 29 / 40
Mem´oria Virtual – Pagina¸c˜ao
A ideia b´asica ´e que cada programa tenha seu
pr´oprio espa¸co de endere¸camento, que ´e dividido em
blocos de tamanho fixo chamados p´aginas
Cada p´agina ´e uma s´erie cont´ıgua de endere¸cos, mapeada na
mem´oria f´ısica
Nem todas precisam estar na mem´oria f´ısica para executar o
programa
Quando o programa referencia um endere¸co em uma
p´agina que est´a na mem´oria, o hardware executa o
mapeamento necess´ario dinamicamente
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 30 / 40
Mem´oria Virtual – Pagina¸c˜ao
Quando o programa referencia um endere¸co em uma
p´agina que n˜ao est´a na mem´oria
A instru¸c˜ao falha – page fault (trap)
O SO deve obter a p´agina que falta e reexecutar a instru¸c˜ao
que falhou
O processo recebe mem´oria f´ısica sempre que houver mem´oria
dispon´ıvel
Com multiprograma¸c˜ao, a mem´oria cont´em partes
de diferentes programas
Se um programa estiver esperando por outra p´agina, a CPU
pode ser escalonada a outro processo
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 31 / 40
Real × Virtual
Os endere¸cos f´ısicos (reais) podem ser gerados de
muitas maneiras:
Mapeamento direto
Usando registradores base e limite
etc
O endere¸co resultante ´e colocado diretamente no
barramento de mem´oria
Espa¸co de Endere¸camento F´ısico de um processo:
Formado por todos os endere¸cos f´ısicos/reais aceitos pela
mem´oria principal (RAM)
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 32 / 40
Real × Virtual
Endere¸cos gerados pelos programas s˜ao chamados
de virtuais ou l´ogicos
Na ausˆencia de mem´oria virtual, o endere¸co virtual ´e
idˆentico ao f´ısico
Com mem´oria virtual, ´e mapeado `a mem´oria f´ısica (n˜ao vai
diretamente ao barramento)
Espa¸co de Endere¸camento Virtual de um processo:
Formado por todos os endere¸cos virtuais que esse processo
pode gerar
N˜ao necessariamente correspondem diretamente aos f´ısicos
O espa¸co de endere¸co f´ısico de um processo pode ser n˜ao
cont´ıguo
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 33 / 40
Mem´oria Virtual – Pagina¸c˜ao
Um processo em Mem´oria Virtual faz referˆencia a
endere¸cos virtuais e n˜ao a endere¸co reais de RAM
No momento da execu¸c˜ao de
uma instru¸c˜ao, o endere¸co
virtual ´e traduzido para um
endere¸co real
O barramento da RAM lida
apenas endere¸cos reais
Deve haver um mapeamento
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 34 / 40
Mem´oria Virtual – Pagina¸c˜ao
E como se d´a o mapeamento?
Tabela de p´aginas: respons´avel por armazenar informa¸c˜oes
sobre as p´aginas virtuais:
argumento de entrada → n´umero da p´agina virtual
argumento de sa´ıda (resultado) → n´umero da p´agina real (ou
moldura de p´agina)
Gerenciada pela MMU (j´a j´a...)
As transferˆencias entre mem´oria e disco s˜ao sempre
em p´aginas completas
P´agina ´e a unidade b´asica para transferˆencia de informa¸c˜ao
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 35 / 40
Mem´oria Virtual – Pagina¸c˜ao
E quem faz esse mapeamento?
Um hardware especial, presente na CPU → MMU (memory
management unit)
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 36 / 40
Mem´oria Virtual – Pagina¸c˜ao
Ex:
Computador que gera at´e
64K de endere¸cos virtuais
(16 bits)
Tem apenas 32KB de
mem´oria f´ısica
Programas de 64KB podem
ser escritos, mas n˜ao
carregados inteiramente na
mem´oria
Uma c´opia de 64KB deve
estar no disco, para que
partes possam ser carregadas
`a mem´oria
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 37 / 40
Mem´oria Virtual – Pagina¸c˜ao
Divide-se o espa¸co de
endere¸camento virtual em
unidades de tamanho fixo –
as p´aginas
Nesse caso, P´aginas de 4KB
4096 bytes/endere¸cos
(0-4095)
As unidades correspondentes
na mem´oria f´ısica s˜ao as
page frames
P´aginas e molduras de p´agina s˜ao em geral do mesmo
tamanho
Alternativamente, o SO pode mapear 2 ou mais molduras a
uma ´unica p´agina
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 38 / 40
Mem´oria Virtual – Pagina¸c˜ao
Embora tenha 32KB, o
sistema age como se tivesse
64KB
Ex: MOV REG,5
A MMU identifica que ´e a
primeira p´agina (5B acima da
sua base → 0)
Ela est´a mapeada `a terceira
frame, que come¸ca em 8k =
8192
O endere¸co enviado ao
barramento ´e 5 + 8192 =
8197
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 39 / 40
Mem´oria Virtual – Pagina¸c˜ao
Como sabemos que p´aginas
est˜ao na mem´oria
efetivamente?
Se temos apenas 8 frames,
somente 8 p´aginas (das 16)
est˜ao mapeadas
Solu¸c˜ao:
Bit de presente/ausente em
cada entrada da tabela de
p´aginas
Identifica que p´aginas est˜ao
fisicamente na mem´oria
Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 40 / 40

Mais conteúdo relacionado

Mais procurados

(ACH2044) Sistemas Operacionais - Aula 21
(ACH2044) Sistemas Operacionais - Aula 21(ACH2044) Sistemas Operacionais - Aula 21
(ACH2044) Sistemas Operacionais - Aula 21
Norton Trevisan Roman
 
(ACH2044) Sistemas Operacionais - Aula 03
(ACH2044) Sistemas Operacionais - Aula 03(ACH2044) Sistemas Operacionais - Aula 03
(ACH2044) Sistemas Operacionais - Aula 03
Norton Trevisan Roman
 
(ACH2044) Sistemas Operacionais - Aula 02
(ACH2044) Sistemas Operacionais - Aula 02(ACH2044) Sistemas Operacionais - Aula 02
(ACH2044) Sistemas Operacionais - Aula 02
Norton Trevisan Roman
 
(ACH2044) Sistemas Operacionais - Aula 11
(ACH2044) Sistemas Operacionais - Aula 11(ACH2044) Sistemas Operacionais - Aula 11
(ACH2044) Sistemas Operacionais - Aula 11
Norton Trevisan Roman
 
(ACH2044) Sistemas Operacionais - Aula 07
(ACH2044) Sistemas Operacionais - Aula 07(ACH2044) Sistemas Operacionais - Aula 07
(ACH2044) Sistemas Operacionais - Aula 07
Norton Trevisan Roman
 
(ACH2044) Sistemas Operacionais - Aula 22
(ACH2044) Sistemas Operacionais - Aula 22(ACH2044) Sistemas Operacionais - Aula 22
(ACH2044) Sistemas Operacionais - Aula 22
Norton Trevisan Roman
 
(ACH2044) Sistemas Operacionais - Aula 05
(ACH2044) Sistemas Operacionais - Aula 05(ACH2044) Sistemas Operacionais - Aula 05
(ACH2044) Sistemas Operacionais - Aula 05
Norton Trevisan Roman
 
(ACH2044) Sistemas Operacionais - Aula 10
(ACH2044) Sistemas Operacionais - Aula 10(ACH2044) Sistemas Operacionais - Aula 10
(ACH2044) Sistemas Operacionais - Aula 10
Norton Trevisan Roman
 
(ACH2044) Sistemas Operacionais - Aula 15
(ACH2044) Sistemas Operacionais - Aula 15(ACH2044) Sistemas Operacionais - Aula 15
(ACH2044) Sistemas Operacionais - Aula 15
Norton Trevisan Roman
 
(ACH2044) Sistemas Operacionais - Aula 06
(ACH2044) Sistemas Operacionais - Aula 06(ACH2044) Sistemas Operacionais - Aula 06
(ACH2044) Sistemas Operacionais - Aula 06
Norton Trevisan Roman
 
(ACH2044) Sistemas Operacionais - Aula 09
(ACH2044) Sistemas Operacionais - Aula 09(ACH2044) Sistemas Operacionais - Aula 09
(ACH2044) Sistemas Operacionais - Aula 09
Norton Trevisan Roman
 
(ACH2044) Sistemas Operacionais - Aula 12
(ACH2044) Sistemas Operacionais - Aula 12(ACH2044) Sistemas Operacionais - Aula 12
(ACH2044) Sistemas Operacionais - Aula 12
Norton Trevisan Roman
 
(ACH2044) Sistemas Operacionais - Aula 16
(ACH2044) Sistemas Operacionais - Aula 16(ACH2044) Sistemas Operacionais - Aula 16
(ACH2044) Sistemas Operacionais - Aula 16
Norton Trevisan Roman
 
Guia com mais de 500 comandos do linux
Guia com mais de 500 comandos do linuxGuia com mais de 500 comandos do linux
Guia com mais de 500 comandos do linux
Kalanzans
 
Redirecionamento, pipes e processos linux
Redirecionamento, pipes e processos   linuxRedirecionamento, pipes e processos   linux
Redirecionamento, pipes e processos linux
Fábio dos Reis
 
Resolução de Problemas - Sistemas Operacionais
Resolução de Problemas - Sistemas OperacionaisResolução de Problemas - Sistemas Operacionais
Resolução de Problemas - Sistemas Operacionais
Ronildo Oliveira
 
Gerências de Processos: Escalonamento de CPU
Gerências de Processos: Escalonamento de CPUGerências de Processos: Escalonamento de CPU
Gerências de Processos: Escalonamento de CPU
Alexandre Duarte
 
Comandos básicos linux
Comandos básicos linuxComandos básicos linux
Comandos básicos linux
Luciano Souto
 
Gerenciamento memoria
Gerenciamento memoriaGerenciamento memoria
Gerenciamento memoria
Rodrigo Piovesana
 
A experiência (e a falta dela) em linux como um usuário doméstico
A experiência (e a falta dela) em linux como um usuário domésticoA experiência (e a falta dela) em linux como um usuário doméstico
A experiência (e a falta dela) em linux como um usuário doméstico
Luiz Henrique Rauber Rodrigues
 

Mais procurados (20)

(ACH2044) Sistemas Operacionais - Aula 21
(ACH2044) Sistemas Operacionais - Aula 21(ACH2044) Sistemas Operacionais - Aula 21
(ACH2044) Sistemas Operacionais - Aula 21
 
(ACH2044) Sistemas Operacionais - Aula 03
(ACH2044) Sistemas Operacionais - Aula 03(ACH2044) Sistemas Operacionais - Aula 03
(ACH2044) Sistemas Operacionais - Aula 03
 
(ACH2044) Sistemas Operacionais - Aula 02
(ACH2044) Sistemas Operacionais - Aula 02(ACH2044) Sistemas Operacionais - Aula 02
(ACH2044) Sistemas Operacionais - Aula 02
 
(ACH2044) Sistemas Operacionais - Aula 11
(ACH2044) Sistemas Operacionais - Aula 11(ACH2044) Sistemas Operacionais - Aula 11
(ACH2044) Sistemas Operacionais - Aula 11
 
(ACH2044) Sistemas Operacionais - Aula 07
(ACH2044) Sistemas Operacionais - Aula 07(ACH2044) Sistemas Operacionais - Aula 07
(ACH2044) Sistemas Operacionais - Aula 07
 
(ACH2044) Sistemas Operacionais - Aula 22
(ACH2044) Sistemas Operacionais - Aula 22(ACH2044) Sistemas Operacionais - Aula 22
(ACH2044) Sistemas Operacionais - Aula 22
 
(ACH2044) Sistemas Operacionais - Aula 05
(ACH2044) Sistemas Operacionais - Aula 05(ACH2044) Sistemas Operacionais - Aula 05
(ACH2044) Sistemas Operacionais - Aula 05
 
(ACH2044) Sistemas Operacionais - Aula 10
(ACH2044) Sistemas Operacionais - Aula 10(ACH2044) Sistemas Operacionais - Aula 10
(ACH2044) Sistemas Operacionais - Aula 10
 
(ACH2044) Sistemas Operacionais - Aula 15
(ACH2044) Sistemas Operacionais - Aula 15(ACH2044) Sistemas Operacionais - Aula 15
(ACH2044) Sistemas Operacionais - Aula 15
 
(ACH2044) Sistemas Operacionais - Aula 06
(ACH2044) Sistemas Operacionais - Aula 06(ACH2044) Sistemas Operacionais - Aula 06
(ACH2044) Sistemas Operacionais - Aula 06
 
(ACH2044) Sistemas Operacionais - Aula 09
(ACH2044) Sistemas Operacionais - Aula 09(ACH2044) Sistemas Operacionais - Aula 09
(ACH2044) Sistemas Operacionais - Aula 09
 
(ACH2044) Sistemas Operacionais - Aula 12
(ACH2044) Sistemas Operacionais - Aula 12(ACH2044) Sistemas Operacionais - Aula 12
(ACH2044) Sistemas Operacionais - Aula 12
 
(ACH2044) Sistemas Operacionais - Aula 16
(ACH2044) Sistemas Operacionais - Aula 16(ACH2044) Sistemas Operacionais - Aula 16
(ACH2044) Sistemas Operacionais - Aula 16
 
Guia com mais de 500 comandos do linux
Guia com mais de 500 comandos do linuxGuia com mais de 500 comandos do linux
Guia com mais de 500 comandos do linux
 
Redirecionamento, pipes e processos linux
Redirecionamento, pipes e processos   linuxRedirecionamento, pipes e processos   linux
Redirecionamento, pipes e processos linux
 
Resolução de Problemas - Sistemas Operacionais
Resolução de Problemas - Sistemas OperacionaisResolução de Problemas - Sistemas Operacionais
Resolução de Problemas - Sistemas Operacionais
 
Gerências de Processos: Escalonamento de CPU
Gerências de Processos: Escalonamento de CPUGerências de Processos: Escalonamento de CPU
Gerências de Processos: Escalonamento de CPU
 
Comandos básicos linux
Comandos básicos linuxComandos básicos linux
Comandos básicos linux
 
Gerenciamento memoria
Gerenciamento memoriaGerenciamento memoria
Gerenciamento memoria
 
A experiência (e a falta dela) em linux como um usuário doméstico
A experiência (e a falta dela) em linux como um usuário domésticoA experiência (e a falta dela) em linux como um usuário doméstico
A experiência (e a falta dela) em linux como um usuário doméstico
 

Semelhante a (ACH2044) Sistemas Operacionais - Aula 13

(ACH2055) Arquitetura de Computadores - Aula 11
(ACH2055) Arquitetura de Computadores - Aula 11(ACH2055) Arquitetura de Computadores - Aula 11
(ACH2055) Arquitetura de Computadores - Aula 11
Norton Trevisan Roman
 
OpenSolaris a Céu Aberto
OpenSolaris a Céu AbertoOpenSolaris a Céu Aberto
OpenSolaris a Céu Aberto
José Maria Silveira Neto
 
Msdos vol4
Msdos vol4Msdos vol4
Msdos vol4
Marcio Pereira
 
Valdir Adorni - Infra and S.A.N Assessment Integration Sample
Valdir Adorni - Infra and S.A.N Assessment Integration SampleValdir Adorni - Infra and S.A.N Assessment Integration Sample
Valdir Adorni - Infra and S.A.N Assessment Integration Sample
Valdir Adorni
 
Como reinstalar o windows sem formatar
Como reinstalar o windows sem formatarComo reinstalar o windows sem formatar
Como reinstalar o windows sem formatar
Sirene Monturil
 
Sistemas Operacionais 13 gerenciamento de memória
Sistemas Operacionais  13   gerenciamento de memóriaSistemas Operacionais  13   gerenciamento de memória
Sistemas Operacionais 13 gerenciamento de memória
Mauro Duarte
 
Tutorial de discos
Tutorial de discosTutorial de discos
Tutorial de discos
Tiago
 
DESFRAGMENTAÇÃO
DESFRAGMENTAÇÃODESFRAGMENTAÇÃO
DESFRAGMENTAÇÃO
PC DOCTOR INFO
 
Postgres Big data
Postgres Big dataPostgres Big data
Postgres Big data
Fabio Telles Rodriguez
 

Semelhante a (ACH2044) Sistemas Operacionais - Aula 13 (9)

(ACH2055) Arquitetura de Computadores - Aula 11
(ACH2055) Arquitetura de Computadores - Aula 11(ACH2055) Arquitetura de Computadores - Aula 11
(ACH2055) Arquitetura de Computadores - Aula 11
 
OpenSolaris a Céu Aberto
OpenSolaris a Céu AbertoOpenSolaris a Céu Aberto
OpenSolaris a Céu Aberto
 
Msdos vol4
Msdos vol4Msdos vol4
Msdos vol4
 
Valdir Adorni - Infra and S.A.N Assessment Integration Sample
Valdir Adorni - Infra and S.A.N Assessment Integration SampleValdir Adorni - Infra and S.A.N Assessment Integration Sample
Valdir Adorni - Infra and S.A.N Assessment Integration Sample
 
Como reinstalar o windows sem formatar
Como reinstalar o windows sem formatarComo reinstalar o windows sem formatar
Como reinstalar o windows sem formatar
 
Sistemas Operacionais 13 gerenciamento de memória
Sistemas Operacionais  13   gerenciamento de memóriaSistemas Operacionais  13   gerenciamento de memória
Sistemas Operacionais 13 gerenciamento de memória
 
Tutorial de discos
Tutorial de discosTutorial de discos
Tutorial de discos
 
DESFRAGMENTAÇÃO
DESFRAGMENTAÇÃODESFRAGMENTAÇÃO
DESFRAGMENTAÇÃO
 
Postgres Big data
Postgres Big dataPostgres Big data
Postgres Big data
 

Mais de Norton Trevisan Roman

(ACH2044) Inteligência Artificial - Aula 24
(ACH2044) Inteligência Artificial - Aula 24(ACH2044) Inteligência Artificial - Aula 24
(ACH2044) Inteligência Artificial - Aula 24
Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 23
(ACH2044) Inteligência Artificial - Aula 23(ACH2044) Inteligência Artificial - Aula 23
(ACH2044) Inteligência Artificial - Aula 23
Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 22
(ACH2044) Inteligência Artificial - Aula 22(ACH2044) Inteligência Artificial - Aula 22
(ACH2044) Inteligência Artificial - Aula 22
Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 21
(ACH2044) Inteligência Artificial - Aula 21(ACH2044) Inteligência Artificial - Aula 21
(ACH2044) Inteligência Artificial - Aula 21
Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 20
(ACH2044) Inteligência Artificial - Aula 20(ACH2044) Inteligência Artificial - Aula 20
(ACH2044) Inteligência Artificial - Aula 20
Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 19
(ACH2044) Inteligência Artificial - Aula 19(ACH2044) Inteligência Artificial - Aula 19
(ACH2044) Inteligência Artificial - Aula 19
Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 18
(ACH2044) Inteligência Artificial - Aula 18(ACH2044) Inteligência Artificial - Aula 18
(ACH2044) Inteligência Artificial - Aula 18
Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 17
(ACH2044) Inteligência Artificial - Aula 17(ACH2044) Inteligência Artificial - Aula 17
(ACH2044) Inteligência Artificial - Aula 17
Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 16
(ACH2044) Inteligência Artificial - Aula 16(ACH2044) Inteligência Artificial - Aula 16
(ACH2044) Inteligência Artificial - Aula 16
Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 15
(ACH2044) Inteligência Artificial - Aula 15(ACH2044) Inteligência Artificial - Aula 15
(ACH2044) Inteligência Artificial - Aula 15
Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 14
(ACH2044) Inteligência Artificial - Aula 14(ACH2044) Inteligência Artificial - Aula 14
(ACH2044) Inteligência Artificial - Aula 14
Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 13
(ACH2044) Inteligência Artificial - Aula 13(ACH2044) Inteligência Artificial - Aula 13
(ACH2044) Inteligência Artificial - Aula 13
Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 12
(ACH2044) Inteligência Artificial - Aula 12(ACH2044) Inteligência Artificial - Aula 12
(ACH2044) Inteligência Artificial - Aula 12
Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 11
(ACH2044) Inteligência Artificial - Aula 11(ACH2044) Inteligência Artificial - Aula 11
(ACH2044) Inteligência Artificial - Aula 11
Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 10
(ACH2044) Inteligência Artificial - Aula 10(ACH2044) Inteligência Artificial - Aula 10
(ACH2044) Inteligência Artificial - Aula 10
Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 09
(ACH2044) Inteligência Artificial - Aula 09(ACH2044) Inteligência Artificial - Aula 09
(ACH2044) Inteligência Artificial - Aula 09
Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 08
(ACH2044) Inteligência Artificial - Aula 08(ACH2044) Inteligência Artificial - Aula 08
(ACH2044) Inteligência Artificial - Aula 08
Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 07
(ACH2044) Inteligência Artificial - Aula 07(ACH2044) Inteligência Artificial - Aula 07
(ACH2044) Inteligência Artificial - Aula 07
Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 06
(ACH2044) Inteligência Artificial - Aula 06(ACH2044) Inteligência Artificial - Aula 06
(ACH2044) Inteligência Artificial - Aula 06
Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 05
(ACH2044) Inteligência Artificial - Aula 05(ACH2044) Inteligência Artificial - Aula 05
(ACH2044) Inteligência Artificial - Aula 05
Norton Trevisan Roman
 

Mais de Norton Trevisan Roman (20)

(ACH2044) Inteligência Artificial - Aula 24
(ACH2044) Inteligência Artificial - Aula 24(ACH2044) Inteligência Artificial - Aula 24
(ACH2044) Inteligência Artificial - Aula 24
 
(ACH2044) Inteligência Artificial - Aula 23
(ACH2044) Inteligência Artificial - Aula 23(ACH2044) Inteligência Artificial - Aula 23
(ACH2044) Inteligência Artificial - Aula 23
 
(ACH2044) Inteligência Artificial - Aula 22
(ACH2044) Inteligência Artificial - Aula 22(ACH2044) Inteligência Artificial - Aula 22
(ACH2044) Inteligência Artificial - Aula 22
 
(ACH2044) Inteligência Artificial - Aula 21
(ACH2044) Inteligência Artificial - Aula 21(ACH2044) Inteligência Artificial - Aula 21
(ACH2044) Inteligência Artificial - Aula 21
 
(ACH2044) Inteligência Artificial - Aula 20
(ACH2044) Inteligência Artificial - Aula 20(ACH2044) Inteligência Artificial - Aula 20
(ACH2044) Inteligência Artificial - Aula 20
 
(ACH2044) Inteligência Artificial - Aula 19
(ACH2044) Inteligência Artificial - Aula 19(ACH2044) Inteligência Artificial - Aula 19
(ACH2044) Inteligência Artificial - Aula 19
 
(ACH2044) Inteligência Artificial - Aula 18
(ACH2044) Inteligência Artificial - Aula 18(ACH2044) Inteligência Artificial - Aula 18
(ACH2044) Inteligência Artificial - Aula 18
 
(ACH2044) Inteligência Artificial - Aula 17
(ACH2044) Inteligência Artificial - Aula 17(ACH2044) Inteligência Artificial - Aula 17
(ACH2044) Inteligência Artificial - Aula 17
 
(ACH2044) Inteligência Artificial - Aula 16
(ACH2044) Inteligência Artificial - Aula 16(ACH2044) Inteligência Artificial - Aula 16
(ACH2044) Inteligência Artificial - Aula 16
 
(ACH2044) Inteligência Artificial - Aula 15
(ACH2044) Inteligência Artificial - Aula 15(ACH2044) Inteligência Artificial - Aula 15
(ACH2044) Inteligência Artificial - Aula 15
 
(ACH2044) Inteligência Artificial - Aula 14
(ACH2044) Inteligência Artificial - Aula 14(ACH2044) Inteligência Artificial - Aula 14
(ACH2044) Inteligência Artificial - Aula 14
 
(ACH2044) Inteligência Artificial - Aula 13
(ACH2044) Inteligência Artificial - Aula 13(ACH2044) Inteligência Artificial - Aula 13
(ACH2044) Inteligência Artificial - Aula 13
 
(ACH2044) Inteligência Artificial - Aula 12
(ACH2044) Inteligência Artificial - Aula 12(ACH2044) Inteligência Artificial - Aula 12
(ACH2044) Inteligência Artificial - Aula 12
 
(ACH2044) Inteligência Artificial - Aula 11
(ACH2044) Inteligência Artificial - Aula 11(ACH2044) Inteligência Artificial - Aula 11
(ACH2044) Inteligência Artificial - Aula 11
 
(ACH2044) Inteligência Artificial - Aula 10
(ACH2044) Inteligência Artificial - Aula 10(ACH2044) Inteligência Artificial - Aula 10
(ACH2044) Inteligência Artificial - Aula 10
 
(ACH2044) Inteligência Artificial - Aula 09
(ACH2044) Inteligência Artificial - Aula 09(ACH2044) Inteligência Artificial - Aula 09
(ACH2044) Inteligência Artificial - Aula 09
 
(ACH2044) Inteligência Artificial - Aula 08
(ACH2044) Inteligência Artificial - Aula 08(ACH2044) Inteligência Artificial - Aula 08
(ACH2044) Inteligência Artificial - Aula 08
 
(ACH2044) Inteligência Artificial - Aula 07
(ACH2044) Inteligência Artificial - Aula 07(ACH2044) Inteligência Artificial - Aula 07
(ACH2044) Inteligência Artificial - Aula 07
 
(ACH2044) Inteligência Artificial - Aula 06
(ACH2044) Inteligência Artificial - Aula 06(ACH2044) Inteligência Artificial - Aula 06
(ACH2044) Inteligência Artificial - Aula 06
 
(ACH2044) Inteligência Artificial - Aula 05
(ACH2044) Inteligência Artificial - Aula 05(ACH2044) Inteligência Artificial - Aula 05
(ACH2044) Inteligência Artificial - Aula 05
 

Último

Introdução à Sociologia: caça-palavras na escola
Introdução à Sociologia: caça-palavras na escolaIntrodução à Sociologia: caça-palavras na escola
Introdução à Sociologia: caça-palavras na escola
Professor Belinaso
 
Treinamento NR 38 - CORPO PRINCIPAL da NORMA.pptx
Treinamento NR 38 - CORPO PRINCIPAL da NORMA.pptxTreinamento NR 38 - CORPO PRINCIPAL da NORMA.pptx
Treinamento NR 38 - CORPO PRINCIPAL da NORMA.pptx
MarcosPaulo777883
 
Testes + soluções_Mensagens12 )11111.pdf
Testes + soluções_Mensagens12 )11111.pdfTestes + soluções_Mensagens12 )11111.pdf
Testes + soluções_Mensagens12 )11111.pdf
lveiga112
 
O Mito da Caverna de Platão_ Uma Jornada em Busca da Verdade.pdf
O Mito da Caverna de Platão_ Uma Jornada em Busca da Verdade.pdfO Mito da Caverna de Platão_ Uma Jornada em Busca da Verdade.pdf
O Mito da Caverna de Platão_ Uma Jornada em Busca da Verdade.pdf
silvamelosilva300
 
Pintura Romana .pptx
Pintura Romana                     .pptxPintura Romana                     .pptx
Pintura Romana .pptx
TomasSousa7
 
Leonardo da Vinci .pptx
Leonardo da Vinci                  .pptxLeonardo da Vinci                  .pptx
Leonardo da Vinci .pptx
TomasSousa7
 
Slides Lição 12, CPAD, A Bendita Esperança, A Marca do Cristão, 2Tr24.pptx
Slides Lição 12, CPAD, A Bendita Esperança, A Marca do Cristão, 2Tr24.pptxSlides Lição 12, CPAD, A Bendita Esperança, A Marca do Cristão, 2Tr24.pptx
Slides Lição 12, CPAD, A Bendita Esperança, A Marca do Cristão, 2Tr24.pptx
LuizHenriquedeAlmeid6
 
Resumo de Química 10º ano Estudo exames nacionais
Resumo de Química 10º ano Estudo exames nacionaisResumo de Química 10º ano Estudo exames nacionais
Resumo de Química 10º ano Estudo exames nacionais
beatrizsilva525654
 
APRESENTAÇÃO PARA AULA DE URGÊNCIA E EMERGÊNCIA
APRESENTAÇÃO PARA AULA DE URGÊNCIA E EMERGÊNCIAAPRESENTAÇÃO PARA AULA DE URGÊNCIA E EMERGÊNCIA
APRESENTAÇÃO PARA AULA DE URGÊNCIA E EMERGÊNCIA
karinenobre2033
 
Vogais Ilustrados para alfabetização infantil
Vogais Ilustrados para alfabetização infantilVogais Ilustrados para alfabetização infantil
Vogais Ilustrados para alfabetização infantil
mamaeieby
 
Cartinhas de solidariedade e esperança.pptx
Cartinhas de solidariedade e esperança.pptxCartinhas de solidariedade e esperança.pptx
Cartinhas de solidariedade e esperança.pptx
Zenir Carmen Bez Trombeta
 
UFCD_10949_Lojas e-commerce no-code_índice.pdf
UFCD_10949_Lojas e-commerce no-code_índice.pdfUFCD_10949_Lojas e-commerce no-code_índice.pdf
UFCD_10949_Lojas e-commerce no-code_índice.pdf
Manuais Formação
 
Slide de biologia aula2 2 bimestre no ano de 2024
Slide de biologia aula2  2 bimestre no ano de 2024Slide de biologia aula2  2 bimestre no ano de 2024
Slide de biologia aula2 2 bimestre no ano de 2024
vinibolado86
 
A QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdf
A QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdfA QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdf
A QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdf
AurelianoFerreirades2
 
JOGO DA VELHA FESTA JUNINA - ARQUIVO GRATUITO.pdf
JOGO DA VELHA FESTA JUNINA - ARQUIVO GRATUITO.pdfJOGO DA VELHA FESTA JUNINA - ARQUIVO GRATUITO.pdf
JOGO DA VELHA FESTA JUNINA - ARQUIVO GRATUITO.pdf
ClaudiaMainoth
 
Atpcg PEI Rev Irineu GESTÃO DE SALA DE AULA.pptx
Atpcg PEI Rev Irineu GESTÃO DE SALA DE AULA.pptxAtpcg PEI Rev Irineu GESTÃO DE SALA DE AULA.pptx
Atpcg PEI Rev Irineu GESTÃO DE SALA DE AULA.pptx
joaresmonte3
 
Slides Lição 11, Central Gospel, Os Mortos Em CRISTO, 2Tr24.pptx
Slides Lição 11, Central Gospel, Os Mortos Em CRISTO, 2Tr24.pptxSlides Lição 11, Central Gospel, Os Mortos Em CRISTO, 2Tr24.pptx
Slides Lição 11, Central Gospel, Os Mortos Em CRISTO, 2Tr24.pptx
LuizHenriquedeAlmeid6
 
UFCD_4667_Preparação e confeção de molhos e fundos de cozinha_índice.pdf
UFCD_4667_Preparação e confeção de molhos e fundos de cozinha_índice.pdfUFCD_4667_Preparação e confeção de molhos e fundos de cozinha_índice.pdf
UFCD_4667_Preparação e confeção de molhos e fundos de cozinha_índice.pdf
Manuais Formação
 
Dicas de normas ABNT para trabalho de conclusão de curso
Dicas de normas ABNT para trabalho de conclusão de cursoDicas de normas ABNT para trabalho de conclusão de curso
Dicas de normas ABNT para trabalho de conclusão de curso
Simone399395
 
OS elementos de uma boa Redação para o ENEM.pdf
OS elementos de uma boa Redação para o ENEM.pdfOS elementos de uma boa Redação para o ENEM.pdf
OS elementos de uma boa Redação para o ENEM.pdf
AmiltonAparecido1
 

Último (20)

Introdução à Sociologia: caça-palavras na escola
Introdução à Sociologia: caça-palavras na escolaIntrodução à Sociologia: caça-palavras na escola
Introdução à Sociologia: caça-palavras na escola
 
Treinamento NR 38 - CORPO PRINCIPAL da NORMA.pptx
Treinamento NR 38 - CORPO PRINCIPAL da NORMA.pptxTreinamento NR 38 - CORPO PRINCIPAL da NORMA.pptx
Treinamento NR 38 - CORPO PRINCIPAL da NORMA.pptx
 
Testes + soluções_Mensagens12 )11111.pdf
Testes + soluções_Mensagens12 )11111.pdfTestes + soluções_Mensagens12 )11111.pdf
Testes + soluções_Mensagens12 )11111.pdf
 
O Mito da Caverna de Platão_ Uma Jornada em Busca da Verdade.pdf
O Mito da Caverna de Platão_ Uma Jornada em Busca da Verdade.pdfO Mito da Caverna de Platão_ Uma Jornada em Busca da Verdade.pdf
O Mito da Caverna de Platão_ Uma Jornada em Busca da Verdade.pdf
 
Pintura Romana .pptx
Pintura Romana                     .pptxPintura Romana                     .pptx
Pintura Romana .pptx
 
Leonardo da Vinci .pptx
Leonardo da Vinci                  .pptxLeonardo da Vinci                  .pptx
Leonardo da Vinci .pptx
 
Slides Lição 12, CPAD, A Bendita Esperança, A Marca do Cristão, 2Tr24.pptx
Slides Lição 12, CPAD, A Bendita Esperança, A Marca do Cristão, 2Tr24.pptxSlides Lição 12, CPAD, A Bendita Esperança, A Marca do Cristão, 2Tr24.pptx
Slides Lição 12, CPAD, A Bendita Esperança, A Marca do Cristão, 2Tr24.pptx
 
Resumo de Química 10º ano Estudo exames nacionais
Resumo de Química 10º ano Estudo exames nacionaisResumo de Química 10º ano Estudo exames nacionais
Resumo de Química 10º ano Estudo exames nacionais
 
APRESENTAÇÃO PARA AULA DE URGÊNCIA E EMERGÊNCIA
APRESENTAÇÃO PARA AULA DE URGÊNCIA E EMERGÊNCIAAPRESENTAÇÃO PARA AULA DE URGÊNCIA E EMERGÊNCIA
APRESENTAÇÃO PARA AULA DE URGÊNCIA E EMERGÊNCIA
 
Vogais Ilustrados para alfabetização infantil
Vogais Ilustrados para alfabetização infantilVogais Ilustrados para alfabetização infantil
Vogais Ilustrados para alfabetização infantil
 
Cartinhas de solidariedade e esperança.pptx
Cartinhas de solidariedade e esperança.pptxCartinhas de solidariedade e esperança.pptx
Cartinhas de solidariedade e esperança.pptx
 
UFCD_10949_Lojas e-commerce no-code_índice.pdf
UFCD_10949_Lojas e-commerce no-code_índice.pdfUFCD_10949_Lojas e-commerce no-code_índice.pdf
UFCD_10949_Lojas e-commerce no-code_índice.pdf
 
Slide de biologia aula2 2 bimestre no ano de 2024
Slide de biologia aula2  2 bimestre no ano de 2024Slide de biologia aula2  2 bimestre no ano de 2024
Slide de biologia aula2 2 bimestre no ano de 2024
 
A QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdf
A QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdfA QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdf
A QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdf
 
JOGO DA VELHA FESTA JUNINA - ARQUIVO GRATUITO.pdf
JOGO DA VELHA FESTA JUNINA - ARQUIVO GRATUITO.pdfJOGO DA VELHA FESTA JUNINA - ARQUIVO GRATUITO.pdf
JOGO DA VELHA FESTA JUNINA - ARQUIVO GRATUITO.pdf
 
Atpcg PEI Rev Irineu GESTÃO DE SALA DE AULA.pptx
Atpcg PEI Rev Irineu GESTÃO DE SALA DE AULA.pptxAtpcg PEI Rev Irineu GESTÃO DE SALA DE AULA.pptx
Atpcg PEI Rev Irineu GESTÃO DE SALA DE AULA.pptx
 
Slides Lição 11, Central Gospel, Os Mortos Em CRISTO, 2Tr24.pptx
Slides Lição 11, Central Gospel, Os Mortos Em CRISTO, 2Tr24.pptxSlides Lição 11, Central Gospel, Os Mortos Em CRISTO, 2Tr24.pptx
Slides Lição 11, Central Gospel, Os Mortos Em CRISTO, 2Tr24.pptx
 
UFCD_4667_Preparação e confeção de molhos e fundos de cozinha_índice.pdf
UFCD_4667_Preparação e confeção de molhos e fundos de cozinha_índice.pdfUFCD_4667_Preparação e confeção de molhos e fundos de cozinha_índice.pdf
UFCD_4667_Preparação e confeção de molhos e fundos de cozinha_índice.pdf
 
Dicas de normas ABNT para trabalho de conclusão de curso
Dicas de normas ABNT para trabalho de conclusão de cursoDicas de normas ABNT para trabalho de conclusão de curso
Dicas de normas ABNT para trabalho de conclusão de curso
 
OS elementos de uma boa Redação para o ENEM.pdf
OS elementos de uma boa Redação para o ENEM.pdfOS elementos de uma boa Redação para o ENEM.pdf
OS elementos de uma boa Redação para o ENEM.pdf
 

(ACH2044) Sistemas Operacionais - Aula 13

  • 1. Aula 13 – Mem´oria Virtual e Pagina¸c˜ao Norton Trevisan Roman 5 de outubro de 2017 Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 1 / 40
  • 2. Sobrecarga de Mem´oria O que acontece quando a mem´oria dispon´ıvel n˜ao ´e suficiente para todos os processos? Existem 2 m´etodos gerais para lidar com a sobrecarga de mem´oria: A troca de processos (swapping): Consiste em trazer, em sua totalidade, cada processo para a mem´oria, execut´a-lo durante um tempo e, ent˜ao, devolvˆe-lo ao disco Assim, processos ociosos acabam ficando no disco Mem´oria Virtual: Permite que programas possam ser executados mesmo que estejam parcialmente carregados na mem´oria principal Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 2 / 40
  • 3. Swapping Chaveamento de processos inteiros entre a mem´oria principal e o disco Swap-out Da mem´oria para uma regi˜ao especial do disco, chamada “´area de swap” Swap-in Do disco pra mem´oria Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 3 / 40
  • 4. Swapping Funcionamento: Inicialmente o processo A est´a na mem´oria Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 4 / 40
  • 5. Swapping Funcionamento: Inicialmente o processo A est´a na mem´oria Ent˜ao B e C s˜ao criados ou trazidos do disco (swap-in) Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 4 / 40
  • 6. Swapping Funcionamento: Inicialmente o processo A est´a na mem´oria Ent˜ao B e C s˜ao criados ou trazidos do disco (swap-in) Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 4 / 40
  • 7. Swapping Funcionamento: Inicialmente o processo A est´a na mem´oria Ent˜ao B e C s˜ao criados ou trazidos do disco (swap-in) Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 4 / 40
  • 8. Sobrecarga de Mem´oria – Swapping Funcionamento: D ´e iniciado. O processo A ´e devolvido ao disco (swap-out), dando espa¸co a D, que entra na mem´oria Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 5 / 40
  • 9. Sobrecarga de Mem´oria – Swapping Funcionamento: D ´e iniciado. O processo A ´e devolvido ao disco (swap-out), dando espa¸co a D, que entra na mem´oria Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 5 / 40
  • 10. Sobrecarga de Mem´oria – Swapping Funcionamento: D ´e iniciado. O processo A ´e devolvido ao disco (swap-out), dando espa¸co a D, que entra na mem´oria Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 5 / 40
  • 11. Sobrecarga de Mem´oria – Swapping Funcionamento: D ´e iniciado. O processo A ´e devolvido ao disco (swap-out), dando espa¸co a D, que entra na mem´oria A precisa rodar novamente. B ´e retirado, e A ´e novamente trazido do disco para a mem´oria Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 5 / 40
  • 12. Sobrecarga de Mem´oria – Swapping Funcionamento: D ´e iniciado. O processo A ´e devolvido ao disco (swap-out), dando espa¸co a D, que entra na mem´oria A precisa rodar novamente. B ´e retirado, e A ´e novamente trazido do disco para a mem´oria Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 5 / 40
  • 13. Sobrecarga de Mem´oria – Swapping Funcionamento: D ´e iniciado. O processo A ´e devolvido ao disco (swap-out), dando espa¸co a D, que entra na mem´oria A precisa rodar novamente. B ´e retirado, e A ´e novamente trazido do disco para a mem´oria Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 5 / 40
  • 14. Swapping Note que A agora est´a em outra por¸c˜ao da mem´oria Devemos realocar os endere¸cos em A via software durante a carga na mem´oria Realoca¸c˜ao est´atica Ou via hardware durante a execu¸c˜ao do programa Ex: via registradores base e limite (realoca¸c˜ao dinˆamica) Antes Depois Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 6 / 40
  • 15. Swapping Problema A opera¸c˜ao de swap pode criar muitos “buracos” na mem´oria – fragmenta¸c˜ao externa Pode ficar dif´ıcil de acomodar outro processo no buraco Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 7 / 40
  • 16. Swapping Problema A opera¸c˜ao de swap pode criar muitos “buracos” na mem´oria – fragmenta¸c˜ao externa Pode ficar dif´ıcil de acomodar outro processo no buraco Solu¸c˜ao: Compacta¸c˜ao de mem´oria: Mova todos os processos o mais para baixo poss´ıvel na mem´oria – haver´a um ´unico espa¸co vazio acima Consome bastante CPU Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 7 / 40
  • 17. Swapping Compacta¸c˜ao de Mem´oria – Ex: Qual o tempo para compactar 1GB? Se copia 4B (32b) em 20ns 1.073.741.824B × 20ns 4B = 5.368.709.120ns ou ≈ 5.4s Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 8 / 40
  • 18. Swapping – Aloca¸c˜ao de Mem´oria A aloca¸c˜ao de mem´oria muda `a medida em que Os processos chegam `a mem´oria Os processos deixam a mem´oria Quanto de mem´oria devemos alocar a um processo quando ele ´e criado ou trazido do disco? Se eles tiverem tamanho fixo, aloque o que ele precisa Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 9 / 40
  • 19. Swapping – Aloca¸c˜ao de Mem´oria Mas e se o segmento de dados crescer com o tempo? Ex: O processo aloca mem´oria dinamicamente Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 10 / 40
  • 20. Swapping – Aloca¸c˜ao de Mem´oria Mas e se o segmento de dados crescer com o tempo? Ex: O processo aloca mem´oria dinamicamente Se houver um “buraco” adjacente `a mem´oria atual do processo, ele pode ser alocado, e o processo cresce nesse buraco Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 10 / 40
  • 21. Swapping – Aloca¸c˜ao de Mem´oria E se ele for adjacente a outro processo? Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 11 / 40
  • 22. Swapping – Aloca¸c˜ao de Mem´oria E se ele for adjacente a outro processo? Ou o movemos a um buraco maior na mem´oria Ou um ou mais processos ter˜ao que ser transferidos para o disco, para criar esse buraco Se o processo n˜ao puder crescer na mem´oria e a ´area de troca de disco (swap) estiver cheia, ele pode ser suspenso at´e que algum espa¸co seja liberado Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 11 / 40
  • 23. Swapping – Aloca¸c˜ao de Mem´oria Alternativamente: Se o esperado ´e que a maioria dos processos cres¸ca durante a execu¸c˜ao, podemos alocar uma mem´oria extra quando o processo ´e carregado Reduz o overhead de ter que fazer swap ou movˆe-lo na mem´oria Se ainda assim o processo for para o disco, somente a mem´oria realmente em uso ´e gravada Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 12 / 40
  • 24. Swapping – Aloca¸c˜ao de Mem´oria Se os processos tiverem dois segmentos que crescem (dados e pilha, por exemplo), podemos usar a mesma ideia Nesse caso, a pilha cresce para baixo enquanto que o segmento de dados cresce para cima A por¸c˜ao de mem´oria entre essas duas ´areas pode ser usada por ambas Se ainda assim ficar sem espa¸co: Transfere o processo a outro local, faz swap, ou termina o processo Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 13 / 40
  • 25. Gerenciando a Mem´oria Quando se atribui mem´oria dinamicamente, o SO deve gerenci´a-la O gerenciamento pode ser feito por: Mapas de bits Listas ligadas Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 14 / 40
  • 26. Gerenciando a Mem´oria: Mapas de Bits Mem´oria ´e dividida em unidades de aloca¸c˜ao Pode conter at´e v´arios KB Cada unidade corresponde a um bit no bitmap: 0 → livre 1 → ocupado Tamanho do bitmap depende do tamanho da unidade e do tamanho da mem´oria unidades de aloca¸c˜ao pequenas → bitmap grande unidades de aloca¸c˜ao grandes → perda de espa¸co Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 15 / 40
  • 27. Gerenciando a Mem´oria: Mapas de Bits Vantagem: Ocupa um tamanho fixo na mem´oria, pois s´o depende do tamanho da mem´oria e da unidade de aloca¸c˜ao Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 16 / 40
  • 28. Mapas de Bits – Fragmenta¸c˜ao Interna Desperd´ıcio de mem´oria dentro da ´area alocada para um processo Ex.: Unidades de aloca¸c˜ao grandes e um processo cujo tamanho n˜ao ´e m´ultiplo da unidade de aloca¸c˜ao Externa: Desperd´ıcio fora da ´area alocada para um processo Ex: Mem´oria fragmentada ap´os v´arias trocas com o disco, sem que haja compacta¸c˜ao Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 17 / 40
  • 29. Gerenciando a Mem´oria: Listas Ligadas Mantˆem-se uma lista ligada de segmentos de mem´oria livres e alocados Cada segmento ou cont´em um processo ou ´e um buraco vazio entre dois processos Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 18 / 40
  • 30. Gerenciando a Mem´oria: Listas Ligadas A lista ordenada por endere¸co fica f´acil de ser atualizada: Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 19 / 40
  • 31. Gerenciando a Mem´oria: Listas Ligadas Com uma lista ordenada por endere¸co, como alocar mem´oria a um processo? Supondo que o gerenciador de mem´oria saiba quanta mem´oria deve ser alocada ao processo Primeiro encaixe (First fit): O gerenciador percorre a lista de segmentos, desde o in´ıcio, at´e que encontre um buraco grande o bastante Quebra o buraco em dois peda¸cos – um para o processo e um para a mem´oria ainda livre Varia¸c˜ao: inicie a busca a partir de onde parou na vez anterior (next fit – pr´oximo encaixe) Deve memorizar a ´ultima posi¸c˜ao em que encontrou mem´oria dispon´ıvel suficientemente grande Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 20 / 40
  • 32. Gerenciando a Mem´oria: Listas Ligadas Melhor encaixe (Best fit): Busca a lista inteira, at´e o fim, e toma o menor buraco que seja adequado N˜ao quebra buracos grandes que poderiam ser ´uteis mais tarde Problema: permite o surgimento de buracos min´usculos Pior encaixe (worst fit): Sempre tome o maior buraco dispon´ıvel Reduz a chance de buracos min´usculos e in´uteis Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 21 / 40
  • 33. Gerenciando a Mem´oria: Listas Ligadas Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 22 / 40
  • 34. Gerenciando a Mem´oria: Listas Ligadas Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 22 / 40
  • 35. Gerenciando a Mem´oria: Listas Ligadas Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 22 / 40
  • 36. Gerenciando a Mem´oria: Listas Ligadas Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 22 / 40
  • 37. Gerenciando a Mem´oria: Listas Ligadas Principais consequˆencias dos algoritmos: Melhor encaixe: Deixa o menor resto. Por´em, ap´os um longo processamento, poder´a deixar “buracos” muito pequenos para serem ´uteis Pior encaixe: Deixa o maior espa¸co ap´os cada aloca¸c˜ao, mas tende a espalhar as por¸c˜oes n˜ao utilizadas sobre ´areas n˜ao cont´ınuas de mem´oria e, portanto, pode tornar dif´ıcil alocar grandes processos Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 23 / 40
  • 38. Gerenciando a Mem´oria: Listas Ligadas Principais consequˆencias dos algoritmos: Primeiro encaixe: Tende a ser um meio termo entre a melhor e a pior escolha, com a caracter´ıstica adicional de fazer com que os espa¸cos vazios migrem para o final da mem´oria. Na pr´atica, uma boa escolha. Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 24 / 40
  • 39. Gerenciando a Mem´oria: Listas Ligadas Esses algoritmos poderiam ser mais r´apidos se segmentos de mem´oria em uso e livres fossem mantidos em listas separadas A busca se daria somente na lista de segmentos livres Se ordenada por tamanho, a lista de livres tornaria o best fit e worst fit mais r´apidos Problema Liberar mem´oria fica mais lento e complicado Deve-se remover da lista de segmentos em uso e incluir na de livres Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 25 / 40
  • 40. Gerenciando a Mem´oria: Listas Ligadas Encaixe r´apido (Quick fit) Mant´em listas separadas para alguns dos tamanhos de mem´oria livre mais comumente requisitados Uma para cada tamanho A busca por um segmento livre de um determinado tamanho ´e r´apida Tamanhos incomuns s˜ao incluidos em uma lista `a parte, ou na lista existente mais pr´oxima Problema quando processo ´e desalocado: Encontrar os vizinhos ao buraco que ele deixou, para uni˜ao Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 26 / 40
  • 41. Mem´oria Virtual Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 27 / 40
  • 42. Mem´oria Virtual Registradores base e limite criam a abstra¸c˜ao de espa¸co de endere¸co Swap trata do problema de n˜ao termos mem´oria suficiente para todos os processos Exige que haja mem´oria para cada processo individualmente E se um ´unico processo ocupar mais mem´oria que o dispon´ıvel (um bloatware)? Hoje em dia ´e comum necessidade de rodar programas grandes demais para a mem´oria Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 28 / 40
  • 43. Sobrecarga de Mem´oria – Mem´oria Virtual Que fazer? Mem´oria virtual (Fotheringham, 1961) M´etodo para aloca¸c˜ao de processos na mem´oria Continuamos “enganando” o processo, quanto a que endere¸co de mem´oria ele est´a realmente usando Usa duas t´ecnicas principais (normalmente juntas): Pagina¸c˜ao – blocos de tamanho fixo Segmenta¸c˜ao – blocos de tamanho vari´avel Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 29 / 40
  • 44. Mem´oria Virtual – Pagina¸c˜ao A ideia b´asica ´e que cada programa tenha seu pr´oprio espa¸co de endere¸camento, que ´e dividido em blocos de tamanho fixo chamados p´aginas Cada p´agina ´e uma s´erie cont´ıgua de endere¸cos, mapeada na mem´oria f´ısica Nem todas precisam estar na mem´oria f´ısica para executar o programa Quando o programa referencia um endere¸co em uma p´agina que est´a na mem´oria, o hardware executa o mapeamento necess´ario dinamicamente Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 30 / 40
  • 45. Mem´oria Virtual – Pagina¸c˜ao Quando o programa referencia um endere¸co em uma p´agina que n˜ao est´a na mem´oria A instru¸c˜ao falha – page fault (trap) O SO deve obter a p´agina que falta e reexecutar a instru¸c˜ao que falhou O processo recebe mem´oria f´ısica sempre que houver mem´oria dispon´ıvel Com multiprograma¸c˜ao, a mem´oria cont´em partes de diferentes programas Se um programa estiver esperando por outra p´agina, a CPU pode ser escalonada a outro processo Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 31 / 40
  • 46. Real × Virtual Os endere¸cos f´ısicos (reais) podem ser gerados de muitas maneiras: Mapeamento direto Usando registradores base e limite etc O endere¸co resultante ´e colocado diretamente no barramento de mem´oria Espa¸co de Endere¸camento F´ısico de um processo: Formado por todos os endere¸cos f´ısicos/reais aceitos pela mem´oria principal (RAM) Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 32 / 40
  • 47. Real × Virtual Endere¸cos gerados pelos programas s˜ao chamados de virtuais ou l´ogicos Na ausˆencia de mem´oria virtual, o endere¸co virtual ´e idˆentico ao f´ısico Com mem´oria virtual, ´e mapeado `a mem´oria f´ısica (n˜ao vai diretamente ao barramento) Espa¸co de Endere¸camento Virtual de um processo: Formado por todos os endere¸cos virtuais que esse processo pode gerar N˜ao necessariamente correspondem diretamente aos f´ısicos O espa¸co de endere¸co f´ısico de um processo pode ser n˜ao cont´ıguo Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 33 / 40
  • 48. Mem´oria Virtual – Pagina¸c˜ao Um processo em Mem´oria Virtual faz referˆencia a endere¸cos virtuais e n˜ao a endere¸co reais de RAM No momento da execu¸c˜ao de uma instru¸c˜ao, o endere¸co virtual ´e traduzido para um endere¸co real O barramento da RAM lida apenas endere¸cos reais Deve haver um mapeamento Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 34 / 40
  • 49. Mem´oria Virtual – Pagina¸c˜ao E como se d´a o mapeamento? Tabela de p´aginas: respons´avel por armazenar informa¸c˜oes sobre as p´aginas virtuais: argumento de entrada → n´umero da p´agina virtual argumento de sa´ıda (resultado) → n´umero da p´agina real (ou moldura de p´agina) Gerenciada pela MMU (j´a j´a...) As transferˆencias entre mem´oria e disco s˜ao sempre em p´aginas completas P´agina ´e a unidade b´asica para transferˆencia de informa¸c˜ao Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 35 / 40
  • 50. Mem´oria Virtual – Pagina¸c˜ao E quem faz esse mapeamento? Um hardware especial, presente na CPU → MMU (memory management unit) Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 36 / 40
  • 51. Mem´oria Virtual – Pagina¸c˜ao Ex: Computador que gera at´e 64K de endere¸cos virtuais (16 bits) Tem apenas 32KB de mem´oria f´ısica Programas de 64KB podem ser escritos, mas n˜ao carregados inteiramente na mem´oria Uma c´opia de 64KB deve estar no disco, para que partes possam ser carregadas `a mem´oria Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 37 / 40
  • 52. Mem´oria Virtual – Pagina¸c˜ao Divide-se o espa¸co de endere¸camento virtual em unidades de tamanho fixo – as p´aginas Nesse caso, P´aginas de 4KB 4096 bytes/endere¸cos (0-4095) As unidades correspondentes na mem´oria f´ısica s˜ao as page frames P´aginas e molduras de p´agina s˜ao em geral do mesmo tamanho Alternativamente, o SO pode mapear 2 ou mais molduras a uma ´unica p´agina Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 38 / 40
  • 53. Mem´oria Virtual – Pagina¸c˜ao Embora tenha 32KB, o sistema age como se tivesse 64KB Ex: MOV REG,5 A MMU identifica que ´e a primeira p´agina (5B acima da sua base → 0) Ela est´a mapeada `a terceira frame, que come¸ca em 8k = 8192 O endere¸co enviado ao barramento ´e 5 + 8192 = 8197 Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 39 / 40
  • 54. Mem´oria Virtual – Pagina¸c˜ao Como sabemos que p´aginas est˜ao na mem´oria efetivamente? Se temos apenas 8 frames, somente 8 p´aginas (das 16) est˜ao mapeadas Solu¸c˜ao: Bit de presente/ausente em cada entrada da tabela de p´aginas Identifica que p´aginas est˜ao fisicamente na mem´oria Norton Trevisan Roman Aula 13 – Mem´oria Virtual e Pagina¸c˜ao 5 de outubro de 2017 40 / 40