

Estude fácil! Tem muito documento disponível na Docsity
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Prepare-se para as provas
Estude fácil! Tem muito documento disponível na Docsity
Prepare-se para as provas com trabalhos de outros alunos como você, aqui na Docsity
Encontra documentos específicos para os exames da tua universidade
Prepare-se com as videoaulas e exercícios resolvidos criados a partir da grade da sua Universidade
Responda perguntas de provas passadas e avalie sua preparação.
Ganhe pontos para baixar
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Este documento discute a evolução dos processadores, a importância da memória cache e virtual, e como diferentes tecnologias contribuem para o desempenho do hardware.
Tipologia: Trabalhos
1 / 3
Esta página não é visível na pré-visualização
Não perca as partes importantes!


O processador é um importante componente do computador pois ele é responsável por “ler instrução, ler dados, executar instrução, armazenar dados e repetir tudo de novo para a instrução seguinte.” (DELGADO; RIBEIRO, 2017, p. 6). Duas partes importantes do processador são: a ULA (unidade lógica aritmética) é responsável pela realização das operações lógicas e aritméticas e a UC (unidade de controle) que gerencia o fluxo de execução das instruções. As instruções , por sua vez, são divididas em pequenas etapas chamadas micro-operações. O ciclo de instrução pode ser descrito com os seguintes estágios: ● Buscar – ler a próxima instrução da memória para dentro do processador; ● Executar – interpretar o código de operação e efetuar a operação indicada; ● Interromper - caso as interrupções estejam habilitadas, salva o estado atual do processo e atende a interrupção. Essas micro-operações são necessárias para que o pipeline consiga realizar a antecipação do início de uma nova instrução otimizando o tempo de resposta. Enquanto a técnica de pipeline visa antecipar o início da próxima instrução, a superescalaridade tem como objetivo principal “executar instruções independente e corretamente em pipelines diferentes” (STALLINGS, 2017, p. 492), ou seja, possibilitar que o processador execute fluxos de instruções paralelamente. Para que o processador execute as instruções ele precisa acessar dados disponíveis na memória, por isso podemos afirmar que a memória é um dos principais componentes de um computador. A função da memória e armazenar dados de forma temporária ou permanente. Podem ser destacados tipos diferentes de memória; aquelas com alta capacidade de armazenamento são de baixo custo, porém operam em baixa velocidade de acesso, se comparadas às memórias de alto custo que possuem alta velocidade de acesso e baixa capacidade de armazenamento. Então é necessária a utilização de memórias diferentes interligadas estruturalmente. Os registradores são um exemplo de memória temporária, com baixa capacidade de armazenamento (temporário), alta velocidade de processamento; já os CD 's/DVD's armazenam mais dados, mas sua velocidade é baixa. Para entendermos a memória virtual primeiro devemos falar sobre a memória cache. A cache é uma memória “pequena e rápida que age como um buffer para uma memória maior e mais lenta” (HENNESSY, 2017, p. 17). Instruções e dados são copiados da memória RAM (memória principal) para a cache, evitando o acesso constante a dados da memória principal, já que esta é mais lenta. Na memória cache os dados e instruções são armazenados
temporariamente e usados para o processamento. “Quanto melhor for o sistema de memória cache, melhor será a performance do PC.” (PAIXÃO, 2014, p. 77). A capacidade de armazenamento da cache favorece o seu próprio desempenho, ou seja, quanto maior a capacidade “maior será a chance de a próxima instrução a ser executada estar armazenada no próprio cache” (PAIXÃO, 2014, p. 78) evitando o acesso excessivo a DRAM. Agora que falamos sobre a memória cache podemos tratar sobre a memória virtual que é “uma técnica que usa a memória principal como uma ‘cache’ para armazenamento secundário” (HENNESSY, 2017, p. 374). A memória virtual cria a ‘ilusão’ de que a memória principal é maior do que realmente é, seguindo os seguintes princípios: Princípio da localidade, quer espacial quer temporal. Um programa não precisa de toda a sua informação (quer dados, quer instruções) ao mesmo tempo. Isto significa que parte desta informação (a mais usada) pode estar em memória principal, enquanto a restante (a menos usada) pode estar em disco; Função de mapeamento, neste caso considerando que os endereços a que um programa se refere pertencem a um espaço de endereçamento virtual, que tem existência física apenas parcialmente e em que os endereços virtuais são mapeados em endereços físicos (que constituem o espaço de endereçamento físico a que as RAMs e os periféricos pertencem). A memória física é a memória principal. Este mapeamento é denominado tradução de endereços, porque um endereço virtual tem de ser traduzido para um endereço físico; Funcionamento automático, liberando o programador dos detalhes das limitações da memória principal (embora deva conhecer o impacto deste mecanismo nos programas, se quiser otimizar o desempenho). (DELGADO; RIBEIRO, 2017, pg. 461). Sendo assim, a memória virtual fornece suporte para que vários programas tenham seu próprio espaço de endereçamento virtual e podendo usar a mesma faixa de endereço virtual (DELGADO; RIBEIRO, 2017), enquanto o endereço físico é diferente para cada um dos programas diferindo-os entre si. Esse processo, assim como a memória cache, também reduz o acesso à memória principal – que é mais lenta – garantindo um melhor desempenho no processamento das instruções. Os processadores evoluíram com o passar dos anos para garantir maior desempenho no processamento; processadores com multi-core permitem a execução de várias tarefas ao mesmo tempo. Um processador com clock maior realiza o fluxo de instruções (leitura de dados, execução de instrução, armazenamento de dados) de modo mais rápido. As superpipelines e superescalaridade, uso de memória cache e memória virtual também favorecem o alto desempenho do hardware. Diversas tecnologias são empregadas no desenvolvimento de processadores mais ágeis, fato que acaba o encarecendo. Porém o investimento em processadores de última geração garantem melhor desempenho na execução de tarefas, principalmente quando pensamos na questão do hardware como ferramenta de trabalho. Computadores com bom