Introdução à Arquitetura de Computadores/Introdução: diferenças entre revisões

Origem: Wikilivros, livros abertos por um mundo aberto.
[revisão pendente][revisão pendente]
Conteúdo apagado Conteúdo adicionado
m Foram revertidas as edições de 154.127.139.40 (disc) para a última revisão de Marcos Antônio Nunes de Moura
Etiqueta: Reversão
 
Linha 1: Linha 1:
== O Que é Arquitectura de Computadores ? ==
== O Que é Arquitetura de Computadores ? ==


A '''Arquitectura de Computadores''' é o projecto conceitual e
A '''Arquitetura de Computadores''' é o projeto conceitual e
fundamental da estrutura operacional de um sistema computacional. Ela
fundamental da estrutura operacional de um sistema computacional. Ela
é o estudo dos requisitos necessários para que um computador funcione
é o estudo dos requisitos necessários para que um computador funcione
Linha 14: Linha 14:


* '''Desktop:''' Computadores de baixo-custo e com desempenho razoável para um usuário "comum".
* '''Desktop:''' Computadores de baixo-custo e com desempenho razoável para um usuário "comum".
* '''Servidor:''' Máquinas projectadas para ter um desempenho considerado bom para uma aplicação muito grande e complexa ou então para um número muito grande de operações mais simples. Alguns servidores são simples computadores de Desktop melhorados. Entretanto, existem também aqueles que possuem arquitecturas muito mais sofisticadas que contam com dezenas ou até mesmo centenas de processadores.
* '''Servidor:''' Máquinas projetadas para ter um desempenho considerado bom para uma aplicação muito grande e complexa ou então para um número muito grande de operações mais simples. Alguns servidores são simples computadores de Desktop melhorados. Entretanto, existem também aqueles que possuem arquiteturas muito mais sofisticadas que contam com dezenas ou até mesmo centenas de processadores.
* '''Sistemas Embarcados:''' Possuem um uso dedicado à uma única tarefa e normalmente vem embutidos em outros aparelhos como celulares, microondas, elevadores ou veículos. Possuem uma Entrada/Saída muito simples.
* '''Sistemas Embarcados:''' Possuem um uso dedicado à uma única tarefa e normalmente vem embutidos em outros aparelhos como celulares, microondas, elevadores ou veículos. Possuem uma Entrada/Saída muito simples.


Os princípios estudados em Arquitectura de Computadores são
Os princípios estudados em Arquitetura de Computadores são
fundamentais para se projectar máquinas realmente eficientes.
fundamentais para se projetar máquinas realmente eficientes.


== Computadores e as Várias Camadas de Abstracção ==
== Computadores e as Várias Camadas de Abstração ==


Computadores são aparelhos extremamente complexos. Para
Computadores são aparelhos extremamente complexos. Para
compreender o seu funcionamento, precisamos entender várias camadas de
compreender o seu funcionamento, precisamos entender várias camadas de
abstracção diferente.
abstração diferente.


A camada mais baixa de todas é aquela formada por transístores, tensão
A camada mais baixa de todas é aquela formada por transistores, tensão
e corrente eléctrica. Quem costuma lidar com esta camada são físicos e
e corrente elétrica. Quem costuma lidar com esta camada são físicos e
engenheiros electricistas. Nesta camada estuda-se o funcionamento de
engenheiros eletricistas. Nesta camada estuda-se o funcionamento de
transístores e circuitos sempre levando em conta as propriedades
transistores e circuitos sempre levando em conta as propriedades
físicas da corrente eléctrica. Abaixo vemos um desenho representando um transístor.
físicas da corrente elétrica. Abaixo vemos um desenho representando um transistor.


[[Imagem:Transistor_npn.png|200px]]
[[Imagem:Transistor_npn.png|200px]]


Uma camada acima, estão as portas lógicas - todas elas compostas por
Uma camada acima, estão as portas lógicas - todas elas compostas por
transístores. Neste nível estuda-se como criar estruturas mais
transistores. Neste nível estuda-se como criar estruturas mais
complexas combinando-se as diversas portas como AND, OR e NOT para
complexas combinando-se as diversas portas como AND, OR e NOT para
criar estruturas como multiplexadores, flip-flops e somadores. Neste
criar estruturas como multiplexadores, flip-flops e somadores. Neste
Linha 43: Linha 43:
[[Imagem:Logic-gate-index.png|800px]]
[[Imagem:Logic-gate-index.png|800px]]


Subindo mais um nível de abstracção, começamos a lidar com estruturas
Subindo mais um nível de abstração, começamos a lidar com estruturas
mais complexas como registadores e unidades lógicas aritméticas -
mais complexas como registradores e unidades lógicas aritméticas -
todas compostas por muitos flip-flops, somadores e
todas compostas por muitos flip-flops, somadores e
multiplexadores. Vemos como todas essas estruturas realmente geram as
multiplexadores. Vemos como todas essas estruturas realmente geram as
instruções de cada máquina e como cada instrução funciona. É neste
instruções de cada máquina e como cada instrução funciona. É neste
nível que costuma trabalhar um '''Arquitecto'''. Este será o nível que
nível que costuma trabalhar um '''Arquiteto'''. Este será o nível que
será abordado ao longo deste Wiki-livro. Abaixo mostramos a imagem de uma Unidade Lógica Aritmética - estrutura usada por computadores para realizar cálculos:
será abordado ao longo deste Wiki-livro. Abaixo mostramos a imagem de uma Unidade Lógica Aritmética - estrutura usada por computadores para realizar cálculos:



Edição atual desde as 18h49min de 21 de março de 2019

O Que é Arquitetura de Computadores ?[editar | editar código-fonte]

A Arquitetura de Computadores é o projeto conceitual e fundamental da estrutura operacional de um sistema computacional. Ela é o estudo dos requisitos necessários para que um computador funcione e de como organizar os diversos componentes para obter melhores desempenhos.

Como computador entendemos qualquer tipo de dispositivo capaz de receber uma entrada e que retorna uma saída após realizar uma série de operações com base nos valores recebidos e armazenados. Existem vários tipos de computadores. Uma das formas de classificá-los é por meio das seguintes categorias:

  • Desktop: Computadores de baixo-custo e com desempenho razoável para um usuário "comum".
  • Servidor: Máquinas projetadas para ter um desempenho considerado bom para uma aplicação muito grande e complexa ou então para um número muito grande de operações mais simples. Alguns servidores são simples computadores de Desktop melhorados. Entretanto, existem também aqueles que possuem arquiteturas muito mais sofisticadas que contam com dezenas ou até mesmo centenas de processadores.
  • Sistemas Embarcados: Possuem um uso dedicado à uma única tarefa e normalmente vem embutidos em outros aparelhos como celulares, microondas, elevadores ou veículos. Possuem uma Entrada/Saída muito simples.

Os princípios estudados em Arquitetura de Computadores são fundamentais para se projetar máquinas realmente eficientes.

Computadores e as Várias Camadas de Abstração[editar | editar código-fonte]

Computadores são aparelhos extremamente complexos. Para compreender o seu funcionamento, precisamos entender várias camadas de abstração diferente.

A camada mais baixa de todas é aquela formada por transistores, tensão e corrente elétrica. Quem costuma lidar com esta camada são físicos e engenheiros eletricistas. Nesta camada estuda-se o funcionamento de transistores e circuitos sempre levando em conta as propriedades físicas da corrente elétrica. Abaixo vemos um desenho representando um transistor.

Uma camada acima, estão as portas lógicas - todas elas compostas por transistores. Neste nível estuda-se como criar estruturas mais complexas combinando-se as diversas portas como AND, OR e NOT para criar estruturas como multiplexadores, flip-flops e somadores. Neste estágio pode-se usar linguagens como o Verilog ou VHDL para programar circuitos. Abaixo vemos desenhos que representam várias portas lógicas:

Subindo mais um nível de abstração, começamos a lidar com estruturas mais complexas como registradores e unidades lógicas aritméticas - todas compostas por muitos flip-flops, somadores e multiplexadores. Vemos como todas essas estruturas realmente geram as instruções de cada máquina e como cada instrução funciona. É neste nível que costuma trabalhar um Arquiteto. Este será o nível que será abordado ao longo deste Wiki-livro. Abaixo mostramos a imagem de uma Unidade Lógica Aritmética - estrutura usada por computadores para realizar cálculos:

Um nível além, estuda-se como combinar as instruções da camada anterior para realizar comandos mais sofisticados como as operações da lingüagem C e como coordenar o funcionamento de um sistema operacional por meio de interrupções e outros recursos. A imagem abaixo é um diagrama que representa o Kernel de um Sistema Operacional sendo usado como um meio de comunicação entre o Software e o Hardware:

Acima desta camada, está o estudo do funcionamento de funções de bibliotecas, APIs e a programação de aplicativos e programas de computador simples.E finalmente, na camada de abstração mais superior está o funcionamento de um programa de computador do ponto de vista do usuário. Como utilizar um aplicativo já criado.