Gerenciamento de memória
Na multiprogramação, diversos processos são executados simultaneamente, por intermédio da divisão do tempo do processador. Para que o chaveamento entre eles seja rápido, esses processos devem estar na memória, prontos para executar. É função da gerência de memória do sistema operacional prover os mecanismos necessários para que os diversos processos compartilhem a memória de forma segura e eficiente.
1. Estruturas de memória
Existem diversos tipos de memória em um sistema de computação, cada um com suas próprias características e particularidades, mas todos com um mesmo objetivo: armazenar dados. Observando um sistema computacional típico, pode-se identificar vários locais onde dados são armazenados: os registradores e o cache interno do processador (denominado cache L1), o cache externo da placa-mãe (cache L2) e a memória principal (RAM). Além disso, discos rígidos e unidades de armazenamento externas (pendrives, CD-ROMs, DVD-ROMs, fitas magnéticas, etc.) também podem ser considerados memória em um sentido mais amplo, pois também têm como função o armazenamento de dados. Esses componentes de hardware são construídos usando diversas tecnologias e por isso têm características distintas, como a capacidade de armazenamento, a velocidade de operação, o consumo de energia e o custo por byte armazenado. Essas características permitem definir uma hierarquia de memória, representada na forma de uma pirâmide. registradores da CPU e os caches: são menores, mais caras e consomem mais energia; memórias mais rápidas são voláteis rapidez de seu funcionamento tempo de acesso (ou latência) - caracteriza o tempo necessário para iniciar uma transferência de dados para um meio. taxa de transferência - indica quantos bytes por segundo podem ser lidos/escritos naquele meio.
2. Memória Lógica e Memória Física
Memória Lógica: é aquela que o processo enxerga, ou seja, aquela que ele é capaz de endereçar e acessar usando as suas instruções.