Baixe o app para aproveitar ainda mais
Prévia do material em texto
Sistemas Operacionais Gerenciamento de Memoria Problema 1). Para cada um dos enderec¸os virtuais decimais seguintes, calcule o nu´mero da pa´gina virtual e o deslocamento para uma pa´gina de 4KB e uma de 8KB: a) 20.000; b) 32.768; c) 60.000; d) 12.050; e) 0; Soluc¸a˜o: a) 4KB: 4 ∗ 1.024 = 4.096 20.000/4.096 = 4 4 ∗ 4096 = 16.384 20.000 − 16.384 = 3.616 8KB: 8 ∗ 1.024 = 8.192 20.000/8.192 = 2 2 ∗ 8.192 = 16.384 20.000 − 16.384 = 3.616 Soluc¸a˜o: b) 4KB: 4 ∗ 1.024 = 4.096 32.768/4.096 = 8 8 ∗ 4096 = 32.768 32.768 − 32.768 = 0 8KB: 8 ∗ 1.024 = 8.192 32.768/8.192 = 2 2 ∗ 8.192 = 16.384 20.000 − 16.384 = 3.616 1 Sistemas Operacionais Gerenciamento de Memoria Soluc¸a˜o: c) 4KB: 4 ∗ 1.024 = 4.096 60.000/4.096 = 14 14 ∗ 4.096 = 57.344 60.000 − 57.344 = 2.656 8KB: 8 ∗ 1.024 = 8.192 60.000/8.192 = 7 7 ∗ 8.192 = 57.344 60.000 − 57.344 = 2656 Soluc¸a˜o: d) 4KB: 4 ∗ 1.024 = 4.096 12.050/4.096 = 2 2 ∗ 4.096 = 8.192 12.050 − 8.192 = 3.858 8KB: 8 ∗ 1.024 = 8.192 12.050/8.192 = 1 1 ∗ 8.192 = 8.192 12.050 − 8.192 = 3.858 Soluc¸a˜o: e) 4KB: 0 8KB: 0 2 Sistemas Operacionais Gerenciamento de Memoria Problema 2). Que tipo de suporte de hardware e´ necessa´rio para uma me´moria virtual paginada funcionar ? Soluc¸a˜o: Uma me´moria virtual paginada necessita de uma unidade de gerenciamento de me´moria (MMU), para que seja realizado o mapeamento dos enderec¸os virtuais em enderec¸os de memo´ria f´ısica. Problema 3). O processador 8086 da Intel na˜o tinha uma MMU ou suporte para memo´ria virtual. Mesmo assim, algumas empresas venderam sistemas que continham uma CPU 8086 inalterada e que realizava paginac¸a˜o. Deˆ um palpite informal sobre como eles conseguiram isso. (Dica: pense sobre a localizac¸a˜o lo´gica da MMU.) Soluc¸a˜o: Por na˜o ter um mediador como a MMU, na˜o havia traduc¸a˜o de enderec¸os virtuais para fisicos, logo a memo´ria principal era diretamente acessada com o suso de regis- tradores, ou matriz privada de me´moria que mantinha um conjunto de pa´ginas. Problema 4). A partir da figura abaixo, deˆ o enderec¸o f´ısico correspondendo a cada um dos enderec¸os virtuais a seguir: a) 20; b) 4.100; c) 8.300; d) 33.000; e) 45.689 Figura 1: tabela de pa´ginac¸a˜o. Soluc¸a˜o: a) Localizado nos enderec¸os fisicos de 8.192 a 12.287. b) Localizado nos enderec¸os fisicos de 4.096 a 8.191. 3 Sistemas Operacionais Gerenciamento de Memoria c) Localizado nos denrec¸os fisicos de 24.576 a 28.671. d) page fault. e) Localizado nos enderec¸os fisicos de 28.671 a 32.779. Problema 5). Considere um sistema de troca no qual a me´moria consiste nos seguintes tamanhos de lacunas na ordem de memo´ria: 10MB, 4MB, 20MB, 18MB, 7MB, 12MB, 15MB. Qual lacuna e´ pega para sucessivas solitiac¸o˜es de segmentos de a) 12MB; b) 10MB; c) 9MB; Para o algoritmo de primeiro encaixe ? Agora repita a questa˜o para melhor encaixe, pior encaixe e pro´ximo encaixe. Soluc¸a˜o: Primeiro encaixe 20MB, 10MB e 18MB. Soluc¸a˜o: Melhor encaixe 12MB, 10MB e 15MB Soluc¸a˜o: Pior encaixe 20MB, 18MB e 15MB Soluc¸a˜o: pro´ximo encaixe 20MB, 18MB e 12MB Problema 6). Suponha que uma ma´quina tenha enderec¸os virtuais de 48 bits e enderec¸os f´ısicos de 32 bits: a) Se as pa´ginas teˆm 3KB, quantas entradas ha´ na tabela de pa´ginas se ela tem apenas um u´nico n´ıvel ? Explique b) Suponha que esse mesmo sistema tenha uma TLB com 32 entradas. Ale´m disso, suponha que um programa contenha instruc¸o˜es que se encaixam em uma pa´gina e leia sequencialmente elementos inteiros, longs, de um conjunto que compreende de milhares de pa´ginas. Qua˜o efetivo sera´ o TLB para esse caso ? Soluc¸a˜o: 4 Sistemas Operacionais Gerenciamento de Memoria a) Havera˜o aproximadamente 64G entradas, pois, considerando que o sistema na˜o e´ multi n´ıvel e possui um u´nico n´ıvel e que a quantidade de bits e´ de 48 bits o calculo a se fazer sera´: 3KB ∗ 1.024 = 3.072 3 ∗ 210 = 212 48 − 12 = 36 236 = 26 ∗ 230 = 64G b) Long = 4B 3KB/4B = 3 ∗ 1024/4 = 768 A cada 768 longs mudara os enderec¸os de me´moria. Problema 7). Suponha uma se´rie de refereˆncias de pa´ginas virtuais conte´m repetic¸o˜es de longas sequeˆncias de refereˆncias de pa´ginas seguidas ocasionalmente por uma refereˆncia de pa´gina aleato´ria. Por exemplo, a sequeˆncia 0,1, . . . , 511, 431, 0, 1, . . . , 511, 332, 0, 1, . . . consiste em repetic¸o˜es da sequeˆncia 0, 1, . . . , 511 seguidas por uma referencia aleato´ria a`s pa´ginas 431 e 332. a) Por que os algoritmos de substituic¸a˜o padra˜o (LRU, FIFO, relo´gio) na˜o sa˜o efetivos ao lidar com essa carga de trabalho para uma alocac¸a˜o de pa´ginas que e´ menor que o comprimento da sequeˆncia? b) Se fossem alocados 500 quadros de pa´ginas para esse programa, descreva uma abor- dagem de substituic¸a˜o de pa´gina que teria um desempenho muito melhor do que os algoritmos LRU, FIFO ou de relo´gio. Soluc¸a˜o: a) b) Problema 8). Um computador tem seis quadros de pa´ginas. O tempo de carregamento, o tempo de u´ltimo acesso e os bits R e M para cada pa´gina sa˜o como mostrados a seguir (os tempos esta˜o em tiques de relo´gio): 5 Sistemas Operacionais Gerenciamento de Memoria a) Qual pa´gina NRU substituira´? b) Qual pa´gina FIFO substituira´? c) Qual pa´gina LRU substituira´? d) Qual pa´gina Segunda Chance substituira´? Soluc¸a˜o: a) Pa´gina 2. b) Pa´gina 4. c) Pa´gina 4. d) Pa´gina 2. Problema 9. Um pequeno computador em um carta˜o inteligente tem quatro quadros de pa´ginas. Na primeira interrupc¸a˜o de relo´gio, os bits R sa˜o 0111 (pa´gina zero e´ 0, o restante e´ 1). Nas interrupc¸o˜es de relo´gio subsequentes, os valores sa˜o 1011, 1010, 1101, 0010, 1010, 1100 e 0001. Se o algoritmo de envelhecimento for usado com um contador de 8 bits, deˆ os valores dos quatro contadores apo´s a u´ltima interrupc¸a˜o. Soluc¸a˜o: 6
Compartilhar