lolololol
Fabiano Utiyam a
Capítulo 9
Gerência de Mem ória
9/1I ntrodução
• Nos sistemas monoprogramáveis a gerência de memória não é muito complexa
• Nos sistemas multiprogramáveis ela se torna crítica, devido à necessidade de se maximizar o número de usuários e aplicações utilizando eficientemente o espaço da memória principal
9/2Funções Básicas
• Em geral, programas são armazenados em memórias secundárias, como disco ou fita, por ser um meio não-volátil, abundante e de baixo custo
• Como o processador somente executa instruções localizadas na memória principal, o sistema operacional deve sempre transferir programas da memória secundária para a memória principal antes de serem executados
9/3Funções Básicas
• A gerência de memória deve tentar manter na memória principal o maior número 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 (swapping)
9/4Funções Básicas
• A gerência de memória deve permitir a execução de programas que sejam maiores que a memória física disponível
• Implementada através de técnicas como: – Overlay – Memória virtual
9/5Funções Básicas
• Em um ambiente de multiprogramação, o sistema operacional deve proteger as áreas de memória ocupadas por cada processo, além da área onde reside o próprio sistema 9/6Alocação Contígua Sim ples
• Foi implementada nos primeiros sistemas operacionais, e ainda está presente em alguns sistemas monoprogramáveis
• A memória principal é subdividida em duas áreas: – Uma para o sistema operacional – Outra para o programa do usuário
9/7Alocação Contígua Sim ples
• O programador deve desenvolver suas aplicações preocupado, apenas, em não ultrapassar o espaço de memória disponível
• Como o usuário tem acesso a toda memória principal, alguns sistemas implementam proteção através de um registrador