Algoritmos de Gerenciamento de Memória
Instituto de Tecnologia
Faculdade de Engenharia da Computação e Telecomunicações
Sistemas Operacionais
Algoritmos de Gerenciamento de Memória
2014
Gerenciamento de Memória
Gerenciamento (ou gestão) de memória é um complexo campo da ciência da computação e são constantemente desenvolvidas várias técnicas para torná-la mais eficiente. Em sua forma mais simples, está relacionado em duas tarefas essenciais:
•Alocação: Quando o programa requisita um bloco de memória, o gerenciador o disponibiliza para a alocação;
•Reciclagem: Quando um bloco de memória foi alocado, mas os dados não foram requisitados por um determinado número de ciclos ou não há nenhum tipo de referência a este bloco pelo programa, esse bloco é liberado e pode ser reutilizado para outra requisição. Essas várias técnicas são os algoritmos de gerenciamento de memória.
Algoritmos de Reserva
Reserva de Memória
Paginação : Muito simples basta encontrar uma página livre, normalmente existentes numa Lista de Páginas Livres do sistema operativo
Segmentação : O tamanho variável dos segmentos torna mais complexa a reserva de espaço para um segmento . Na libertação de memória é necessário recompactar os segmentos. Reserva de Segmentos: Critérios de Escolha de Blocos Livres
Best-fit (o menor possível):
– Gera elevado número de pequenos fragmentos
– Em média percorre-se metade da lista de blocos livres na procura
– A lista tem de ser percorrida outra vez para introduzir o fragmento
Worst-fit (o maior possível):
– Pode facilmente impossibilitar a reserva de blocos de grandes dimensões
– A lista de blocos livres tem de ser percorrida para introduzir o fragmento
First-fit (o primeiro possível):
– Minimiza a tempo gasto a percorrer a lista de blocos livres minimiza a tempo gasto a percorrer a lista de blocos livres
– Gera muita fragmentação externa
– Acumula muitos blocos pequenos no início da lista, ficando para o fim os blocos maiores
Next-fit