Buscar

INTRODUÇÃO A ORGANIZAÇÃO DE COMPUTADORES

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 35 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 35 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 35 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

INTRODUÇÃO. 
Um computador é uma máquina (composta de partes eletrônicas e eletromecânicas) capaz de sistematicamente, coletar, manipular, e fornecer um resultado destas manipulações de informações para um ou mais objetivos.
PROCESSAMENTO DE DADOS É COMPOSTO POR TRÊS ETAPAS:
1º dados: pode ser definido como a matéria prima originalmente obtida de uma ou mais fontes (seria a etapa das coletas)
2º processamento: O processamento de dados consiste em uma série de atividades ordenada e realizadas, com o objetivo de produzir um arranjo de informações a partir de outras obtidas.
	3º informações: É o resultado do processamento, isto é o dado depois de processado ou acabado.Processamento
Dados
Informação
É uma série de atividades ordenadamente realizadas, que resultará em uma espécie de arranjo de informações, pois no início da atividade é feita a coleta de dados, que passam por uma processamento onde no final será passada para o usuário uma informação.
SISTEMAS: Sistema é um conjunto de partes coordenadas que concorrem para a realização de um determinado objetivo.
SISTEMAS COMPUTACIONAIS: Um sistema computacional consiste num conjunto de dispositivos eletrônicos (hardware) capazes de processar informações de acordo com um programa (software). O software mais importante é o sistema operacional, porque ele fornece as bases para execução das aplicações as quais os usuários desejam executar.
Exemplo de sistemas operacionais: Windows, Macintosh e Linux dentre outras versões. Um dos mais utilizados por usuários domésticos hoje em dia e o sistema Windows, produzido pela Microsoft. Um sistema computacional é aquele que automatiza ou apoia a realização de uma atividade humana através do processamento de informações, um sistema baseado em um computador é caracterizado por alguns elementos fundamentais do tipo: HARDWARE, SOFTWARE, INFORMAÇÕES, USUÁRIOS, PROCEDIMENTO ou TAREFAS e DOCUMENTAÇÃO.
O HARDWARE corresponde as partes eletrônicas e mecânicas (rígidas) que possibilitam a existência do software, o armazenamento de informações e a interação com o usuário. A CPU, as Memorias primarias e secundarias, os periféricos de entrada, saída e entrada e saída, e os componentes de redes de computadores são exemplos de hardware.
GERAÇÕES DOS COMPUTADORES.
Os computadores são maquinas capazes de realizar vários cálculos automaticamente, além de possuir dispositivos de armazenamento e de entrada e saída. A partir de agora iremos ver a evolução dos computadores até os dias de atuais.
1ª GERAÇÃO - VÁLVULAS ELETRÓNICAS Válvulas Electrónicas 1946 – 1957.
Os computadores foram desenvolvidos nas universidades dos EUA e Inglaterra. Preparados para aplicações científico-militares, esses equipamentos são baseados em tecnologias de válvulas electrónicas, não tendo, portanto, confiabilidade. O tempo de operação interna era milésimo de segundos (milissegundos). Entendesse por tempo de operação interna o tempo gasto em operações aritméticas e lógicas.
As válvulas electrónicas foram inicialmente desenvolvidas para a industria radiofónica
Possibilitou cálculos,milhares de vezes mais rápidos do que com os anteriores relés electromecânicos. Este projecto dos EUA para calcular a trajectória de projecteis.
ENIAC (1946)
· O primeiro computador digital electrónico
· Dezoito metros de comprimento por dois metros e meio de largura (aproximadamente um terço da área de um campo de futebol)
· Dezoito mil válvulas
· Trinta toneladas
· capacidade para reter em memoria setenta e quatro números de vinte e três algarismos.
· 5000 adições ou 300 multiplicações por segundo..
· Criado por John Mauchly e John Presper Eckert.
· 1000x mais rápido do que o MARK-I.
Modelo de John Von Neumann (1945)
· Formalizou o projeto lógico de um computador.
· Sugeriu que as instruções fossem armazenadas na memória do computador, (anteriormente eram lidas de cartões perfurados e executados uma a uma).
· A maioria dos computadores de hoje ainda seguem o modelo proposto por Von Neumann.
· Primeiro computador a funcionar com um programa armazenado, de acordo com o modelo de Von Newman.
Manchester Mark I (1948)
· Von Newman propôs que a memória do computador deveria desenvolver-se de forma a armazenar um programa, constituído por um conjunto de instruções codificadas.
UNIVAC I (1951)
· Primeiro computador de uso geral a ser comercializado.
· Desenvolvido por Eckert e Mauchy.
· 5000 válvulas.
· Adição em 0,5 ms.
· Multiplicação em 2 ms.
· Entrada e saída de dados em banda magnética.
IBM 650 (1954)
· As dimensões do CPU eram 1,5 m X 0,9 m X 1,8 m.
· As dimensões da unidade de alimentação eram idênticas, mas a sua massa era de 1.348 Kg.
· O sistema necessitava de uma potência eléctrica instalada de 22 KVA.
Banda Magnetica (1955)
· Nos anos 50 foi necessário descobrir novos tipos de armazenamento para podermos guardar maior número de dados.
· 2ª GERAÇÃO - TRANSÍSTORES - Transístores 1957 - 1964
Nos equipamentos de segunda geração, a válvula foi substituída pelo transístor  dispositivo electrónico desenvolvido em 1947 na BELL LABORATORIES por BARDEEN, BRETTAIN e SHOCKLE.
Seu tamanho era 100 vezes menor que o da válvula, não precisava de tempo para aquecimento, consumia menos energia, era mais rápido e mais confiável.
Os computadores desta época calculavam em microssegundos.
Transístor – Dispositivo electrónico que serve para retificar e ampliar os impulsos eléctricos.
Com apenas 1/200 do tamanho de uma das primeiras válvulas e consumindo menos de 1/100 da energia, o transístor passou a ser generalizado em todos os computadores por volta dos Anos 60. A função básica do transístor num computador é o de um interruptor electrónico para executar operações lógicas.
TRADIC, da Bell Laboratories (1954 )
· O primeiro modelo de computador 100% transistorizado foi o TRADIC, da Bell Laboratories.
· (TRAnsistor DIgital Computer ou
·  TRansistorized Airborne DIgital Computer).
· Outro modelo dessa época era o IBM 1401, com uma capacidade de memória base de 4.096 bytes.
PDP-1 (Programmed Data Processor-1) (1959)
· Foi o primeiro computador da serie da Corporação de Equipamento Digital foi o primeiro a ser produzido em 1959.
· É famoso devido ao facto de ter sido a criação mais importante na cultura de "Hacking" no MIT e de Bolt, Beranek e Newman.
· O PDP-1 também foi o Hardware original usado para jogar o primeiro video-jogo na história dos mini-computadores  Steve Russell's Spacewar!.
· 
3ª GERAÇÃO: Circuitos Integrados 1964 – 1980 minicomputadores
A terceira geração começa em 1965 com a substituição dos transístores pela tecnologia dos circuitos integrados (CI). Os transístores e outros componentes electrónicos são miniaturizados e montados em um único chip.
A finalização desta geração é datada no início dos anos 70 a qual foi considerada a importância de uma maior escala de integração para o início da 4ª geração.
Principais Características:
· Criação de microcomputadores;
· Utilização em tempo partilhado (futura memória cache);
· Introdução do conceito de compatibilidade;
· Programação em Assembly;
· Desenvolvimento dos primeiros Software (programas);
· Evolução dos diversos componentes (redução em tamanho);
Altair 8800 (1975)
· Primeiro computador pessoal portátil, produzido industrialmente para venda em massa.
Apple II (1976)
· Lançado em 1976, por Steve Jobs e Steve Wozniak (fundadores da Apple Corp.)
· Foi o primeiro microcomputador pessoal a ter sucesso comercial.
4ª GERAÇÃO: Microprocessador 1980 - Atual. Computadores pessoais
A quarta geração de computadores caracteriza-se pelo uso do microprocessador. O microprocessador é a CPU (Central Processing Unit) dos computadores, ou seja Unidade Central de Processamento.
No início da década de 70, os CPUs possuíam a capacidade de processar por volta de 100.000 informações por segundo e foram utilizados nos primeiros micros de 8 bits. 
CPU – Processador central de informações. É nesta pastilha de silício que são processadas todas as informações computacionais.
INTEL – Um dos maiores fabricantesde processadores do mundo.
Principais características:
· Introdução dos microprocessadores;
· Desenvolvimento dos computadores pessoais(PC);
· Evolução dos diversos componentes (hardware e software);
· Escala de Integração - VLSI: Very Large Scale Integration;
· Computadores pessoais e estações de trabalho;
· Sistemas operacionais MS-DOS, Windows e UNIX;
· Sistemas operacionais de rede;
· Evolução dos dispositivos diversos componentes (hardware e software);
· Micro- programação; 
EVOLUÇÃO VERTIGINOSA DESDE A SUA INTRODUÇÃO
IBM PC (Personal Computer) (1981)
· Lançado em 1981 pela IBM Corp. 
· Primeiro microcomputador pessoal da IBM;
· O primeiro PC tinha clock de 4.77MHz, microprocessador Intel 8088 e usava o sistema operacional MS-DOS da Microsoft. 
· Tornando-se o computador mais vendido de toda história.
Macintosh (1984)
· Lançado em 1984;
· Primeiro computador a apresentar interface gráfico com o utilizador;
· Sucesso em vendas.
Intel 4004 (1971)
· O Intel 4004 foi o primeiro processador lançado em um único chip de silício. 
· Ele trabalhava com 4bits, sendo desenvolvido para o uso em calculadoras, operando com o clock máximo de 0.78 Mhz. 
· Esta CPU calculava até 92.000 instruções por segundo(ou seja, cada instrução gastava 11 microssegundos).
Arquitetura x86 (década de 70)
· A arquitectura x86, lançada em meados da década de 70, ainda serve como base para uma boa parte dos computadores actuais.
· O primeiro processador que aproveitou todo o seu potencial foi o Intel 8086, de 1978. 
· Pela  primeira vez, a velocidade do clock alcançou 5 MHz, utilizando instruções reais de 16bits, o dobro que suas versões concorrentes. 
Os famosos 386 e 486 (década de 80)
· As CPUs 80386 e 80486, trabalhavam com 40MHz e100MHz, respectivamente. 
· O 80386 permitiu que vários programas utilizassem o processador de forma cooperativa, através do escalonamento de tarefas. 
· Já o 80486 foi o primeiro a usar o mecanismo de pipeline, permitindo que mais de uma instrução seja executada ao mesmo tempo no PC.
5ª GERAÇÃO: INTELIGÊNCIA ARTIFICIAL
·  Desde o início da Era dos computadores, os especialistas em informática trataram de desenvolver técnicas que permitem aos computadores atuar, como faz o ser humano.  Uma das bases de apoio desta nova forma de desenhar um programa é a inteligência artificial. 
Tradicionalmente, a inteligência artificial é dividida em 3 grandes aplicações:
- Os processos de linguagem natural, que facilita a comunicação do computador com o utilizador;
- A robótica e tudo associado à visão e manipulação de objetos;
- Os sistemas especialistas, baseados no armazenamento do conhecimento adquirido.
 A fim de visualizar a evolução dos microprocessadores apresentaremos, como exemplo, o quadro de processadores da INTEL e a utilização de cada um deles.
Principais Características:
· O nascimento da Inteligência Artificial;
· Reconhecimento de voz;
· Sistemas inteligentes;
· Redes neuronais;
· Robótica;
· Redes de Alta Velocidade;
· Escala de Integração – ULSI: Ultra Large Scale Integration
· Computação Distribuída;
· Computação nas Nuvens (Cloud);
· Computação em Grade ou em Rede;
· Computação Móvel;
· Computação Ubíqua (presença directa das tecnologias na vida das pessoas, em casa ou em convívio social);
· Realidade Aumentada;
ARQUITETURA INTERNA DO COMPUTADOR.
PLACA MÃE ON-BOARD: como o próprio nome diz, o componente on-board vem diretamente conectado aos circuitos da placa mãe funcionando em sincronia e usando a capacidade do processador e da memória principal (RAM) quando se trata de vídeo, som, modem e rede, isso tem como maior objetivo diminuir o preço das placas ou componentes, mas em casos de defeitos o dispositivo não será recuperável.
PLACA MAE OFF-BOARD: São os componentes ou circuitos que funcionam independentes da placa mãe, e por isso são separados, tendo a sua própria forma de trabalhar não usando o processador e nem a memória principal. Geralmente quando o vídeo, som, modens ou redes são ligados a esta placa mãe eles são usados em slot de expansão, eles têm um preço mais elevado que o dispositivo on-board, sendo as placas avulsas tipo vídeo e som, estas placas veem com o seu próprio microprocessadores memória RAM com isso este equipamento não precisa utilizar uma fatia da própria memória RAM do PC
PLACA MAE AT: AT é a sigla para (Advanced Technology). Trata-se de um tipo de placa-mãe já antiga. Seu uso foi constante de 1983 até 1996. Um dos fatores que contribuíram para que o padrão AT deixasse de ser usado (e o ATX fosse criado), é o espaço interno reduzido, que com a instalação dos vários cabos do computador (flat cable, alimentação), dificultavam a circulação de ar, acarretando, em alguns casos danos permanentes à máquina devido ao alto grau de aquecimento. Isso exigia grande habilidade do técnico montador para aproveitar o espaço disponível da melhor maneira. Além disso, o conector de alimentação da fonte AT, que é ligado à placa-mãe, é composto por dois plugs semelhantes (cada um com seis pinos), que devem ser encaixados lado a lado, sendo que os fios de cor preta de cada um devem ficar localizados no meio. Caso esses conectores sejam invertidos e a fonte de alimentação seja ligada, a placa-mãe será fatalmente queimada. Com o padrão AT, é necessário desligar o computador pelo sistema operacional, aguardar um aviso de que o computador já pode ser desligado e clicar no botão "Power" presente na parte frontal do gabinete. Somente assim o equipamento é desligado.
PLACA MAE ATX é a sigla para (Advanced Technology Extended). Pelo nome, é possível notar que se trata do padrão AT aperfeiçoado. Um dos principais desenvolvedores do ATX foi a Intel. O objetivo do ATX foi de solucionar os problemas do padrão AT (citados anteriormente), o padrão apresenta uma série de melhorias em relação ao anterior. Atualmente a maioria dos computadores novos vêm baseados neste padrão. Entre as principais características do ATX, estão:
· O maior espaço interno, proporcionando uma ventilação adequada, conectores de teclado e mouse no formato mini-DIN PS/2 (conectores menores). 
· Conectores e paralelo ligados diretamente na placa mãe, sem a necessidade de cabos, melhor posicionamento do processador, evitando que o mesmo impeça a instalação de placas de expansão por falta de espaço.
· Quanto à fonte de alimentação, encontramos melhoras significativas. 
· A começar pelo conector de energia ligado à placa-mãe. 
· Ao contrário do padrão AT, não é possível encaixar o plug de forma invertida.
· Cada orifício do conector possui um formato, que dificulta o encaixe errado. 
· A posição dos slots de memória RAM e socket de CPU variam a posição conforme o fabricante. Nestas placas serão encontrados slots de memória SDRAM, Rambus, DDR, DDR2 ou DDR3, podendo vir com mais de um dos padrões na mesma placa-mãe. Geralmente os slots de expansão mais encontrados são os PCI, AGP, AMR/CNR e PCI-Express. As placas mais novas vêm com entrada na própria placa-mãe para padrões de disco rígido IDE, ATA ou ATA II. Gerenciamento de energia quando desligado o micro, suporta o uso do comando "shutdown", que permite o desligamento automático do micro sem o uso da chave de desligamento encontrada no gabinete. 
· Se a placa mãe for alimentada por uma fonte com padrão ATX é possível ligar o computador utilizando um sinal externo como, por exemplo, uma chamada telefônica recebida pelo modem instalado.
FUNCIONAMENTO DA PLACA MÃE: A placa mãe realiza a interconexão das peças e componentes dos microcomputadores. Assim os processadores, memorias, placa de vídeo, hd, teclado, mouse estão ligados diretamente na placa mãe. Ela possui diversos tipos de stlos para que seja possível conectar os vários dispositivos.
COMPONENTES: A placa mãe pode variar conforme o modelo e fabricante, mas há componentes que mantém. Vamos destacar os mais importantes componentes de uma placa mãe.
Processador, soquete, memoria ram e rom, Bios, bateria, chipset etc..
Slots de expansão (PCI, PCI-Express 1x, 4x, 8x e 16x, APG, ISA) 
Conectores (IDE,SATA, MOUSE, TECLADO, IMPRESSORA, USB, PORTA PARALELA)
Processador fica encaixado no soquete devendo observar o modelo placa mãe. 
OBS: A MEMÓRIA RAM sempre trabalha intercalada com o processador porque tudo que é executado pelo usuário é levado para ela.
A memória principal do computador são divididas em duas. RAM (Random-Access Memory - Memória de Acesso Aleatório) e ROM (Read-Only Memory - Memória Somente de Leitura).
BIOS, em computação significa Basic Input/Output System (Sistema Básico de Entrada/Saída). O BIOS é um programa de computador pré-gravado em memória permanente (firmware) executado por um computador quando ligado. Ele é responsável pelo suporte básico de acesso ao hardware, bem como por iniciar a carga do sistema operacional.
UNIDADE CENTRAL DE PROCESSAMENTO.
A Unidade Central de Processamento - UCP (em inglês, Central Processing Unity - CPU) é a responsável pelo processamento e execução dos programas armazenados na MP (memoria principal). As funções da UCP são: EXECUTAR AS INSTRUÇÕES E CONTROLAR AS OPERAÇÕES NO COMPUTADOR.
Arquitetura Cisc (Complex Instruction Set Computer, ou, em uma tradução literal, “Computador com um Conjunto Complexo de Instruções”): é um processador capaz de executar centenas de instruções complexas diferentes.
Arquitetura Reduced Instruction Set Computer Ou Computador Com Um Conjunto Reduzido De Instruções (Risc), é uma linha de arquitetura de computadores que favorece um conjunto simples e pequeno de instruções que levam aproximadamente a mesma quantidade de tempo para serem executadas. 
Um programa, para ser efetivamente executado pelo processador, deve ser constituído de uma série de instruções de máquina. Para que a execução tenha início, as instruções devem ser armazenadas em células sucessivas, na MP.
A FUNÇÃO DA UCP CONSISTE, ENTÃO, EM: 
a) Buscar uma instrução na memória (operação de leitura), uma de cada vez;
b) Interpretar que operação a instrução está explicitando (pode ser soma de dois números, uma multiplicação, uma operação de entrada ou de saída de dados, ou ainda uma operação de movimentação de um dado de uma célula para outra);
c) Buscar os dados onde estiverem armazenados, para trazê-los até a UCP;
d) Executar efetivamente a operação com os dados, guardar o resultado (se houver algum) no local definido na instrução; e, finalmente;
e) Reiniciar o processo apanhando nova instrução
 Estas etapas compõem o que se denomina um ciclo de instrução. Este ciclo se repete indefinidamente (ver Figura 5.8) até que o sistema seja desligado, ou ocorra algum tipo de erro, ou seja, encontrada uma instrução de parada.
O processador, conhecido também como Unidade Central de Processamento, é o principal dispositivo do computador.
Ele é o considerado o cérebro do computador, motor do computador. Ele transforma dados em informações.
Ele é composto por 3 componentes principais:
· UC (Unidade de Controle) – controla o funcionamento da ULA (Unidade Lógica e Aritmética) e da memória.  É responsável também por distribuir e organizar tarefas, transferir informações da entrada para a memória e da memória para a saída. 
· ULA /UAL (Unidade Lógica e Aritmética) – é responsável pelas operações elementares (soma, subtração, multiplicação e divisão), e pelas decisões lógicas, ou seja, pelas comparações entre informações. Por exemplo, decidir se 8 > 4 ou 8 >=4.
· Registrador – Contida na CPU, o registrador é um tipo memória com pequena capacidade, porém muito rápida. É utilizada no armazenamento temporário durante o processamento. Os registradores estão no topo da hierarquia de memória e são considerados o meio mais rápido e caro de ser armazenar um dado.
A velocidade de um processador é calculada em Hertz – atualmente em GigaHertz.
Exemplo: 2GHZ (corresponde em média 2 bilhões de instruções/operações por segundo)
Socket é o local onde se encaixa o processador na Placa-Mãe.
CARACTERÍSTICAS DOS REGISTRADORES:
a) TEMPO DE ACESSO - por serem construídos com a mesma tecnologia da CPU, estes dispositivos possuem baixo tempo de acesso do sistema. 
b) CAPACIDADE - os registradores são fabricados com a capacidade de armazenar um único dado, uma única instrução ou até mesmo um único endereço, fazendo, assim, com que sua capacidade seja de alguns poucos bits. 
c) VOLATILIDADE - registradores são memórias de semicondutores e, portanto, necessitam de energia elétrica para funcionarem. Assim, registradores são memórias voláteis. 
d) TEMPORARIEDADE - os registradores são memórias auxiliares internas à CPU e, portanto, tendem a guardar informação o mais temporariamente possível. Acumuladores ou registradores de dados armazenam os dados apenas o tempo necessário para sua utilização na ALU. 
e) CUSTO - devido à tecnologia mais avançada de sua fabricação, os registradores consistem no tipo de memória de maior custo. 
f) Além dos registradores de dados, a CPU possui sempre outros registradores (que não participam diretamente da função processamento), com funções específicas ou que funcionam para a área de controle. Entre estes registradores podemos citar desde já o registrador de instrução (IR – Instruction Register), além do registrador de endereços de memória (MAR – Memory Address Register) e o registrador de dados de memória (MBR – Memory Buffer Register).
REGISTRADOR DE DADOS DE MEMÓRIA (MBR) – registrador que armazena temporariamente a informação que está sendo transferida da memória cache para a CPU (leitura) ou da CPU para a memória cache (escrita). Em seguida, a referida informação é reencaminhada para outro elemento da CPU para processamento ou para a memória cache, conforme o tipo da operação de transferência. 
REGISTRADOR DE ENDEREÇOS DA MEMÓRIA (MAR) – registrador que armazena temporariamente o endereço de acesso a uma posição de memória, ao se iniciar uma operação de leitura ou de escrita. Em seguida, o referido endereço é encaminhado à área de controle da MP para decodificação e localização da célula desejada. 
REGISTRADOR DE INSTRUÇÕES ( IR) – É o registrador que tem a função especifica de armazenar a instrução a ser executada pela CPU.
CLOCK: Em um computador, todas as atividades necessitam de sincronização. 
O clock interno (ou apenas clock) serve justamente a este fim, ou seja, basicamente, atua como um sinal para sincronismo. Quando os dispositivos do computador recebem o sinal de executar suas atividades, dá-se a esse acontecimento o nome de "pulso de clock". Em cada pulso, os dispositivos executam suas tarefas, param e vão para o próximo ciclo de clock.
A medição do clock é feita em hertz (Hz), a unidade padrão de medidas de frequência, que indica o número de oscilações ou ciclos que ocorre dentro de uma determinada medida de tempo, no caso, segundos. Assim, se um processador trabalha à 800 Hz, por exemplo, significa que ele é capaz de lidar com 800 operações de ciclos de clock por segundo.
PIPELINE é uma técnica de hardware que permite que a CPU realize a busca de uma ou mais instruções além da próxima a ser executada. Estas instruções são colocadas em uma fila de memória dentro do processador (CPU) onde aguardam o momento de serem executadas: assim que uma instrução termina o primeiro estágio e parte para o segundo, a próxima instrução já ocupa o primeiro estágio.
Em resumo, é o processo pelo qual uma instrução de processamento é subdividido em etapas, uma vez que cada uma destas etapas é executada por uma porção especializada da CPU, podendo colocar mais de uma instrução em execução simultânea. Isto traz um uso mais racional da capacidade computacional com ganho substancial de velocidade.
 A técnica de pipeline é utilizada para acelerar a velocidade de operação da CPU, uma vez que a próxima instrução a ser executada está normalmente armazenada nos registradores da CPU e não precisa ser buscada da memória principal que é muito mais lenta.
BARRAMENTOS
A imagem a seguir ilustra um esquema hipotético (e bastante abstrato) de comunicação entre o processador, a memória e o conjunto de dispositivos de entrada e saída, representando o funcionamento básico do computador.Note que a conexão entre estes itens é indicada por setas. Isso é feito para que você possa entender a função dos barramentos (bus).
BARRAMENTOS EM UM PROCESSADOR
De maneira geral, os barramentos são responsáveis pela interligação e comunicação dos dispositivos em um computador. Note que, para o processador se comunicar com a memória e o conjunto de dispositivos de entrada e saída, há três setas, isto é, barramentos: um se chama barramento de endereços (address bus); outro, barramento de dados (data bus); o terceiro, barramento de controle (control bus).
O BARRAMENTO DE ENDEREÇOS, basicamente, indica de onde os dados a serem processados devem ser retirados ou para onde devem ser enviados. A comunicação por este meio é unidirecional, razão pela qual só há seta em uma das extremidades da linha no gráfico que representa a sua comunicação.
Como o nome deixa claro, é pelo barramento de dados que as informações transitam. Por sua vez, o barramento de controle faz a sincronização das referidas atividades, habilitando ou desabilitando o fluxo de dados, por exemplo.
Para você compreender melhor, imagine que o processador necessita de um dado presente na memória. Pelo barramento de endereços, a CPU obtém a localização deste dado dentro da memória. Como precisa apenas acessar o dado, o processador indica pelo barramento de controle que esta é uma operação de leitura. O dado é então localizado e inserido no barramento de dados, por onde o processador, finalmente, o lê.
FSB (Front Side Bus)
Você já sabe: as frequências com as quais os processadores trabalham são conhecidas como clock interno. Mas, os processadores também contam com o que chamamos de clock externo ou Front Side Bus (FSB) ou, ainda, barramento frontal.
O FSB existe porque, devido a limitações físicas, os processadores não podem se comunicar com o chipset e com a memória RAM - mais precisamente, com o controlador da memória, que pode estar na ponte norte (northbridge) do chipset - utilizando a mesma velocidade do clock interno. Assim, quando esta comunicação é feita, o clock externo, de frequência mais baixa, é que entra em ação.
QUICKPATH INTERCONNECT (QPI) E HYPERTRANSPORT
Dependendo do processador, outra tecnologia pode ser utilizada no lugar do FSB. Um exemplo é o QuickPath Interconnect (QPI), utilizado nos chips mais recentes da Intel, e o HyperTransport, aplicado nas CPUs da AMD.
Estas mudanças de tecnologias são necessárias porque, com o passar do tempo, a busca por melhor desempenho faz com que os processadores sofram alterações consideráveis em sua arquitetura.
Uma dessas mudanças diz respeito ao já mencionado controlador de memória, circuito responsável por "intermediar" o uso da memória RAM pelo processador. Nas CPUs mais atuais da Intel e da AMD, o controlador está integrado ao próprio chip e não mais ao chipset localizado na placa-mãe.
Com esta integração, os processadores passam a ter um barramento direto à memória. O QPI e o HyperTransport acabam então ficando livres para fazer a comunicação com os recursos que ainda são intermediados pelo chipset, como dispositivos de entrada e saída.
O interessante é que tanto o QuickPath quanto o HyperTransport trabalham com duas vias de comunicação, de forma que o processador possa transmitir e receber dados ao mesmo tempo, já que cada atividade é direcionada a uma via, beneficiando o aspecto do desempenho. No FSB isso não acontece, porque há apenas uma única via para a comunicação.
Bits dos processadores
O número de bits é outra importante característica dos processadores e, naturalmente, tem grande influência no desempenho deste dispositivo. Processadores mais antigos, como o 286, trabalhavam com 16 bits. Durante muito tempo, no entanto, processadores que trabalham com 32 bits foram muitos comuns, como as linhas Pentium, Pentium II, Pentium III e Pentium 4 da Intel ou Athlon XP e Duron da AMD. Alguns modelos de 32 bits ainda são encontrados no mercado, todavia, o padrão atual são os processadores de 64 bits, como os da linha Core i7, da Intel, ou Phenom, da AMD.
Em resumo, quanto mais bits internos o processador possuir, mais rapidamente ele poderá fazer cálculos e processar dados em geral, dependendo da execução a ser feita. Isso acontece porque os bits dos processadores representam a quantidade de dados que os circuitos desses dispositivos conseguem trabalhar por vez.
Um processador com 16 bits, por exemplo, pode manipular um número de valor até 65.535. Se este processador tiver que realizar uma operação com um número de valor 100.000, terá que fazer a operação em duas partes. No entanto, se um chip trabalha a 32 bits, ele pode manipular números de valor até 4.294.967.295 em uma única operação. Como este valor é superior a 100.000, a operação pode ser realizada em uma única vez.
Memória cache
Os processadores passam por aperfeiçoamentos constantes, o que os tornam cada vez mais rápidos e eficientes, como você já sabe. No entanto, o mesmo não se pode dizer das tecnologias de memória RAM. Embora estas também passem por constantes melhorias, não conseguem acompanhar os processadores em termos de velocidade. Assim sendo, de nada adianta ter um processador rápido se este tem o seu desempenho comprometido por causa da "lentidão" da memória.
Uma solução para este problema seria equipar os computadores com um tipo de memória mais sofisticado, como a SRAM (Static RAM). Esta se diferencia das memórias convencionais DRAM (Dynamic RAM) por serem muito rápidas. Por outro lado, são muito mais caras e não contam com o mesmo nível de miniaturização, sendo, portanto, inviáveis. Apesar disso, a ideia não foi totalmente descartada, pois foi adaptada para o que conhecemos como memória cache.
A memória cache consiste em uma pequena quantidade de memória SRAM embutida no processador. Quando este precisa ler dados na memória RAM, um circuito especial chamado "controlador de cache" transfere blocos de dados muito utilizados da RAM para a memória cache. Assim, no próximo acesso do processador, este consultará a memória cache, que é bem mais rápida, permitindo o processamento de dados de maneira mais eficiente.
Se o dado estiver na memória cache, o processador a utiliza, do contrário, irá buscá-lo na memória RAM. Perceba que, com isso, a memória cache atua como um intermediário, isto é, faz com que o processador nem sempre necessite chegar à memória RAM para acessar os dados dos quais necessita. O trabalho da memória cache é tão importante que, sem ela, o desempenho de um processador pode ser seriamente comprometido.
Os processadores trabalham, basicamente, com dois tipos de cache: cache L1 (Level 1 - Nível 1) e cache L2 (Level 2 - Nível 2). Este último é, geralmente mais simples, costuma ser ligeiramente maior em termos de capacidade, mas também um pouco mais lento. O cache L2 passou a ser utilizado quando o cache L1 se mostrou insuficiente.
Antigamente, um tipo se distinguia do outro pelo fato de a memória cache L1 estar localizada junto ao núcleo do processador, enquanto que a cache L2 ficava localizada na placa-mãe. Atualmente, ambos os tipos ficam localizados dentro do chip do processador, sendo que, em muitos casos, a cache L1 é dividida em duas partes: "L1 para dados" e "L1 para instruções".
Vale ressaltar que, dependendo da arquitetura do processador, é possível encontrar modelos que contam com um terceiro nível de cache (L3). 
· CACHE HIT: Ocorre quando a posição acessada da memória principal é encontrada na cache.
· CACHE MISS: Ocorre quando a posição acessada da memória principal não é encontrada na cache.
· LOCALIDADE TEMPORAL: Se um programa acessa um dado (endereço), existe uma boa probabilidade que ele venha a acessá-la novamente, em breve.
· LOCALIDADE ESPACIAL: Se um programa acessa um dado (endereço), existe uma boa probabilidade que ele venha a acessar os dados armazenados em sua proximidade, em breve. 
INTRODUÇÃO AO SUBSISTEMA DE MEMÓRIA.
A memória é o componente de um sistema de computação cuja função é armazenar as informações (por informações entendem-se os dados) que, foram ou serão manipuladaspelo sistema. Na prática, a memória de um computador possui tantas variedades (velocidade, capacidade de armazenamento, tecnologia, etc.) que se torna um subsistema de elementos hierarquicamente estruturados. 
Para que a memória possa ser armazenada em uma memória (escrita) é necessário que seja definido um local disponível identificado de alguma forma precisa e única (um número, por exemplo). O número ou código associado ao local é o endereço (“address”) e irá permitir que a informação possa ser localizada.
MÉTODOS DE ACESSO
ACESSO SEQUENCIAL: Os dados são organizados na memória em unidades chamadas de registros. O acesso é feito segundo uma sequência específica. O tempo de acesso depende da posição relativa do registro, variando significativamente. Exemplo: Fita magnética.
ACESSO DIRETO: Por meio de uma pesquisa sequencial em uma vizinhança do registro é obtido o seu endereço físico, sendo então é possível a leitura ou gravação. O tempo de acesso também é variável. Exemplo: Disco magnético (HD).
ACESSO ALEATÓRIO: Cada posição de memória possui mecanismo de endereçamento fisicamente conectado a ela. O tempo de acesso é o mesmo para todos os endereços. Exemplo: RAM.
ACESSO ASSOCIATIVO: Um dado é buscado na memória com base em uma parte de seu conteúdo, e não de acordo com seu endereço. Exemplo: Memória CACHEODUÇÃO
INTRODUÇÂO AS MEMORIAS
Memória é um termo genérico usado para designar as partes do computador ou dos dispositivos periféricos onde os dados e programas são armazenados. Sem uma memória de onde os processadores podem ler e escrever informações, não haveria nenhum computador digital de programa armazenado.
A memória do computador pode ser dividida em duas categorias:
 Principal: de acesso mais rápido, mas de capacidade mais restrita. Armazena informações temporariamente durante um processamento realizado pela UCP.
 Secundária: de acesso mais lento, mas de capacidade bem maior. Armazena grande conjunto de dados que a memória principal não suporta.
UNIDADE BÁSICA DE MEMÓRIA
O computador só pode identificar a informação através de sua restrita capacidade de distinguir entre dois estados, por exemplo, algo está imantado num sentido ou está imantado no sentido oposto. A uma dessas opções o computador associa o valor 1, e ao outro estado, o valor 0.
Os dígitos 0 e 1 são os únicos elementos do sistema de numeração de base 2, sendo então chamados de dígitos binários, ou abreviadamente, bit. Entenda-se por bit a unidade básica de memória, ou seja, a menor unidade de informação que pode ser armazenada num computador.
O TAMANHO DA MEMÓRIA
Esse é o indicador da capacidade de um computador. Quanto maior ela for, mais informação poderá guardar. Ou seja, quanto mais bytes a memória tiver, mais caracteres poderá conter e, consequentemente, maior o número de informação que guardará.
A memória é geralmente apresentada em múltiplos de K, M(mega), G(giga) ou T(tera).
1K eqüivale a 210
1M eqüivale a 220
1G eqüivale a 230
1T eqüivale a 240
Em geral, o tamanho da célula depende da aplicação desejada para a máquina.
Emprega-se células pequenas em máquinas mais voltadas para aplicações comerciais ou pouco cientificas. Uma memória com células de 1 byte permite o processamento individual de caracter, o que facilita o processamento de aplicações como editores de textos.
Por outro lado, cálculos científicos seriam desvantajosos em células pequenas pois números desse tipo precisariam de mais de uma célula para armazena-los.
A capacidade propriamente dita da memória está relacionada diretamente à quantidade de células endereçáveis.
FUNCIONAMENTO DA MEMÓRIA PRINCIPAL
Toda memória, seja Secundária ou Principal, permite a realização de dois tipos de operações: escrita e leitura.
Entende por leitura a recuperação da informação armazenada e a escrita é a gravação (ou armazenamento) da informação na memória.
No caso da Memória Principal (MP), essas operações são realizadas pela UCP e efetuada por células, não sendo possível trabalhar com parte dela.
A leitura não é uma operação destrutiva, pois ela consiste em copiar a informação contida em uma célula da MP para a UCP, através de um comando desta.
Pelo contrário a escrita é uma operação destrutiva, por que toda vez que se grava uma informação em uma célula da MP, o seu contudo anterior de eliminado.
TIPOS DE MEMÓRIA
Memória RAM– É um tipo de memória essencial para o computador, sendo usada para guardar dados e instruções de um programa. Tem como características fundamentais, a volatilidade, ou seja, o seu conteúdo é perdido quando o computador é desligado; o acesso aleatório aos dados e o suporte à leitura e gravação de dados, sendo o processo de gravação um processo destrutivo e a leitura um processo não destrutivo. Existem dois tipos básicos de memória RAM, RAM Dinâmica e RAM Estática.
Dinâmica - Esta é uma memória baseada na tecnologia de capacitores e requer a atualização periódica do conteúdo de cada célula do chip consumindo assim pequenas quantidades de energia, no entanto possui um acesso lento aos dados. Uma importante vantagem é a grande capacidade de armazenamento oferecida por este tipo de tecnologia.
Estática - É uma memória baseada na tecnologia de transistores e não requer atualização dos dados. Consome mais energia (o que gera mais calor) comparando-se com a memória dinâmica sendo significativamente mais rápida. É frequentemente usada em computadores rápidos. Possui uma capacidade de armazenamento bem menor que a memória dinâmica.
 
	 
	Vantagens
	Desvantagens
	 
RAM Dinâmica
	Barata
Baixo Consumo
Alta Densidade
	Necessita de Atualização
Lenta
	 
RAM Estática
	Rápida
Não necessita de atualização
	Mais cara
Consome Mais Energia
Baixa Densidade
5.4. Memórias de Semicondutores
As memórias de semicondutores são consideradas aquelas que utilizam composição de transistores como forma principal de armazenamento. Dentro deste grupo estão os registradores, memórias cache, memórias principais e, mais recentemente, cartões de memória, pen-drives e os chamados Discos de Estado Sólido (SSD), que não possuem formatos de disco, mas receberam esse nome por serem os candidatos mais cotados a substituírem os Discos Rígidos (HD).
Dentro das memórias de semicondutores vamos apresentar:
· Random-Access Memory (RAM)
· Dynamic RAM (DRAM)
· Static RAM (SRAM)
· Synchronous Dynamic RAM (SDRAM)
· Double-Data Rate SDRAM (DDR-DRAM)
· Read-Only Memory (ROM)
5.4.1. Random-Access Memory (RAM)
O termo Random-Access Memory, ou RAM, ou Memória de Acesso Aleatório em português, veio porque essa tecnologia substituiu as anteriores memórias de Acesso Sequencial. No Acesso Sequencial, os endereços são acessados obrigatoriamente de forma sequencial, 0, 1, 2, 3,… Essa é a forma de acesso de memórias magnéticas, como fitas cassete e VHS, e os discos rígidos (com alguma melhoria).
Já as memórias de acesso aleatório podem acessar qualquer endereço aleatoriamente, independente de sua posição. Hoje, o termo Memória RAM é utilizado de forma errada para representar a Memória Principal, mas na verdade, tanto registradores, quanto memória Cache e Memória Principal são feitos utilizando tecnologia RAM. Assim, RAM é uma tecnologia e não uma memória. A partir de hoje então, não utilize mais memória RAM, mas Memória Principal quando se referir à principal memória dos computadores.
5.4.2. Dynamic RAM (DRAM)
As memórias Dynamic RAM são as mais simples de serem fabricadas. Como mostrado na Figura 5.2, “Estrutura de uma DRAM para amazenar um Bit”, é formada simplesmente por um único transistor e um capacitor.
Figura 5.2. Estrutura de uma DRAM para amazenar um Bit
A figura apresenta uma memória de um único bit. O transistor cuida de abrir ou fechar a passagem de corrente para linha B. Já a linha de endereço é utilizada para fechar a porta do transistor e carregar o capacitor. Se o capacitor estiver carregado, é considerado que a memória contém o bit 1. Caso contrário, a memória contém o bit 0.
A simplicidade desta implementação traz resultado no seu principal ponto negativo. Assim como todo capacitor, o capacitorresponsável por manter a carga da memória só é capaz de manter a carga por um curto tempo. Aos poucos, a carga vai sendo dissipada, até o momento em que era o bit 1, se torna 0, gerando um erro. Para evitar isso, é adicionado um circuito a parte que de lê o conteúdo da memória periodicamente e recarrega todos capacitores que estão com bit 1.
Vamos lembrar que as memórias hoje estão na casa de Giga Bytes. Ou seja, bilhões de bytes. Então, bilhões de capacitores devem ser lidos e recarregados periodicamente para que os conteúdos não sejam perdidos. Esta técnica é chamada de Refrescagem. Ela resolve o problema dos dados perdidos, mas atrapalha bastante o desempenho da memória. Sempre que a Refrescagem precisa ser realizada, todo acesso é bloqueado. Nada pode ser lido ou escrito enquanto isso. Assim, o processador precisa esperar que o processo de refrescarem termine para poder acessar novamente a memória.
Devido à sua simplicidade de fabricação, as memórias DRAM são mais utilizadas para compor a Memória Principal, devido ao preço mais acessível do que o das mais modernas SRAM.
5.4.3. Static RAM (SRAM)
As memórias RAM Estáticas (Static RAM ou SRAM) se baseiam na composição de transistores para possibilitar que a carga do bit 1 seja compartilhada entre outros transistores. A Figura 5.3, “Estrutura de uma SRAM com transistores compartilhando carga do bit 1” apresenta essa composição de transistores.
Figura 5.3. Estrutura de uma SRAM com transistores compartilhando carga do bit 1
Nesta ilustração, o transistor T5 é que determina se o bit é 0 ou 1, e os transistores, T1 e T3 são utilizados para recarregá-lo, caso sua carga reduza. Já os transistores T2, T4 e T6 são o complemento deles de forma inversa, adicionando um nível a mais de segurança. Essa técnica é chamada Complementary MOS (CMOS).
As memórias SRAM não precisam de circuito de refrescarem, por isso, não precisam parar e tornam-se muito mais rápidas do que as DRAM. O problema é que elas precisam de muito mais transistores por bit, o que torna o projeto maior e, por consequência, mais caro.
Devido ao seu preço, elas são mais utilizadas em memórias Cache, mas em menor quantidade do que as memórias principais.
5.4.4. Synchronous Dynamic RAM (SDRAM)
Já a Synchronous Dynamic RAM (SDRAM) é uma DRAM com um simples avanço. O relógio que determina o tempo das SDRAM vem diretamente do processador, e não de um relógio próprio, como nas DRAM convencionais. Isso faz com que o momento exato da Refrescagem seja determinado pelo processador. Dessa forma, o processador sabe exatamente quando ele não pode acessar a memória, e dedica seu tempo às outras tarefas, ou seja, o processador não perde mais tanto tempo esperando a memória.
5.4.5. Double-Data Rate SDRAM (DDR-DRAM)
Após as SDRAM surgiram as DDR-SDRAM. As memórias DDR são síncronas como as SDRAM, mas elas possuem um barramento extra que faz com que, a cada ciclo de clock da memória, o dobro de dados são transferidos. As memórias DDR e suas sucessoras são mais utilizadas para utilização como memória principal.
5.4.6. Read-Only Memory (ROM)
As memórias ROM também possuem um nome criado há muitos anos e hoje é um termo que não faz tanto sentido. Em português significam Memória Apenas de Leitura. Isso porque as primeiras ROM eram escritas durante a fabricação e não podiam mais ser modificadas. Mas outras gerações foram desenvolvidas que permitiram a escrita e tornou o termo ROM antiquado. Todas memórias ROM são não voláteis, ou seja, mantêm seu conteúdo mesmo com a falta do fornecimento de energia elétrica. São tipos de memória ROM:
As memórias PROM (Programmable ROM)
são memórias que vem com a conexões abertas de fábrica e precisam de uma máquina para que os dados sejam escritos nelas. Uma vez escritos, eles não podem mais ser modificados.
Já as memórias EPROM (Erasable PROM)
se baseiam no mesmo princípio das PROM, mas uma máquina especial que utiliza raios UV pode ser utilizada para apagar todo seu conteúdo e escrever novamente.
As memórias EEPROM (Electronically Erasable PROM)
possuem o mesmo princípio das PROM, mas a máquina utilizada para escrita e apagar é eletrônica. Isso permite que um computador, ou um máquina especial seja utilizada para escrever nas memórias, as tornando muito mais utilizadas.
Já as memórias Flash
se baseiam no princípio das memórias EEPROM, mas o processo de apagar é feito em blocos grandes, o que acelera bastante o processo.
As memórias ROM são muito utilizadas na formação da BIOS dos computadores e as memórias Flash são o princípio básico de cartões de memória, pen-drives e memórias de estado sólido.
5.5. Memórias Secundárias
As memórias que vimos até o momento são chamadas de Memórias Primárias, porque são usadas para o funcionamento básico e primário da CPU. Já as memórias secundárias são utilizadas para dar um suporte a mais ao sistema, ampliando sua capacidade de armazenamento. O objetivo destas memórias é o de trazer mais capacidade, sem o intuito de realizar operações muito velozes. Se bem que as memórias virtuais que veremos na próxima seção fez com que a demanda por memórias secundárias mais velozes crescesse. São as principais tecnologias utilizadas como memórias secundárias:
· Memórias magnéticas
· Memórias ópticas
· Memórias de estado sólido
Memórias magnéticas
Utilizam o princípio de polarização para identificar dados numa superfície magnetizável. Assim como num imã, cada minúscula área da memória é magnetizada como sendo polo positivo ou negativo (ou Norte e Sul). Quando a região é polarizada com polo positivo, dizemos que ela armazena o bit 1, e armazena o bit 0, quando a polarização for negativa. O maior exemplo de memória magnética utilizado hoje são os Discos Rígidos, ou do inglês Hard Disk (ou HD).
Memórias ópticas
Armazenam seus dados numa superfície reflexiva. Para leitura, um feixe de luz (LASER) é disparado contra um também minúsculo ponto. O feixe bate na superfície volta para um sensor. Isso indicará que naquele ponto há o bit 0. Para armazenar o bit 1, um outro LASER entra em ação provocando um pequena baixa na região. Com isso, ao fazer uma leitura no mesmo ponto, o feixe de luz ao bater na superfície com a baixa será refletido mas tomará trajetória diferente, atingindo um outro sensor diferente daquele que indicou o bit 0. Quando este segundo sensor detecta o feixe de luz, é dito que o bit lido foi o 1. O maior representante das memórias ópticas são os CDs, DVDs e, mais recentemente os Blu-Ray.
Memórias de estado sólido (ou em inglês Solid State Disk - SSD)
São memórias feitas com tecnologia Flash mas para ser usadas em substituição ao Disco Rígido. Em comparação com ele, a memória de estado sólido é muito mais rápida, mais residente a choques e consome menos energia. Em contrapartida, as memórias de estado sólido são bem mais caras.
5.6. Memória Virtual
Com o crescente aumento da quantidade e tamanho dos programas sendo executados pelos processadores, surgiu a necessidade de cada vez mais memória principal. O problema, com já foi dito, é que as memórias principais (basicamente DRAM) são caras. Ao mesmo tempo, quando há muito programas sendo executados ao mesmo tempo, há uma grande tendência de haver muitos deles esquecidos, sem serem acessados. Esses programas ocupam espaço da memória principal de forma desnecessária.
Pensando nisso, foi criado o conceito de Memória Virtual, que nada mais é do que a técnica de utilizar a Memória Secundária, geralmente HD ou SSD, como uma extensão da Memória Principal. Desta forma, quando a memória principal está cheia e não há mais espaço para novos programas ou dados, o sistema utiliza a memória secundária. Tudo é feito de forma automática pela Unidade de Gerência de Memória (ou Memory Management Unit - MMU) presente nos processadores. Assim, todo dado que é acessado é antes buscado pela MMU na memória principal. Se ele não estiver lá, ela vai buscar na memória secundária, faz uma cópia na memória principal e libera o acesso ao dado.	
A principal técnica de Memória Virtual é a Paginação. Na Paginação, todos os dadossão acessados através de páginas. Isso facilita o processo de organização e localização dos dados que estão na memória principal e secundária. Agora, ao invés de gerenciar palavra por palavra, o sistema gerencia grandes blocos (geralmente de 64KB) chamados de páginas.
O CHIPSET é um componente fundamental para o funcionamento do PC. O nome se refere a um conjunto de circuitos integrados que são responsáveis por fazer com que todos os componentes do computador, desde o disco rígido até o processador, possam trocar informações e assim realizar as tarefas que exigimos deles.
O chipset é dividido em dois componentes principais: ponte norte (northbridge) e ponte sul (southbridge). A ponte norte fica responsável por controlar todos os componentes rápidos do computador, como processador, placa de vídeo (AGP e PCI Express) e memória RAM, fazendo com que eles solicitem informações do disco rígido (que está na ponte sul), as carregue na memória e divida o que será processado entre a CPU e a placa de vídeo, determinando qual será o desempenho final do computador.
A ponte sul fica responsável pelos componentes lentos do PC, também conhecidos como dispositivos de E/S (entrada/saída), o que inclui os discos rígidos (SATA e IDE), portas USB, pararela e PS/2 (utilizada em teclados e mouses antigos), slots PCI e ISA (padrão da IBM, hoje em desuso).
UNIDADE DE MEDIDAS DE UM PC
Não é possível medir a quantidade de informação armazenada por um computador utilizando as unidades de medida convencionais. Para esta finalidade, foram criadas unidades de medidas específicas:
BIT – Binary BigiT, é a menor unidade de medida. O computador não interpreta os caracteres conforme nós interpretamos, para ele existe apenas duas situações possíveis, SIM ou NÃO; CERTO ou ERRADO; 0 (zero) ou 1 (um). Ele só entende a presença de pulso elétrico, 1 (um) e a falta dele 0 (zero).
BYTE – é o conjunto de 8 Bit´s que combinados formam 1 (um) caractere ( uma letra, um número, um símbolo, um acento, etc). Ex: 00000011 = 3. Portanto a palavra são paulo é formada por 9 bytes, contando o espaço em branco. Como as unidades de medida de informação são baseadas em bit´s, todo cálculo é baseado no resultado de um cálculo exponencial, no caso do Byte é 2³ = 8.
KILOBYTE – é o conjunto de 1.024 Byte = 1.024 caracteres.
MEGABYTE – é o conjunto de 1.024 Kilobyte = 1.048.576 caracteres.
GIGABYTE – é o conjunto de 1.024 Megabyte = 1.073.741.824 caracteres.
TERABYTE – é o conjunto de 1.024 Gigabyte = 1.099.511.627.776 caracteres.
PETABYTE – é o conjunto de 1.024 Terabyte = 1.125.899.906.842.624 caracteres.
EXABYTE – é o conjunto de 1.024 Petabyte = 1.152.921.504.606.846.976 caracteres.
ZETABYTE – é o conjunto de 1.024 Exabyte = 1.180.591.620.717.411.303.424 caracteres.
YOTABYTE – é o conjunto de 1.024 Zetabyte = 1.208.925.819.614.629.174.706.176 caracteres.
SISTEMAS OPERACIONAIS
UM SISTEMA OPERACIONAL, é apenas um conjunto de rotinas 
executado pelo processador, de forma semelhante aos programas dos usuários. 	Sua principal função é controlar o funcionamento de um computador, gerenciando a utilização e o compartilhamento dos seus diversos recursos, como processadores, memórias e dispositivos de entrada e saída.
SISTEMAS OPERACIONAIS: Sem o Sistema Operacional, um usuário para interagir com o computador deveria conhecer profundamente diversos detalhes sobre o hardware do equipamento, o que tornaria seu trabalho lento e com grandes possibilidades de erros. O sistema operacional desta forma tem por objetivo funcionar como uma interface entre o usuário e o computador, tornando sua utilização mais simples, rápida e segura.
TIPOS DE SISTEMAS OPERACIONAIS. Os tipos de sistemas operacionais e a sua evolução estão relacionados diretamente com a evolução do hardware e das aplicações por ele suportadas. 
SISTEMAS MONOPROGRAMÁVEIS/MONOTAREFA
Os primeiros sistemas operacionais eram tipicamente voltados para a execução de um único programa. Qualquer outra aplicação, para ser executada, deveria aguardar o término do programa corrente. Os sistemas monoprogramáveis, como vieram a ser conhecidos, se caracterizam por permitir que o processador, a memória e os periféricos permaneçam exclusivamente dedicados à execução de um único programa.
Comparados a outros sistemas, os sistemas monoprogramáveis ou monotarefas são de simples implementação, não existindo muita preocupação com problemas decorrentes do compartilhamento de recursos, como processador e dispositivos de E/S.
SISTEMAS MULTIPROGRAMÁVEIS/MULTITAREFA.
Os sistemas multiprogramáveis são uma evolução dos sistemas monoprogramáveis. Neste tipo de sistema, os recursos computacionais são compartilhados entre os diversos usuários e aplicações. Enquanto em sistemas monoprogramáveis existe apenas um programa utilizando os recursos disponíveis, nos multiprogramáveis várias aplicações compartilham esses mesmos recursos. 
As vantagens do uso de sistemas multiprogramáveis são a redução do tempo de resposta das aplicações processadas no ambiente e de custos, a partir do compartilhamento dos diversos recursos do sistema entre as diferentes aplicações. Os sistemas multiprogramáveis, apesar de mais eficientes que os monoprogramáveis, são de implementação muito mais complexa
SISTEMAS BATCH: foram os primeiros tipos de sistemas operacionais multiprogramáveis a serem implementados na década de 1960. Os programas eram submetidos para execução através de cartões perfurados e armazenados em disco ou fita, onde aguardavam para ser processados. O processamento batch tem a característica de não exigir a interação do usuário com a aplicação. Todas as entradas e saídas são implementadas por algum tipo de memória secundária. Esses sistemas, quando bem projetados, podem ser bastante eficientes, devido à melhor utilização do processador; entretanto oferecem tempos de resposta longos. Atualmente os sistemas operacionais implementam ou simulam o processamento batch, não existindo sistemas exclusivamente dedicados a este tipo de processamento.
SISTEMAS DE TEMPO COMPARTILHANDO: Tais sistemas, permitem que diversos programas sejam executados a partir da divisão de tempo do processador em pequenos intervalos, denominados fatia de tempo (time-slice). Caso a fatia de tempo não seja suficiente para a conclusão do programa, esse é interrompido pelo sistema operacional e substituído por um outro, enquanto fica aguardando por uma nova fatia de tempo. O sistema cria um ambiente de trabalho próprio, dando a impressão de que todo o sistema está dedicado, exclusivamente, para casa usuário.
SISTEMAS DE TEMPO REAL: Os sistemas de tempo real (real-time) são implementados de forma semelhante à dos sistemas de tempo compartilhado. O que caracteriza a diferença entre os dois tipos de sistemas é o tempo exigido no processamento das aplicações. Enquanto em sistemas de tempo compartilhado o tempo de processamento pode variar sem comprometer as aplicações em execução, nos sistemas de tempo real os tempos de processamento devem estar dentro de limites rígidos impostos pela aplicação, que devem ser obedecidos, caso contrário poderão ocorrer problemas irreparáveis. Esses sistemas, normalmente, estão presentes em aplicações de controle de processos, como no monitoramento de refinarias de petróleo, controle de tráfego aéreo, usinas termoelétricas e nucleares, ou em qualquer aplicação onde o tempo de processamento é um fator fundamental.
SISTEMAS COM MÚLTIPLOS PROCESSADORES: Os sistemas com múltiplos processadores caracterizam-se por possuir duas ou mais UCPs interligadas e trabalhando em conjunto. A vantagem deste tipo de sistema é permitir que vários programas sejam executados ao mesmo tempo ou que um mesmo programa seja subdividido em partes para serem executadas simultaneamente em mais de um processador.
SISTEMAS FORTEMENTE ACOPLADOS: Nos sistemas fortemente acoplados (tightly coupled) existem vários processadores compartilhando uma única memória física (shared memory) e dispositivos de entrada/saída sendo gerenciados por apenas um sistema operacional. Em função desta características,os sistemas fortemente acoplados também são conhecidos como multiprocessadores.
SISTEMAS FRACAMENTE ACOPLADOS: Os sistemas fracamente acoplados (loosely coupled) caracterizam-se por possuir dois ou mais sistemas computacionais conectados através de linhas de comunicação. Cada sistema funciona de forma independente, possuindo seu próprio sistema operacional e gerenciando seus próprios recursos, como UCP, memória e dispositivos de entrada/saída. Em função destas características, os sistemas fracamente acoplados também são conhecidos como multicomputadores.
SERVIDOR: um sistema operacional servidor deve permitir a gestão eficiente de grandes quantidades de recursos (disco, memória, processadores), impondo prioridades e limites sobre o uso dos recursos pelos usuários e seus aplicativos. Normalmente um sistema operacional servidor também tem suporte a rede e multi-usuários.
DESKTOP: um sistema operacional “de mesa” é voltado ao atendimento do usuário doméstico e corporativo para a realização de atividades corriqueiras, como edição de textos e gráficos, navegação na Internet e reprodução de mídias simples. Suas principais características são a interface gráfica, o suporte à interatividade e a 6 c Carlos Maziero : Funcionalidades operação em rede. Exemplos de sistemas desktop são os vários sistemas Windows (XP, Vista, 7, etc.), o MacOS X e Linux
DE REDE: um sistema operacional de rede deve possuir suporte à operação em rede, ou seja, a capacidade de oferecer às aplicações locais recursos que estejam localizados em outros computadores da rede, como arquivos e impressoras. Ele também deve disponibilizar seus recursos locais aos demais computadores, de forma controlada. A maioria dos sistemas operacionais atuais oferece esse tipo de funcionalidade. 
DISTRIBUÍDO: em um sistema operacional distribuído, os recursos de cada máquina estão disponíveis globalmente, de forma transparente aos usuários. Ao lançar uma aplicação, o usuário interage com sua janela, mas não sabe onde ela está executando ou armazenando seus arquivos: o sistema é quem decide, de forma transparente. 
MULTI-USUÁRIO: um sistema operacional multi-usuário deve suportar a identificação do “dono” de cada recurso dentro do sistema (arquivos, processos, áreas de memória, conexões de rede) e impor regras de controle de acesso para impedir o uso desses recursos por usuários não autorizados. Essa funcionalidade é fundamental para a segurança dos sistemas operacionais de rede e distribuídos. Grande parte dos sistemas atuais são multi-usuários. 
· LINGUAGENS DE PROGRAMAÇÃO: Usadas para descrever algoritmos; isto é, seqüências de passos que levam à solução de um problema. 
· Permitir que os usuários especifiquem como estes passos devem ser seqüenciados para resolver um problema. 
· Especificar algoritmos com precisão.
· Tipos de Linguagem: As linguagens de baixo nível 
· Restritas a linguagem de máquina
· Forte relação entre as operações implementadas pela linguagem e as operações implementadas pelo hardware.
· As linguagens de alto nível
· Aproximam-se das linguagens utilizadas por humanos para expressar problemas e algoritmos
· Cada declaração numa linguagem de alto nível equivale a várias declarações numa linguagem de baixo nível. 
· Primeiras Linguagens: Programadores usavam linguagem de máquina
· Seqüências de dígitos binários (0s e 1s). 
· Por exemplo, a instrução “some 1 + 1” deveria ser representada como: 10100100
· Muitas desvantagens:
· Grande probabilidade de erro em todos os estágios do processo de programação.
· Mesmo sendo com algoritmos simples resulta em longos programas, o que dificulta o processo de validação e detecção de erros.
· O cálculo de endereços de memória devem ser feitos manualmente, com um árduo trabalho e uma grande probabilidade de erros.
· ASSEMBLER: Algumas das desvantagens podem ser superadas fazendo com que o computador seja o responsável pelo estágio de tradução. 
· O programa ainda é escrito em termos de operações básicas de máquina, mas a tradução em código binário é feita pelo computador. 
· O programa que faz essa tradução é chamado de assembler
· Exemplo: ADD 1,1
· Trata do problema de cálculo de endereço, usando nomes em formato de texto para endereçar os dados. 
· Linguagens de Alto Nível Vs Linguagens de Baixo Nível: 
· Alto nível
· Problemas podem ser solucionados muito mais rapidamente e com muito mais facilidade 
· A solução do problema não necessita ser obscurecida pelo nível de detalhes necessários em um programa em linguagem de baixo nível.
O programa em linguagem de alto nível é normalmente fácil de seguir e entender cada passo da execução
· Baixo nível
· Indicada para funções que precisam implementar instruções de máquina específicas que não são suportadas por linguagens de alto nível
· A grande eficiência e o reduzido tamanho dos programas
· Impossibilidade de uso de linguagens de alto nível (hardware simples)
· Histórico das Linguagens de Programação: Existem centenas de linguagens de programação
· Agrupadas em 4 gerações:
· Primeira geração: linguagem de máquina
· Segunda geração: grande quantidade de bibliotecas de software, sistemas de execução em tempo real e desenvolvimento de gerenciadores de base de dados.
· Terceira geração: capacidade procedural e estrutural 
· Quarta geração: sistemas especialistas, desenvolvimento de inteligência artificial execução dos programas em paralelo.
· Processamento de Linguagens: Embora seja teoricamente possível a construção de computadores especiais, capazes de executar programas escritos em uma linguagem de programação qualquer, os computadores existentes hoje em dia são capazes de executar somente programas em uma linguagem de nível baixo, a linguagem de máquina.
· Linguagens de máquina: rapidez de execução de programas, do custo de sua implementação 
· Linguagens de programação: facilidade na construção e da confiabilidade de programas 
· Um problema básico:como uma linguagem de nível mais alto pode ser implementada em um computador cuja linguagem de máquina é bastante diferente, e de nível bem mais baixo.
· Existem basicamente duas alternativas para esta implementação: interpretação e tradução.
· INTERPRETAÇÃO: Nesta solução, as ações indicadas pelos comandos da linguagem são diretamente executadas. 
· Mais precisamente, um interpretador é um programa que executa repetidamente a seguinte sequência:
1. Obter o próximo comando do programa. 
	2. Determinar que ações devem ser 			executadas. 
	3. Executar estas ações.
· Tradução: Nesta solução, programas escritos em linguagem de alto nível são traduzidos para versões equivalentes em linguagem de máquina, antes de serem executados. 
· Esta tradução é feita em vários passos. Por exemplo:
· Inicialmente traduzidos para código Assembly (compilador)
· Depois ser traduzido para código relocável (objeto), em linguagem de máquina
· O programa inteiro é carregado na memória principal, como código executável de máquina. 
· SOFTWARE APLICATIVO (aplicativo ou aplicação) é um programa de computador que tem por objetivo ajudar o seu usuário a desempenhar uma tarefa específica, em geral ligada a processamento de dados.
· Programas de computador podem ser divididos em duas classes gerais: Software de sistema e Software Aplicativo .
· Software de sistema são programas de computador de baixo nível que interagem com o computador num nível muito básico. Podemos citar como exemplos o Sistema Operacional, o firmware (um exemplo de firmware é a BIOS do computador), drivers de dispositivos e a interface gráfica que permite ao usuario interagir com o computador.
· Software Aplicativo (normalmente referido como apenas Software) é um software que permite ao usuario realizar uma tarefa especifica. Podemos citar vários exemplos como o Microsoft Office, Internet Explorer, Adobe Photoshop, navegadores, etc.
· SOFTWARE LIVRE, segundo a definição criada pela Free Software Foundation é qualquer programa de computador que pode ser usado, copiado, estudado, modificado e redistribuído sem nenhuma restrição. A liberdade de tais diretrizes écentral ao conceito, o qual se opõe ao conceito de software proprietário, mas não ao software que é vendido almejando lucro (software comercial). A maneira usual de distribuição de software livre é anexar a este uma licença de software livre, e tornar o código fonte do programa disponível.”
· SOFTWARE PROPRIETÁRIO ou não livre é aquele cuja cópia, redistribuição ou modificação são em alguma medida proibidos pelo seu criador ou distribuidor. A expressão foi cunhada em oposição ao conceito de software livre.
· Normalmente, a fim de que se possa utilizar, copiar, ter acesso ao código-fonte ou redistribuir, deve-se solicitar permissão ao proprietário, ou pagar para poder fazê-lo: será necessário, portanto, adquirir uma licença, tradicionalmente onerosa, para cada uma destas ações.
· Alguns dos mais conhecidos softwares proprietários são o Microsoft Windows, o RealPlayer, o Adobe Photoshop, o Mac OS, o WinZip, algumas versões do UNIX, entre outros.”
 Parte inferior do formulário
Parte inferior do formulário
 Parte inferior do formulário
Parte inferior do formulário

Outros materiais