SlideShare ist ein Scribd-Unternehmen logo
1 von 11
Downloaden Sie, um offline zu lesen
1
1
ARQUITETURA DE
COMPUTADORES
Memória Virtual
2
Literatura
Patterson – cap 7
2
3
Introdução
Nosso computador tem 32 Mbytes de memória principal.
Como podemos:
Rodar programas que usam mais do que 32 Mbytes?
Dividir o programa em pedaços << 32 Mbytes;
Deixar que o programador se preocupe como trazer
cada pedaço para a memória no momento certo
(overlay)
Permitir que vários usuários usem o computador?
paga-se “alguém” para verificar cada programa e
realizar as tarefas acima, considerando os diversos
programas como um único programa imenso!
Executar vários programas ao mesmo tempo?
4
Memória Virtual
Memória principal (MP) semicondutora
capacidade limitada
tempo de acesso entre 10 e 20 ns
Memória secundária (MS) em disco
capacidade muito maior
tempo de latência entre 10 e 30 ms
• Se o programa não cabe inteiramente na MP, deve ser
trazido da MS (disco) em partes
• Alternativa: mecanismo automático de gerência de
memória, que traz automaticamente para a MP os
blocos de memória (do disco) necessários
• Memória virtual: usuário tem a impressão de
trabalhar com uma memória única, do tamanho da
memória secundária, mas com tempo de acesso
próximo do tempo da MP
3
5
Memória Virtual - conceito
• Memória Virtual : técnica que nos permite ver a memória
principal como uma cache de grande capacidade de
armazenamento
CPU
Memória
Disco
Cache
Memória virtual
6
Em que MV é diferente de caches?
Miss penalty é MUITO maior (milhões de ciclos)! Se não
está na memória está no disco!
logo:
Miss ratio precisa ser bem menor do que em cache
Necessário buscar blocos maiores em disco => alta
penalidade do miss
Princípio de localidade opera sobre blocos maiores de
dados ou instruções e leva a hit ratios bem mais
elevados
Mapeamento associativo das páginas
Misses são tratados por software (há tempo disponível e
algoritmos mais complexos)
técnica de escrita write-through não é uma opção. Usa-
se write-back
4
7
Terminologia
Mesma idéia da cache, mas com terminologia
diferente
cache MV
Bloco (linha) página
cache miss page fault
endereço endereço virtual (lógico)
índice endereço real (físico)
Endereço virtual (lógico): gerado pelo programa deve
endereçar todo espaço em disco
maior número de bits
Endereço real (físico): endereço na memória principal
menor número de bits
8
Tradução de endereço
Um endereço virtual (EV) é traduzido para um endereço
físico (EF) pela combinação de hardware e software
EV: Offset de páginaNúmero de página virtual
31 30 . . . 12 11 . . . 0
Offset de páginaNúmero de página físicaEF:
29 . . . 12 11 0
Tradução
O tamanho de página é 212 = 4KB.
O número de páginas físicas permitido na memória e 218.
A memória principal pode ter no máx 1GB (230).
O espaço de memória virtual possui 4GB.
5
9
Unidade de gerenciamento de
memória
Quem faz a tradução?
MMU (Memory Management Unit)
gerência da hierarquia de memória
proteção de memória
usualmente integrada dentro do
microprocessador
MMU deve fazer mapeamento do endereço
virtual para endereço real
sistema operacional usa a MMU
10
Propriedades da MV
Espaços de memória real e virtual divididos em blocos
chamados de páginas
páginas tem tipicamente de 4 Kbytes a 64Kbytes
Page fault ocorre quando a página virtual não está na
memória principal
Mapeamento completamente associativo (mais
eficiente) ajuda a diminuir alta penalidade dos page
faults
Como transformar endereçamento original do
programa no endereçamento real?
Page tables:
guardam a correspondência entre páginas virtuais e
páginas reais
permitem a translação (tradução) de endereços
6
11
Mecanismo de tradução de
endereço
Memória física
Armazenamento em disco
Num pág virtual Offset
Num pág física
Offset
Pág físicaV
1
1
1
1
1
1
0
1
0
1
0
Tabela de páginas
(na memória principal) End. de disco
12
Mecanismo de tradução de
endereço – outra visão
página linha
processador
endereço virtual
main mem.
translation
table
página linha
memória
principal
endereço real
hit
disk mem.
translation
table
page fault
(miss)
disco
mecanismo
de translação
de endereço
7
13
Mecanismo de tradução de
endereço - conceitos
Main memory translation table (MMTT)
implementada em hardware (em tese)
tamanho = nº de páginas na memória principal
Disk memory translation table (DMTT)
implementada em software, armazenada na memória
principal
tamanho = nº de páginas em disco
Algoritmo de substituição, em software, para
selecionar página da memória principal a ser
substituída em caso de page fault
Bom desempenho é garantido pelo princípio de
localidade
14
Tamanho de páginas
Página de pequeno tamanho:
tempo curto para transferência de página entre disco e
memória
muitas páginas de diferentes programas podem estar
residentes em memória
exige page tables muito grandes, que ocupam espaço em
memória
mais adequada para instruções
Página de grande tamanho:
page tables pequenas
tempo longo para transferência de página entre disco e
memória
mais adequada para dados (gráficos exigem páginas muito
grandes)
Solução de compromisso: permitir páginas de tamanhos
diversos para código e dados (Pentium permite
selecionar página de 4KB ou 4 MB)
varia muito
8
15
O único lugar onde o sucesso
vem antes do trabalho é no
dicionário.
Albert Einstein
16
Procure ser um homem de
valor, em vez de ser um
homem de sucesso.
Albert Einstein
9
17
Questões adicionais...
Investigue o conceito de TLB (Translation
Lookaside Buffer).
Por que TLBs são utilizadas em hierarquia de
memória?
Como funciona?
18
Translation Lookaside Buffer
Nº de páginas na memória secundária é muito grande
espaço virtual de 232 bytes, páginas de 4 Kbytes => 220
páginas
Supondo 4 bytes por entrada na tabela, 4 MBytes apenas para
a tabela de páginas!!!
tamanho excessivo da main memory translation table
Dois acessos a memórias a cada cache miss
conversão de endereço na MMTT + dado na memória principal
(slide 11)
Translation Look-Aside Buffer (TLB)
implementado em hardware
traduz endereços virtuais para endereços reais
só inclui páginas do working set
Working set = conjunto de páginas mais prováveis de serem
acessadas num dado momento, devido ao princípio de localidade
MAIN Memory Translation Table (MMTT)
implementada em software
10
19
Translation Lookaside Buffer
CPU
Trans-
lation
Cache
Main
Memory
VA PA miss
hit
data
Translation Lookaside Buffer (TLB) – uma pequena
cache que mantém os mapeamentos de endereços
usados recentemente, evitando fazer uma pesquisa na
tabela de tradução (tabela de páginas)
20
Translation Lookaside Buffer
página linha
TLB
página linha
hit
main mem.
translation
table
endereço virtual
miss
missdisk mem.
translation
table
ou
carga
TLB
endereço real
11
21
Translation Lookaside Buffer –
outra visão
Memória física
Armazenamento em disco
Num pág virtual
V
1
1
1
1
1
1
0
1
0
1
0
Tabela de páginas
(na memória principal) End. de disco
Pág física
1
1
0
1
TagV
TLB
22
Quem você é quando ninguém
está olhando?

Weitere ähnliche Inhalte

Was ist angesagt?

PostgreSQL Tuning: O elefante mais rápido que um leopardo
PostgreSQL Tuning: O elefante mais rápido que um leopardoPostgreSQL Tuning: O elefante mais rápido que um leopardo
PostgreSQL Tuning: O elefante mais rápido que um leopardoFabio Telles Rodriguez
 
Introdução ao Linux - aula 05
Introdução ao Linux - aula 05Introdução ao Linux - aula 05
Introdução ao Linux - aula 05Renan Aryel
 
Instalação Debian ETCH 4.0
Instalação Debian ETCH 4.0Instalação Debian ETCH 4.0
Instalação Debian ETCH 4.0silvio cesar
 
Economizando recursos com Terminais Burros em Software Livre: Uma solução viá...
Economizando recursos com Terminais Burros em Software Livre: Uma solução viá...Economizando recursos com Terminais Burros em Software Livre: Uma solução viá...
Economizando recursos com Terminais Burros em Software Livre: Uma solução viá...Luiz Guaraldo
 
Trabalho andre santos
Trabalho andre santosTrabalho andre santos
Trabalho andre santosAndre Santos
 
Como instalar o Windows Xp
Como instalar o Windows XpComo instalar o Windows Xp
Como instalar o Windows XpFilipa Tenente
 
(ACH2044) Sistemas Operacionais - Aula 15
(ACH2044) Sistemas Operacionais - Aula 15(ACH2044) Sistemas Operacionais - Aula 15
(ACH2044) Sistemas Operacionais - Aula 15Norton Trevisan Roman
 
Economizando Recursos com terminais Burros em Software Livre - Luiz Eduardo G...
Economizando Recursos com terminais Burros em Software Livre - Luiz Eduardo G...Economizando Recursos com terminais Burros em Software Livre - Luiz Eduardo G...
Economizando Recursos com terminais Burros em Software Livre - Luiz Eduardo G...Tchelinux
 

Was ist angesagt? (11)

PostgreSQL Tuning: O elefante mais rápido que um leopardo
PostgreSQL Tuning: O elefante mais rápido que um leopardoPostgreSQL Tuning: O elefante mais rápido que um leopardo
PostgreSQL Tuning: O elefante mais rápido que um leopardo
 
Curso de ftp
Curso de ftpCurso de ftp
Curso de ftp
 
Introdução ao Linux - aula 05
Introdução ao Linux - aula 05Introdução ao Linux - aula 05
Introdução ao Linux - aula 05
 
Projeto BD
Projeto BDProjeto BD
Projeto BD
 
Instalação Debian ETCH 4.0
Instalação Debian ETCH 4.0Instalação Debian ETCH 4.0
Instalação Debian ETCH 4.0
 
Economizando recursos com Terminais Burros em Software Livre: Uma solução viá...
Economizando recursos com Terminais Burros em Software Livre: Uma solução viá...Economizando recursos com Terminais Burros em Software Livre: Uma solução viá...
Economizando recursos com Terminais Burros em Software Livre: Uma solução viá...
 
Trabalho andre santos
Trabalho andre santosTrabalho andre santos
Trabalho andre santos
 
Como instalar o Windows Xp
Como instalar o Windows XpComo instalar o Windows Xp
Como instalar o Windows Xp
 
(ACH2044) Sistemas Operacionais - Aula 15
(ACH2044) Sistemas Operacionais - Aula 15(ACH2044) Sistemas Operacionais - Aula 15
(ACH2044) Sistemas Operacionais - Aula 15
 
DB2 bufferpool Pagefixing por Alvaro Salla
DB2 bufferpool Pagefixing  por Alvaro SallaDB2 bufferpool Pagefixing  por Alvaro Salla
DB2 bufferpool Pagefixing por Alvaro Salla
 
Economizando Recursos com terminais Burros em Software Livre - Luiz Eduardo G...
Economizando Recursos com terminais Burros em Software Livre - Luiz Eduardo G...Economizando Recursos com terminais Burros em Software Livre - Luiz Eduardo G...
Economizando Recursos com terminais Burros em Software Livre - Luiz Eduardo G...
 

Andere mochten auch

La formación on line2 con voz-vista
La formación on line2 con voz-vistaLa formación on line2 con voz-vista
La formación on line2 con voz-vistatozmolfer
 
Elena vaquero fernandez e4
Elena vaquero fernandez e4Elena vaquero fernandez e4
Elena vaquero fernandez e4helenadeutsch
 
Has the state govt done enough to ease the way for entrepreneurs
Has the state govt done enough to ease the way for entrepreneursHas the state govt done enough to ease the way for entrepreneurs
Has the state govt done enough to ease the way for entrepreneursJason Fernandes
 
Open hardware - Primeros pasos con Arduino
Open hardware - Primeros pasos con ArduinoOpen hardware - Primeros pasos con Arduino
Open hardware - Primeros pasos con ArduinoAlberto Labarga
 
Perfil De Egreso
Perfil De EgresoPerfil De Egreso
Perfil De Egresomrioseco
 
Experiencias de Participación en Nudo Estoril
Experiencias de Participación en Nudo EstorilExperiencias de Participación en Nudo Estoril
Experiencias de Participación en Nudo EstorilVisnja Tomicic
 
PresentacióN Puente Alto Seminario Tic Municipalidades
PresentacióN Puente Alto   Seminario Tic MunicipalidadesPresentacióN Puente Alto   Seminario Tic Municipalidades
PresentacióN Puente Alto Seminario Tic MunicipalidadesVisnja Tomicic
 
Abstract: Linking Nitrogen Pollution in Estuaries to Rocky Shores: A stable I...
Abstract: Linking Nitrogen Pollution in Estuaries to Rocky Shores: A stable I...Abstract: Linking Nitrogen Pollution in Estuaries to Rocky Shores: A stable I...
Abstract: Linking Nitrogen Pollution in Estuaries to Rocky Shores: A stable I...MACE Lab
 
Lx7007 pro igc manual v2.02 (german)
Lx7007 pro igc manual v2.02 (german)Lx7007 pro igc manual v2.02 (german)
Lx7007 pro igc manual v2.02 (german)televe
 

Andere mochten auch (14)

La formación on line2 con voz-vista
La formación on line2 con voz-vistaLa formación on line2 con voz-vista
La formación on line2 con voz-vista
 
1era sesión
1era sesión 1era sesión
1era sesión
 
Elena vaquero fernandez e4
Elena vaquero fernandez e4Elena vaquero fernandez e4
Elena vaquero fernandez e4
 
Has the state govt done enough to ease the way for entrepreneurs
Has the state govt done enough to ease the way for entrepreneursHas the state govt done enough to ease the way for entrepreneurs
Has the state govt done enough to ease the way for entrepreneurs
 
Open hardware - Primeros pasos con Arduino
Open hardware - Primeros pasos con ArduinoOpen hardware - Primeros pasos con Arduino
Open hardware - Primeros pasos con Arduino
 
Perfil De Egreso
Perfil De EgresoPerfil De Egreso
Perfil De Egreso
 
Experiencias de Participación en Nudo Estoril
Experiencias de Participación en Nudo EstorilExperiencias de Participación en Nudo Estoril
Experiencias de Participación en Nudo Estoril
 
Pressekontakt
PressekontaktPressekontakt
Pressekontakt
 
St11
St11St11
St11
 
PresentacióN Puente Alto Seminario Tic Municipalidades
PresentacióN Puente Alto   Seminario Tic MunicipalidadesPresentacióN Puente Alto   Seminario Tic Municipalidades
PresentacióN Puente Alto Seminario Tic Municipalidades
 
WAEL ARABIC
WAEL ARABICWAEL ARABIC
WAEL ARABIC
 
Abstract: Linking Nitrogen Pollution in Estuaries to Rocky Shores: A stable I...
Abstract: Linking Nitrogen Pollution in Estuaries to Rocky Shores: A stable I...Abstract: Linking Nitrogen Pollution in Estuaries to Rocky Shores: A stable I...
Abstract: Linking Nitrogen Pollution in Estuaries to Rocky Shores: A stable I...
 
Pressekonferenz
PressekonferenzPressekonferenz
Pressekonferenz
 
Lx7007 pro igc manual v2.02 (german)
Lx7007 pro igc manual v2.02 (german)Lx7007 pro igc manual v2.02 (german)
Lx7007 pro igc manual v2.02 (german)
 

Ähnlich wie Memória Virtual - Como Programas Usam Mais Espaço do que a Memória Principal

Amostra Resolucao da Prova Sefaz 2007 Prof Jaime
Amostra   Resolucao da Prova Sefaz 2007   Prof JaimeAmostra   Resolucao da Prova Sefaz 2007   Prof Jaime
Amostra Resolucao da Prova Sefaz 2007 Prof JaimeWalter Cunha
 
Sistemas operacionais memória no linux
Sistemas operacionais   memória no linuxSistemas operacionais   memória no linux
Sistemas operacionais memória no linuxCarlos Melo
 
Gerência de Memória: Memória Principal
Gerência de Memória: Memória PrincipalGerência de Memória: Memória Principal
Gerência de Memória: Memória PrincipalAlexandre Duarte
 
Aula 4 de Arquitetura de Computadores
Aula 4 de Arquitetura de ComputadoresAula 4 de Arquitetura de Computadores
Aula 4 de Arquitetura de ComputadoresMarco Silva
 
Memória Virtual - Aspectos Básicos
Memória Virtual - Aspectos BásicosMemória Virtual - Aspectos Básicos
Memória Virtual - Aspectos Básicosblumenschein
 
O interior do computador
O interior do computadorO interior do computador
O interior do computadorramosbatista
 
Gerenciamento de Memoria
Gerenciamento de MemoriaGerenciamento de Memoria
Gerenciamento de Memoriaaudineisilva1
 
Memoria Virtual - Gerenciamento
Memoria Virtual - GerenciamentoMemoria Virtual - Gerenciamento
Memoria Virtual - GerenciamentoErichBraganca
 
Gerencia de memoria
Gerencia de memoriaGerencia de memoria
Gerencia de memoria37193694
 
Sistemas Operacionais
Sistemas OperacionaisSistemas Operacionais
Sistemas OperacionaisBia Vieira
 
Gerenciamento de memória cap 03 (ii unidade)
Gerenciamento de memória cap 03 (ii unidade)Gerenciamento de memória cap 03 (ii unidade)
Gerenciamento de memória cap 03 (ii unidade)Faculdade Mater Christi
 
Memoria cache princípio da localidade
Memoria cache   princípio da localidadeMemoria cache   princípio da localidade
Memoria cache princípio da localidadeClaudia Costa
 
Gerencia de Memoria Virtual
Gerencia de Memoria VirtualGerencia de Memoria Virtual
Gerencia de Memoria VirtualGabriela Almeida
 

Ähnlich wie Memória Virtual - Como Programas Usam Mais Espaço do que a Memória Principal (20)

Amostra Resolucao da Prova Sefaz 2007 Prof Jaime
Amostra   Resolucao da Prova Sefaz 2007   Prof JaimeAmostra   Resolucao da Prova Sefaz 2007   Prof Jaime
Amostra Resolucao da Prova Sefaz 2007 Prof Jaime
 
Sistemas operacionais memória no linux
Sistemas operacionais   memória no linuxSistemas operacionais   memória no linux
Sistemas operacionais memória no linux
 
Gerência de Memória: Memória Principal
Gerência de Memória: Memória PrincipalGerência de Memória: Memória Principal
Gerência de Memória: Memória Principal
 
Aula 4 de Arquitetura de Computadores
Aula 4 de Arquitetura de ComputadoresAula 4 de Arquitetura de Computadores
Aula 4 de Arquitetura de Computadores
 
Memória Virtual - Aspectos Básicos
Memória Virtual - Aspectos BásicosMemória Virtual - Aspectos Básicos
Memória Virtual - Aspectos Básicos
 
O interior do computador
O interior do computadorO interior do computador
O interior do computador
 
Gerenciamento de Memoria
Gerenciamento de MemoriaGerenciamento de Memoria
Gerenciamento de Memoria
 
Gerenciamento memoria
Gerenciamento memoriaGerenciamento memoria
Gerenciamento memoria
 
Memória virtual
Memória virtualMemória virtual
Memória virtual
 
Memoria Virtual - Gerenciamento
Memoria Virtual - GerenciamentoMemoria Virtual - Gerenciamento
Memoria Virtual - Gerenciamento
 
Gestao de Memoria_SLIDE.pptx
Gestao de Memoria_SLIDE.pptxGestao de Memoria_SLIDE.pptx
Gestao de Memoria_SLIDE.pptx
 
RAM
RAMRAM
RAM
 
Htm trabalho
Htm trabalhoHtm trabalho
Htm trabalho
 
Hardware
HardwareHardware
Hardware
 
Gerencia de memoria
Gerencia de memoriaGerencia de memoria
Gerencia de memoria
 
Hardware memória principal
Hardware  memória  principalHardware  memória  principal
Hardware memória principal
 
Sistemas Operacionais
Sistemas OperacionaisSistemas Operacionais
Sistemas Operacionais
 
Gerenciamento de memória cap 03 (ii unidade)
Gerenciamento de memória cap 03 (ii unidade)Gerenciamento de memória cap 03 (ii unidade)
Gerenciamento de memória cap 03 (ii unidade)
 
Memoria cache princípio da localidade
Memoria cache   princípio da localidadeMemoria cache   princípio da localidade
Memoria cache princípio da localidade
 
Gerencia de Memoria Virtual
Gerencia de Memoria VirtualGerencia de Memoria Virtual
Gerencia de Memoria Virtual
 

Kürzlich hochgeladen

Estatística aplicada à experimentação animal
Estatística aplicada à experimentação animalEstatística aplicada à experimentação animal
Estatística aplicada à experimentação animalleandroladesenvolvim
 
FISIOLOGIA DA REPRODUÇÃO. matéria de fisiologia animal
FISIOLOGIA DA REPRODUÇÃO. matéria de fisiologia animalFISIOLOGIA DA REPRODUÇÃO. matéria de fisiologia animal
FISIOLOGIA DA REPRODUÇÃO. matéria de fisiologia animalPauloHenrique154965
 
Aula de classificação de rolamentos norma DIN
Aula de classificação de rolamentos norma DINAula de classificação de rolamentos norma DIN
Aula de classificação de rolamentos norma DINFabioFranca22
 
Eletricista instalador - Senai Almirante Tamandaré
Eletricista instalador - Senai Almirante TamandaréEletricista instalador - Senai Almirante Tamandaré
Eletricista instalador - Senai Almirante TamandaréGuilhermeLucio9
 
LEAN SIX SIGMA - Garantia da qualidade e segurança
LEAN SIX SIGMA - Garantia da qualidade e segurançaLEAN SIX SIGMA - Garantia da qualidade e segurança
LEAN SIX SIGMA - Garantia da qualidade e segurançaGuilhermeLucio9
 
Livro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdf
Livro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdfLivro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdf
Livro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdfSamuel Ramos
 
MODELO LAUDO AVALIAÇÃO MÁQUINAS EQUIPAM
MODELO LAUDO AVALIAÇÃO MÁQUINAS  EQUIPAMMODELO LAUDO AVALIAÇÃO MÁQUINAS  EQUIPAM
MODELO LAUDO AVALIAÇÃO MÁQUINAS EQUIPAMCassio Rodrigo
 
A Importância dos EPI's no trabalho e no dia a dia laboral
A Importância dos EPI's no trabalho e no dia a dia laboralA Importância dos EPI's no trabalho e no dia a dia laboral
A Importância dos EPI's no trabalho e no dia a dia laboralFranciscaArrudadaSil
 
PLANO DE EMERGÊNCIA E COMBATE A INCENDIO.pdf
PLANO DE EMERGÊNCIA E COMBATE A INCENDIO.pdfPLANO DE EMERGÊNCIA E COMBATE A INCENDIO.pdf
PLANO DE EMERGÊNCIA E COMBATE A INCENDIO.pdfAroldoMenezes1
 
Tecnólogo em Mecatrônica - Universidade Anhanguera
Tecnólogo em Mecatrônica - Universidade AnhangueraTecnólogo em Mecatrônica - Universidade Anhanguera
Tecnólogo em Mecatrônica - Universidade AnhangueraGuilhermeLucio9
 

Kürzlich hochgeladen (10)

Estatística aplicada à experimentação animal
Estatística aplicada à experimentação animalEstatística aplicada à experimentação animal
Estatística aplicada à experimentação animal
 
FISIOLOGIA DA REPRODUÇÃO. matéria de fisiologia animal
FISIOLOGIA DA REPRODUÇÃO. matéria de fisiologia animalFISIOLOGIA DA REPRODUÇÃO. matéria de fisiologia animal
FISIOLOGIA DA REPRODUÇÃO. matéria de fisiologia animal
 
Aula de classificação de rolamentos norma DIN
Aula de classificação de rolamentos norma DINAula de classificação de rolamentos norma DIN
Aula de classificação de rolamentos norma DIN
 
Eletricista instalador - Senai Almirante Tamandaré
Eletricista instalador - Senai Almirante TamandaréEletricista instalador - Senai Almirante Tamandaré
Eletricista instalador - Senai Almirante Tamandaré
 
LEAN SIX SIGMA - Garantia da qualidade e segurança
LEAN SIX SIGMA - Garantia da qualidade e segurançaLEAN SIX SIGMA - Garantia da qualidade e segurança
LEAN SIX SIGMA - Garantia da qualidade e segurança
 
Livro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdf
Livro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdfLivro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdf
Livro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdf
 
MODELO LAUDO AVALIAÇÃO MÁQUINAS EQUIPAM
MODELO LAUDO AVALIAÇÃO MÁQUINAS  EQUIPAMMODELO LAUDO AVALIAÇÃO MÁQUINAS  EQUIPAM
MODELO LAUDO AVALIAÇÃO MÁQUINAS EQUIPAM
 
A Importância dos EPI's no trabalho e no dia a dia laboral
A Importância dos EPI's no trabalho e no dia a dia laboralA Importância dos EPI's no trabalho e no dia a dia laboral
A Importância dos EPI's no trabalho e no dia a dia laboral
 
PLANO DE EMERGÊNCIA E COMBATE A INCENDIO.pdf
PLANO DE EMERGÊNCIA E COMBATE A INCENDIO.pdfPLANO DE EMERGÊNCIA E COMBATE A INCENDIO.pdf
PLANO DE EMERGÊNCIA E COMBATE A INCENDIO.pdf
 
Tecnólogo em Mecatrônica - Universidade Anhanguera
Tecnólogo em Mecatrônica - Universidade AnhangueraTecnólogo em Mecatrônica - Universidade Anhanguera
Tecnólogo em Mecatrônica - Universidade Anhanguera
 

Memória Virtual - Como Programas Usam Mais Espaço do que a Memória Principal

  • 2. 2 3 Introdução Nosso computador tem 32 Mbytes de memória principal. Como podemos: Rodar programas que usam mais do que 32 Mbytes? Dividir o programa em pedaços << 32 Mbytes; Deixar que o programador se preocupe como trazer cada pedaço para a memória no momento certo (overlay) Permitir que vários usuários usem o computador? paga-se “alguém” para verificar cada programa e realizar as tarefas acima, considerando os diversos programas como um único programa imenso! Executar vários programas ao mesmo tempo? 4 Memória Virtual Memória principal (MP) semicondutora capacidade limitada tempo de acesso entre 10 e 20 ns Memória secundária (MS) em disco capacidade muito maior tempo de latência entre 10 e 30 ms • Se o programa não cabe inteiramente na MP, deve ser trazido da MS (disco) em partes • Alternativa: mecanismo automático de gerência de memória, que traz automaticamente para a MP os blocos de memória (do disco) necessários • Memória virtual: usuário tem a impressão de trabalhar com uma memória única, do tamanho da memória secundária, mas com tempo de acesso próximo do tempo da MP
  • 3. 3 5 Memória Virtual - conceito • Memória Virtual : técnica que nos permite ver a memória principal como uma cache de grande capacidade de armazenamento CPU Memória Disco Cache Memória virtual 6 Em que MV é diferente de caches? Miss penalty é MUITO maior (milhões de ciclos)! Se não está na memória está no disco! logo: Miss ratio precisa ser bem menor do que em cache Necessário buscar blocos maiores em disco => alta penalidade do miss Princípio de localidade opera sobre blocos maiores de dados ou instruções e leva a hit ratios bem mais elevados Mapeamento associativo das páginas Misses são tratados por software (há tempo disponível e algoritmos mais complexos) técnica de escrita write-through não é uma opção. Usa- se write-back
  • 4. 4 7 Terminologia Mesma idéia da cache, mas com terminologia diferente cache MV Bloco (linha) página cache miss page fault endereço endereço virtual (lógico) índice endereço real (físico) Endereço virtual (lógico): gerado pelo programa deve endereçar todo espaço em disco maior número de bits Endereço real (físico): endereço na memória principal menor número de bits 8 Tradução de endereço Um endereço virtual (EV) é traduzido para um endereço físico (EF) pela combinação de hardware e software EV: Offset de páginaNúmero de página virtual 31 30 . . . 12 11 . . . 0 Offset de páginaNúmero de página físicaEF: 29 . . . 12 11 0 Tradução O tamanho de página é 212 = 4KB. O número de páginas físicas permitido na memória e 218. A memória principal pode ter no máx 1GB (230). O espaço de memória virtual possui 4GB.
  • 5. 5 9 Unidade de gerenciamento de memória Quem faz a tradução? MMU (Memory Management Unit) gerência da hierarquia de memória proteção de memória usualmente integrada dentro do microprocessador MMU deve fazer mapeamento do endereço virtual para endereço real sistema operacional usa a MMU 10 Propriedades da MV Espaços de memória real e virtual divididos em blocos chamados de páginas páginas tem tipicamente de 4 Kbytes a 64Kbytes Page fault ocorre quando a página virtual não está na memória principal Mapeamento completamente associativo (mais eficiente) ajuda a diminuir alta penalidade dos page faults Como transformar endereçamento original do programa no endereçamento real? Page tables: guardam a correspondência entre páginas virtuais e páginas reais permitem a translação (tradução) de endereços
  • 6. 6 11 Mecanismo de tradução de endereço Memória física Armazenamento em disco Num pág virtual Offset Num pág física Offset Pág físicaV 1 1 1 1 1 1 0 1 0 1 0 Tabela de páginas (na memória principal) End. de disco 12 Mecanismo de tradução de endereço – outra visão página linha processador endereço virtual main mem. translation table página linha memória principal endereço real hit disk mem. translation table page fault (miss) disco mecanismo de translação de endereço
  • 7. 7 13 Mecanismo de tradução de endereço - conceitos Main memory translation table (MMTT) implementada em hardware (em tese) tamanho = nº de páginas na memória principal Disk memory translation table (DMTT) implementada em software, armazenada na memória principal tamanho = nº de páginas em disco Algoritmo de substituição, em software, para selecionar página da memória principal a ser substituída em caso de page fault Bom desempenho é garantido pelo princípio de localidade 14 Tamanho de páginas Página de pequeno tamanho: tempo curto para transferência de página entre disco e memória muitas páginas de diferentes programas podem estar residentes em memória exige page tables muito grandes, que ocupam espaço em memória mais adequada para instruções Página de grande tamanho: page tables pequenas tempo longo para transferência de página entre disco e memória mais adequada para dados (gráficos exigem páginas muito grandes) Solução de compromisso: permitir páginas de tamanhos diversos para código e dados (Pentium permite selecionar página de 4KB ou 4 MB) varia muito
  • 8. 8 15 O único lugar onde o sucesso vem antes do trabalho é no dicionário. Albert Einstein 16 Procure ser um homem de valor, em vez de ser um homem de sucesso. Albert Einstein
  • 9. 9 17 Questões adicionais... Investigue o conceito de TLB (Translation Lookaside Buffer). Por que TLBs são utilizadas em hierarquia de memória? Como funciona? 18 Translation Lookaside Buffer Nº de páginas na memória secundária é muito grande espaço virtual de 232 bytes, páginas de 4 Kbytes => 220 páginas Supondo 4 bytes por entrada na tabela, 4 MBytes apenas para a tabela de páginas!!! tamanho excessivo da main memory translation table Dois acessos a memórias a cada cache miss conversão de endereço na MMTT + dado na memória principal (slide 11) Translation Look-Aside Buffer (TLB) implementado em hardware traduz endereços virtuais para endereços reais só inclui páginas do working set Working set = conjunto de páginas mais prováveis de serem acessadas num dado momento, devido ao princípio de localidade MAIN Memory Translation Table (MMTT) implementada em software
  • 10. 10 19 Translation Lookaside Buffer CPU Trans- lation Cache Main Memory VA PA miss hit data Translation Lookaside Buffer (TLB) – uma pequena cache que mantém os mapeamentos de endereços usados recentemente, evitando fazer uma pesquisa na tabela de tradução (tabela de páginas) 20 Translation Lookaside Buffer página linha TLB página linha hit main mem. translation table endereço virtual miss missdisk mem. translation table ou carga TLB endereço real
  • 11. 11 21 Translation Lookaside Buffer – outra visão Memória física Armazenamento em disco Num pág virtual V 1 1 1 1 1 1 0 1 0 1 0 Tabela de páginas (na memória principal) End. de disco Pág física 1 1 0 1 TagV TLB 22 Quem você é quando ninguém está olhando?