Download - Gerenciamento de memória
UFRPE/EADLicenciatura em Computação-6P
2011.1Tutor: Rodrigo Lins Rodrigues
Gerenciamentode Memória
Aula 5
2
Introdução
Memória é um recurso gerenciado pelo sistema operacional;
Os computadores possuem uma hierarquia de memória que relacionam grandezas custo, tamanho e velocidade;
3
Introdução
Gerenciador de Memória: Componente do sistema responsável por
gerenciar a memória.
Tarefas do Gerenciador de Memória: Controlar as partes livres e em uso da
memória; Alocar e desalocar memória para processos; Gerenciar a troca de processos entre a
memória e o disco;.
4
Introdução
Gerenciamento de Memória: Tarefa de subdividir e alocar dinamicamente
memória realizada pelo sistema operacional;
É vital para os sistemas operacionais que operam com multiprogramação.
5
Introdução
Em sistemas uniprogramados a memória é dividida em 2 partes. A parte do sistema operacional e a parte do único programa em execução;
Em sistemas multiprogramados, a memória é compartilhada entre vários processos;
Cabe ao sistema operacional administrar eficientemente a memória com o objetivo de minimizar tempo de espera.
6
Gerenciamento de memória
Monoprogramação
Execução de 1 programa por vez; Memória compartilhada entre o SO e o programa em
execução;
Multiprogramação
Múltiplos processos executando ao mesmo tempo, ou seja, múltiplos processos na memória; memória;
Administração da memória.
7
Alocação contígua simples
Foi implementada nos primeiros sistemas operacionais;
Está presente em sistemas monoprogramaveis;
A memória é subdividida em duas áreas: uma para o S.O e outra para o programa de usuário;
8
Alocação particionada fixa
Permite que diversos programas estejam na memória principal ao mesmo tempo
9
Alocação particionada fixa (Problemas)
O programas normalmente não preenchem totalmente as partições onde são carregados;
Causa fragmentação interna;
10
Alocação particionada dinâmica
Tentativa de evitar o desperdício de memória;
O tamanho das partições de memória não são fixos;
11
Um tipo de fragmentação diferente começará a ocorrer;
Quando os programas forem terminando e deixando espaços cada vez menores de memória livre;
Alocação particionada dinâmica (Problema)
12
Alocação particionada dinâmica (Solução)
Realocação de todas as partições ocupadas;
Realocação dinâmica; Exige uma complexidade de algoritmo e
consumo de recursos;
13
Mapa de bits
Divide a memória em pequenas unidades de alocação e cada uma delas é associado um bit no mapa de bits
Livre = "0" e Ocupado = "1"; Esta técnica é lenta pois busca em toda a tabela
de bits; Na prática é pouco utilizada;
14
Técnica de Swapping
Muitas vezes um programa não pode ser executado por falta de memória principal;
O sistema escolhe um processo residente, que é transferido para a memória principal para a memória secundária;
Posteriormente, o processo é carregado de volta para a memória principal;