Gerência de Memória: Best-fit, Worst-fit, Overlay, Swapping e Alocação Particionada

ComputaçãoAtualizado em 4,62 KB

Resumo

O documento apresenta os conceitos fundamentais da gerência de memória em sistemas operacionais, incluindo suas funções básicas e as estratégias Best-fit e Worst-fit para escolha de partições dinâmicas, com seus prós e contras. Também explica as técnicas Overlay e Swapping, a alocação contígua simples, a alocação particionada estática e dinâmica, a proteção de memória e a fragmentação externa, com o coalescing como solução. O estudante aprenderá como o sistema operacional otimiza o uso da RAM.

Pontos-chave

  • A gerência de memória permite aceitar novos programas sem espaço livre, executar programas maiores que a memória física e proteger as áreas de cada processo.
  • Best-fit escolhe a partição que deixa o menor espaço sem uso, mas gera pequenas áreas não contíguas e fragmentação externa.
  • Worst-fit escolhe a partição que deixa o maior espaço sem uso, reduz a fragmentação, mas pode fragmentar rapidamente os maiores blocos.
  • Overlay divide o programa em módulos que são executados independentemente, sobrepondo-se na mesma área de memória.
  • Swapping move processos entre a memória principal e a memória secundária para aliviar a insuficiência de memória em ambientes multiprogramados.
  • Na alocação particionada dinâmica, cada programa usa apenas o espaço necessário, e a fragmentação externa é tratada pelo coalescing ou pela relocação das partições.

Teste-se

Conceitos Fundamentais em Gerência de Memória

1. Funções Básicas da Gerência de Memória

As funções essenciais da gerência de memória são:

  • Permitir que novos programas sejam aceitos mesmo que não exista espaço livre de memória.
  • Permitir a execução de programas maiores do que a memória física.
  • Proteger as áreas de memória ocupadas por cada processo.

2. Estratégias de Escolha de Partição Dinâmica

Considerando as estratégias para escolha de partição dinamicamente, conceitue as estratégias Best-fit e Worst-fit, especificando prós e contras de cada uma:

Best-fit

Escolhe a melhor partição, ou seja, aquela que o programa deixa o menor espaço sem utilização. A lista de áreas livres é alocada por tamanho, diminuindo o tempo de busca.

  • Pró: Busca rápida se a lista for ordenada.
  • Contra: Deixa pequenas áreas não contíguas, aumentando o problema da fragmentação externa.

Worst-fit

Escolhe a pior partição, ou seja, aquela que o programa deixa o maior espaço sem utilização.

  • Pró: Diminui o problema de fragmentação, deixando espaços livres maiores que permitem a um maior número de programas utilizar a memória.
  • Contra: Pode fragmentar rapidamente os maiores blocos disponíveis.

3. O que é Overlay?

Técnica que busca dividir o programa em módulos, permitindo a execução independente de cada módulo, utilizando a mesma área de memória (sobreposição).

4. O que é Swapping e para que é utilizada esta técnica?

Swapping é uma técnica criada na tentativa de melhorar o problema da insuficiência de memória durante a execução de alguns processos em ambientes multiprogramados. Consiste em mover processos entre a memória principal e a memória secundária.

5. Explique a Alocação Contígua Simples

Implementada nos primeiros sistemas operacionais. A memória principal é dividida em duas partes: uma para o sistema operacional (S.O.) e a outra para o programa do usuário. Todos os programas estão limitados ao tamanho da memória principal disponível para o usuário.

Notas Adicionais sobre Alocação de Memória

Contexto e Otimização da RAM

A RAM é subdividida em duas áreas: S.O. e Programa do Usuário. Historicamente, o usuário tinha o controle sobre toda a memória principal, inclusive a área do S.O. Como a memória é um recurso escasso e caro, o S.O. deve ser capaz de otimizar seu uso, maximizando o número de usuários e aplicações.

  • Programas e Aplicações são armazenados na memória secundária.
  • O processador executa apenas instruções da memória principal (RAM), que oferece acesso direto e mais rápido.

Alocação Particionada Estática

Consiste na divisão da RAM em tamanhos fixos (partições). O tamanho das partições é definido em função do tamanho dos programas que seriam executados no ambiente.

  • Alocação Particionada Estática Absoluta: Programas com códigos absolutos, fazendo referência direta ao endereço RAM.
  • Alocação Particionada Estática Relocável: Código relocável, com referências relativas ao código e não ao endereço físico.

Proteção de Memória

A proteção é baseada em dois registradores que definem os limites inferior e superior da partição onde o programa está sendo executado. Se o programa extrapolar esses limites, uma violação de acesso é gerada pelo S.O.

Alocação Particionada Dinâmica

Esta estratégia resolve o problema da fragmentação interna e aumenta o grau de compartilhamento da memória, pois cada programa utiliza apenas o espaço necessário, tornando este o tamanho de sua partição.

Problema e Solução (Coalescing)

Problema: Programas vão terminando e deixando espaços cada vez menores na memória, impedindo a alocação de novos programas (fragmentação externa).

Solução: Apenas espaços livres adjacentes são reunidos (coalescing). Em casos mais extremos, é necessária a relocação de todas as partições ocupadas, eliminando os espaços entre elas e criando uma única área livre contígua.

Estratégia First-fit

A primeira partição livre de tamanho suficiente para carregar o programa é escolhida. É a estratégia mais rápida, consumindo menos recursos de processamento para a busca.

Baixar

PDF Word HTML

Perguntas frequentes

O que é Overlay?

Overlay é uma técnica que divide o programa em módulos, permitindo a execução independente de cada módulo na mesma área de memória, por meio de sobreposição.

Para que serve o Swapping?

Swapping foi criado para melhorar a insuficiência de memória durante a execução de processos em ambientes multiprogramados, movendo processos entre a memória principal e a secundária.

Qual a diferença entre Best-fit e Worst-fit?

Best-fit escolhe a partição que deixa o menor espaço livre, enquanto Worst-fit escolhe a que deixa o maior espaço livre. O primeiro busca rapidez mas gera fragmentação, o segundo reduz fragmentação mas pode fragmentar os maiores blocos.

O que é coalescing?

Coalescing é a reunião de espaços livres adjacentes na memória, combatendo a fragmentação externa causada pelo término de programas.

Teste-se

Cartões de revisão

Clique em um cartão para ver a resposta.

Teste

1. Qual é uma função básica da gerência de memória?
2. Qual estratégia escolhe a partição que deixa o menor espaço sem utilização?
3. Qual é um contra da estratégia Best-fit?
4. Qual é a principal característica do Overlay?
5. Em que consiste o Swapping?
6. Qual problema a alocação particionada dinâmica resolve em relação à estática?
7. Qual estratégia é a mais rápida para escolher partição?

Perguntas geradas com IA a partir do documento: verifique as respostas com o texto.