A GERÊNCIA DE MEMÓRIA
Por: schlaf • 20/6/2015 • Trabalho acadêmico • 1.123 Palavras (5 Páginas) • 359 Visualizações
1. Quais as funções básicas da gerência de memória?
Fazer o swapping e paginação, tentar manter na memória principal o maior número possível de processos residentes, permitindo maximizar o compartilhamento doprocessador e demais recursos computacionais e permitir a execução de programas quesejam maiores que a memória física disponível.
2. Considere um sistema computacional com 40kb de memória principal e queutilize um sistema operacional de 10kb que implemente alocação contígua dememória. Qual a taxa de subutilização da memória principal para um programaque ocupe 20kb de memória?
Memória 40kb
S.O. 10 kb
Programa 20kb
Área livre 10kb
3. Suponha um sistema computacional com 64kb de memória principal e queutilize um sistema operacional de 14kb que implemente alocação contígua dememória. Considere também um programa de 90kb, formado por um móduloprincipal de 20kb e três módulos independentes, cada um com 10kb, 20kb e30kb. Como o programa poderia ser executado utilizando-se apenas a técnica de overlay?
Módulo 1
Memória 64kb
S.O. 14 kb
M. Principal 20 kb
Módulo1 10kb
Área livre 20 kb
Módulo 2
Memória 64kb
S.O. 14 kb
M. Principal 20 kb
Módulo 2 20 kb
Área livre 10 kb
Módulo 3
Memória 64kb
S.O. 14 kb
M. Principal 20 kb
Módulo3 30kb
Área livre 0 kb
4. Considerando o exercício anterior, se o módulo de 30kb tivesse seu tamanho aumentado para 40kb, seria possível executar o programa? Caso não possa, como o problema poderia ser contornado?
Se o módulo de 30kb passar a valer 40kb, não será possível executar o programa, pois a soma de todos os valores é (14+20+40 = 74kb), o que no caso, ultrapassa o tamanho da Memória RAM. Neste caso, uma solução seria fazer o aumento da memoria RAM ou remover o tamanho do módulo.
5. Qual a diferença entrefragmentaçãointernaefragmentaçãoexternadamemória principal?
Fragmentação interna: Na fragmentação interna, o programa é carregado na primeira área de memoria livre e que for igual ou maior que o seu tamanho. Isto pode gerar áreas na memoria com programas pequenos, que não ocupam totalmente ou grande parte desta área.
Fragmentação externa: Na fragmentação externa, com o termino de alguns programas deixa-se na memoria pequenas áreas livre não contiguamente isto pode gerar problemas quando um programa maior que os espaços livres, mesmo que a soma destes espaços seja maior do que a área que o programa precisa ele não ira entrar em execução, pois as áreas livres de memoria não são contiguamente.
6. Suponha um sistema computacional com 128kb de memória principal e que utilize um sistema operacional de 64kb que implemente alocação particionadaestáticarelocável. Considere também que o sistema foi inicializado com trêspartições: P1 (8kb), P2 (24kb) e P3 (32kb). Calcule a fragmentação interna damemória principal após a carga de três programas PA, PB e PC.
a) P1 ←PA (6kb); P2 ←PB (20kb); P3 ←PC (28kb)
Partições Programas Área livre
P18kb 6 kb 2 kb
P2 24kb 20 kb 4 kb
P3 32kb 28 kb 4 kb
b) P1 ←PA (4kb); P2 ←PB (16kb); P3 ←PC (26kb)
Partições Programas Área livre
P18kb 4 kb 4 kb
P2 24kb 16 kb 8 kb
P3 32kb 26 kb 6 kb
c) P1 ←PA (8kb); P2 ←PB (24kb); P3 ←PC (32kb)
Partições Programas Área livre
P18kb 8 kb 0 kb
P2 24kb 24 kb 0 kb
P3 32kb 32 kb 0 kb
7. Considerando o exercício anterior, seria possível executar quatro programasconcorrentemente utilizando apenas a técnica de alocação particionada estáticarelocável? Se for possível, como? Considerando ainda o mesmo exercício, seria possível executar um programa de 36kb? Se for possível, como?
Não, pois na alocação particionada estática é necessário uma partição especifica para cada programas e como no exercício anterior só temos 3 partições, não é possível executar concorrentemente.
Sim, seria possível executar um programa de 36kb. A alocação particionada estática permite que você altere o tamanho de uma partição, mas para isso o sistema deve ser desativado e reinicializado.
8. Qualalimitaçãodaalocaçãoparticionadaestáticaabsolutaemrelaçãoàalocação estática relocável?
Na alocação particionada estática absoluta o programa só roda na área especificada no seu código.
Na alocação estática relocávelo programa vai rodar em qualquer área disponível que ele caiba independente do seu código.
9. Considere que os processos da tabela a seguir estão aguardando para seremexecutadosequecadaumpermaneceránamemóriaduranteotempo especificado. O sistema operacional ocupa uma área de 20kb no início damemória e gerencia a memória utilizando um algoritmo de particionamentodinâmico modificado. A memória total disponível no sistema é de 64kb e é alocada em blocos múltiplos de 4kb. Os processos são alocados de acordo comsua identificação (em ordem crescente) e irão aguardar até obter a memória dequenecessitam.Calculeaperdadememóriaporfragmentaçãointernaeexternasemprequeumprocessoécolocadoouretiradodamemória.Osistema operacional compacta a memória apenas quando existem duas oumais partições livres adjacentes.
Processos Memória Tempo
...