Buscar

Gerência de memória

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 6 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 6 páginas

Prévia do material em texto

1 - Quais as funções básicas da gerência de memória?
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.Os sistemas de gerência de memória podem ser divididos em duas grandes categorias: aqueles que movem os processos entre a memória principal e o disco (swapping e paginação), e aqueles que não movimentam os processos entre tais dispositivos de armazenamento.
2 - Considere um sistema computacional com 40kb de memória principal e que
utilize um sistema operacional de 10kb que implemente alocação contígua de
memória. Qual a taxa de subutilização da memória principal para um programa
que ocupe 20kb de memória?
Existirá uma não utilização de memória equivalente a 10KB.
3 - Suponha um sistema computacional com 64kb de memória principal e que
utilize um sistema operacional de 14kb que implemente alocação contígua de
memória. Considere também um programa de 90kb, formado por um módulo
principal de 20kb e três módulos independentes, cada um com 10kb, 20kb e
30kb. Como o programa poderia ser executado utilizando-se apenas a técnica
de overlay?
O módulo principal é carregado em memória , assim sendo , quando o mesmo referênciar os módulos posteriores o mesmo é carregado na memória na área de “overlay”. Caso o módulo principal referencie o mesmo que já esteja em memória , a carga não é realizada;caso contrário , o novo módulo irá sobrepor o que estiver na área de “overlay”.
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?
Não executária caso ocorrece o aumento do módulo acontecesse. O programa so executaria completo caso o aumento da memória aumentasse ou o tamanho do módulo principal diminuisse.
5- Qual a diferença entre fragmentação interna e fragmentação externa da
memória principal?
Interna -> São espaços menores deixados na mémoria já pré definidas ; Uma vez que os programas carregado internamente não ocupam todo o espaço ali reservado.
Externa ->São espaços menores deixados em mémoria a medida que os programas são executados não permitindo assim o ingresso de novos programas. 
6- Suponha um sistema computacional com 128kb de memória principal e que
utilize um sistema operacional de 64kb que implemente alocação particionada
estática relocável. Considere também que o sistema foi inicializado com três
partições: P1 (8kb), P2 (24kb) e P3 (32kb). Calcule a fragmentação interna da
memória principal após a carga de três programas PA, PB e PC.
a) P1 ¬ PA (6kb); P2 ¬ PB (20kb); P3 ¬ PC (28kb)
		P1 = 2KB ; P2=4KB ; P3=4KB
b) P1 ¬ PA (4kb); P2 ¬ PB (16kb); P3 ¬ PC (26kb)
P1 = 4KB ; P2=8KB ; P3=6KB
c) P1 ¬ PA (8kb); P2 ¬ PB (24kb); P3 ¬ PC (32kb)
		P1 = 0KB ; P2=0KB ; P3=0KB
7 - Considerando o exercício anterior, seria possível executar quatro programas
concorrentemente utilizando apenas a técnica de locação particionada estática
relocá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 seria possível pois de acordo com o controle de tabelas , mesmo se em algum dos espaços nas partições fosse preenchido , o mesmo constaria como OCUPADO. 
Seria possível executar um programa de 36 KB caso fosse usado a técnica de “overlay”.
8 - Qual a limitação da alocação particionada estática absoluta em relação à
alocação estática relocável?
Inicialmente, os programas só podiam ser carregados e executados em apenas uma
partição específica, mesmo se outras estivessem disponíveis. No código absoluto,
todas as referências a endereços no programa são posições físicas na memória principal,ou seja, o programa só poderia ser carregado a partir do endereço de memória especificado no seu próprio código.
No código relocável, todas as referências a endereços no programa são relativas ao início do código e não a endereços físicos de memória. Desta forma, os programas puderam ser executados a partir de qualquer partição.
9- Considere que os processos da tabela a seguir estão aguardando para serem
executados e que cada um permanecerá na memória durante o tempo especificado. O sistema operacional ocupa uma área de 20kb 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 64kb e é alocada em blocos múltiplos de 4kb. Os processos 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
Em P1 :
S.O ocupa ocupa 5 blocos (5 * 4 = 20KB)
P1 (8 * 4 = 32KB) , fragmentação interna de 2KB , fragmentação externa de 12KB (3 Blocos)
Em P2 :
S.O ocupa ocupa 5 blocos (5 * 4 = 20KB)
P2 (2 * 4 = 8KB) , fragmentação interna de 2KB , fragmentação externa de 36KB (9 Blocos)
Em P3 :
S.O ocupa ocupa 5 blocos (5 * 4 = 20KB)
P1 (9 * 4 = 36KB) , fragmentação interna de 0KB , fragmentação externa de 8KB (2 Blocos)
10 - Considerando as estratégias para escolha da partição dinamicamente,
conceitue as estratégias best-fit e worst-fit especificando prós e contras de
cada uma.
Best-fit -> Melhor escolha de espaço de alocação para a execução do programa desejado.
PART1 = 32KB -> PB=32kb ; PART2 = 30KB -> PB=29kb ; PART3 = 6KB -> PC=4kb.
Menor desuso de alocação interna .
Maior uso da memória de forma geral.
Menor número de partições disponíveis para a execução de novos programas , assim sendo a memória estará grande parte do seu tempo ocupada.
Worst-fit -> Pior escolha de espaço de alocação para a execução do programa desejado.
PART1 = 32KB -> PB=6kb ; PART2 = 30KB -> PB=2kb ; PART3 = 6KB -> PC=1kb.
Maior número de partições disponíveis para a execução de novos programas , assim sendo a memória estará grande parte do seu tempo ociosa ou com espaço.
Maior desuso de alocação interna . 
Maior desuso da memória de forma geral.
11 - Considere um sistema que possua as seguintes áreas livres na memória
principal, ordenadas crescentemente: 10kb, 4kb, 20kb, 18kb, 7kb, 9kb, 12kb e
15kb. Para cada programa abaixo, qual seria a partição alocada utilizando-se
as estratégias first-fit, best-fit e worst-fit?
a) 12kb
First-fit : 20kb
Best-fit : 12kb
Worst-fit: 20kb
b) 10kb
First-fit : 10kb
Best-fit : 10kb
Worst-fit: 20kb
c) 9kb
First-fit : 10kb
Best-fit : 9kb
Worst-fit: 20kb
12 - Um sistema utiliza alocação particionada dinâmica como mecanismo de
gerência de memória. O sistema operacional aloca uma área de memória total
de 50kb e possui, inicialmente, os programas da tabela a seguir:
5 kb Programa A
3 kb Programa B
10 kb Livre
6 kb Programa C
26 kb Livre
Realize as operações abaixo seqüencialmente, mostrando o estado da memória após
cada uma delas. Resolva a questão utilizando as estratégias best-fit, worst-fit e firstfit:
a) alocar uma área para o programa D que possui 6 kb;
b) liberar a área do programa A;
5 kb LIVRE
3 kb Programa B
6 kb Programa D
4 kb Livre
6 kb Programa C
26 kb Livre
c) alocar uma área para o programa E que possui 4 kb.
4 kb Programa B
1 kb LIVRE
3 kb Programa B
6 kb Programa D
4 kb Livre
6 kb Programa C
26 kb Livre
13 - O que é swapping e para que é utilizada essa técnica?
A técnica de swapping foi introduzida para contornar o problemada insuficiência de memória principal. Essa técnica é aplicada à gerência de memória para programas que esperam por memória livre para serem executados. Nesta situação, o sistema escolhe um processo residente, que é transferido da me mória principal para a memória secundária (swap out), 
geralmente disco. Posteriormente, o processo é carregado de volta da memória secundária para a memória principal (swap in) e pode continuar sua execução como se nada tivesse ocorrido.
14 - Por que é importante o uso de um loader com relocação dinâmica para que a
técnica de swapping possa ser implementada?
O loader com relocação dinâmica permite que os programas possam ser retirados da memória principal para a me mória 
secundária e trazidos novamente para a memória principal em qualquer posição.

Continue navegando