Infra-estrutura Hardware
Infra-estrutura Hardware Memória Virtual Infra-estrutura Hardware
Infra-estrutura Hardware Roteiro da Aula Espaço de Endereçamento e Memória Virtual Paginação Conceitos UGM Segmentação Segmentação paginada Grandes memórias virtuais Tabela invertida Tabela hierarquizada Acelerando a tradução de endereços TLB Memória Virtual do MIPS Infra-estrutura Hardware
Infra-estrutura Hardware Hierarquia de memória chip processador velocidade cache custo memória principal memória secundária Infra-estrutura Hardware
Infra-estrutura Hardware Memória Virtual chip processador cache Espaço de endereçamento memória principal memória secundária Infra-estrutura Hardware
Infra-estrutura Hardware Paginação V i r t u a l a d d r e s s e s P h y s i c a l a d d r e s s e s A d d r e s s t r a n s l a t i o n D i s k a d d r e s s e s Infra-estrutura Hardware
Infra-estrutura Hardware Paginação Infra-estrutura Hardware
Infra-estrutura Hardware Paginação P h y s i c a l m e o r D k t g V d 1 b u p n Infra-estrutura Hardware
Infra-estrutura Hardware Paginação Página virtual deslc memória principal tabela de páginas bp nr. pág. real Página física desl Infra-estrutura Hardware
Infra-estrutura Hardware Paginação Infra-estrutura Hardware
Unidade de Gerenciamento de Memória CPU memória dados UGM EV EF testes de proteção localização da falha identificação da falha Infra-estrutura Hardware
Infra-estrutura Hardware Paginação Preço da penalidade Infra-estrutura Hardware
Infra-estrutura Hardware Paginação Localização da página Associativa Política de escrita Write-back Falta de páginas tratamento por software Infra-estrutura Hardware
Infra-estrutura Hardware Segmentação Tabela de Símbolo Texto Constantes Árvore Aná- lise Sintática Pilha Seg 0 Seg 1 Seg 2 Seg 3 Seg 4 Infra-estrutura Hardware
Infra-estrutura Hardware Segmentação num. segmento deslc + end. físico memória principal tabela de segmentos bp tam. end.segm Infra-estrutura Hardware
Infra-estrutura Hardware Segmentação Paginada ns np desl. tabela de segmento tabela de página ns memória principal np dado desl Infra-estrutura Hardware
Infra-estrutura Hardware Segmentação paginada Falta do Segmento Falta de Página Falta de Proteção Falta de Limite chamada do sistema operacional chaveamento de contexto Infra-estrutura Hardware
Infra-estrutura Hardware Tabela de páginas Qual o tamanho da tabela de páginas para o sistema abaixo ? Endereço virtual = 32 bits Páginas de 4 Kbytes Entrada na tabela de páginas = 4 Bytes Infra-estrutura Hardware
Infra-estrutura Hardware Memória Virtual Grandes Memórias Virtuais Grandes Tabelas de Páginas Grandes Tabelas de Segmentos Como considerar tabela de páginas tão grandes? Infra-estrutura Hardware
Tabela de páginas sob demanda Alocar área pré-definida na memória e permitir crescimento em uma direção como gerenciar área de programas/dados + pilha? Alocar duas áreas pré-definidas permitindo crescimento da tabela em duas direções MIPS Infra-estrutura Hardware
Tabela de páginas sob demanda Paginar tabela de páginas área do sistema operacional algumas páginas são carregadas inicialmente Falta de página ou de Tabela de página Chamada do sistema operacional Infra-estrutura Hardware
Tabela de Página Invertida Vp Dp link Vp Rp hash Rp Dp Infra-estrutura Hardware
Infra-estrutura Hardware Tabela hierarquizada Contexto Região Página Segmento Infra-estrutura Hardware
Tabela de Página Hieraquizada contextos e tabela de páginas e e e e d e tabela de segmentos e tabela de regiões e
Endereço Físico e Virtual num. pag. física desloc. endereço virtual i1 i2 i3 desloc Infra-estrutura Hardware
Memória Virtual em Máquinas de 32 e 64 bits Grandes Memórias Virtuais Grandes Tabelas de Páginas Grandes Tabelas de Segmentos Tabela de Páginas Invertidas (Power) Tabelas Hierarquizadas (Sparc, Alpha, Motorola) Infra-estrutura Hardware
Infra-estrutura Hardware Acelerando a tradução... técnica tradicional: mapeamento direto Onde guardar a tabela de tradução? memória principal TLB Tabela de páginas invertidas nr. blocos da mem. virtual nr. de entradas na tabela = Infra-estrutura Hardware
TLB (Translation lookaside buffers) V a l i d 1 P g e t b h y s c p r T L B u n m P h y s i c a l m e m o r y a g e o r d i s k a d d r e s s D i s k s t o r a g e Infra-estrutura Hardware
Infra-estrutura Hardware TLB Tamanho 32 a 4.096 entradas Tamanho entrada: 1-2 entrada da tabela (4-8 bytes) Tempo de acesso: 0.5 a 1 ciclo Taxa de faltas: 0.01 - 1% Infra-estrutura Hardware
TLB (Translation lookaside buffers) Grau de Associatividade TLB pequena cache associativa Substituição randomica RWX ns np rp dp Infra-estrutura Hardware
Infra-estrutura Hardware TLB - Exemplo Quantos bits possui a TLB para o sistema abaixo? Endereço virtual: 32 bits Memória física: 16 M bytes Páginas de 4 Kbytes TLB associativa com 64 entradas contendo 1 bit de validade e 1 dirty bit adicionais Infra-estrutura Hardware
Infra-estrutura Hardware V a l i d T g D t P e o f s r u p n m b h y c 1 2 6 4 C x 3 B 3 1 3 2 9 1 5 1 4 1 3 1 2 1 1 1 9 8 3 2 1 r t y T a g T L B T L B h i t MIPS P h y s i c a l p a g e n u m b e r P h y s i c a l a d d r e s s P h y s i c a l a d d r e s s t a g Infra-estrutura Hardware
Infra-estrutura Hardware MIPS Infra-estrutura Hardware
Infra-estrutura Hardware Sistema Hierárquico TLB, Memória e Cache Infra-estrutura Hardware
Infra-estrutura Hardware Resumindo Onde um bloco/pag. pode ser colocado? Cache: mapeamento direto associativa por conjunto associativa Memória virtual: Infra-estrutura Hardware
Infra-estrutura Hardware Resumindo Como um bloco/pag. pode ser localizado? Cache: mapeamento direto: índice associativa por conjunto: índice + comparação associativa: comparação de toda a cache Memória virtual: tabela de páginas/segmentos Infra-estrutura Hardware
Infra-estrutura Hardware Resumindo Qual o bloco deve ser substituído numa falta? Cache: LRU (grau de associatividade 2-4) randomica Memória virtual: LRU (a penalidade é muito grande) Infra-estrutura Hardware
Infra-estrutura Hardware Resumindo Qual a estratégia de escrita? Cache: Write-through Write-back Memória virtual: Infra-estrutura Hardware
Infra-estrutura Hardware Exercício Infra-estrutura Hardware