Escolar Documentos
Profissional Documentos
Cultura Documentos
GABARITO
1. Como é possível existir uma memória bem pequena entre processador e memória principal
(memória cache) e esta memória ter uma eficiência tão grande (em cerca de 95 a 97% dos acessos
do processador à MP ele encontra na cache uma cópia do dado/instrução desejado)?
Resp: Devido ao princípio da localidade modalidade espacila. Basta a memória pequena
conter os dados que o processador está utilizando em um dado momento (bloco de
endereços contíguos). O ponto principal deste conceito é o fato da execução ser em
endereços contíguos.
2. Qual é a memória mais rápida existente em sistemas de computação? Onde esta memória se
localiza? Qual é a capacidade padrão desta memória?
Resp: Registrador – Os registradores estão localizados no processador, próximos às
unidades de cálculo (ULA e UPF). Os registradores tem basicamente o tamanho da palavra
do processador (para números inteiros), p.ex, 32 bits ou 64 bits. No caso das unidades de
cálculo de ponto flutuante, eles tem o dobro da capacidade.
3. Qual foi a solução encontrada por pesquisadores para o problema da diferença de desempenho
entre o processador e memória principal?
Resp: Conforme mencionado no item 1 acima, a solução foi incluir uma pequena memória
entre processador e MP, de modo que esta memória contenha os itens (código
executável e dados) que o processador precisa acessar em um período de tempo. Isso
acontece graças a eficácia do princípio da localidade.
4. Por que, ao longo do tempo, os fabricantes acabaram incluindo novas memórias entre processador
e memória principal? Ou seja, por que cache L1, L2, etc em vez de apenas uma cache?
Resp: porque verificaram que o tempo médio de acesso do processador e mais memórias
melhorou quando se incluiu, p.ex., uma 2ª cache e até mesmo uma cache L3. Porém, isso
não é verdadeiro se forem acrescentadas outras memórias (cache L4, p.ex.), quando o
desempenho começa a cair, devido ao excesso de transferências entre as caches.
5. O processador Intel i7 possui 4 núcleos, cada um deles tendo uma memória L1 dividida, de 32KB e
uma L2 com até 2 MB. É comum encontrar-se um tempo de latência processador (registradores) -
cache L1 de 1 ns, uma latência de 10 ns entre Cache L2 e Cache L1 e de 40 ns entre MP e Cache L2.
Considerando que, em dado momento de processamento o desempenho do sistema seja de 75%
nos acessos Cache L1-Processador, de 20% nos acessos entre Cache L2 e Cache L1 e de 5 % nos
acessos entre MP e Cache L2, calcule o tempo médio desse sistema.
Resp: P-L1 = 1 ns e 75%; L1 – L2 – 10ns e 20%; L2-MP – 40 ns e 5%
Ocorrendo Falta na L1 gasta-se 11ns para trazer o dado da L2, sendo 10 para o bloco vir
da L2 para L1 e 1 ns da L1 para P
Falta na L2, gasta 51ns para o dado ir da L2 para o processador, passando antes pela L1.
Então, gasta 40ns para o bloco que contém o dado vir da MP para L2, mais 10ns para um
bloco menor vir da L2 para L1 e mais 1ns para o dado efetivamente ir da L1 para
Processador.
TM = ((75 x 1) + (20 x 11) + (5 x 51) / 100 = 75 + 220 + 255 = 550 / 100 = 5,5 ns
6. A memória cache foi introduzida com o processador 386DX, e com esse processador o cache de
memória estava localizado na placa-mãe.
Os processadores modernos, tais como o Intel Core e o AMD FX, incluem a memória cache L1 em
outro local. Qual será ele?
Resp: No interior dos processadores.
OPÇÃO B)
10. Algumas versões dos processadores Phenon possuem 4 núcleos, cada um deles contendo
cache L1 de 128KB e cache L2 de 512 KB até 2 MB. Porque os processadores atuais
possuem cache dividida? Quais tipos de cache podem ser divididas?
Resp: Para melhorar o tempo de transferência das informações, já que dados e instruções
seguem caminhos diferentes a partir da cache L1. Se fosse uma única cache L1, poderia
um dado atrasar a transferência de uma instrução ou o contrário. Dividindo cache L1 para
dados e L1 para instruções, isso não acontece.
Isso só é válido para a cache L1, diretamente ligada à área de controle (L1-I) e
diretamente ligada aos registradores (L1-D).
11. Qual é a diferença entre tempo de acesso ou latência de memória e ciclo de máquina (ou
de memória)?
Resp: Tempo de acesso é o período gasto pelo sistema para transferir um dado (ou
instrução) entre processador e outros dispositivo. Ciclo de máquina é o intervalo entre
dois acessos consecutivos. No caso das memórias DRAM, além do tempo de acesso é
necessário gastar-se um tempo adicional para recarreggamento de cada capacitor que
representa o valor do bit; nesse caso, o ciclo de máquina é a soma dos dois tempos:
acesso e recarregamento.
Já no caso das SRAM, não há recarregamento e, assim, o ciclo de máquina (ou de
memória) é praticamente igual ao tempo de acesso..
Nestas memórias, o desempenho deve ser medido não pelo tempo de acesso, mas sim
pelo ciclo de máquina, que mede QUANTOS acessos são possíveis na unidade de tempo.
12. Qual é a unidade básica de medida de capacidade de memórias? Qual é a exceção a esta
regra?
Resp: É byte, exceto no caso de registradores, cuja capacidade é informada em bits.
13. Na hierarquia de memórias aparece uma memória chamada “memória virtual”. De que se
trata?
Resp: É um espaço do HD que os SO usam para criar um arquivo com a estrutura
semelhante a da MP, extendendo sua capacidade. Assim, os programas executáveis, na
ocasião que são psotos para executar, são armazenados pelo SO na memória virtual e
dela vão em blocos (páginas) para a MP, em um processo semelhante ao da relaçõ MP
com cache.
14. Considere um computador de 64 bits, cujos endereços sequenciais de memória abaixo são
válidos.
Endereço 1: 000000000022FE38
Endereço 2: 000000000022FE40
Endereço 3: 000000000022FE48
Endereço 4: 000000000022FE4C
16. Quando se deseja adquiri um determinado produto, é comum se realizar uma comparação de preços
e características, acessando-se diversos sites relacionados ao referido produto. Deste modo,
também é comum o usuário acessas um site em um dado instante e, depois de pesquisar em outros,
voltar em instantes ao mesmo site, para efetivar uma compra ou refazer a pesquisa. Neste caso, qual
a modalidade usada do Princípio da Localidade?
Princípio da Localidade, modalidade temporal. Ele define que, sempre que o processador acessa um
endereço de memória, é provável que, em breve ele tentará acessar o mesmo endereço (um loop,
por exemplo). Assim, pode-se usar esta modalidade no navegador da Internet, para o acesso
frequente a um memso site.
17. Sabe-se que, graças ao princíoio da localidade, criou-se uma memória pequena e rápida, situada
entre processador e MP, chamada Cache. E que esta Cache usualmente armazena cópia de dados
da MP, organizados em blocos de células (bytes), de modo que a transferência de dados da MP para
Cache e vice-versa é realizada em blocos e não em bytes. Supondo uma MP que que seja endereçada
byte por byte e que esteja conectada a uma Cache, sendo utilizados em ambas memórias blocos de
32 bytes. Para o sistema de controle da comunicação e acesso cache/MP, a MP está organizada em
256M blocos. Calcule, neste caso, a largura (quantidade de bits) do BE-barramento de endereços.
Se a cache e MP empregam blocos de 32 bytes cada, então o total de bytes da MP será:
256M blocos x 32 bytes = 228 x 25 = 233 ou 8 Gbytes. Se a MP é endereçada por byte, isso significa
que, cada endereço armazena UM byte. Assim, a capacidade de endereços da MP é 8 G endereços
(ou seja, 8G endereços de 1 byte ou 8 GBytes).
Como N = 8G ou 233 e N = 2BE, então, BE = 33 bits
19. Cite três exemplos de memórias do tipo volátil e três exemplos de memórias do tipo
não volátil?
20. Considerando a hierarquia de memórias estudada nos vídeos, verifica-se que os atuais
sistemas de computação tem sido projetados com mais de um tipo de memória
cache, como cache L1, cache L2, etc. Observa-se também, que cada nível de número
maior possui uma capacidade maior que o anterior, de número menor (p.ex., a L2 tem
maior capacidade que a L1). Por que não ter apenas uma Cache com capacidade
maior, do que duas ou três? Voce tem uma explicação para isso?
Resp: Devido o custo, que cresce bastante com aumento de capacidade (lembrar das
características das memórias SRAM). Compensa ter outra memória Cache, de maior
capacidade que L1, porém mais lenta e por isso com custo menor, mas que é muito
melhor em tempo do que a MP. Deste modo, as Faltas que ocorrem na Cache L1 são
em parte resolvidas encontrando-se o dado na Cache L2 em vez da MP (mais rápida
que a MP e mais barata que a L1).
22. Suponha um sistema de computação que possua um processador que contém 32 registradores
de dados, cada um tendo uma largura de 24 bits, isto é, podem armazenar dados ou endereços
de valor máximo igual a 224 – 1. Havendo necessidade de identificar os registradores de dados,
qual deverá ser a largura , em bits, do endereço de cada registrador. E se um deles fosse
designado para armazenar endereços da MP (memória principal), qual deverá ser o espaço
máximo de endereçamento da MP (capacidade da MP).?
32 registradores. Então como universalmente X = 2n e X = 32, n = 5 bits . Endereço de cada registrador
Ora, se cada registrador armazena um dado (ou endereço) com 24 bits de largura, então, MP tem
capacidade igual a 224 endereços ou 16M endereços, 224 = 24 (16) x 220 (M)