Devido aos Sistemas Operacionais apresentarem caracteristicas variadas, determinados procedimentos tornam-se por vezes semelhantes ou proprios de cada Sistema. O gerenciamento de memoria e um procedimento fundamental na objetividade de todos os Sistemas Operacionais.A maioria dos computadores trabalha com o conceito de hierarquia de memoria, possuindo uma pequena quantidade de memoria cache, muito rapida, uma quantidade de memoria principal (RAM) e uma quantidade muito grande de memoria de armazenamento em disco (HD), considerada lenta.A memoria e um dos itens mais importantes dentro de um computador, por isso a importancia de um bom gerenciamento.Gerenciamento (ou gestao) de memoria e um complexo campo da ciencia da computacao e sao constantemente desenvolvidas varias tecnicas para torna-la mais eficiente. Em sua forma mais simples, esta relacionado em duas tarefas essenciais:Alocacao: Quando o programa requisita um bloco de memoria, o gerenciador o disponibiliza para a alocacao;Reciclagem: Quando um bloco de memoria foi alocado, mas os dados nao foram requisitados por um determinado numero de ciclos ou nao ha nenhum tipo de referencia a este bloco pelo programa, esse bloco e liberado e pode ser reutilizado para outra requisicao.ou melhor Os que nao realizam paginacao ou troca entre disco e memoria O que nao realizam este processoO ideal seria, uma memoria que nao precisasse deste artificios, uma memoria rapida, de grande capacidade e a um custo pequena. o que nao acontece. O que se ve sao varios tipos de memoria trabalhando paralelamente com os recursos computqacionais.Assim, devido a suas similariedade e caracteristicas distintas, as melhorias precisam de um meio para que possoam ser gerenciadas da melhor forma possivel. E uma estrutura que possui uma hieraquia devido suas caracteirsticas e atividades desenvolvidas.Cache (rapida e pequena, volatil, custo alto)RAM (velocidade media, tamanho medio e volatil, custo medio)Memorias Secundarias (velocidade lenta, tamanho grande e nao volatil, custo baixo) Tambem quando discutimos sobre gerencimento de memoria(GM), vimos que, apesar de seu crecimento exponencial com o tempo, cada vez temos mais memorias nos computadores modernos, temos do outro lado os programas cada vez mais exigentes com espaco, ou seja, cada vez temos programas maiores que a memoria disponivel.A tendencia e que, com as interfaces graficas, os programas ocupem ainda mais as memorias. E um problema para os projetistas de Sistemas Operacionais que devem prever mecanismo de Gerenciamento de memoria mais eficientes possiveis. Outra questao esta realcionada as modalidades de programacao distinta, tais como:Monoprogramacao sem troca de processos ou paginacaoUm esquema mais simples de gerenciamento de memoria, onde a memoria e compartilhada entre o SO e os programas.Podemos neste caso, possui tre configuracoes:A 1a configuracoes esteve presente nos Mainframes ou computadores de grande porteA 2a esta presente nos palmtops e outros computadores de maoE a 3a configuracao esteve presente nos sistemas MS-DOSMultiprogrmacao com particoes fixasAtualmente, a monoprogramacao nao e mais utilizada, hoje, se um processo fica bloqueado esperando um recurso de E/S, outro processo podera esta utilizando a CPU naquele instante. Em sistemas Operacionais de rede, com varios usuarios startando processos, isto bem evidente.Esta habilidade presente somente neste sistemas operacionais rede, agora tambem faz parte dos sistemas dos usuarios.Como isso acontece, e realizado a divisao