Senhor
Sumário
1. Introdução
2. Conceitos básicos
3. Alocação contigua simples
4. Técnica de overlay
5. Alocação particionada
5.1 Alocação particionada estática
5.2 Alocação particionada dinâmica
5.3 Estratégias de alocação de partição
6. Swapping
7. Gerencia de memória virtual
7.1 Introdução
7.2 Memória virtual por paginação
7.3 Memória virtual por segmentação
7.4 Swapping em memória virtual
7.5 Thrashing
8. Windows vs Linux.
1. Introdução
Memoria é um recurso importante que deve ser cuidadosamente gerenciado. Para isso a maioria dos computadores tem uma hierarquização de memória. O trabalho do sistema operacional é coordenar como essas memorias serão utilizadas. Assim, a parte do sistema operacional que gerencia a hierarquia de memória é chamada Gerenciador de memória, cujo trabalho é controlar as partes das memórias que estão em uso ou não, alocar e desalocar memorias aos processos quando necessário, e gerenciar a troca entre memoria principal e o disco quando a memória principal é muito pequena ou estiver “esgotada”.
2. Conceitos básicos
Geralmente os programas são armazenados em memorias secundarias, por serem meios não voláteis, abundantes e de baixo custo. No entanto, o processador sempre executa instruções localizadas na memória principal, o sistema operacional deve, então, transferir dados da memória secundaria para a principal com o objetivo de reduzir a quantidade de entrada e saída I/O.
A gerencia deve tentar manter na memória principal o maior número possível de processos residentes, permitindo maximizar o compartilhamento do processador e demais recursos computacionais.
Mesmo na ausência de espaço livre, o sistema deve permitir que novos processos sejam aceitos e executados. Isto é realizado através do swapping, que é a transferência de processos residentes na memória principal para a memória secundaria.
O sistema também deverá permitir a execução de programas que sejam maiores que a memória física