Conceitos de Hardware e
Software
Por Sediane Carmem Lunardi Hernandes
1. Hardware
Unidades funcionais 2 Memória Principal Dispositivos de E/ S Processador / UCP Unidade Lógica e Aritmética Registradores Unidade de Controle1.1 Processador
É o cérebro do computador e é nele que as informações são
processadas
Controla e executa instruções presente na memória
principal, através de operações básicas como somar, subtrair, comparar e movimentar dados
Composto por:
◦ Unidade de Controle (UC):
Acessa sequencialmente as instruções do programa, decodificando-as, e coordena o fluxo de dados de entrada e saída da unidade lógica e
aritmética, registradores, armazenamento primário e até armazenamento secundário e vários dispositivos de saída
Ou seja, gerencia as atividades de todos os componentes do computador, como a gravação de dados em disco ou a busca de instruções na
memória
◦ Unidade Lógica e Aritmética (ULA):
Realiza cálculos matemáticos e faz comparações lógicas
◦ Registradores
São áreas de armazenamento de alta velocidade utilizadas para o
armazenamento temporário de instruções e dados imediatamente antes, durante e depois da execução pelo processador (CPU) 3
1.1 Processador (cont.)
Registradores de destaque:
◦ Contador de instruções (Program Counter – PC)
Contem endereço da próxima instrução que o processador deve buscar e executar
Toda vez que o processador busca uma nova instrução, este registrador é atualizado com o endereço de memória da próxima instrução a ser executada
◦ Apontador de Pilha (Stack Pointer – SP)
Contém o endereço de memória do topo da pilha (estrutura de dados onde o sistema mantém informações sobre
programas que estavam sendo executados e tiveram que ser interrompidos)
◦ Registrador de Status (Program Status Word - PSW)
Armazenam informações sobre a execução das instruções
Estouro de pilha (Overflow)
Sinal
Zero
1.1 Processador (cont.)
A execução de qualquer instrução
envolve (Ciclo de fetch-decode-execute):
1) Busca da instrução 2) Decodificação da instrução 3) Execução da instrução 5 Busca instrução na memória Executa instrução no processador Decodifica instrução da memória
1.1 Processador (cont.)
Completar a fase de busca, decodificação e execução da instrução Ciclo de máquina
◦ Computador executa uma instrução durante um ciclo de máquina
Tempo em que ocorre ciclo de máquina
Nanossegundos (1 bilionésimo de segundo) Picossegundos (1 trilionésimo de segundo)
Também, pode ser medido pelo número de instruções executadas em um segundo
MIPS = milhões de instruções por segundo
Entretanto, CPU produz sério de pulsos eletrônicos a uma taxa predeterminada (velocidade de relógio)
1.1 Processador (cont.)
Pulsos eletrônicos são gerados pelo clock
◦ O clock é um dispositivo localizado na UCP que gera pulsos elétricos síncronos em um determinado
intervalo de tempo (sinal de clock)
◦ A quantidade de vezes que este pulso se repete em um segundo define a frequência do clock
A frequência do clock (velocidade de relógio)
de um processador é muitas vezes medida em
◦ Megahertz (MHz – milhões de ciclos por segundo,
ou seja, em um segundo são buscadas, decodificadas e executadas milhões de instruções)
◦ Gigahertz (GHz – bilhões de ciclos por segundo)
Curiosidade
Intel 8080 (1982): velocidade de relógio
de 2MHz
Pentium 4 (2002): velocidade de relógio
de 3.2 GHz
8
Quanto mais rápida a velocidade de relógio do processador, mais calor é gerado, e esse calor deve
ser dissipado para evitar
corromper dados e instruções que o computador está tentando
processar
1.1 Processador (cont.)
Exemplificando:
◦ Processador de 500 MHz – 500.000 KHz – 500.000.000 Hz
Quinhentos milhões de ciclos de máquina por segundo, ou seja, 500 milhões de instruções são executadas
(buscadas e decodificadas) a cada ciclo de clock (velocidade de relógio)
◦ Processador de 2.5 GHz – 2.500 MHz – 2.500.000 KHz – 2.500.000.000 Hz
Dois bilhões e 500 milhões de ciclos de máquina por
segundo, ou seja, dois bilhões e 500 milhões de
instruções sendo buscadas, decodificadas e executadas por ciclo de clock
◦ E um processador de 2.26 GHz?
1.1 Processador (cont.)
Qual processador apresenta maior velocidade de processamento?
◦ 900 MHz ou
◦ 1.0 GHz?
Resposta:
◦ 900 MHz – 900.000 KHz – 900.000.000 Hz, ou seja, 900 milhões de instruções sendo executadas a cada ciclo de clock (velocidade de relógio)
◦ 1.0 GHz – 1.000 MHz – 1.000.000 KHz –
1.000.000.000 Hz, ou seja, 1 bilhão de instruções sendo executadas em um único clico de clock
1.1 Processador (cont.)
Exercite
◦ Quantos ciclos de máquina por segundo
apresentam os seguintes processadores?
a) Processador de 2.5 GHz ______________________________ b) Processador de 3.0 GHz ______________________________ c) Processador de 3.2 GHz ______________________________ 11
1.2 Memória principal
Local onde são
armazenados dados e instruções
Composta por células, sendo que cada célula é composta por um
número determinado de bits
A maioria dos
computadores utiliza
células de 8 bits (1 byte) Acesso ao conteúdo de
uma célula (leitura ou gravação) é realizado através da especificação do endereço da célula
Classifica-se em: RAM,
ROM e Cache célula = 8 bits 12
e n d e re ço s 0 2 -116 2 1 instrução ou dado
1.2 Memória principal (cont.)
RAM (Random Access Memory – Memória de
Acesso Aleatório)
◦ localiza-se fisicamente perto da CPU, mas não no próprio chip da CPU
◦ é a área de trabalho do computador
◦ é volátil, porque todo o seu conteúdo é perdido ao se desligar o computador
◦ Variedades:
SRAM (Static Random Access Memory): usada em caches e em
registradores
DRAM (Dynamic Random Access Memory): utilizada em uma memória principal
DDR RAM: forma aperfeiçoada de DRAM que dobra a taxa na qual os dados podem ser movidos para fora e para dentro da memória principal
1.2 Memória principal (cont.)
ROM (Read Only Memory - Memória apenas para leitura)
◦ é menor do que a RAM e seu conteúdo já vem gravado de fábrica
não pode ser alterado pelo usuário
◦ na ROM estão gravadas algumas informações básicas que são executadas sempre que o
computador é ligado (instruções que dizem ao computador como iniciar quando a energia é ligada)
é não-volátil, porque o seu conteúdo é preservado
mesmo quando o computador for desligado
1.2 Memória principal (cont.)
Memória Cache
◦ Memória volátil de alta velocidade com pequena capacidade de armazenamento
◦ Armazena pequena parte do conteúdo da memória principal
◦ Toda vez que processador faz referência a dado armazenado na memória é verificado primeiro se ele se encontra na cache
Cache hit
Processador encontra dado na cache
Cache miss
Processador não encontra dado na cache
1.3 Memória secundária
Meio permanente de armazenamento de programas e dados 18 maior capacidade de armazenamento maior custo e velocidade de acesso Memória Secundária Memória Cache Memória Principal Registradores1.4 Dispositivos de entrada e saída
Utilizados para comunicação entre ohardware e o mundo externo Categorias ◦ Memória secundária Discos Fitas magnéticas ◦ Interface usuário-máquina Teclados Monitores Impressoras Plotters 19
1.5 Barramento
Meio físico de comunicação entre as unidades
funcionais do computador
Dados, endereços e sinais de controle trafegam
entre processadores, memórias e dispositivos de Entrada e Saída (E/S)
Barramento possui:
◦ Linhas de controle
Trafegam informações de sinalização (o tipo de operação que
esta sendo realizada)
◦ Linhas de dados
Trafegam informações como instruções e operandos que são transferidos entre as unidades funcionais
◦ Linhas de endereço
Trafegam endereços
1. 6 Pipelining
Técnica que permite ao processador
executar múltiplas instruções
paralelamente em estágio diferentes
Semelhante a uma linha de montagem
◦ Enquanto uma instrução se encontra na fase
de execução, uma outra instrução pode estar na fase de busca simultaneamente
1.6 Pipelining (cont.)
Pipeline em quatro estágios
24 Unidade de busca da instrução P1 P2 P3 P4 Analisador da instrução Unidade de busca dos dados Unidade de execução da instrução
Instr.1 Instr.2 Instr.3 Instr.4 Instr.5 Instr.6 Instr.7 Instr.1 Instr.2 Instr.3 Instr.4 Instr.5 Instr.6 Instr.1 Instr.2 Instr.3 Instr.4 Instr.5 Instr.1 Instr.2 Instr.3 Instr.4 P1
P2 P3 P4
2. Software
Para que o hardware tenha utilidade
prática é necessário um conjunto de
programas que realizem a interface entre as necessidades do usuário e as capacidades do hardware Tipos de software: 1. Software básico 2. Software aplicativo 25
2.1 Software básico
São programas que definem o padrão do
equipamento, sendo necessários para o funcionamento do computador, ou seja, são necessários para o funcionamento correto do equipamento. São eles:
a) Sistema Operacional b) Utilitários c) Ambiente operacional d) Linguagens de programação e) Tradutores 26
a) Sistema Operacional
O Sistema Operacional (SO) é essencial
para o funcionamento de um computador. Sem ele, grande parte dos recursos do
sistema não estaria disponível, ou se
apresentaria de uma forma complexa para utilização pelos usuários. O SO nada mais faz do que controlar e coordenar todas as operações básicas do sistema de
computação (E/S, memória, processos).
b) Utilitários
São programas que ampliam os recursos
do sistema facilitando o uso e auxiliando a manutenção de programas
Podem ser vistos como softwares de
apoio à solução de problemas de disco, memória, entre outros
◦ Compactadores e descompactadores de
arquivos, programas anti-virus, são exemplos
c) Ambiente Operacional
Adicionam recursos ao SO para permitir
uma interface gráfica com o usuário. É um SO com recursos gráficos
◦ Exemplo: Windows 7
d) Linguagens de Programação
É um conjunto de símbolos, os quais
fazem parte de um vocabulário e regras (gramática) que especificam como
transmitir informações entre os desejos do usuário e o computador
São divididas em:
◦ linguagem de máquina;
◦ linguagem de baixo nível;
◦ linguagem de alto nível.
d) Linguagens de Programação
Linguagem de máquina: é baseada em
código binário, isto é, em 0s e 1s. É a linguagem de programação que o
processador realmente consegue entender. É uma linguagem muito mais voltada para a
máquina do que para o usuário. Por exemplo, a soma do conteúdo de um registrador 1
com o conteúdo de um registrador 2
colocando o resultado no registrador 1, o que resultaria em 0001 0001 0010 em linguagem de máquina.
d) Linguagens de Programação
Linguagem de baixo nível: é uma
simplificação da linguagem de máquina.
Faz uso de códigos mnemônicos (conjunto de símbolos) associados a instruções
escritas em linguagem de máquina.
Utilizando o mesmo exemplo dado acima, a linguagem de máquina 0001 0001 0010 ficaria ADD R1 R2.
d) Linguagens de Programação
Linguagem de alto nível: é uma
linguagem que não exige conhecimento do código de máquina. Utiliza combinação de um conjunto de símbolos de acordo com certas regras de sintaxe (escrita) para expressar uma sequência de
operações de máquina.
d) Linguagens de Programação
34 Linguagem de máquina Linguagem de baixo nível Linguagem de alto nível 0010 0001 1110 LOAD R1, val10010 0010 1111 LOAD R2, val2 val 2 = val1 + val2
0001 0001 0010 ADD R1, R2
e) Tradutores
Leem código escrito em alguma linguagem de
programação e a transformam para linguagem de máquina.
Existem 3 tipos de tradutores:
◦ Montador: lê código escrito em linguagem de baixo nível
e transforma em linguagem de máquina.
◦ Interpretador: lê código escrito em linguagem de alto
nível e transforma em linguagem de máquina.
◦ Compilador: lê código escrito em linguagem de alto nível
e transforma em linguagem de máquina.
A diferença entre o compilador e o interpretador é
que o interpretador interpreta cada comando e
executa. O compilador analisa todo o programa, gera um arquivo intermediário em linguagem de máquina e depois executa.
2.2 Software aplicativo
São os programas voltados para a solução de problemas do usuário e que se valem das
facilidades oferecidas pelo software básico. Podem ser de:
◦ Uso geral: são programas que podem ser
utilizados em vários tipos de aplicações. Ex:
editores de texto, gráficos, planilhas, SGBD, etc.
◦ Uso específico: se destinam exclusivamente a
um único tipo de aplicação. Ex: folha de
pagamento, crediário, imposto de renda, entre outras.
3. Arquiteturas RISC e CISC
Linguagem de máquina (0s e 1s) é a linguagem de programação que o computador realmente entende Cada processador possui o seu próprio conjunto de instruções definido pelo fabricante Programa em linguagem de máquina é executado diretamente pelo processador 37 Utiltários Circuitos Eletrônicos Microprogramação Linguagem de Máquina A rq u it e tu ra R IS C Sistema Operacional Aplicativos
3.1 Arquiteturas RISC (Reduced
Instruction Set Computer)
Processador com arquitetura RISC possui
poucas instruções de máquina (simples e executadas diretamente pelo hardware)
Instruções executadas rapidamente Exemplo de processadores
◦ SPARC(Sun)
◦ RS-6000 (IBM)
◦ PA-RISC(HP)
◦ Alpha AXP (Compaq)
◦ Rx000(MIPS)
3.2 Arquiteturas CISC (Complex
Instruction Set Computers )
Instruções complexas interpretadas por microprogramas
Número pequeno de registradores
Qualquer instrução pode referenciar a memória principal
Implementação do pipelining é mais difícil Exemplos de processadores
◦ VAX (DEC)
◦ Pentium (Intel)
◦ 68xxx (Motorola)
Curiosidade
Processadores com mais de um núcleo
◦ Contam com dois ou mais núcleos distintos no mesmo circuito integrado, como se houvesse dois (ou mais) processadores dentro de um chip
dispositivo pode lidar com dois processos por vez (ou
mais), um para cada núcleo, melhorando o desempenho do computador como um todo
◦ Vantagem:
podem realizar duas ou mais tarefas ao mesmo;
um núcleo pode trabalhar com uma velocidade menor
que o outro, reduzindo a emissão de calor;
ambos podem compartilhar memória cache; entre outros.
Exercícios
1. Observe atentamente o anúncio abaixo e indique qual é o processador envolvido e qual a velocidade de relógio do ciclo busca-decodificação -execução
a) Vende-se computador: Intel® Celeron®
Processor 500 MHz, 128K Cache, 66 MHz FSB (velocidade do barramento que liga CPU e memória)
Processador: ____ Velocidade do Ciclo: ____
a) Vende-se computador: Intel® Celeron® D
Processor 2.26 GHz (256K Cache, 533 MHz FSB)
Processador: ____ Velocidade do Ciclo: ____
Exercícios
2. Indique qual é a capacidade do disco rígido, da
memória RAM e a velocidade de processamento dos computadores abaixo:
I. Notebook Sony Vaio Fit SVF15213CBW com
Intel® Core™ i5-3337U, 1.8 GHz, 4GB, 750GB, Gravador de DVD, Bluetooth, LED 15.5" e
Windows 8 + Headphone Sony ZX300
HD: _______ RAM: _____
Velocidade de processamento: _________
1) Notebook Touch Sony Vaio Fit com Intel®
Core™ i5, 2.7GHz, 6GB, 1TB, Gravador de
DVD, Bluetooth, LED 14" e Windows 8 + Pasta para Notebook até 13“
HD: _______ RAM: _____
Velocidade de processamento: _________
Exercícios
2. Escolha, dentre os dois anúncios abaixo, o
computador que fornecerá o melhor desempenho global
a)vende-se computador Positivo Premium PCTV
K2620 3D com Intel® Celeron G530, 2.4GHz, 6GB (memória RAM), 500GB (disco rígido), Gravador de DVD, Leitor de Cartões, HDMI, LCD 18.5"
b) vende-se computador Positivo Premium K3210
3D com Intel® Pentium G620 2.60 GHz, 2GB (memória RAM), 500GB (disco rígido),
Gravador de DVD, Leitor de Cartões, HDMI, LCD 18,5"
Exercícios
3. Escolha, a partir dos anúncios abaixo, o
notebook que possui o melhor desempenho global:
a) Notebook Positivo Unique S1991 3D
com Intel® Dual Core™, 1.1GHz, 2GB, 250GB, Gravador de DVD, Leitor de
Cartões, Webcam, LED 14"
b) Notebook Positivo Unique TV
S2065i/2560 com Intel® Dual Core, 1.1GHz, 4GB, 500GB, Gravador de DVD, Leitor de Cartões, HDMI, TV Digital, LED 14"
Atividade Prática Supervisionada 1
Parte I
Responda:
1. Quais componentes formam a Unidade Central de Processamento? Qual a responsabilidade de cada um desses componentes?
2. Qual é a função da memória principal e no que ela se distingue da memória secundária. Dê exemplos de dispositivos de memória secundária.
3. Cite as diferenças existentes da memória RAM com relação a memória ROM.
4. O que é linguagem de máquina?
5. Diferencie compilador/montador/interpretador. 6. O que é e quais são as funções de um sistema
operacional. Dê exemplos de sistemas conhecidos.
Atividade Prática Supervisionada 1
Parte II Pesquise:
1. Joãozinho trabalha em uma empresa de Marketing e Propaganda e precisa de um
computador para trabalhar com imagens, vídeos e textos. Maria trabalha como secretária desta empresa. Ajude-os a comprar o computador idea l. Pesquise nas lojas de informática da sua cidade quais computadores são apropriados para cada tipo de trabalho. Apresente três orçamentos e justifique o porquê de sua escolha.
Atividade Prática Supervisionada 1
2. Procure as configurações de velocidade de processamento, memória, chip gráfico e chip de áudio dos seguintes computadores de jogos:
◦ Sony PlayStation 2
◦ Microsoft XBOX
◦ Nintendo
Atividade Prática Supervisionada 1
Parte III
E…mãos na massa:
1. Faça um robô computador e apresente para
seus colegas. O robô deve conter todas as partes de um computador (memória,
processador, dispositivos de entrada e saída) e deverá ser apresentado para os colegas de turma.
49
Bibliografia
• SILBERSCHATZ, Abraham, GALVIN, Peter,
GAGNE, Greg. Fundamentos de
Sistemas Operacionais. 8ª. Ed. Rio de
Janeiro : LTC, 2010.
• MACHADO, Francis B.; MAIA, Luiz Paulo. Arquitetura de Sistemas
Operacionais. 3ª ed. Rio de Janeiro :
LTC, 2002.