As Funções básicas do gerenciador de memória
Por: jferrazbrito12 • 5/6/2017 • Pesquisas Acadêmicas • 915 Palavras (4 Páginas) • 649 Visualizações
Disciplina: Sistemas Operacionais
Prof. Eduardo Mendes
EXERCÍCIO DE FIXAÇÃO
GERENCIAMENTO DE MEMÓRIA
- Quais as funções básicas do gerenciador de memória?
Gerenciar a memória de modo eficiente, mantendo o controle de quais partes da memória estão em uso e quais não estão; alocando memória aos processos quando eles precisam e liberando-a quando esses processos terminam.
- Considere um sistema computacional com 40 Kb de memória principal, e que utilize um sistema operacional de 10 Kb que implemente alocação contígua de memória. Qual a taxa de subutilização da memória principal para um programa que ocupe 20 Kb de memória?
10 Kb (SO) + 20 Kb (App) = 30 Kb de 40 Kb = 25% de subutilização da memória.
- Suponha um sistema computacional com 64 Kb de memória principal e que utilize um sistema operacional de 14 Kb que implemente alocação contígua de memória. Considere também um programa de 90 Kb, formado por um módulo principal de 20 Kb, e três módulos independentes, cada um com 10 Kb, 20 Kb e 30 Kb. Como o programa poderia ser executado utilizando-se apenas a técnica de overlay?
Como existe apenas 50Kb para a execução do programa, a memória deve ser dividida em duas áreas: uma para o
módulo principal (20Kb) e outra de overlay para a carga dos módulos, em função do tamanho do maior módulo (30
Kb).
- Considerando o exercício anterior, se o módulo de 30 Kb tivesse seu tamanho aumentado para 40 Kb, seria possível executar o programa? Caso não seja possível, como o problema poderia ser contornado?
Não. No caso de não haver como aumentar o espaço de memória real, a única solução seria tentar alterar o programa de
forma que o módulo de 40Kb pudesse ser dividido em outros módulos menores independentes.
- Qual a diferença entre fragmentação interna e externa da memória principal?
Fragmentação interna ocorre em espaços livres e contíguos na memória principal que são pré-alocados por processos,
não possibilitando, portanto, o uso por outros processos. Fragmentação externa ocorre em espaços livres e contínuos,
porém tão pequenos que não possibilitam a alocação de programas por processos
- Suponha um sistema computacional com 128 Kb de memória principal e que utilize um sistema operacional de 64 Kb que implementa alocação particionada estática realocável. Considere também que o sistema foi inicializado com 03 partições: P1 (8 Kb), P2 (24Kb), P3 (32 Kb). Calcule a fragmentação interna de memória principal após a carga de 03 programas: PA, PB, PC.
A) P1 ←PA (6Kb); P2 ←PB (20 Kb); P3 ←PC (28Kb); 2Kb, 4Kb, 4Kb
B) P1 ←PA (4Kb); P2 ←PB (16 Kb); P3 ←PC (26Kb);4Kb, 8Kb
C) 6KbP1 ←PA (8Kb); P2 ←PB (24 Kb); P3 ←PC (32Kb)não há
- Considerando o exercício anterior, seria possível executar quatro programas concorrentemente utilizando apenas a técnica de alocação particionada estática realocável? Se possível, como? Considerando ainda o mesmo exercício, seria possível executar um programa de 36 Kb? Se for possível, como?
- Qual a limitação da aplicação particionada estática absoluta em relação à alocação estática realocável?
- Considere que os processos da tabela a seguir estão aguardando para serem Jhuexecutados e que cada um permanecerá na memória durante o tempo especificado. O sistema operacional ocupa uma área de 20 Kb no início da memória e gerencia a memória utilizando um algoritmo de particionamento dinâmico modificado. A memória total disponível no sistema é de 64 Kb e é alocada em blocos múltiplos de 4 Kb. Os processos são alocados de acordo com sua identificação (em ordem crescente), e irão aguardar até obter a memória de que necessitam. Calcule a perda de memória por fragmentação interna e externa sempre que um processo é colocado ou retirado da memória. O sistema operacional compacta a memória apenas quando existem duas ou mais partições livres adjacentes.
PROCESSOS | MEMÓRIA | TEMPO |
1 | 30 Kb | 5 |
2 | 6 Kb | 10 |
3 | 36 Kb | 5 |
- Considerando as estratégias para escolha da partição dinamicamente, conceitue as estratégias best-fit e worst-fit especificando pros e contra de cada uma.
- Considere um sistema que possua as seguintes áreas livres de memória principal, ordenadas crescentemente: 10 Kb, 4 Kb, 20 Kb, 18 Kb, 7 Kb, 9 Kb, 12 Kb e 15 Kb. Para cada programa a seguir, qual seria a partição alocada utilizando as estratégias firts-fit, best-fit e worst-fit?
- 12 Kb
- 10 Kb
- 9 Kb
- Um utiliza alocação particionada dinâmica como mecanismo de gerencia de memória. O sistema operacional aloca uma área de memória total de 50 Kb e possui, inicialmente, os programas da tabela a seguir:
5 Kb | Programa A |
5 Kb | Programa B |
10 Kb | Livre |
6 Kb | Programa C |
26 Kb | Livre |
Realize as operações a seguir sequencialmente, mostrando o estado da memória após cada uma delas. Resolva a questão utilizando as estratégias best-fit, worst-fit e first-fit.
- Alocar uma área para o programa D que possui 6 Kb;
- Liberar a área do programa A;
- Alocar uma área para o programa E que possui 4 Kb.
- O que é swapping e para que é utilizada esta técnica?
- Porque é importante o uso de um loader com realocação dinâmica para que a técnica de swapping possa ser implementada?
...