Escolar Documentos
Profissional Documentos
Cultura Documentos
Coprocessadores
Com a adição de um segundo processador especializado os
computadores podem ganhar velocidade. Há uma variedade
desses coprocessadores, de pequenos a grandes. Nos
mainframes IBM 360 e em todos os seus sucessores, existem
canais independentes de E/S para fazer entrada/saída. De modo
semelhante, o CDC 6600 tinha dez processadores independentes
para efetuar E/S. Gráficos e aritmética de ponto flutuante são
outras áreas em que são usados coprocessadores. Até mesmo
um chip DMA pode ser visto como um coprocessador. Em alguns
casos, a CPU dá ao coprocessador uma instrução ou um conjunto
de instruções e ordena que ele as execute; em outros casos, ele
é mais independente e funciona em grande parte por si só.
Em termos físicos, coprocessadores podem variar de um
gabinete separado (os canais de E/S do 360) a uma placa de
expansão (processadores de rede) ou uma área no chip principal
(ponto flutuante). Em todos os casos, o que os distingue é o fato
de que algum outro processador é o principal e que os
coprocessadores estão lá para ajudá-lo. Três áreas são
apresentadas como principais na possibilidade de aumento de
velocidade: processamento em rede, multimídia e criptografia.
Processadores de rede
Grande parte dos computadores de hoje estão conectados a uma
rede ou à internet. Como resultado desse progresso tecnológico
em hardware de rede, as redes agora são tão rápidas que ficou
cada vez mais difícil processar em software todos os dados que
entram e que saem. Por conseguinte, foram desenvolvidos
processadores especiais de rede para lidar com o tráfego e
muitos computadores de alta tecnologia agora têm um desses
processadores.
Processadores de mídia
Mais uma área na qual coprocessadores são usados é o
tratamento de processamento gráfico de alta resolução, como
renderização 3D. CPUs comuns não são muito boas nas
computações maciças necessárias para processar as grandes
quantidades de dados requeridas nessas aplicações. Por essa
razão, alguns PCs atuais e a maioria dos PCs futuros serão
equipados com GPUs (Graphics Processing Units –
unidades de processamento gráfico) para os quais passarão
grandes porções do processamento geral.
Criptoprocessadores
Outra área na qual os coprocessadores são populares é
segurança, em especial segurança em redes. Quando uma
conexão for estabelecida entre um cliente e um servidor, em
muitos casos eles devem primeiro se autenticar mutuamente.
Então, é preciso estabelecer uma conexão segura e criptografada
entre eles, para que os dados sejam transferidos com segurança,
frustrando quaisquer bisbilhoteiros que poderiam estar invadindo
a linha.
Multiprocessadores
Um computador paralelo no qual todas as CPUs compartilham
uma memória comum. Todos os processos que funcionam juntos
em um multiprocessador podem compartilhar um púnico espaço
de endereço virtual mapeado para a memória comum. Qualquer
processo pode LER ou ESCREVER uma palavra de memória
apenas executando uma instrução LOAD ou STORE. Nada mais
é preciso. O Hardware faz todo resto. Dois processos podem se
comunicar pelo simples ato de um deles escrever dados para a
memória e o outro ler. A Capacidade de dois (ou mais) processos
se comunicarem apenas lendo e escrevendo a memória é a razão
da popularidade dos multiprocessadores. É um modelo de fácil
entendimento pelos programadores e é aplicável a uma ampla
faixa de problemas.
Pode ser de dois tipos:
Multicomputadores
Arquitetura paralela em que todas CPUs possuem sua própria
memória privada, acessível somente por ela e nenhuma outra.
Também denominado sistema de memória distribuída. O
aspecto fundamental que distingue um multicomputador de
multiprocessadores é que a CPU de um multicomputador tem
sua própria memória local privada, a qual pode acessar apenas
executando LOAD e STORE. Assim, multiprocessadores têm um
único espaço de endereço físico compartilhado por todas as
CPUs, ao passo que multicomputadores têm um espaço de
endereço físico para cada CPU.