Você está na página 1de 44

Conceitos de Hardware e Software

Arquitetura de Computadores e Sistemas Operacionais


Felipe Rotermel
Tópicos

 Hardware  Software
 Processador  Tradutor
 Memória Principal  Interpretador
 Memória Cache  Linker
 Memória Secundária  Loader
 Dispositivos de entrada e
saída
 Barramento
 Pipelining
 Arquiteturas RISC e CISC
Hardware
Conceitos relativos a arquitetura de Computadores

Arquitetura de von Neuman


se caracteriza pela possibilidade de uma
máquina digital armazenar seus programas no
mesmo espaço de memória que os dados,
podendo assim manipular tais programas.
Hardware
 Conjunto de circuitos eletrônicos integrados
 Processadores, memórias, registradores, barramentos, monitores de vídeo, impressoras,
mouse, discos...
 Unidades Funcionais
 Processador / UCP
 Memória Principal
 Dispositivos de Entrada e Saída
Processador

 A função de um computador é executar tarefas com a finalidade de


resolver problemas.
 Uma tarefa pode ser executada por meio de uma sequência
ordenada de instruções de máquina.
 O processador é o componente responsável pelo processamento de
instruções e de dados.
Processador

 O processador é constituído por centenas, milhares, milhões e ou bilhões de


transistores.
 As portas lógicas são implementadas fisicamente por meio de transistores.

Diferentes encapsulamento de transistores.


Processador

 Unidade Central de Processamento


 Gerencia sistema computacional
 Operações, instruções
 UC - Unidade de Controle
 ULA - Unidade Lógica Aritmética
 Registradores
 Sinal de Clock
 Sincronizar tarefa realizadas
 UC - Unidade de Controle
 Gerenciar componentes
 Decodifica a instrução e gera os sinais de controle para as unidades funcionais.
 Ex: Gravação de dados, busca de instruções na memória.
Processador

 ULA - Unidade Lógica Aritmética


 Testes e comparações (boolean)
 Somas e subtrações
 Registradores
 Pequenas memórias dentro do processador.
 Armazenam dados que estão sendo executados no momento.
 De uso geral
 Contador de Instrução (PC - Program Counter)
 Apontador de Pilha (SP - Stack Pointer)
 Registrador de Instrução (RI)
 Registrador de Status (PSW - Program Status Word)
CPU

 Ciclo de instrução:
 Busca instrução (PC) +1;
 Decodifica a instrução (RI);
 Busca operandos;
 Executa a instrução;
 Escreve os resultados (PSW);
 Retorna ao primeiro passo.
Sinal de Clock

 Clock é um circuito oscilador que tem a função de sincronizar e ditar a medida


de velocidade de transferência e processamento de dados no computador, por
exemplo, entre o processador e a memória principal. Esta frequência é medida
em ciclos por segundo, ou Hertz.
 Sincronizar tarefa realizadas
 Clock Interno e externo
 Ex: Intel Core i9-13900K, 13ª Geração, 5.8GHz
 Ex: CORSAIR MemóriaDDR5 DDR5 5600MHZ (PC5-44800)
Evolução dos processadores

Microprocessador Intel 4004 com 2300 transistores (1971)


Microprocessador Intel 8080 com 6000 transistores (1974)
Pentium IV com 55.000.000 transistores (2001).
Soquetes (Socket)

▪ Intel ▪ AMD
▪ LGA 1700 ▪ Socket AM5
▪ Processadores da 13ª Geração ▪ Série AMD Ryzen 7000
Barramento

 Conjunto de condutores por meio dos quais as informações trafegam de uma


parte do computador para outra
Barramento (Bus)

 Comunicação entre as unidades


funcionais
 Linhas de controles e linhas de dados
 Tipos
 Barramento processador-memória (Ponte
Norte)
 PCI e PCI-E
 AGP
 SCSI
 Barramento E/S (Ponte Sul)
 IDE / SATA
 PS2 / USB
Memória Principal
Memória principal de 64Kbytes
 Armazenamento de instruções e dados
0 Instrução ou Dado

 Conjunto de Células (n bits = 0 ou 1) 1

 Acesso através de Endereços 2

Endereços
 Registrador de endereço de memória .

(MAR - Memory Adress Register) .

.
 Registrador de dados da memória (MBR -
216 - 1
Memory Buffer Register)
Célula 8bits
 Volátil
Memória Cache

 Tempo de acesso menor que Mem. Principal


 Volátil
 Alta Velocidade
 Pequena capacidade
 Alto custo
 Cache hit / Cache miss
 L1 (Rapidez)
e L2 (Espaço)
Memória Cache
Memória Secundária

 Permanente, não volátil


 Armazenamento de
programas e dados
 Lenta, baixo custo e grande
capacidade de
armazenamento
 Discos magnéticos, discos
ópticos, memórias flash.
Dispositivos de Entrada e Saída

 (E/S) ou (I/O)
 Comunicação entre sistema
computacional com mundo
externo
 Categorias
 Memórias secundárias
 Interface usuário máquina
Pipelining

 Múltiplas instruções
 Linha de montagem
 Tarefa -> Subtarefas

Arquitetur
a pipeline
com 5
estágios
Pipeline é natural

 Exemplo de Lavanderia
 Tem-se os volumes A, B, C e D de roupas A B C D
para lavar, secar e passar

 A lavadora leva 30 minutos

 A secadora leva 40 minutos

 A passadeira leva 20 minutos


Lavanderia Sequencial

6 7 8 9 10 11 Meia noite
Tempo

30 40 20 30 40 20 30 40 20 30 40 20
T
a A
s
k
B
O
r
d C
e
r
D
• A lavanderia sequencial leva 6 horas para 4 volumes
Lavanderia em Pipeline

6 7 8 9 10 11 Meia noite
Tempo

30 40 40 40 40 20
o
r A
d
e
m B

D
• Lavanderia em Pipeline leva 3.5 horas
Arquitetura RISC e CISC

Reduced Instruction Set Complex Instruction Set


Computer Computer
 Poucas Instruções  Muitas instruções
 Instruções executadas pelo  Instruções executadas por
Hardware microcódigos
 Instruções com formato fixo  Instruções com diversos
 Utilizam poucos ciclos de máquina formatos
 Poucos modos de endereçamento  Utilizam múltiplos ciclos
 Muitos registradores  Diversos modos de
endereçamento
 Arquitetura Pipelining
 Poucos registradores
 Pouco uso de pipelining
⊳ Vídeo sobre essas duas arquiteturas
Arquitetura RISC e CISC

RISC CISC
Software
Conceitos
Software

 Da utilidade ao Hardware
 Interface entre as necessidades dos
usuários e a capacidade do hardware
 Trabalhos mais simples e eficiente para
o usuário
 Utilitários (serviços)
 Aplicações ----------------------------------->
Tradutor

 Conversão da representação simbólica de instruções


em para código de máquina
 Linguagem de montagem (assembly)
 Montador (Assembler) –> programa-objeto
 Linguagem de alto nível
 Pascal, Fortran, Cobol
 Compilador
 Módulo-objeto
programa-fonte Tradutor programa-objeto
Linguagem de montagem Montador Módulo-objeto
Linguagem de alto nível Compilador Módulo-objeto
*programas escritos com montador são específicos para um arquitetura
Compilador

▪ É o utilitário que tem a função de gerar (dado um programa escrito em linguagem de alto nível)
um programa em linguagem de máquina, não executável.
▪ Como exemplos de linguagens de alto nível estão: C, Pascal, Cobol, Delphi, Java, entre outros.

Primeiro Compilador foi


criado em 1954 para a
linguagem Fortran pela IBM
Interpretador

 Tradutor que não gera módulo-objeto


 Traduz cada instrução na hora da execução
 Desvantagem: tempo gasto
 Vantagem: dinâmico
 Ex: Basic, Perl
Linker

 Editor de ligação
 Gera programa executável a partir de um Módulo-objeto
 Reservar memória para execução
 Linkar Módulo-objeto com bibliotecas de linguagens e SO

Run time
Módulo-objeto .Net
DirectX
Módulo-objeto Módulo-objeto

Linker Programa
executável
Loader

▪ Carregador
▪ Carregar na memória principal os programas a serem executados.
▪ Absoluto
o Endereço inicial e tamanho.
▪ Realocável
o Qualquer posição da Memória.
Depurador

 Debugger
 Estágio do desenvolvimento
 Acompanhar execução para detecção de erros
 Breakpoint
 Watchpoint
 Visualizar variáveis
 Correção dos programas
Exercícios

1. Quais são as unidades funcionais de um sistema computacional?


2. Como a memória principal de um computador é organizada?
3. O que são memórias voláteis e não voláteis?
4. Conceitue memória cache e apresente as principais vantagens no seu uso.
5. Quais as diferenças entre a memória principal e a memória secundária?
6. Caracterize os barramentos processador-memória, e E/S.
7. Como a técnica de pipelining melhora o desempenho dos sistemas computacionais?
8. Por que o módulo-objeto gerado pelo tradutor ainda não pode ser executado?
9. Quais as funções do linker?
10. Qual a principal função do loader?
11. Quais as facilidades oferecidas pelo depurador?
Bibliografia
MACHADO, Francis Berenger; MAIA, Luiz Paulo. Arquitetura de sistemas operacionais.
5. ed. Rio de Janeiro (RJ): LTC, 2013. p.23-35

Rua São Paulo, 1147 Bloco Faculdade - Victor Konder, Blumenau - SC

3210 4567

Você também pode gostar