Diferenças entre edições de "Arquitetura de computadores"

629 bytes adicionados ,  20h35min de 9 de janeiro de 2014
+ref
m
(+ref)
A evolução da informática foi caracterizada pelo desenvolvimento de computadores com características as mais diversas, traduzidas pelos diferentes parâmetros, cada vez mais conhecidos da maioria de usuários de computador: a CPU adotada, a capacidade de memória, a capacidade do [[disco rígido]], a existência de memória cache e outros menos conhecidos. A definição destes parâmetros e a forma como os diversos componentes de um computador são organizados, define aquilo que é conhecido por arquitetura de computador e vai determinar aspectos relacionados à qualidade, ao desempenho e à aplicação para a qual o computador vai ser orientado.<ref>{{cite book|author= Gerrit A. Blaauw & Frederick P. Brooks |title=Computer Architecture: Concepts and Evolution |publisher=Addison-Wesley |year=1997 |isbn=0-201-10557-8}}</ref><ref>{{cite book|author=Anthony Ralston & Edwin D. Reilly|title=Encyclopedia of Computer Science Third Edition |publisher=Van Nostrand Reinhold|year=1993|ISBN=0-442-27679-6}}</ref>
{{Sem-fontes|data=janeiro de 2011| angola=| arte=| Brasil=| ciência=| geografia=| música=| Portugal=| sociedade=|1=|2=|3=|4=|5=|6=}}
A evolução da informática foi caracterizada pelo desenvolvimento de computadores com características as mais diversas, traduzidas pelos diferentes parâmetros, cada vez mais conhecidos da maioria de usuários de computador: a CPU adotada, a capacidade de memória, a capacidade do disco rígido, a existência de memória cache e outros menos conhecidos. A definição destes parâmetros e a forma como os diversos componentes de um computador são organizados, define aquilo que é conhecido por arquitetura de computador e vai determinar aspectos relacionados à qualidade, ao desempenho e à aplicação para a qual o computador vai ser orientado.
 
Existem vários modos de uso do termo, que podem ser usados referindo-se a:
* Arquiteturas de [[hardware]] mais generalizadas, tais como computação em [[cluster]] e arquiteturas NUMA (acesso não-uniforme à memória).
* A utilização menos formal do termo refere-se a uma descrição dos requisitos (especialmente requisitos de velocidades e interligação) ou implementação do design para as várias partes de um computador, tais como [[memória]], [[placa-mãe]], [[Periférico|periféricos eletrônicos]] ou, mais frequentemente, [[Unidade Central de Processamento|CPU]].
* A arquitetura é frequentemente definida como o conjunto de atributos da máquina que um programador deve compreender para que consiga programar o computador específico com sucesso, ou seja, para que consiga compreender o que o programa irá fazer aquando da sua execução. Por exemplo, parte da arquitetura são as instruções e o raio de operadores manipulados por elas. De uma maneira semelhante, a frequência em que o sistema opera não é incluída na arquitetura. Esta definição revela as duas principais considerações dos arquitetos de computadores: (1)desenhar hardware que se comporta como o programador pensa que se irá comportar, (2)utilizar implementações existentes de tecnologias (por exemplo, [[semicondutor]]es) para construir o melhor computador possível. A 2ª consideração é frequentemente referida como a [[microarquitetura]].<ref>http://cpushack.net/CPU/cpu7.html</ref>
 
==História==
Outro problema recorrente envolve a [[memória virtual]].
Historicamente, a memória de acesso aleatório (RAM) foi centenas de vezes mais cara que o armazenamento mecânico rotativo, isto é, discos rígidos, num computador moderno.
O processador só pode executar uma instrução que esteja na memória real. O mecanismo de Memória Virtual divide a memória real em FRAMES e divide um arquivo no disco em PÁGINAS de mesmo tamanho dos frames. No disco existem muito mais páginas do que frames na memória. Sempre que for preciso uma página é copiada da memória virtual (arquivo em disco) para um frame da memória real. Surge a necessidade de saber quando é preciso copiar. Surge a necessidade de saber se um frame pode ser descartado ou se precisa ser recopiado para sua página correspondente no [[Arquivo de computador|arquivo]] em disco. Sempre que uma instrução é executada a partir de um frame o hardware controlador de memória virtual testa se o dado a que ela se refere já se encontra em algum frame. Se for o caso, uma interrupção ocorre para que a rotina de tratamento cuide de copiar do disco para a memória real uma página completa contendo o dado necessário.
 
{{SemMais-fontesnotas|data=janeiro de 2011| angola=| arte=| Brasil=| ciência=| geografia=| música=| Portugal=| sociedade=|1=|2=|3=|4=|5=|6=}}
== Pipeline ou segmentação das instruções ==
O conjunto e instruções orienta fortemente como funcionará o [[Pipeline (hardware)|pipeline]] de [[Conjunto de instruções|instruções]]. A ideia é análoga a [[Produção em massa|linha de produções]] em série, mas utilizada na execução das instruções. Primeiro divide-se as instruções em pedaços menores de forma que uma instrução em código de máquina demore muitos ciclos curtos para ser executada. Depois disso o controle do microprocessador encarrega-se de executar várias instruções ao mesmo tempo, cada uma utilizando um pedaço distinto do processador. Isto tem como objetivo que na média cada instrução demore 1 ciclo curto para ser executada. Existem diversas complicações em instruções de desvio (condicionais), que são tratadas por paralelismo de código conhecida como ''[[Thread (ciência da computação)|threading]]'' (nome comercial da Intel [[Hyperthreading]]).
<!--
Para empresas e
-->
 
{{referências}}
== {{Ligações externas}} ==
 
== {{Ligações externas}} ==
* [http://portal.acm.org/toc.cfm?id=SERIES416&type=series&coll=GUIDE&dl=GUIDE&CFID=41492512&CFTOKEN=82922478 ISCA: Proceedings of the International Symposium on Computer Architecture]
* [http://www.microarch.org/ Micro: IEEE/ACM International Symposium on Microarchitecture]
* [http://www.mdronline.com/mpr/ Microprocessor Report]
 
{{Tecnologias de CPU}}
[[Categoria:Arquitetura de computadores]]
[[Categoria:Unidade central de processamento]]