Você está na página 1de 6

Lista a prova 1

Exercícios recomendados:
1. O que é um computador de programa armazenado?
2. Quais são os quatro componentes principais de qualquer computador de uso geral?
3. Explique a lei de Moore.
4. Liste e explique as principais características de uma família de computadores.
5. Considere um microprocessador de 32 bits, com um barramento de dados de 16 bits, controlado
por um clock de entrada de 8 Mhz. Suponha que esse microprocessador tenha um ciclo de
barramento cuja duração mínima seja igual a 4 ciclos de clock. Qual é a taxa de transferência de
dados máxima pelo barramento que esse microprocessador pode sustentar, em bytes/s?
6. Quais são as principais propriedades da memória semicondutora?
7. Qual é a principal diferença entre as memórias RAM e ROM?
8. Qual é a diferença entre DRAM e SRAM em termos das características como velocidade, tamanho
e custo?
9. Por que os sistemas de memórias dos computadores são construídos sob a forma hierárquica?
10. Qual é a diferença entre DRAM e SRAM em termos de aplicação?
11. Por que as DRAMs geralmente têm capacidades muito maiores que a SRAMs, mesmo se
construídas com a mesma tecnologia de fabricação?
12. Se uma DRAM tem 1024 linhas e um tempo de refresh máximo de 8 ms, com que frequência uma
operação de refresh ocorre? Qual é a proporção da CPU utilizada por refreshes sabendo que cada
operação gasta 100 ns?
13. Quais são algumas aplicações para a ROM?
14. Quais são as diferenças entre EPROM, EEPROM e memória flash?
15. Qual é o relacionamento geral entre tempo de acesso, custo e capacidade de memória?
16. Qual é a largura de banda de um sistema de memória que transfere 64 bits de dados por solicitação,
tem uma latência de 25 ns e um tempo de pré-carga de 5 ns entre operações?
17. Em uma hierarquia de memória de dois níveis, se o nível mais alto tem um tempo de acesso de 8
ns e o nível mais baixo tem um tempo de acesso de 60 ns, qual a taxa de acerto necessária no nível
mais alto para obtermos um tempo médio de acesso de 10 ns?
18. Quais são as diferenças entre mapeamento direto, mapeamento associativo e mapeamento
associativo em conjunto?
19. Para uma cache mapeada diretamente, um endereço de memória principal é visto como consistindo
em três campos. Liste e defina os três campos.
20. Para uma cache associativa, um endereço de memória principal é visto como consistindo em dois
campos. Liste e defina os dois campos.
21. Para uma cache associativa em conjunto, um endereço da memória principal é visto como
consistindo em três campos. Liste e defina os três campos.
22. Para uma cache com capacidade de 32KBytes, quantas linhas ela possui caso o tamanho de cada
linha seja de 32, 64 e 128 bytes?
23. Uma cache associativa em conjunto consiste em 64 linhas, ou slots, divididas em conjuntos de
quatro linhas. A memória principal contém 4 K blocos de 128 palavras cada. Mostre o formato dos
endereços da memória principal.
24. Uma cache associativa em conjunto com duas linhas por conjuntos possui linhas de 16 bytes e um
tamanho total de 8 KBytes. A memória principal de 64 MBytes e endereçável por byte. Mostre o
formato dos endereços da memória principal.
25. Para uma cache com linhas de 128 bytes, dê o endereço da primeira palavra nas linhas que contém
os seguintes endereços:
a. A23847EF
b. 7245E824
c. EEFABCD2
26. Liste três classificações gerais de dispositivos externos ou periféricos.
27. Quais são as principais funções de um módulo de E/S?
28. Liste e defina resumidamente três técnicas para realizar E/S.
29. Liste e defina resumidamente duas técnicas para lidar com múltiplas interrupções.
30. Suponha que um dado protocolo de barramento exija 10 ns para que os dispositivos façam as
solicitações, 15 ns para selecionar o dispositivo e 25 ns para completar a operação. Quantas
operações podem ser completadas por segundo?
31. Um dispositivo de E/S transfere 20 Mbytes/s de dados para a memória pelo barramento de E/S, que
tem uma largura de banda de 100 Mbytes/s. Os 20 Mbytes/s são transferidos como 2000 páginas
independentes, cada uma das quais tem 10 Kbytes de comprimento. Se o processador opera a 200
Mhz e demora 1000 ciclos para iniciar uma operação de DMA e 1500 ciclos para responder à
interrupção do dispositivo quando uma transferência DMA é completada, qual parte do tempo da
CPU é gasto tratando da transferência de dados com e sem DMA?
32. Um disco rígido com 5 pratos tem 2048 trilhas por prato e 1024 setores por trilha. Sabendo que
cada setor possui 512 bytes, qual é a capacidade de armazenamento deste disco?
33. Um disco rígido rotaciona a 15.000 RPM e tem 1024 trilhas, cada uma com 2048 setores. A cabeça
do disco começa na trilha 0. O disco recebe uma solicitação para acessar um setor aleatório em uma
trilha aleatória. Se o tempo de posicionamento do cabeçote é de 1 ms para cada 100 trilhas,
responda:
a. Qual é o tempo médio de posicionamento?
b. Qual é a latência rotacional média?
c. Qual é o tempo de transferência para um setor?
d. Qual é o tempo médio para responder uma solicitação?
34. Se o cabeçote do disco está na trilha 51 e o disco possui as seguintes solicitações pendentes: 12,
1000, 54, 503 e 21, quantas trilhas serão percorridas para cada tipo de escalonamento?

Exercícios extras:
1. O ENIAC era uma máquina decimal, onde um registrador era representado por um anel de 10
válvulas. A qualquer momento, somente uma válvula estava no estado On, representando um dos
10 dígitos. Supondo que o ENIAC tivesse a capacidade de ter várias válvulas no estado On e OFF
simultaneamente, por que essa representação é “esbanjadora” e que faixa de valores inteiros
poderíamos representar usando 10 válvulas?
2. Um processador acessa a memória principal com um tempo de acesso médio de T2. Uma memória
cache menor é interposta entre o processador e a memória principal. A cache tem um tempo de
acesso significativamente mais rápido de T1 < T2. A cache mantém, a qualquer momento, cópias
de algumas palavras da memória principal e é projetada de modo que as palavras mais prováveis
de serem acessadas no futuro próximo estejam na cache. Suponha que a probabilidade de que a
próxima palavra acessada pelo processador esteja na cache seja H, conhecido como razão de acerto.
a. Para qualquer acesso a memória isolado, qual e o speedup (ganho) teórico de acessar uma
palavra na cache ao invés da memória principal?
b. Considere que T seja o tempo de acesso médio. Expresse T como uma função de T1, T2 e
H. Qual e o speedup geral como uma função de H?
c. na prática, um sistema pode ser projetado de modo que o processador deva primeiro acessar
a cache para determinar se a palavra está na cache e, se não estiver, entao acessar a memória
principal, de modo que, em uma perda (ao contrário de um acerto), o tempo de acesso a
memória e T1 + T2. Expresse T como uma função de T1, T2 e H. Agora, calcule o speedup
e compare com o resultado produzido na parte (b).
3. Considere um microprocessador de 32 bits hipotético com instruções de 32 bits, compostas de dois
campos: o primeiro byte contém o opcode e o restante o endereço de um operando. Qual é a
capacidade de memória máxima endereçável diretamente (em bytes)?
4. Uma cache associativa em conjunto tem um tamanho de bloco de quatro palavras de 16 bits e um
tamanho de conjunto de 2. A cache pode acomodar um total de 4.096 palavras. O tamanho da
memória principal que pode ser mantido em cache e de 64 K × 32 bits. Projete a estrutura da cache
e mostre como os endereços do processador são interpretados.
5. Considere um sistema de memória que usa um endereço de 32 bits para endereçar em nível de byte,
mais uma cache que usa um tamanho de linha de 64 bytes.
a. Considere uma cache mapeada diretamente com um campo de tag no endereço de 20 bits.
Mostre o formato de endereço e determine os seguintes parâmetros: número de unidades
endereçáveis, número de blocos na memória principal, número de linhas na cache, tamanho
da tag.
b. Considere uma cache associativa. Mostre o formato de endereço e determine os seguintes
parâmetros: número de unidades endereçáveis, número de blocos na memória principal,
número de linhas na cache, tamanho da tag.
c. Considere uma cache associativa em conjunto com quatro linhas por conjunto, com um
campo de tag no endereço de 9 bits. Mostre o formato de endereço e determine os seguintes
parâmetros: número de unidades endereçáveis, número de blocos na memória principal,
número de linhas no conjunto, número de conjuntos na cache, número de linhas na cache,
tamanho da tag.
6. Uma cache tem 64Kbytes de capacidade, linhas de 128 bytes e é de grupo associativo de 4 caminhos
(4 linhas por conjunto). Sabendo que o sistema que utiliza a cache utiliza endereços de 32 bits,
responda:
a. A cache possui quantas linhas e quantos conjuntos?
b. Quantas bits são utilizados para referenciar os bytes de cada linha (off-set)? E para os
conjuntos? E para as tags?
c. Quais serão os valores de off-set e de conjunto para os seguintes endereços:
i. ABC89987
ii. 32651987
iii. 228945DB
iv. 48569CAC
7. Dada uma hierarquia de memórias, sabe-se que o processador executa 1.000.000 referências no
total: 45.000 na cache e 945.000 na memória principal. Quais são as taxas de acerto?
8. Considere um computador com as seguintes características: total de 1 MByte de memória principal;
tamanho de palavra de 1 byte; tamanho de bloco de 16 bytes; e tamanho de cache de 64 KBytes.
a. Para os endereços de memória principal F0010, 01234 e CABBE, indique os
deslocamentos de tag, endereço de linha de cache e palavra para uma cache mapeada
diretamente.
b. Indique dois endereços quaisquer da memória principal com diferentes tags que são
mapeados para o mesmo slot de cache para uma cache mapeada diretamente.
9. Considere uma cache de um único nível com um tempo de acesso de 2,5 ns, um tamanho de linha
de 64 bytes e uma razão de acerto de H = 0,95. A memória principal usa uma capacidade de
transferência em bloco que tem um tempo de acesso da primeira palavra (4 bytes) de 50 ns e um
tempo de acesso de 5 ns para cada palavra subsequente.
a. Qual é o tempo de acesso quando existe uma falha de cache? Suponha que a cache espere
até que a linha tenha sido buscada da memória principal e depois reexecute para um acerto.
b. Suponha que aumentar o tamanho da linha para 128 bytes aumente o H para 0,97. Isso
reduz o tempo de acesso médio a memória?
10. Se um sistema de memória tem uma largura de banda de 120.000.000 bytes/s, transfere 2 bytes de
dados por acesso e tem um tempo de pré-carga de 5ns entre acessos, qual é a latência do sistema
de memória?
11. Suponha que o custo de uma SRAM seja de 25$ por megabyte, para um tempo de acesso de 5 ns,
que uma DRAM custe 1$ por megabyte, com tempo de acesso de 60 ns e que espaço de memória
virtual custe 10$ por Gbyte com tempo de acesso de 7 ms.
a. Determine o custo por byte de um sistema que possua 256 Kbytes de cache, 128 MBytes
DRAM e 1 Gbyte de memória virtual.
b. Qual o tempo médio de acesso à memória sabendo que as probabilidades de acerto são
80% para a SRAM, 80% para a DRAM e 100% para a memória virtual?
c. O que poderia ser feito para aumentar a taxa de acerto nos dois primeiros níveis?
12. Para cada um dos seguintes casos, determina se SRAMs ou DRAMs seriam os blocos contrutivos
mais adequados para o sistema de memória e explique o porquê. Assuma que existe apenas um
nível de memória.
a. Uma memória no qual o desempenho é o objetivo mais importante.
b. Um sistema no qual o custo seja mais importante.
c. Um sistema no qual é importante que os dados sejam armazenados por um longo período
de tempo sem nenhuma interferência do processador.
13. Um sistema de memória com dois níveis tem um tempo médio de acesso de 12 ns. O nível mais
alto do sistema de memória tem uma taxa de acertos de 90% e um tempo de acesso de 5 ns. Qual é
o tempo de acesso do nível mais baixo?
14. Por que aumentar o tamanho da cache aumenta tende a aumentar sua taxa de acertos?
15. Por que aumentar a associatividade de uma cache tende a aumentar sua taxa de acertos? Qual é a
desvantagem em aumentar a associatividade?
16. Considere um microprocessador de 32 bits que tem uma cache associativa em conjunto com quatro
linhas por conjunto de 16 KBytes no chip. Suponha que a cache tenha um tamanho de linha de
quatro palavras de 32 bits. Desenhe um diagrama de blocos dessa cache, mostrando sua organização
e como os diferentes campos de endereço são usados para determinar um acerto/falha de cache.
Onde, na cache, a palavra no local de memória ABCDE8F8 e mapeada?
17. Pesquisadores têm investigado mecanismos nos quais o sistema operacional deliberadamente
coloca os arquivos utilizados com mais frequência nas trilhas mais externas do disco, de modo a
melhorar o desempenho. Por que isso melhora o desempenho?
18. Um fabricante deseja projetar um disco rígido com capacidade de pelo menos 30 GBytes. Se a
tecnologia permite setores de 1024 bytes, 2048 setores por trilha e 4096 trilhas por prato, quantos
pratos serão necessários?
19. Qual das três politicas de escalonamento de discos magnéticos seria a melhor em cada uma das
seguintes situações:
a. Um sistema no qual a largura de banda é importante, mas qualquer solicitação de E/S tem
que ser completada em um tempo razoável.
b. Um sistema no qual se sabe que o programa só fará uma solicitação de E/S por vez.
c. Um sistema na qual a largura de banda é fundamental e não existe limite de tempo para
uma solicitação ser completada.