2 Lista de Exercícios de Arquitetura de Computadores: Questões

Fazer download em pdf ou txt
Fazer download em pdf ou txt
Você está na página 1de 6

2ª Lista de Arquitetura de Computadores

2ª Lista de Exercícios de Arquitetura de Computadores

Questões
1. Um microprocessador realiza uma sondagem periódica (polling) junto a um módulo de
E/S a cada 0,5 ms. Cada sondagem em si gasta 500 ciclos. Assuma que o
microprocessador somente faz este polling durante as fatias de tempo em que os
programas de usuário não estão sendo executados, de modo que não haja tempos de
comutação de contexto envolvidos nas operações de E/S. Quantos ciclos por segundo
o microprocessador gasta com a sondagem?
2. Um módulo de E/S efetua 150 solicitações de interrupção por segundo a um
microprocessador. Cada interrupção demora 10.000 ciclos para ser efetivamente
tratada. Considere que este microprocessador gasta 1.000 ciclos para efetuar uma
mudança de contexto e iniciar o tratamento de interrupções, e outros 1.000 ciclos para
fazer uma comutação de contexto de volta para o programa que estava sendo
executado quando a interrupção ocorreu. Quantos ciclos por segundo o processador
gasta ao todo com as solicitações do módulo de E/S?
3. Considere uma Arquitetura de Von Neumann formada por um microprocessador, uma
Memória Principal e um Módulo de E/S conectado a um disco. Os três primeiros são
interconectados por um barramento, e o disco é conectado ao Módulo de E/S.
Suponha que um arquivo de 10 MB, formado por páginas de 4 KB, seja copiado
integralmente do disco para a Memória Principal. Esse procedimento dura 1 segundo e
custa ao microprocessador 20.000.000 de ciclos. Supondo que o processador opera a
200 MHz, calcule o percentual de tempo gasto com esta operação. Em seguida, insira
no barramento um controlador de DMA que age copiando uma página do arquivo por
vez para a Memória Principal. Considerando que o microprocessador gasta 1.000 ciclos
para iniciar uma operação de DMA e 1.500 ciclos para responder a uma interrupção do
controlador de DMA quando a transferência de uma página é completada, calcule para
este caso qual o percentual de tempo gasto pelo microprocessador na transferência do
arquivo.
4. Considere um disco que possua 96 setores de 512 B por trilha e que gire a 360 rpm.
Um microprocessador lê um setor do disco usando E/S dirigida por interrupção, com
uma interrupção a cada Byte transferido. Se o microprocessador gasta 2,5
microsegundo para processar cada interrupção, qual é a porcentagem do tempo gasto
pelo microprocessador no tratamento de E/S, tomando como base o tempo gasto para
ler um setor? Caso fosse inserido um controlador de DMA capaz de ler um setor inteiro
do disco por vez, qual seria o novo valor do percentual de tempo gasto pelo
microprocessador no tratamento de E/S, tomando como base a mesma referência?
5. Um controlador de DMA transfere 1 B por vez para a Memória Principal utilizando a
técnica de roubo de ciclo, a partir de um Módulo de E/S que transfere dados à taxa de
1.200 B/s ininterruptamente. O microprocessador é capaz de buscar 1.000.000 de
instruções por segundo na Memória Principal. Qual é o percentual de diminuição na
velocidade do microprocessador em virtude da atividade do controlador de DMA?
6. Considere um sistema com 64 MB de Memória Principal. Supondo que a paginação em
nível único é utilizada, que o tamanho da página é de 4 KB e que os endereços físicos e
lógicos atribuídos a um processo são de 32 bits, calcule o percentual de memória

Prof. Sílvio Fernandes Página 1


2ª Lista de Arquitetura de Computadores

relativo à Memória Principal que é gasto armazenando a Tabela de Páginas deste


processo. Assuma que cada entrada na Tabela de Páginas consuma 3 B.
7. Suponha um espaço de endereçamento físico de 28 bits e um processo com espaço de
endereçamento virtual de 32 bits. Calcule quantos bits são necessários para
especificação do número de página do processo e do número de blocos da Memória
Principal, considerando um tamanho de página de 2 KB.
8. Em um sistema com 128 MB de Memória Principal, o espaço de endereçamento físico
é de 36 bits e processos possuem um espaço de endereçamento lógico de 48 bits. Se o
sistema utiliza páginas de 4 KB, quantas páginas e blocos os espaços de
endereçamento lógico e físico podem suportar? Quantos blocos existem realmente na
Memória Principal?
9. Suponha que a tabela de páginas para um processo em execução atualmente pareça
como a ilustrada abaixo.

Número de página Número de Bloco


0 4
1 7
2 —
3 2
4 —
5 0

A memória principal é endereçada no nível de Byte, tudo é numerado a partir do 0


(zero) e os números apresentados são expressos usando o sistema de numeração
decimal. O tamanho da página é de 1024 B. A quais endereços físicos correspondem
cada um dos seguintes endereços virtuais?
a. 1052
b. 2221
c. 5499

10. Dado o seguinte conjunto de mapeamentos de endereços para uma arquitetura na


qual os endereços físicos e virtuais têm 32 bits de comprimento e páginas de 4 KB de
tamanho, qual é o endereço físico que corresponde a cada um dos endereços virtuais?

Número de página Número de bloco


0xabc89 0x97887
0x13385 0x99910
0x22433 0x00001
0x54483 0x1a8c2

a. 0x22433007
b. 0x13385abc
c. 0xabc89011
11. Um sistema tem endereços virtuais de 32 bits, endereços físicos de 24 bits e páginas
de 2 KB.

Prof. Sílvio Fernandes Página 2


2ª Lista de Arquitetura de Computadores

a. Qual é o tamanho de cada entrada na Tabela de Páginas, se for utilizada uma


Tabela de Páginas de nível único? Arredonde para cima, para o Byte mais
próximo.
b. Quantas entradas na Tabela de Páginas são necessárias para este sistema?
c. Quanta área de armazenamento é necessária para a Tabela de Páginas?
12. Assuma que um processo esteja dividido em quatro segmentos de tamanhos iguais e
que, a cada segmento, seja atribuída uma tabela de oito páginas (temos, portanto, o
emprego combinado da paginação e da segmentação). Assuma também que o
tamanho da página seja de 2 KB.
a. Qual o tamanho máximo de cada segmento?
b. Qual é o máximo espaço de endereçamento lógico para o processo?
c. Assuma que um elemento na localização física 00021ABC seja acessado pelo
processo. Qual é o formato do endereço lógico que o processo gera para ele?
Qual o máximo espaço de endereçamento físico para o sistema?

13. Considere um espaço de endereçamento lógico paginado (composto por 32 páginas de


2 KB cada) mapeado em um espaço de memória física de 1 MB.
a. Qual é o formato do endereço lógico do processador?
b. Na estrutura da tabela de páginas, quantos bits são utilizados para identificar
um bloco?
c. Repita o procedimento anterior supondo que o espaço físico de memória fosse
reduzido pela metade.
14. Para um sistema com endereços físicos e virtuais de 32 bits e tamanho de página de 1
KB, quantos níveis seriam necessários em uma Tabela de Páginas multinível? Quanta
área de armazenamento adicional seria necessária para a Tabela de Páginas multinível,
quando comparada com uma Tabela de Páginas de nível único, para o mesmo sistema?
Para simplificar os cálculos, suponha que, além do número de bloco, sejam necessários
outros 10 bits em cada entrada da Tabela de Páginas.
15. Um sistema tem páginas de 4 KB e utiliza uma Tabela de Páginas multinível. Se o
sistema exige uma Tabela de Páginas de quatro níveis, quais são os números máximo e
mínimo de bits nos seus endereços virtuais? Para simplificar os seus cálculos, assuma
que as entradas na Tabela de Páginas ocupam 8 B em todos os níveis da Tabela de
Páginas, independentemente do número de bits dos endereços virtuais.
16. Considere um sistema no qual o espaço de endereçamento virtual é de 64 B, o
tamanho da página é de 4 KB, e a quantidade de memória física é de 512 MB.
a. Qual o espaço requerido por uma Tabela de Páginas de nível único associada a
um processo, assumindo que cada entrada nesta Tabela de Páginas consome 4
B?
b. Em quantos níveis a paginação pode ser feita de forma qua cada Tabela de
Páginas caiba em uma única página?
c. Considere um projeto alternativo baseado em uma IPT Linear, na qual cada
entrada tenha o tamanho de 10 B. Qual o espaço a ser consumido por essa
tabela?
d. Considere agora um novo projeto alternativo, desta vez baseado em uma IPT
com função Hash. Supondo que cada entrada na Tabela de Âncoras Hash

Prof. Sílvio Fernandes Página 3


2ª Lista de Arquitetura de Computadores

consuma 4 B e que cada entrada na IPT propriamente dita consuma 14 B, qual


o espaço a ser consumido pelas duas tabelas deste projeto?
20. Considerando que os números abaixo se encontram na representação de
Complemento de Dois, efetue as seguintes operações:
a. 111000 – 110011
b. 11001100 – 101110
c. 01101111 + 01100010
d. 111100001111 – 110011110011
e. 11000011 – 11101000
f. 11010010 – 01111101
21. Expresse os seguintes números na representação de Ponto Flutuante IEEE 754:
a. -5
b. -6
c. -1,5
d. 384
e. 1/16
f. -1/32
22. Mostre qual o modo de endereçamento utilizado em cada uma das instruções que
compõem o segmento de código abaixo.

Número Instrução Significado


I1 MOVE R1, 5 Carregue o operando "5" no registrador R1
Carregue o operando localizado no endereço 0xA4B7 da
I2 LOAD R2, [0xA4B7]
Memória Principal para o registrador R2

I3 ADD R3, R1, R2 Some os operandos localizados em R1 e R2 e armazene


o resultado em R3
I4 STORE R3, [0x87FE] Armazene o operando localizado em R3 no endereço
[0x87FE] da Memória Principal
I5 LOAD R4, [0xBB89] Carregue para R4 o operando localizado no endereço
contido no endereço 0xBB89 da Memória Principal
I6 LOAD R5, [R6] Carregue para R5 o operando localizado no endereço da
Memória Principal contido em R6
I7 SUB R8, R4, R5 Subtraia os operandos localizados em R4 e R5 e
armazene o resultado em R8
I8 STORE R8, [0xA451] Armazene o operando localizado em R8 no endereço
[0xA451] da Memória Principal

23. Mostre o modo de endereçamento utilizado em cada uma das instruções que compõem o
segmento de código abaixo.

Número Instrução Significado

I1 MOVE R1, 0 Carregue o operando “0” no registrador R1

I2 MOVE R2, 0 Carregue o operando “0” no registrador R2

I3 LOAD R3, R1, [0xFA54] Carregue para R3 o operando cujo endereço na MP é a

Prof. Sílvio Fernandes Página 4


2ª Lista de Arquitetura de Computadores

soma de 0xFA54 com o conteúdo de R1

Some os operandos localizados em R2 e R3 e ponha o


I4 ADD R2, R2, R3
resultado em R2

Some o operando localizado em R1 com o operando “1”


I5 ADD R1, R1, 1
e armazene o resultado em R1

Se o valor do operando localizado em R1 for igual ao


I6 JNE R1, 5, -6 operando “5”, carregue a instrução cujo endereço na
MP é o valor atual do PC diminuído de 4 (ou seja, I3)

24. Considere um processador onde haja um pipeline composto dois estágios, denominados BI
(Busca de Instrução) e EI (Execução de Instrução). Determine quantas instruções são
processadas por ciclo de relógio considerando um programa composto por três instruções
genéricas (I1, I2 e I3), e supondo que os estágios de busca e de execução consomem dois
ciclos de relógio, cada. Calcule qual é o acréscimo percentual no desempenho gerado pelo
pipeline frente a um projeto que não utilize esta estratégia.
25. No pipeline da questão anterior, a duração do estágio de execução é igual a do estágio de
busca. Determine quantas instruções são processadas por ciclo de relógio considerando
que o estágio de busca consome dois ciclos de relógio e que o estágio de execução
consome três ciclos de relógio. Calcule para este caso qual é o acréscimo percentual no
desempenho gerado pelo pipeline frente a um projeto que não o utilize.
26. Considere um processador cujo pipeline seja composto por dois estágios genéricos,
denominados E1 e E2. Considere que E1 e E2 consumam, cada um, seis ciclos de relógio.
Determine quantas instruções são processadas ao longo de 24 ciclos de relógio. Em
seguida, divida o estágio E1 em dois outros, denominados E1a e E1b, e suponha que cada
um consuma três ciclos de relógio. Divida também o estágio E2 em outros dois,
denominados E2a e E2b, e suponha também que cada um deles consuma três ciclos de
relógio. Mais uma vez, determine quantas instruções são processadas ao longo de 24
ciclos de relógio.
27. Com relação a questão anterior, quantas instruções seriam processadas ao longo de 24
ciclos de relógio caso dividíssemos o estágio E1 em outros três (E1a, E1b e E1c), cada qual
consumindo dois ciclos de relógio, e fizéssemos o mesmo com o estágio E2 – isto é, o
dividíssemos em outros três (E2a, E2b e E2c), cada qual consumindo dois ciclos de relógio?

Respostas
1. 1.000.000 ciclos/s.
2. 1.800.000 ciclos/s.
3. 10 % e 3,2 %, respectivamente.
4. 73,7 % e 0,14 %, respectivamente.
5. 0,12 %.
6. 4,7 %.
7. 21 bits e 17 bits, respectivamente.
8. 236 páginas e 224 blocos, respectivamente; 215 (ou 32.768) blocos.
9. (a) 7196; (b) interrupção por falta de página; (c) 379.

Prof. Sílvio Fernandes Página 5


2ª Lista de Arquitetura de Computadores

10. (a) 0x00001007; (b) 0x99910abc; (c) 0x97887011.


11. (a) 3 B; (b) 221 entradas; (c) 6 MB.
12. (a) 16 KB; (b) 64 KB; (c) 2 bits (segmento) + 3 bits (página) + 11 bits (deslocamento); 4
GB.
13. (a) 5 bits (página) + 11 bits (deslocamento); (b) 9 bits; (c) 8 bits.
14. 3 níveis (divisão do endereço virtual = 6 + 8 + 8 + 10 bits); 65 KB adicionais.
15. 48 bits (9 + 9 + 9 + 9 + 12) e 40 bits (1 + 9 + 9 + 9 + 12), respectivamente.
16. (a) 254 B, ou 16 PB ( 1 PB = 250 B); (b) 6 níveis: 2 + 10 + 10 + 10 + 10 + 10 + 12 bits; (c)
1,3 MB; (d) 2,3 MB.
17. (a) 000101; (b) 11011110; (c) overflow; (d) 001000011100; (e) 11011011; (f) overflow.
18. (a) 1 10000010 01000000000000000000000
(b) 1 10000010 10000000000000000000000
(c) 1 10000000 10000000000000000000000
(d) 0 10001000 10000000000000000000000
(e) 0 01111100 00000000000000000000000
(f) 1 01111011 00000000000000000000000
19. I1: imediato.
I2: direto.
I3: via registrador.
I4: via registrador.
I5: indireto.
I6: indireto via registrador.
I7: via registrador.
I8: via registrador.
23. I1: imediato.
I2: imediato.
I3: deslocamento (indexação).
I4: via registrador.
I5: via registrador + imediato.
I6: via registrador + imediato + deslocamento (relativo).
24. 0,375 instruções/ciclo; 50% a mais de desempenho.
25. 0,25 instruções/ciclo; 25% a mais de desempenho.
26. 3,5 instruções; 6,5 instruções.
27. 8,5 instruções.

Prof. Sílvio Fernandes Página 6

Você também pode gostar