exerc-mem

2
Sistemas Operacionais – Prof. Rafael R. Obelheiro – Semestre: 2008.1 Lista de Exerc´ ıcios 5 — Gerˆ enciadeMem´oria 1. Considere um sistema que gerencia seus 256K de mem´ oria usando uma parti¸c˜ ao de 64K para o sistema operacional e parti¸c˜ oes fixas de 16K para os processos de usu´ ario. O SO possui 48K, e existem na mem´ oria pro- cessos de usu´ ario de 10K, 4K, 7K, 9K, 12K, 13K, 5K, 16K e 6K. Determine a mem´ oria alocada, a mem´ oria efetivamente utilizada, a mem´ oria desperdi¸ cada (atrav´ es de uma por- centagem em rela¸c˜ ao ao total alocado) e a fragmenta¸c˜ ao m´ edia em cada parti¸c˜ ao (em termos porcentuais). 2. [Oliveira 2004, 6.1] Considere um sistema cuja gerˆ encia de mem´ oria ´ e feita atrav´ es de parti¸c˜ oes vari´ aveis. Nesse momento, existem as seguintes lacunas (´ areas livres): 10K, 4K, 20K, 18K, 7K, 9K, 12K e 13K, nessa ordem. Quais espa¸cos ser˜ ao ocupados pelas solicita- ¸c˜ oes: 5K, 10K e 6K, nessa ordem, se: (a) First-fit for utilizado? (b) Best-fit for utilizado? (c) Worst-fit for utilizado? (d) Circular-fit for utilizado? 3. [Oliveira 2004, 6.2] Considere novamente um sistema cuja gerˆ encia de mem´ oria ´ e feita atrav´ es de parti¸ oes vari´ aveis. Nesse mo- mento, existem as seguintes lacunas (´ areas livres): 10K, 4K, 20K, 18K, 7K, 9K, 12K e 13K, nessa ordem. Quais espa¸cos ser˜ ao ocupados pelas solicita¸ oes: 15K, 4K e 8K, nessa ordem, se: (a) First-fit for utilizado? (b) Best-fit for utilizado? (c) Worst-fit for utilizado? (d) Circular-fit for utilizado? 4. [Oliveira 2004, 6.5] Considere um sis- tema operacional que trabalha com pagina- ¸c˜ ao simples. As p´ aginas s˜ ao de 1 Kbyte. O endere¸ co l´ ogico ´ e formado por 16 bits. O en- dere¸ co f´ ısico ´ e formado por 20 bits. Qual o tamanho do: (a) Espa¸ co de endere¸camento l´ ogico (maior programa poss´ ıvel)? (b) Espa¸co de endere¸ camento f´ ısico (me- oria principal)? (c) Entrada da tabela de p´ aginas, sem con- siderar bits de prote¸c˜ ao? (d) Tabela de p´ aginas (n´ umero de entradas necess´ arias no pior caso)? 5. [Oliveira 2004, 6.8] O sistema operacional XYZ utiliza pagina¸c˜ ao como mecanismo de gerˆ encia de mem´ oria. ao utilizadas p´ agi- nas de 1 Kbyte. Um endere¸co l´ ogico ocupa 20 bits. Um endere¸ co f´ ısico ocupa 24 bits. Cada entrada na tabela de p´ aginas cont´ em, al´ em do n´ umero da p´ agina f´ ısica, um bit de alido/inv´ alido e um bit que indica apenas leitura (read-only ). Mostre como podem ser calculados os seguintes valores: (a) Qual o tamanho m´ aximo para a mem´ o- ria f´ ısica; (b) Qual o maior programa que o sistema suporta; (c) Quantas entradas possui a tabela de aginas; (d) Quantos bits ser˜ ao necess´ arios para a tabela de p´ aginas (c´ alculo exato). 6. [Oliveira 2004, 6.12] Em um sistema usandosegmenta¸c˜ ao paginada, o espa¸ co de endere¸ camento l´ ogico de cada processo con- siste de no m´ aximo 16 segmentos, cada um deles podendo ter at´ e 64 Kbytes de tamanho. As p´ aginas f´ ısicas s˜ ao de 512 bytes. Diga quantos bits s˜ ao necess´ arios para especificar cada uma das grandezas abaixo, explicando de onde veio cada n´ umero. (a) N´ umero do segmento; (b) N´ umero de uma p´ agina l´ ogica dentro do segmento; (c) Deslocamento dentro de uma p´ agina; (d) Endere¸co l´ ogico completo. 7. [Silberschatz 1994, 8.5] Supondo parti- ¸c˜ oes de mem´ oria de 100K, 500K, 200K, 300K e 600K (nessa ordem), como cada um dos algoritmos first-fit, best-fit e worst-fit aloca- ria processos de 212K, 417K, 112K e 426K (nessa ordem)? Qual algoritmo faz o uso mais eficiente da mem´ oria?

Transcript of exerc-mem

Page 1: exerc-mem

Sistemas Operacionais – Prof. Rafael R. Obelheiro – Semestre: 2008.1

Lista de Exercıcios 5 — Gerencia de Memoria

1. Considere um sistema que gerencia seus256K de memoria usando uma particao de64K para o sistema operacional e particoesfixas de 16K para os processos de usuario. OSO possui 48K, e existem na memoria pro-cessos de usuario de 10K, 4K, 7K, 9K, 12K,13K, 5K, 16K e 6K. Determine a memoriaalocada, a memoria efetivamente utilizada, amemoria desperdicada (atraves de uma por-centagem em relacao ao total alocado) e afragmentacao media em cada particao (emtermos porcentuais).

2. [Oliveira 2004, 6.1] Considere um sistemacuja gerencia de memoria e feita atraves departicoes variaveis. Nesse momento, existemas seguintes lacunas (areas livres): 10K, 4K,20K, 18K, 7K, 9K, 12K e 13K, nessa ordem.Quais espacos serao ocupados pelas solicita-coes: 5K, 10K e 6K, nessa ordem, se:

(a) First-fit for utilizado?

(b) Best-fit for utilizado?

(c) Worst-fit for utilizado?

(d) Circular-fit for utilizado?

3. [Oliveira 2004, 6.2] Considere novamenteum sistema cuja gerencia de memoria e feitaatraves de particoes variaveis. Nesse mo-mento, existem as seguintes lacunas (areaslivres): 10K, 4K, 20K, 18K, 7K, 9K, 12Ke 13K, nessa ordem. Quais espacos seraoocupados pelas solicitacoes: 15K, 4K e 8K,nessa ordem, se:

(a) First-fit for utilizado?

(b) Best-fit for utilizado?

(c) Worst-fit for utilizado?

(d) Circular-fit for utilizado?

4. [Oliveira 2004, 6.5] Considere um sis-tema operacional que trabalha com pagina-cao simples. As paginas sao de 1 Kbyte. Oendereco logico e formado por 16 bits. O en-dereco fısico e formado por 20 bits. Qual otamanho do:

(a) Espaco de enderecamento logico (maiorprograma possıvel)?

(b) Espaco de enderecamento fısico (me-moria principal)?

(c) Entrada da tabela de paginas, sem con-siderar bits de protecao?

(d) Tabela de paginas (numero de entradasnecessarias no pior caso)?

5. [Oliveira 2004, 6.8] O sistema operacionalXYZ utiliza paginacao como mecanismo degerencia de memoria. Sao utilizadas pagi-nas de 1 Kbyte. Um endereco logico ocupa20 bits. Um endereco fısico ocupa 24 bits.Cada entrada na tabela de paginas contem,alem do numero da pagina fısica, um bit devalido/invalido e um bit que indica apenasleitura (read-only). Mostre como podem sercalculados os seguintes valores:

(a) Qual o tamanho maximo para a memo-ria fısica;

(b) Qual o maior programa que o sistemasuporta;

(c) Quantas entradas possui a tabela depaginas;

(d) Quantos bits serao necessarios para atabela de paginas (calculo exato).

6. [Oliveira 2004, 6.12] Em um sistemausando segmentacao paginada, o espaco deenderecamento logico de cada processo con-siste de no maximo 16 segmentos, cada umdeles podendo ter ate 64 Kbytes de tamanho.As paginas fısicas sao de 512 bytes. Digaquantos bits sao necessarios para especificarcada uma das grandezas abaixo, explicandode onde veio cada numero.

(a) Numero do segmento;

(b) Numero de uma pagina logica dentrodo segmento;

(c) Deslocamento dentro de uma pagina;

(d) Endereco logico completo.

7. [Silberschatz 1994, 8.5] Supondo parti-coes de memoria de 100K, 500K, 200K, 300Ke 600K (nessa ordem), como cada um dosalgoritmos first-fit, best-fit e worst-fit aloca-ria processos de 212K, 417K, 112K e 426K(nessa ordem)? Qual algoritmo faz o usomais eficiente da memoria?

Page 2: exerc-mem

8. [Silberschatz 1994, 8.10] Considere umsistema de paginacao com a tabela de pagi-nas armazenada na memoria.

(a) Se uma referencia a memoria leva 200ns, quanto tempo leva uma referencia amemoria paginada?

(b) Se sao adicionados registradores asso-ciativos (i.e., TLB) e 75% de todas asreferencias a tabela de paginas sao en-contradas nos registradores associati-vos, qual o tempo efetivo de referen-cia a memoria? (Suponha que encon-trar uma entrada da tabela de pagi-nas nos registradores associativos levatempo zero se a entrada estiver pre-sente.)

9. [Silberschatz 1994, 8.16] Considere a se-guinte tabela de segmentos:

Segmento Base Limite0 219 6001 2300 142 90 1003 1327 5804 1952 96

Determine os enderecos fısicos correspon-dentes aos seguintes enderecos logicos:(0,430), (1,10), (2,500), (3,400) e (4,112).

10. [Tanenbaum 2003, 4.7] Para cada um dosseguintes enderecos virtuais decimais, cal-cule o numero da pagina virtual e o desloca-mento para uma pagina de 4 KB e para umapagina de 8 KB: 20000, 32768, 60000.

11. [Tanenbaum 2003, 4.12] Uma maquinatem um espaco de enderecamento de 32 bitse uma pagina de 8 KB. A tabela de paginasesta totalmente em hardware, com uma pa-lavra de 32 bits para cada entrada. Quando

um processo tem inıcio, a tabela de pagi-nas e copiada para o hardware a partir damemoria, no ritmo de uma palavra a cada100 ns. Se cada processo executa durante100 ms (incluindo o tempo para carregar atabela de paginas), qual a fracao do tempode CPU que e dedicada ao carregamento dastabelas de paginas?

12. [Tanenbaum 2003, 4.13] Um computadorcom um enderecamento de 32 bits usa umatabela de paginas de dois nıveis. Os en-derecos sao quebrados em um campo de 9bits para a tabela de paginas de nıvel 1, umcampo de 11 bits para a tabela de paginas denıvel 2 e um deslocamento. Qual o tamanhodas paginas e quantas existem no espaco deenderecamento citado?

13. [Tanenbaum 2003, 4.15] Um determinadocomputador tem enderecos virtuais de 32bits e paginas de 4 KB. O programa e os da-dos, juntos, cabem na pagina de mais baixaordem (0–4095). A pilha cabe na pagina demais alta ordem. Quantas entradas sao ne-cessarias na tabela de paginas se a pagina-cao tradicional (de um nıvel) e usada? Equantas entradas na tabela de paginas saonecessarias para uma paginacao de dois nı-veis, com 10 bits para cada parte?

14. [Tanenbaum 2003, 4.17] Um computadorcujos processos tem 1024 paginas em seusespacos de enderecamento mantem suas ta-belas na memoria. A sobrecarga necessariapara a leitura de uma palavra da tabela depaginas e de 5 ns. Para reduzir esse custo,o computador tem uma TLB, a qual contem32 pares (pagina virtual, pagina fısica) e as-sim pode fazer uma varredura nas entradasem 1 ns. Qual e a taxa de acerto necessariapara reduzir a sobrecarga media para 2 ns?

2