Buscar

Lista de exercícios - Arquitetura e Organização de Computadores

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 15 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 15 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 15 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Dispositivos de Entrada e Saída
1) Qual a principal funcionalidade dos dispositivos de entrada e saída?
 Comunicação homem-máquina
2) Quais as funções básicas dos dispositivos de entrada/saída?
 Fornecer uma interface com o processador e a memória, através de barramento.
 Permitir a interface com os periféricos, através de conexões de dados adequadas.
3) O que é um dispositivo externo e quais as categorias que se enquadram?
Dispositivo externo oferece um meio para a troca de dados entre o ambiente externo e o computador.
Três categorias:
 Comunicação com o usuário, como terminais de vídeo, impressora, etc.
 Comunicação com a máquina, discos magnéticos, sensores, controladores;
 Comunicação com dispositivos remotos, voltados para trocar dados com dispositivos remotos.
4) Como é constituída a interface com o módulo de E/S?
É constituída através de: sinais de controle, dados de estado.
 Sinais de controle: determinam a função a ser executada pelo dispositivo.
 Dados: formam um conjunto de bits a serem enviados para ou recebidos do módulo de E/S.
 Sinais de estado: indicam o estado do dispositivo.
5) Quais as categorias mais importantes de um módulo de E/S?
 Controle e temporização;
 Comunicação com o processador;
 Comunicação com dispositivos;
 Área de armazenamento temporário de dados;
 Detecção de erros.
6) Explique Entrada e Saída Programada?
 Uma das três técnicas usadas para a realização de operações de E/S.
 Os dados são transferidos entre o processador e o módulo de E/S.
 O processador executa um programa e tem controle direto da operação de E/S, incluindo a detecção
do estado do dispositivo, o envio de comandos de leitura ou escrita e a transferência de dados.
 Há um grande desperdício de tempo do processador.
7) Explique Acesso Direto a memória?
 É uma técnica mais eficiente para a transferência de grandes volumes de dados.
 Envolve um módulo adicional no barramento do sistema, o controlador de DMA.
 O controlador de DMA é capaz de imitar a CPU e controlar o sistema do processador.
 Um módulo de DMA pode tanto usar o barramento apenas quando este não está sendo usado pela
CPU quanto forçar o processador a suspender sua operação temporariamente (roubo de ciclo).
8) Explique E/S dirigida por interrupção?
 O módulo de E/S recebe um comando READ, por exemplo, do processador;
 É feita a leitura do dado requerido do periférico especificado e transferido para o registrador de
dados;
 Sinaliza a ocorrência de uma interrupção por meio de uma linha de controle;
 Espera até que o dado lido seja solicitado pelo processador;
 Quando recebe a solicitação, o dado é colocado no barramento de dados e aguarda uma nova
instrução.
--------------------------------------------------------------- // ----------------------------------------------------------------------
Memória Principal
1- Defina Memória RAM. Como funciona?
É a memória de trabalho da CPU, seu grande “bloco de rascunho”, onde os programas e os dados e
sucedem em execução, uns após os outros. Permite o acesso a qualquer uma das células de memória a
qualquer tempo, é volátil. Seu funcionamento é baseado em Flip-Flops.
2- Porque a memória RAM é volátil.
Quando não há energia, os dados se perdem, pois a RAM é baseada em Flip-Flops.
3- "Um programa precisa estar armazenado inteiro na memória para termos acesso a ele". Esta
informação é verdadeira? Justifique.
O programa não precisa estar inteiro na memória RAM, bastando que o mesmo seja dividido em
“pedaços” chamados de páginas, executadas em sequência.
4- Qual é capacidade de endereçamento de uma memória RAM. Como podemos descobrir?
 Quantidade de células de memória = 2 ^ n, onde n é a quantidade de bits do endereço.
 Um endereço de 16 bits endereça no máximo 2 ^ 16 células (64K)
5- O que é uma célula? Como acessamos a célula da memória RAM?
 Célula é a unidade de armazenamento do computador.
 A memória principal é organizada em células.
 Célula é a menor unidade da memória que pode ser endereçada (não é possível buscar uma
"parte" da célula) e tem um tamanho fixo (para cada máquina).
 Uma célula de memória armazena um único valor.
 Endereço é o localizador da célula.
6- Como funciona a célula relacionada aos seus transistores e capacitores (Reflesh)?
 O controlador da memória lê a memória e então reescreve seu conteúdo;
 Esta operação de atualização (conhecida como refrescamento) acontece automaticamente
milhares de vezes por segundo;
 A RAM dinâmica precisa ser atualizada dinamicamente o tempo todo senão ela "esquece" o que
está armazenando.
 O ponto negativo desta atualização é que leva tempo e diminui a velocidade da memória.
7- Explique o que é uma palavra de memória.
 Uma palavra consiste em uma unidade de informação.
 Consiste em uma sequência de m bits.
8- O que é uma memória ROM?
 Memória de somente escrita
 Não perde os dados quando falta energia
 Existem vários tipos: PROM, EPROM, EEPROM, FLASH
 Existem algumas regraváveis
9- O que é uma memória CACHE?
 É uma memória muito rápida e cara;
 Fica localizada dentro da CPU;
 Armazena pequenas instruções de processamento.
--------------------------------------------------------------- // ----------------------------------------------------------------------
Subsistemas de Memória
1-) Quais os métodos de acesso em registros de memória?
Acesso Sequencial: Os dados são organizados na memória em unidades chamadas de registros. O acesso
é feito segundo uma sequência específica. O tempo de acesso depende da posição relativa do registro,
variando significativamente. Exemplo: Fita magnética.
Acesso direto: Por meio de uma pesquisa sequencial em uma vizinhança do registro é obtido o seu
endereço físico, sendo então é possível a leitura ou gravação. O tempo de acesso também é variável.
Exemplo: Disco magnético (HD).
2) Qual a capacidade de registradores, cache, Ram e HD respectivamente?
 Registradores: bytes
 CACHE L1: mega
 CACHE L2: mega
 RAM: giga
 HD: tera
3) Qual o tempo de acesso de registradores, cache, Ram e HD respectivamente?
 Registradores: 0.1 ns
 CACHE L1: 1 ns
 CACHE L2: 2 a 5 ns
 RAM: 10 a 20 ns
 HD: 10 ms
4) O que é o ciclo de memória?
Após um acesso, algumas memórias podem impedir por um pequeno intervalo de tempo, o uso do
sistema de memória para um novo acesso. Este intervalo de tempo somado ao Tempo de Acesso, é o
Ciclo de Memória (Memory System´s Cycle Time), que é o período de tempo decorrido entre duas
operações sucessivas de acesso.
5) Defina Swap.
Se a capacidade da memória for excedida em um microcomputador, o programa será executado a partir
de uma área de disco chamada “área de troca” ou “swap”. A velocidade do processamento será,
portanto muito prejudicada por causa dos diferentes “Tempos de Acesso”
6) O que é temporariedade?
Indica o conceito de tempo de permanência da informação de um dado tipo de memória.
7) Qual a diferença entre SRAM e DRAM?
DRAM necessitam de correntes elétricas baixíssimas, gastando menos energia e, portanto, gerando
menos calor. Podem por isso, ser mais compactadas (maior quantidade de bytes por mm2 no chip) e
também, mais baratas. São utilizadas na Memória Principal do computador. Não precisam de Reflesh.
SRAM são bem mais rápidas, porém mais caras. Não necessitam do pulso de Refresh. Os registradores
são memórias estáticas (SRAM), por permitirem de alta velocidade de processamento. São utilizadas
apenas na Memória CACHE e na CPU (microprocessador).
8) Quais as funções do RDM e do REM?
RDM: Armazena temporariamente a informação que está sendo transferida da MP para a UCP (leitura)
ou da UCP para MP (escrita).
REM: Armazena temporariamente o endereço de acesso a uma posição de memória, ao se iniciar a
operação de leitura ou escrita. Em seguida, o endereço é encaminhado à área de controle da MP para
decodificação e localizaçãoda célula desejada. Possui a mesma quantidade de bits do barramento de
endereços.
9) O que é localidade temporal e espacial em cache?
Localidade Temporal: Se um programa acessa um dado (endereço), existe uma boa probabilidade que
ele venha a acessá-la novamente, em breve.
Localidade Espacial: Se um programa acessa um dado (endereço), existe uma boa probabilidade que ele
venha a acessar os dados armazenados em sua proximidade, em breve.
10) O que é um Hit e um Miss em cache?
HIT (acerto): Se a instrução ou dado estiver na CACHE
MISS (falta): a instrução ou dado não estiver na CACHE
11) Cite e explique 3 algoritmos de substituição de cache?
 LRU – Least Recently Used – O sistema escolhe o bloco de dados que está há mais tempo sem
ser utilizado. (Critério mais utilizado)
 FILA (FIFO) – O sistema escolhe o bloco que está armazenado há mais tempo.
 LFU – Least Frequently Used – O sistema escolhe o bloco que tem tido menos acesso por parte
da CPU.
 Escolha aleatória – O sistema escolhe o bloco a ser substituído aleatoriamente.
12) Quais problemas podem acontecer em cache?
A MP pode ser acessada tanto pela CACHE quanto por dispositivos de E/S utilizando DMA. Neste caso, o
sistema tem que perceber se o dispositivo de E/S alterou diretamente a MP (através do DMA) e por isso
é a CACHE que se encontra desatualizada, ou o contrário, a CACHE foi alterada e por isso a MP tem que
ser atualizada.
A MP pode ser acessada por várias CPUs, cada uma contendo uma memória CACHE. É possível que a MP
tenha sido alterada atendendo a solicitação da memória CACHE de uma CPU, enquanto as demais
CACHEs permanecerão desatualizadas.
13) O que é Write Through, Write Back e Write Once?
Escrita em ambos (“Write Through”): A escrita de uma palavra na CACHE acarreta escrita na MP.
Existindo outros módulos CPU/CACHE, estes também serão alterados garantindo a integridade.
Escrita somente no retorno (“Write Back”): Sempre que há uma alteração na CACHE, é marcado um bit
denominado ATUALIZA.
Escrita uma vez (“Write Once”): Foi o primeiro protocolo com política de “Write Invalidate”, sendo uma
mistura de “Write Back” e “Write Through”. São considerados quatro possíveis estados para um bloco de
CACHE:
14) Quais os mapeamentos possíveis em cache. Explique dois deles.
 Mapeamento direto;
 Mapeamento associativo;
 Mapeamento associativo por conjuntos.
15) Quais são os níveis possíveis de cache e quais suas diferenças?
 O cache L1 frequentemente é localizado diretamente no chip da CPU e roda na mesma
velocidade que a CPU.
 O cache L2 frequentemente é parte do módulo da CPU, roda nas mesmas velocidades (ou
próximas) da CPU, e geralmente é um pouco maior e mais lento que o cache L1.
 Alguns sistemas (normalmente, os servidores de alto desempenho) também tem o cache L3, que
geralmente é parte da placa-mãe do sistema. Conforme esperado, o cache L3 seria maior (e
provavelmente mais lento) que o cache L2.
16) O que é memória ROM, quais seus diferentes tipos. Explique dois deles.
 É uma memória que não se perde quando a energia é cortada, ou seja, é uma memória não
volátil.
 Existem vários tipos: PROM, EPROM, EEPROM, FLASH
17) Cite duas desvantagem relacionadas a Memórias SSD?
 Custo elevadíssimo;
 Poucos fabricantes no mercado.
18) Cite três vantagens relacionadas a Memória SSD?
 A capacidade desse tipo de memória costuma ser bem elevada;
 Velocidade de acesso agrada bastante a seus usuários;
 são bastante reduzidos e contam com as mesmas;
19) Desenhe a pirâmide que mostra os diferentes tipos de memória.
-------------------------------------------------------------- // ----------------------------------------------------------------------
Multiprocessadores e Multicomputadores
1) Cite diferenças entre processadores Matriciais e Vetoriais?
Processadores Vetoriais (PVP - Parallel Vector Processor)
 Máquinas que possuem processadores com vários pipelines vetoriais de alto poder de
processamento
 Os processadores estão interconectados por chaves de alta velocidade a uma memória comum
compartilhada
 Ex.: máquinas Cray T-90, Cray Y-MP, Fujtisu VP 2000 e NEC Sx-4.
 Máquina UMA
2) Quais as 4 taxonomias de um sistema computacional segundo Flynn? Explique cada uma delas. Em qual
delas o Google se enquadra?
 SISD - Fluxo único de instruções Fluxo único de dados
 SIMD - Fluxo único de instruções Fluxo múltiplo de dados
 MISD - Fluxo múltiplo de instruções Fluxo único de dados
 MIMD- Fluxo múltiplo de instruções Fluxo múltiplo de dados:.
3) Explique o que é um sistema fortemente acoplado e fracamente acoplado?
Sistemas fortemente acoplados (tightly coupled)
 alta velocidade de transmissão de dados
 atraso de comunicação é pequeno
 custo mais alto
 ex.: 2 processadores em uma mesma placa
Sistemas fracamente acoplados (loosely coupled)
 baixa velocidade de transmissão de dados
 atraso de comunicação é grande
 custo mais baixo
 ex.: computadores ligados via rede local
4) Como é a classificação segundo o compartilhamento de memória?
5) Quais as vantagens dos SMP (Processadores simétricos)?
Multiprocessadores Simétricos (SMP – Symmetric Multiprocessor)
 Possui dois ou mais processadores comerciais que compartilham uma memória comum;
 Chamada de arquitetura “tudo-compartilhado” ;
 Vantagens: programação por memória compartilhada e conceito de imagem única (SSI) em
todos os níveis da arquitetura;
 Desvantagem: baixa escalabilidade;
 Máquina UMA;
 Ex.: DEC Alpha Server 8400, SGI Power Challenge e Dual/Quad Pentium.
6) Quais os tipos de acesso a memória para multiprocessadores? Explique cada uma delas.
UMA - Acesso Uniforme a Memória
 Memória Centralizada
 Latência de acesso a memória igual para todos os processadores
 Conexão por barramento ou switch
NUMA - Acesso Não Uniforme a Memória:
Cada processador tem os seus bancos de memória local e cada processador têm de pedir dados de memória
ao processador vizinho se estes não estiverem na sua memória local.
COMA - Acesso somente à memória cache
 Todas as memórias são estruturadas como caches especiais chamadas de COMA caches;
 Maior capacidade do que uma cache tradicional;
 Suporte de hw para replicação do mesmo bloco de cache em múltiplos nós;
 HW deve integrar gerência das caches e gerência de memória.
 Arquiteturas complexas tornam essas máquinas mais caras de implementar do que as NUMA;
7) Como funciona o acesso a memória de Multicomputadores?
 Sem acesso a variáveis remotas (non-remote memory access, NORMA);
 Como uma arquitetura tradicional foi replicada, os registradores de endereçamento de cada nó
só conseguem endereçar a sua memória local.
8) O que é um nó em uma rede? Como ele composto?
 1 ou algumas CPUs;
 Alguma RAM;
 1 disco e/ou outros dispositivos de E/S;
 Processador de comunicação;
 Podem ser adicionados ou removidos;
9) Qual o objetivo de montar um cluster. E em quais categorias ele se divide?
 Desempenho, processamento
 Cluster centralizado
 Cluster descentralizado
10) O que é um cluster centralizado e um cluster descentralizado?
 Cluster centralizado: todos os nós (máquinas) estão no mesmo local físico
 Cluster descentralizado: pode haver nós remotos
--------------------------------------------------------------- // ----------------------------------------------------------------------
Pipeline
1- Como o paralelismo pode ser subdividido? Explique cada um dos 2 tipos.
 Paralelismo espacial (nível de processador)
 Paralelismo temporal (nível de instrução)
2- O que é pipeline? Qual seu principal objetivo? Quais suas vantagens?
 Ao invés da execução sequencial do algoritmo, poderíamos associar cada etapa a um estágio do
pipeline;
 Instruções entram numa ponta e são processadas na ordem de entrada;
 Desempenho na realização de tarefas.
3- Explique o conceito de busca antecipada. Quais fatorespode atrapalhar o desempenho da mesma.
 Consiste em buscar a próxima instrução, enquanto a atual está sendo executada.
O aumento da taxa de execução de instruções, no exemplo anterior, pode não ser possível, pois:
 Tempo de execução é geralmente maior que o de busca (o estágio de busca pode ter que
esperar antes que possa esvaziar a área de armazenamento temporário);
 Instruções de desvio condicional fazem com que o endereço da próxima instrução seja
desconhecido (o estágio de busca teria de esperar pelo endereço da próxima instrução e o
estágio de execução teria que esperar enquanto a próxima instrução é buscada).
4- Faça uma analogia de um exemplo vida real com pipeline (Não vale lavanderia).
 Caixa de supermercado.
5- Conceitue:
a) Tubo: é dividido em estágios ou segmentos.
b) Throughput: Número de instruções executadas na unidade de tempo.
c) Balanceamento: medida da uniformidade do tempo gasto em cada estágio.
6) Quais lições o pipeline ensina?
7) Qual a organização geral do Pipeline?
 Alternância de elementos de memória e blocos combinacionais:
 Memória: segura dados entre estágios, entre ciclos de relógio
 CCs: lógica combinacional, processam informação.
 Se estágios perfeitamente “balanceados”:
 Tempo para terminar de executar instruções com pipeline = tempo por instrução na máquina
sem pipeline / número de estágios no pipeline;
 Meta do projetista - balancear estágios.
8) Quais os inconvenientes do pipeline?
 Estágios em geral não podem ser totalmente balanceados;
 Implementação complexa, acrescenta custos (hardware, tempo);
 Para ser implementado, conjunto de instruções deve ser simples.
9) O que facilita o pipeline e o que complica?
O que facilita:
 Todas instruções têm o mesmo comprimento;
 Poucos formatos de instruções;
 Operandos em memória só aparecem em loads e stores.
O que complica:
• Propriedades estruturais: memória única, por exemplo.
• Controle de fluxo: instruções de desvio
• Dependências (de dados): uma instrução depende do resultado de outra anterior
10) Quais as características do pipeline de instrução?
 O tempo do ciclo do relógio do processador deve ser igual ou maior que o tempo de execução
do estágio mais lento do “pipeline”.
 Deve-se procurar dividir a execução da instrução em estágios com o mesmo tempo.
 O pipeline deve ser mantido sempre “cheio” para que o desempenho máximo seja alcançado.
 De um modo geral, com o uso do pipeline, cada instrução ainda leva o mesmo tempo para ser
executada.
 Algumas instruções, contudo podem ter o seu tempo de execução aumentado, pois atravessam
estágios em que não realizam nenhuma operação útil.
11) Um programa tem 5.000.000 de instruções. Em uma arquitetura sem pipeline, o tempo médio de
execução de cada instrução é 3,5 ns. Qual o ganho na execução deste programa em um processador com
pipeline de 6 estágios com ciclo de 2 ns?
O tempo gasto no processamento de M instruções em um pipeline com K estágios e ciclo de máquina
igual a t é dado por: T = [ K + (M –1 )] * t
Se M >> K (caso comum), T é aproximadamente: M * t
12) Explique as seguintes classificações
a) Pipeline aritmético: as unidades lógicas e aritméticas (ULA) de um computador podem ser organizadas de
maneira pipeline. Por exemplo, os 14 ou mais estágios pipeline usados no Cray-1;
b) Pipeline de instruções: a execução de um conjunto de instruções pode ser estruturada de maneira
pipeline pela sobreposição da execução da instrução corrente com as operações de busca, decodificação e
busca de operandos das instruções subsequentes. Por exemplo, o Pentium;
c) Pipeline de processadores: refere-se ao processamento pipeline de um conjunto de dados em uma cadeia
de processadores, onde cada um processa uma tarefa específica. Por exemplo, processadores vetoriais
pipeline.
13) Pode-se também classificar os tipos de pipeline de acordo com suas configurações e estratégias de
controle. Explique-as.
 Pipeline aritmético: as unidades lógicas e aritméticas (ULA) de um computador podem ser
organizadas de maneira pipeline. Por exemplo, os 14 ou mais estágios pipeline usados no Cray-1;
 Pipeline de instruções: a execução de um conjunto de instruções pode ser estruturada de
maneira pipeline pela sobreposição da execução da instrução corrente com as operações de
busca, decodificação e busca de operandos das instruções subsequentes. Por exemplo, o
Pentium;
 Pipeline de processadores: refere-se ao processamento pipeline de um conjunto de dados em
uma cadeia de processadores, onde cada um processa uma tarefa específica. Por exemplo,
processadores vetoriais pipeline.
14) O conjunto de arquiteturas computacionais pode ser dividido em três grupos básicos. Quais são eles?
 SISD: corresponde ao tradicional modelo von Neumann. Um processador executa
sequencialmente um conjunto de instruções sobre um conjunto de dados
 SIMD: Envolve múltiplos processadores (escravos) sob o controle de uma única unidade de
controle (mestre), executando simultaneamente a mesma instrução em diversos conjuntos de
dados. Arquiteturas SIMD são utilizadas, por exemplo, para manipulação de matrizes e
processamento de imagens.
 MISD: Envolve múltiplos processadores executando diferentes instruções em um único conjunto
de dados. Geralmente, nenhuma arquitetura é classificada como MISD, isto é, não existem
representantes desta categoria. Alguns autores consideram arquiteturas pipeline como exemplo
deste tipo de organização
 MIMD: Envolve múltiplos processadores executando diferentes instruções em diferentes
conjuntos de dados, de maneira independente. Esta classe engloba a maioria dos computadores
paralelos.
15) Quais os atributos que são necessários para classificar os computadores?
 Hierárquica: iniciando em um nível mais abstrato, a classificação deve ser refinada em subníveis
à medida que se diferencie de maneira mais detalhada cada arquitetura;
 Universal: um computador único deve ter uma classificação única;
 Extensível: futuras máquinas que surjam, devem ser incluídas sem que sejam necessárias
modificações na classificação;
 Concisa: os nomes que representam cada uma das classes devem ser pequenos para que a
classificação seja de uso prático;
 Abrangente: a classificação deve incluir todos os tipos de arquiteturas existentes.

Outros materiais