Gerenciamento de Recursos I Exercícios – Gerência de Memória 1) Considerando o uso de particionamento Buddy em um sistema com 4 GB de memória principal, responda as seguintes perguntas: a) Esboce o gráfico que representa o uso da memória caso a seguinte sequência de requisições seja apresentada no sistema: A (130 MB), B (750 MB), C (600 MB), D (300 MB) e E (230 MB). b) É possível no particionamento Buddy haver fragmentação externa? Justifique. c) Indique no gráfico que representa o uso de memória onde seria carregado o processo X, de tamanho igual a 240 MB. UFRJ – IM – DCC Prof. Antonio Carlos Gay Thomé Profa. Valeria M. Bastos 1 Gerenciamento de Recursos I Exercícios – Gerência de Memória 2) Suponha um sistema computacional com 64 KB de memória principal e que utilize um sistema operacional de 14 KB que implementa 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? 3) Considere um sistema que possua as seguintes áreas livres na memória principal, ordenadas crescentemente: 10 Kb, 4 Kb, 20 Kb, 18 Kb, 7 Kb, 9 Kb, 12 Kb, 12 Kb e 15 Kb. Para cada programa abaixo, qual seria a partição alocada utilizando-se as estratégias first-fit, best-fit e worst-fit (Tanenbaum, 1992)? a) 12 Kb b) 10 Kb c) 9 Kb UFRJ – IM – DCC Prof. Antonio Carlos Gay Thomé Profa. Valeria M. Bastos 2 Gerenciamento de Recursos I Exercícios – Gerência de Memória 4) 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 50 Kb e possui, inicialmente, os programas da tabela a seguir Tamanho Status 5 Kb Processo A 3 Kb Processo B 10 Kb Livre 6 Kb Processo C 26 Kb Livre Realize as operações abaixo, 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. a) alocar área para o processo D que possui 6 Kb; b) liberar a área do programa A; c) alocar área para o processo E que possui 4 Kb UFRJ – IM – DCC Prof. Antonio Carlos Gay Thomé Profa. Valeria M. Bastos 3 Gerenciamento de Recursos I Exercícios – Memória Virtual 1. Um sistema operacional implementa gerência de memória virtual por paginação. Considere endereços virtuais com 16 bits, referenciados por um mesmo processo durante sua execução e sua tabela de páginas abaixo com no máximo 256 entradas, sendo que estão representadas apenas as páginas presentes na memória real. Indique para cada endereço virtual a seguir a página virtual em que o endereço se encontra, o respectivo deslocamento e se a página encontra-se na memória principal neste momento. Página UFRJ – IM – DCC Endereço Físico 0 8K 1 4K 2 24 K 3 0K 4 16 K 5 12 K 9 20 K 11 28 K a) b) c) Prof. Antonio Carlos Gay Thomé (307)10 (2049)10 (2304)10 Profa. Valeria M. Bastos 4 Gerenciamento de Recursos I Exercícios – Endereçamento em MV 2. Uma memória virtual possui páginas de 1024 endereços, existem 8 páginas virtuais e 4096 bytes de memória real. A tabela de páginas de um processo está descrita abaixo, sendo que o asterisco indica que a página não está na memória principal: Página Virtual Página Real 0 3 1 1 2 * 3 * 4 2 5 * 6 0 7 * UFRJ – IM – DCC a) Faça a lista/faixa de todos os endereços virtuais que irão causar page fault. b) Indique o endereço real correspondente aos seguintes endereços virtuais: 0, 1023, 1024, 6500 e 3728. Prof. Antonio Carlos Gay Thomé Profa. Valeria M. Bastos 5 Gerenciamento de Recursos I Exercícios – Busca e alocação em MV 3. Considere um sistema de memória virtual que implemente paginação, onde o limite de frames por processo é igual a três. Descreva para os itens abaixo, onde é apresentada uma sequência de referências à páginas pelo processo, o número total de page fault para as estratégias de realocação de páginas FIFO e LRU. Indique qual a mais eficaz para cada item. a) 1 / 2 / 3 / 1 / 4 / 2 / 5 / 3 / 4 / 3 b) 1 / 2 / 3 / 1 / 4 / 1 / 3 / 2 / 3 / 3 UFRJ – IM – DCC Prof. Antonio Carlos Gay Thomé Profa. Valeria M. Bastos 6 Gerenciamento de Recursos I Exercícios – Busca e alocação em MV 4. Em um sistema paginado, as páginas têm 4Kb endereços, a memória principal possui 32Kb e o limite de páginas na memória principal é de 8 páginas. Um programa faz referência à endereços virtuais situados nas páginas 0, 2, 1, 9, 11, 4, 5, 2, 3, 1, nesta ordem. Após essa sequência de acessos, a tabela de páginas completa desse programa tem a configuração abaixo, sendo que as entradas em branco correspondem a páginas ausentes. Página 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 End. Físico 8K 4K 24 K 0K 16 K 12 K * * * 20 K * 28 K * * * * UFRJ – IM – DCC a) Qual o tamanho (em bits) e o formato do endereço virtual? Justifique. b) O processo faz novas referências à endereços virtuais situados nas páginas 5, 15, 12, 8 e 0, nesta ordem. Complete o quadro a seguir, que ilustra o processamento dessa sequência de acessos utilizando a estratégia de remoção FIFO. Mostre o estado final da tabela de páginas. Página Referenciada Página Removida Page Fault (sim/não) 5 15 12 8 0 Prof. Antonio Carlos Gay Thomé Profa. Valeria M. Bastos 7 Gerenciamento de Recursos I Exercícios – Busca e alocação em MV 5. Em um computador, o endereço virtual é de 16 bits e as páginas têm tamanho de 2Kb endereços. O WSL (Working Set List) de um processo qualquer é de quatro páginas. Inicialmente, nenhuma página está na memória principal. Um programa faz referência a endereços virtuais situados nas páginas 0, 7, 2, 7, 5, 8, 9, 2 e 4, nesta ordem. a) Quantos bits do endereço virtual destinam-se ao número da página? E ao deslocamento? b) Ilustre o comportamento da política de substituição LRU, mostrando, a cada referência, quais páginas estão em memória, os page faults causados e as páginas escolhidas para saírem da memória. Página virtual 0 7 2 7 5 8 9 2 4 UFRJ – IM – DCC Páginas na memória Page fault? Prof. Antonio Carlos Gay Thomé Página a ser substituída Profa. Valeria M. Bastos 8 Gerenciamento de Recursos I Exercícios – Memória Virtual 6. Em um computador, o endereço virtual é de 16 bits e as páginas têm tamanho de 4K bytes. O limite de páginas reais de um processo qualquer é de 5 páginas. A memória principal é de 32K bytes. Inicialmente, nenhuma página está em memória. Um programa não possui nenhuma página carregada na memória principal e faz referência a endereços virtuais situados nas páginas 0, 1, 2, 1, 5, 0, 8, 9, 2 e 0, nesta ordem. a) Quantos bits do endereço virtual destinam-se ao número da página e ao deslocamento? b) Em quantas páginas reais está dividida a memória principal? c) Ilustre o comportamento da política de substituição LRU (Least Recently-Used) na tabela abaixo, mostrando a cada referência, que páginas estão em memória principal, os page faults causados e as páginas escolhidas para saírem da memória. Página Virtual UFRJ – IM – DCC Page Fault (S/N) Pág. que Sai da MP Prof. Antonio Carlos Gay Thomé Profa. Valeria M. Bastos 9 Gerenciamento de Recursos I Exercícios – Busca e alocação em MV d) Após várias seqüências de acesso, a tabela de páginas completa deste programa tem a seguinte configuração (entradas em branco correspondem a páginas ausentes na memória principal): Página 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 End.físico 8K 4K 0 28K 20K Suponha que a próxima instrução a ser executada se encontra localizada no endereço virtual 4120, como a seguir: Endereço virtual 4120 Instrução . mov 8200, reg reg <- (8200), onde reg é um registrador de uso geral Mostrar, para a instrução acima sendo executada, os endereços físicos calculados no ciclo de busca da instrução e no ciclo de execução. Não esquecer de modificar as informações na Tabela de Páginas. Endereço Virtual NPV Endereço Físico Deslocamento Ciclo de Busca Ciclo de Execução UFRJ – IM – DCC Prof. Antonio Carlos Gay Thomé Profa. Valeria M. Bastos 10