DEPARTAMENTO DE INFORMÁTICA UFPE GRECO Gerenciamento de Memória.

Slides:



Advertisements
Apresentações semelhantes
Sistemas Operacionais
Advertisements

Sistemas Operacionais
Sistemas Operacionais
DESENVOLVIMENTO DE SISTEMAS PARA INTERNET
Sistemas operacionais
Arquitetura e organização de computadores
Arquitetura de Sistemas Operacionais – Machado/Maia Cap. 10 – Gerência de Memória Virtual1 Arquitetura de Sistemas Operacionais Francis Berenger Machado.
ARQUITETURAS DE COMPUTADORES II
Gerenciamento de memória
Gerenciamento de Memória
Arquitetura de Sistemas Operacionais
Arquitetura de Sistemas Operacionais Francis Berenger Machado
Princípio da localidade
SSC541 - SISTEMAS OPERACIONAIS I Aula 12 – Gerenciamento de Memória
SSC SISTEMAS OPERACIONAIS I Aula 10 – Gerenciamento de Memória
SSC SISTEMAS OPERACIONAIS I Aula 15 – Gerenciamento de Memória
SSC541 - SISTEMAS OPERACIONAIS I Aula 13 – Gerenciamento de Memória
Gerência de Memória.
Gerência de Memória Paginação
Memória Virtual Sistemas Operacionais I
Arquitetura de Computadores
Sistemas Operacionais Turmas MBI1 e NBI2. Prof: Marcelo Mendes.
Gerência de Memória.
Sistemas Operacionais I
Resumindo Na arquitetura x86 (32 e 64 bits), são usadas a segmentação e a paginação. O espaço de endereçamento de uma aplicação é dividido em segmentos,
Arquitetura de Sistemas Operacionais – Machado/Maia 10/1 Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz Paulo Maia Capítulo 10 Gerência.
Arquitectura de Computadores II
Proteção de Memória O sistema operacional deve impedir que um processo tenha acesso ou modifique uma página do sistema sem autorização. Proteção para páginas.
Sistemas Operacionais Gerenciamento de Memória
SSC SISTEMAS OPERACIONAIS I Aula 11 – Gerenciamento de Memória 2
Fundamentos da Arquitetura de Computadores
Sistemas Operacionais
Sistemas Operacionais
Sistemas Operacionais
Gerência de Memória Fundamentos Swapping Alocação Contígua de memória
SISTEMAS OPERACIONAIS
Sistemas Operacionais I
Gerência de Memória Virtual
Sistemas Operacionais
SISTEMAS OPERACIONAIS I
SISTEMAS OPERACIONAIS I
Sistemas Operacionais
Capítulo 8: Memória principal
Gerência de Memória Principal
Bruno C. Bourbon Jarbas J. de O. Júnior {bcb, cin.ufpe.br
ARQUITETURAS DE COMPUTADORES II
Sistemas Operacionais
Ch7b-1 Capítulo Sistemas de Memória - Memória Virtual.
Capítulo 8: Memória Principal
Infra-Estrutura de Software Gerenciamento de Memória.
Gerenciamento de Memória
Memória Virtual O problema é que temos um espaço limitado de memória RAM e, cada vez mais, os aplicativos consomem partes maiores dela. E o que o processador.
Prof. André Luis M. Silva Hierarquia de Memória Prof. André Luis M. Silva
Gerenciamento de Memória - Capítulo 7 - Sistemas Operacionais Prof. Dr. José Carlos Becceneri Luciana Sêda Cardoso.
Gerenciamento de Memória Sistemas Recentes
Bruno Iran Ferreira Maciel
Sistemas de Arquivos Sistemas Operacionais Profa. Priscila Facciolli
Infra-estrutura Hardware
Memória Cache.
Memória Virtual.
MEMÓRIAS.
Zeque - Grad. CC1 Sistemas Operacionais Gerenciamento do Espaço Prof. José Queiroz - ZEQUE.
Gerência de Memória Sidney Cunha de Lucena Baseado no livro
Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Gerenciamento de Memória Capítulo Gerenciamento básico de memória 3.2 Troca de processos.
Gerência de Memória. Memória Considerações: Recurso caro e escasso; Programas só executam se estiverem na memória principal; Quanto mais processos residentes.
Sistemas Operacionais Gerência de Memória Funções básicas (número, tamanho e segurança) Alocação contígua simples Técnica de overlay Alocação particionada.
Memória Virtual ARQUITETURAS DE COMPUTADORES II Prof. César Augusto M. Marcon.
Gerência de Memória Principal ARQUITETURAS DE COMPUTADORES II César A. Marcon, César De Rose e Fernando Moraes.
Hierarquia de Memória – Parte 2 Prof. André Luis M. Silva
Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Sistemas Operacionais FATEC-PB Professor: Gustavo Wagner
Transcrição da apresentação:

DEPARTAMENTO DE INFORMÁTICA UFPE GRECO Gerenciamento de Memória

DEPARTAMENTO DE INFORMÁTICA UFPE GRECO Hierarquia de Memória cache (L1) CPU Registradores memória principal memória secundária Custo e tamanho chip cache (L2) Velocidade Reg. Cache Principal Cache de Disco Disco Magnético FitaCD-ROM

DEPARTAMENTO DE INFORMÁTICA UFPE GRECO Localidade n Temporal Num futuro próximo, o programa irá referenciar os programas e dados referenciados recentemente n Espacial Num futuro próximo, o programa irá referenciar os programas e objetos de dados que tenham endereços próximos das últimas referências.

DEPARTAMENTO DE INFORMÁTICA UFPE GRECO Memória Virtual n Disco Muito mais barato que memória n 1961: Overlay automático Swap File Universidade de Manchester Sistema operacional Memória virtual memória principal disco

DEPARTAMENTO DE INFORMÁTICA UFPE GRECO Memória Virtual CPU End. Dados n Memória disponível Espaço de endereçamento 2 n

DEPARTAMENTO DE INFORMÁTICA UFPE GRECO Particionamento da Memória n Pedaços grandes com tamanho fixo n Pedaços com tamanho variável P1 P2 P3 P4 P1 P2 P3 S.O. P4 P5 Fragmentação InternaExterna

DEPARTAMENTO DE INFORMÁTICA UFPE GRECO Paginação n Pedaços pequenos de tamanho iguais fixos Ocupada … , 15, 16 Tabela Conversão Pág. p/ Proc. A Disco Proc. A pág.0 pág.1 pág.2 pág Pág.V.0 Pág.V.1 Pág.V.2 Pág.V.3 Pág. Livres 15, MemóriaPrincipal Ocupada

DEPARTAMENTO DE INFORMÁTICA UFPE GRECO Paginação tabela de páginas memória principal entradas desloc. endereço da páginadeslocamento Endereço Virtual (Lógico) Endereço Real (Físico) nr. página real

DEPARTAMENTO DE INFORMÁTICA UFPE GRECO Paginação: Armazenando as tabelas n Uma tabela de páginas por processo n Problema: Armazenar as tabelas em memória real n Exemplo: VAX 2 Gbyte / processo 512 Byte / página => Muito espaço para tabelas => 4 MegaEntradas por tabela por processo

DEPARTAMENTO DE INFORMÁTICA UFPE GRECO Paginação: Armazenando as tabelas n Solução 1: n Solução 1: Guardar parte das tabelas em memória virtual A tabela da página corrente tem que estar na memória real n Solução 2: n Solução 2: Usar uma estrutura hierárquica de paginação

DEPARTAMENTO DE INFORMÁTICA UFPE GRECO Paginação: Diretório de Tabelas de Páginas tab.0 tab.1 memória p.real página desloc. Endereço Virtual (Lógico) diretório tab.1 tab.0 Dir. Usado no Pentium

DEPARTAMENTO DE INFORMÁTICA UFPE GRECO Endereço Físico e Virtual num. pag. físicadesloc. desloci1i2i3 Endereço físico Endereço virtual

DEPARTAMENTO DE INFORMÁTICA UFPE GRECO Tabela de Página Invertida Dp Vp Rp link Vp Rp link Vp Dp hash function Usado no IBM AS/400 e PowerPC Rp

DEPARTAMENTO DE INFORMÁTICA UFPE GRECO Acelerando a tradução... n Problema: n Problema: Um acesso à mem.virtual => 2 acessos à mem. real (1 p/ tabela + 1 p/ dado desejado) n Solução: n Solução: Translation Lookaside Buffer Funciona como uma cache para tabelas de página Requer um acesso à mem. física e um à cache do TLB Aumento de performance (Princípio da Localidade) VpA DpA VpE VpA VpT VpB RpE RpA RpB RpT RpA

DEPARTAMENTO DE INFORMÁTICA UFPE GRECO hit cache Gerenciamento de Memória Rp Dp memória principal cache Valor tab.pág. Vp Dp TLB hit TLB miss TLB & hit tab.pag. Disco miss TLB & miss tab.pag. miss cache & hit mem. miss cache & miss mem.. Rp

DEPARTAMENTO DE INFORMÁTICA UFPE GRECO Unidade de Gerenciamento de Memória UGM CPU memória dados VirtualReal Testes de proteção Testes de memória

DEPARTAMENTO DE INFORMÁTICA UFPE GRECO Paginação: O que fazer quando há falta de página? n Falta de Página n Falta da Tabela de Página 1) Chamada do Sistema Operacional => chaveamento de contexto (executa outro processo enquanto carrega a página na memória) 2) Escolha da página a ser retirada da memória (se não houver espaço livre)

DEPARTAMENTO DE INFORMÁTICA UFPE GRECO Políticas de substituição n Randômica baixo desempenho n FIFO ignora localidade temporal n LRU (least recently used) considera quando a página foi referenciada

DEPARTAMENTO DE INFORMÁTICA UFPE GRECO Segmentação n Controlado pelo usuário e S.O. Facilita compartilhamento e proteção de dados Permite alterar sistemas com recompilação parcial, sem relinkar n Organização de programas e dados n Permite controle de acesso mais fino a dados e instruções do que paginação n Tamanho variável e dinâmico n Tradução de endereço virtual p/ físico semelhante à da paginação

DEPARTAMENTO DE INFORMÁTICA UFPE GRECO Segmentação: Exemplo do Pentium Cada segmento tem informações de: 1) Nível de privilégio de acesso (de 0 a 3) UGM => 0, Sistema Operacional => 1 A execução de algumas instruções está limitada a alguns níveis de privilégio: –Uso de registradores de Ger. Memória => Nível 0 –Instruções de I/O => Nível 1 (usado no Windows NT) 2) Atributo de Acesso Segmento de Dados => read/write ou read-only Segmento de Instruções => read/execute ou read-only

DEPARTAMENTO DE INFORMÁTICA UFPE GRECO Segmentação tabela de segmentos memória principal entradas num. segmento Desloc. bp tam. end.segm + end. físico

DEPARTAMENTO DE INFORMÁTICA UFPE GRECO Substituição de Segmentos n Onde o segmento deve ser alocado? best-fit worst fit first fit

DEPARTAMENTO DE INFORMÁTICA UFPE GRECO Página X Segmento n Tamanho Fixo n Tamanho Variável Transparente ao usuário Gerenciamento eficiente (pequena fragmentação interna) Controlado pelo usuário Facilidade de proteção Fragmentação Externa

DEPARTAMENTO DE INFORMÁTICA UFPE GRECO Segmentação Paginada tabela de segmento tabela de página memória principal entradas Vp desl. segmento dado + End. Seg. + Segm. => modularização do programa Pagin. => melhor alocação da memória

DEPARTAMENTO DE INFORMÁTICA UFPE GRECO Segmentação Paginada n Falta do Segmento n Falta da Tabela de Segmento n Falta de Página n Falta da Tabela de Página n Falta de Proteção n Falta de Limite n Falta do Segmento n Falta da Tabela de Segmento n Falta de Página n Falta da Tabela de Página n Falta de Proteção n Falta de Limite chamada do sistema operacional chaveamento de contexto

DEPARTAMENTO DE INFORMÁTICA UFPE GRECO Segmentação e Paginação Segmentação Paginação Alta performance Simplicidade Endereços lógicos Proteção de dados e código Tab. de tradução sempre na mem. principal Proteção menos acessível ao usuário Memória virtual Segm. => modularização Pag. => alocação da memória