Sistema Operacional
Prof. Ailvan Silva
Gerência de Memória: Memória Principal
3º Bimestre
Sistemas operacionais modernos Terceira edição
ANDREW S. TANENBAUM
Capítulo 3
Gerenciamento de memória Objetivos
• Fornecer uma descrição detalhada sobre várias formas de organizar o hardware de memória • Discutir técnicas de gerência de memória, incluindo paginação e segmentação
Antecedentes
•
Os programas precisam ser trazidos para a memória principal para poderem ser executados (criação de um processo)
•
Memória principal e registrados são as únicas armazenamento acessadas diretamente pela CPU
•
O acesso a um registrador é feito em um (ou menos) ciclos de CPU
•
Acessos à memória principal podem levar mais ciclos
•
A memória cache se situa entre a memória principal e os registradores
•
Mecanismos de proteção de memória são necessários para garantir a operação correta
unidades
de
Registradores de base e limite
• Um par de registradores (base e limite) definem um espaço de endereçamento lógico Vinculando instruções e dados à memória
• Tempo de compilação: Se a localização de memória for conhecida a priori, o compilador pode gerar código absoluto; requer recompilação caso a localização mude
• Tempo de carga: Requer a geração de código relocável se a localização de memória não for conhecida em tempo de compilação
• Tempo de execução: A vinculação é adiada até o momento da execução caso o processo possa ser movido de um segmento de memória para outro durante a execução. Requer suporte de hardware para mapas de endereçamento
Etapas do processamento de um programa do usuário Endereçamento Lógico x Físico
• O conceito de espaço de endereçamento lógico, que é vinculado a um espaço de endereçamento físico separado é crucial para a gerência de memória
– Endereço lógico: gerado pela CPU, também conhecido como endereço virtual
– Endereço físico: endereço visto pela