WorksheetsArquitetura e Organização de Computadores
Total questions: 58
Worksheet time: 34mins
Qual das alternativas melhor descreve a diferença entre organização e arquitetura de computadores?
A organização se refere ao conjunto de instruções, enquanto a arquitetura trata da implementação física.
A arquitetura trata dos atributos visíveis ao programador, enquanto a organização lida com detalhes de implementação.
A organização define o conjunto de instruções visíveis, e a arquitetura define os circuitos de controle.
Ambas são sinônimos e representam o mesmo conceito.
A organização trata da lógica de software, e a arquitetura do hardware.
A lei de Moore, fundamental para a evolução da arquitetura de computadores, afirma que:
O custo dos processadores duplica a cada dois anos.
O número de transistores em um chip dobra a cada 18 a 24 meses.
A velocidade do clock dobra a cada seis meses.
O consumo de energia dos chips reduz pela metade a cada dois anos.
O desempenho dos sistemas dobra anualmente.
A arquitetura de von Neumann é caracterizada principalmente por:
Ter memória separada para dados e instruções.
Usar processamento paralelo massivo.
Compartilhar o mesmo barramento para dados e instruções.
Ser exclusiva para sistemas de propósito específico.
Utilizar apenas memórias não voláteis.
O conceito de “níveis de máquina” em Stallings está relacionado a:
Níveis de abstração entre hardware e software.
Tipos de barramento em um sistema.
Hierarquia de memória.
Arquiteturas de pipeline.
Processadores multiprocessados.
Em uma visão hierárquica, qual é a principal vantagem dos níveis de máquina?
Permitem depuração mais simples.
Reduzem a complexidade do projeto ao isolar camadas funcionais.
Aumentam a velocidade de clock.
Diminuem o consumo de energia.
Substituem a necessidade de compiladores.
O termo “microarquitetura” refere-se a:
Linguagem de montagem usada pelo compilador.
Estrutura interna do processador que implementa o conjunto de instruções.
Organização da memória principal.
Interligação entre processadores em sistemas multiprocessados.
Arquitetura de software embarcado.
O desempenho de um computador depende de três fatores principais, segundo Stallings. São eles:
Memória, armazenamento e interfaces.
Processador, memória e E/S.
Clock, barramento e sistema operacional.
Pipeline, cache e paralelismo.
ALU, registradores e controle.
A principal limitação do modelo de von Neumann é:
A baixa confiabilidade do barramento de controle.
O gargalo de comunicação entre CPU e memória.
O uso de instruções complexas.
A ausência de mecanismos de cache.
O alto custo de implementação.
A principal contribuição histórica dos mainframes foi:
O uso de processadores RISC.
A introdução da computação em nuvem.
A base para multiprogramação e virtualização.
O desenvolvimento de GPUs.
A eliminação da hierarquia de memória.
O desempenho de um computador é geralmente medido em:
Hertz (Hz).
FLOPS ou MIPS.
Bytes por segundo.
Volts.
Níveis de cache.
Qual técnica é usada para medir o desempenho em aplicações reais?
Benchmarks.
Compiladores.
Pipelining.
Microprogramação.
Virtualização.
O aumento da frequência de clock tem impacto limitado devido a:
Limites térmicos e dissipação de energia.
Falta de compatibilidade com o sistema operacional.
Dependência do compilador.
Limites de memória.
Gargalos de E/S apenas.
O conceito de speedup é definido como:
A diferença de clock entre dois processadores.
A razão entre o tempo de execução sem e com otimização.
A relação entre consumo e desempenho.
O tempo médio de acesso à memória.
A largura de banda do barramento.
A Lei de Amdahl estabelece que:
O desempenho total depende da fração paralelizável e do número de processadores.
Todo programa pode ser acelerado linearmente com o número de núcleos.
O clock é o principal fator de desempenho.
A eficiência é constante em sistemas multiprocessados.
O acesso à memória não afeta a execução paralela.
O CPI (Cycles Per Instruction) representa:
O número de ciclos necessários para completar uma instrução média.
O clock máximo atingível pelo processador.
A largura do barramento de dados.
O tempo total de execução de um programa.
O tempo médio de acesso ao cache.
O desempenho de sistemas com múltiplos níveis de cache é influenciado diretamente por:
A latência média de acesso e a taxa de acertos.
O tamanho da memória virtual.
O número de registradores da CPU.
O barramento de E/S.
O número de threads.
Uma forma de melhorar desempenho sem alterar hardware é:
Usar compiladores otimizadores.
Aumentar o número de núcleos.
Ampliar a largura do barramento.
Usar clock mais rápido.
Trocar o sistema operacional.
Um computador com 3 GHz e CPI médio de 2 executa 1 bilhão de instruções em:
0,5 s
0,66 s
1,5 s
2 s
3 s
O conjunto de instruções de um processador define:
O número de transistores disponíveis no chip.
As operações que o processador é capaz de executar.
O número de registradores físicos disponíveis.
A topologia de interconexão do sistema.
O sistema operacional suportado.
Instruções de desvio condicional pertencem à classe de:
Transferência de dados.
Controle.
Lógicas.
Aritméticas.
Entrada/Saída.
Uma instrução do tipo LOAD normalmente faz:
Move dados do registrador para a memória.
Copia dados da memória para um registrador.
Soma dois operandos e armazena o resultado.
Transfere dados entre dispositivos de E/S.
Modifica o contador de programa.
O modo de endereçamento imediato significa que:
O operando está na memória.
O operando é fornecido explicitamente na instrução.
O operando está em um registrador.
O endereço do operando é calculado em tempo de execução.
A instrução acessa diretamente o barramento.
Um conjunto de instruções CISC é caracterizado por:
Instruções simples e de tamanho fixo.
Instruções complexas que executam múltiplas operações.
Menor número de modos de endereçamento.
Foco em desempenho por pipelining.
Forte uso de compiladores otimizadores.
O tipo de instrução responsável por alterar o fluxo de execução do programa é:
Lógica.
Controle.
Aritmética.
Deslocamento.
Comparação.
A instrução ADD R1, R2, R3 representa:
R3 = R1 + R2.
R1 = R2 + R3.
R2 = R1 + R3.
R1 = R3 + 1.
R3 = R2 + 1.
O modo de endereçamento indexado é útil porque:
Permite acesso sequencial a vetores ou tabelas.
Usa sempre o mesmo registrador base.
Reduz o tamanho do código.
É exclusivo de arquiteturas RISC.
Exige hardware adicional.
O principal objetivo da microprogramação é:
Controlar a execução das instruções a nível de hardware.
Reduzir o consumo de energia do processador.
Substituir o compilador.
Gerar código em linguagem de máquina.
Controlar o acesso à memória cache.
O opcode de uma instrução identifica:
A operação a ser executada.
O registrador de destino.
O endereço de memória base.
O modo de endereçamento.
A posição da pilha.
A função principal da unidade de controle é:
Executar operações aritméticas.
Interpretar e coordenar a execução das instruções.
Armazenar resultados intermediários.
Controlar o acesso ao cache.
Decodificar endereços de memória física.
O pipeline de instruções tem como objetivo:
Aumentar a taxa de transferência de instruções.
Reduzir o tamanho do conjunto de instruções.
Aumentar o tamanho dos registradores.
Simplificar a unidade lógica.
Eliminar conflitos de dados.
A execução fora de ordem (out-of-order execution) permite:
Executar instruções em qualquer sequência, respeitando dependências.
Aumentar o clock máximo do processador.
Eliminar todos os conflitos de controle.
Simplificar a unidade de controle.
Reduzir o uso de memória cache.
Pergunta: O registrador de instrução (IR) tem a função de:
Armazenar o endereço da próxima instrução.
Armazenar a instrução que está sendo executada.
Controlar o acesso à memória cache.
Sincronizar o clock.
Gerar sinais de interrupção.
O conceito de superescalaridade envolve:
Execução de múltiplas instruções por ciclo de clock.
Multiplicação de frequência do clock.
Uso de um único pipeline longo.
Execução sequencial de instruções.
Controle centralizado.
O registrador PC (Program Counter) contém:
O endereço da instrução atual.
O endereço da próxima instrução a ser buscada.
O resultado da ALU.
O número de ciclos por instrução.
O endereço do último desvio.
Processadores RISC normalmente possuem:
Instruções simples e de execução rápida.
Instruções complexas com múltiplos ciclos.
Poucos registradores de propósito geral.
Dependência de microcódigo.
Pouca previsibilidade de desempenho.
O principal benefício da execução especulativa é:
Aumentar o paralelismo e reduzir o tempo de espera de desvios.
Reduzir o consumo de energia.
Simplificar o controle de pipeline.
Aumentar a precisão de cálculos.
Evitar falhas de cache.
A hierarquia de memória é organizada com base em:
Velocidade, custo e capacidade.
Tipo de encapsulamento.
Consumo elétrico.
Tipo de barramento.
Tecnologia de fabricação.
A memória cache tem como função principal:
Reduzir o tempo médio de acesso à memória principal.
Substituir a memória RAM.
Ampliar o armazenamento secundário.
Sincronizar o clock da CPU.
Corrigir erros de paridade.
Memórias DRAM diferem das SRAM porque:
São mais lentas e precisam ser recarregadas periodicamente.
São mais rápidas e mais caras.
Não precisam de refresh.
São usadas apenas em registradores.
Armazenam dados de forma estática.
A política de substituição LRU (Least Recently Used) baseia-se em:
Substituir o bloco que não foi usado há mais tempo.
Substituir o bloco mais recente.
Escolher um bloco aleatoriamente.
Remover o bloco com menor prioridade.
Priorizar blocos com mais acessos.
A memória virtual permite:
Usar o disco como extensão da memória principal.
Aumentar a velocidade de cache.
Executar instruções fora de ordem.
Substituir o pipeline.
Armazenar dados apenas em registradores.
O barramento de memória é responsável por:
Transferir endereços e dados entre CPU e memória.
Controlar as interrupções.
Executar operações aritméticas.
Aumentar a taxa de clock.
Controlar dispositivos de E/S.
O cache write-back difere do write-through porque:
Atualiza a memória principal apenas quando o bloco é substituído.
Escreve simultaneamente na memória e no cache.
Usa política de substituição FIFO.
Exige mais barramentos.
Não permite coerência de dados.
O principal objetivo dos sistemas de E/S é:
Permitir a comunicação entre CPU e dispositivos externos.
Aumentar o desempenho da memória cache.
Controlar instruções aritméticas.
Substituir barramentos internos.
Reduzir a complexidade do processador.
A técnica de interrupção melhora o desempenho de E/S porque:
Libera a CPU para outras tarefas enquanto o dispositivo opera.
Diminui o consumo de energia.
Elimina o uso de barramentos.
Substitui o uso de cache.
Evita uso de drivers.
Um protocolo de comunicação define:
Regras para troca de dados entre dispositivos.
O tamanho físico dos conectores.
A tensão elétrica dos sinais.
O número de transistores no barramento.
A frequência de clock do sistema.
O USB utiliza comunicação do tipo:
Serial.
Paralela.
Mista.
Síncrona.
Assíncrona.
Um barramento síncrono é caracterizado por:
Ter todos os dispositivos sincronizados por um mesmo clock.
Operar de forma independente do clock.
Utilizar pacotes de dados aleatórios.
Controlar apenas E/S de baixa velocidade.
Requerer buffers intermediários.
A vantagem do uso de caches de E/S é:
Reduzir latência de acesso a dispositivos lentos.
Diminuir o consumo de energia.
Eliminar interrupções.
Simplificar protocolos.
Aumentar o tamanho dos dados.
O conceito de throughput em E/S refere-se a:
Quantidade de dados transferidos por unidade de tempo.
Tempo médio de acesso à memória.
Número de interrupções por ciclo.
Tamanho máximo do buffer.
Frequência do barramento.
O principal objetivo dos níveis de RAID é:'
Aumentar o desempenho e/ou a confiabilidade do armazenamento.
Reduzir o consumo de energia do sistema.
Substituir completamente a memória principal.
Gerar cópias temporárias de cache.
Melhorar a comunicação entre processador e memória.
No RAID 0, os dados são:
Divididos entre discos sem redundância.
Espelhados em todos os discos.
Armazenados com paridade distribuída.
Codificados com correção de erros.
Gravados em um único disco de backup.
O RAID 1 é caracterizado por:
Distribuição simples de blocos.
Uso de paridade distribuída.
Correção de erros via Hamming.
Compressão em tempo real.
Espelhamento completo dos dados.
A principal vantagem do RAID 5 é:
Combinar desempenho, tolerância a falhas e economia de espaço.
Oferecer redundância total em todos os discos.
Utilizar apenas um disco ativo.
Eliminar a necessidade de controladora.
Usar espelhamento completo.
O RAID 6 se diferencia do RAID 5 por:
Incluir dupla paridade.
Não usar paridade.
Ter desempenho inferior ao RAID 0.
Utilizar espelhamento em três discos.
Ser restrito a sistemas com até dois discos.
O código de Hamming é utilizado para:
Detectar e corrigir erros em transmissões digitais.
Compactar dados para armazenamento.
Aumentar a largura de banda de redes.
Multiplexar sinais analógicos.
Gerar assinaturas criptográficas.
O código de Hamming é capaz de:
Corrigir um erro e detectar dois.
Corrigir dois erros e detectar três.
Apenas detectar erros simples.
Corrigir três erros consecutivos.
Substituir CRCs em qualquer aplicação.
Em um código de Hamming, se a quantidade total de bits transmitidos possui número par de 1s, isso indica:
Ausência de erro se a paridade for par.
Sempre há erro.
Código inválido.
Falha de sincronismo.
Necessidade de retransmissão.
