Sistemas Operacionais
Conceitos de Hardware e
Software
CONCEITOS BÁSICOS
• Hardware
– Processador, memória principal, cache e memória
secundária
– Dispositivos de E/S e barramento
– Pipelining e arquiteturas RISC e CISC
– Análise de desempenho
• Software
–
–
–
–
Tradutor, interpretador e linker
Loader e depurador
Interpretador de comandos e linguagem de controle
Ativação/desativação do sistema
Prof. Fabiano Sabha | www.fabianosabha.com.br | [email protected]
HARDWARE
• Sistema computacional
Processador / UCP
Unidade Lógica
e Aritmética
Unidade de
Controle
Memória
Principal
Registradores
Dispositivos
de E/ S
Prof. Fabiano Sabha | www.fabianosabha.com.br | [email protected]
PROCESSADOR
•
•
•
•
•
Unidade Central de Processamento (UCP)
Unidade de Controle (UC)
Unidade Lógica e Aritmética (ULA)
Clock
Registradores
– CI ou PC
– AP ou SP
– PSW (registrador de status)
Prof. Fabiano Sabha | www.fabianosabha.com.br | [email protected]
MEMÓRIAS
• Memória Principal
É a memória “real” onde são armazenados instruções e
dados.
• Memória Cache
É uma memória volátil de alta velocidade.
• Memória Secundária
É o meio permanente de Armazenamento
Prof. Fabiano Sabha | www.fabianosabha.com.br | [email protected]
MEMÓRIA PRINCIPAL COM 64 Kbytes
0
instrução ou dado
1
endereços
2
Vide Tabela 2.1 Ciclo de
leitura e gravação
16
2 -1
célula = 8 bits
Prof. Fabiano Sabha | www.fabianosabha.com.br | [email protected]
RELAÇÃO ENTRE OS DISPOSITIVOS DE ARMAZENAMENTO
Registradores
Memória Cache
maior
capacidade de
armazenamento
Memória Principal
Memória Secundária
Prof. Fabiano Sabha | www.fabianosabha.com.br | [email protected]
maior custo e
velocidade
de acesso
BARRAMENTO
O barramento ou Bus é um meio de comunicação
compartilhado, permite a comunicação entre as unidades
funcionais de um sistema computacional.
São classificados em 3 tipos:
 Processador-memória
 Barramento de I/O
 Barramento de Backplane
Prof. Fabiano Sabha | www.fabianosabha.com.br | [email protected]
BARRAMENTO PROCESSADOR-MEMÓRIA
• Curta extensão e alta velocidade
•Otimiza a transferencia de informação (processador x memória)
BARRAMENTO DE ENTRADA E SAIDA
• Longa extensão e baixa velocidade
• Permite a conexão de diferentes dispositivos
BARRAMENTO DE BACKPLANE
• Utiliza um “Terceiro” Barramento
• Para sistemas de alto desempenho
Prof. Fabiano Sabha | www.fabianosabha.com.br | [email protected]
BARRAMENTO S: PROCESSADOR-MEMÓRIA E DE E/S
Memória
Principal
UCP
Barramento processador-memória
Adaptador
Barramento de E/ S
Barramento de E/ S
Adaptador
Prof. Fabiano Sabha | www.fabianosabha.com.br | [email protected]
BARRAMENTO DE BACKPLANE
Memória
Principal
UCP
Barramento processador-memória
Barramento
de backplane
Adaptador
Adaptador
Barramento de E/ S
Barramento de E/ S
Adaptador
Prof. Fabiano Sabha | www.fabianosabha.com.br | [email protected]
PIPELINING
•É a técnica que permite ao processador executar múltiplas
instruções paralelamente em estágios diferentes.
•Pode ser empregada em sistemas com um ou mais
processadores
•É a técnica de paralelismo mais utilizada
Prof. Fabiano Sabha | www.fabianosabha.com.br | [email protected]
PIPELINING ( 4 estágios)
P1
P2
P3
P4
Unidade de
busca da
instrução
Analisador
da
instrução
Unidade de
busca dos
dados
Unidade de
execução da
instrução
P1
Instr.1 Instr.2 Instr.3 Instr.4 Instr.5 Instr.6 Instr.7
P2
Instr.1 Instr.2 Instr.3 Instr.4 Instr.5 Instr.6
P3
Instr.1 Instr.2 Instr.3 Instr.4 Instr.5
P4
Instr.1 Instr.2 Instr.3 Instr.4
tempo
Prof. Fabiano Sabha | www.fabianosabha.com.br | [email protected]
ARQUITETURAS RISC e CISC
RISC
 Poucas Instruções e simples
 Instruções executadas diretamente pelo hardware
 Na maioria das instruções, a mem.principal não é acessada
Vantagens
 Ganho de velocidade
 E facilidade de pipelining
Prof. Fabiano Sabha | www.fabianosabha.com.br | [email protected]
ARQUITETURAS RISC e CISC
CISC
 Instruções Complexas
 Instruções interpretadas por microprogramas
 Qualquer instrução acessa a mem.principal
Desvantagens
 Menor velocidade
 Pipelining mais dificil
Prof. Fabiano Sabha | www.fabianosabha.com.br | [email protected]
MÁQUINA DE NÍVEIS
Aplicativos
Utiltários
Sistema Operacional
Arquitetura
RISC
Linguagem de Máquina
Microprogramação
Circuitos Eletrônicos
Prof. Fabiano Sabha | www.fabianosabha.com.br | [email protected]
RISC & CISC
Arquitetura RISC
Arquitetura CISC
Poucas Instruções
Muitas Instruções
Instruções executadas pelo Hardware
Instruções executadas por
microcódigo
Instruções com formato fixo
Instruções com diversos
formatos
Instruções utilizam poucos ciclos de
máquina
Instruções utilizam Múltiplos
ciclos
Instruções com poucos modos de
endereçamento
Instruções com diversos modos
de endereçamento
Arquitetura com muitos registradores
Arquitetura com poucos
registradores
Arquitetura pipelining
Pouco uso da técnica de
pipelining
Prof. Fabiano Sabha | www.fabianosabha.com.br | [email protected]
SOFTWARE
Conjunto de programas utilizado como interface entre as
necessidades do usuário e a capacidade do hardware.
• Tradutor
• Interpretador
• Linker
• Loader
• Depurador
Prof. Fabiano Sabha | www.fabianosabha.com.br | [email protected]
TRADUTOR
• Traduz de a representação simbólica em código de
máquina.
• É gerado um módulo pelo tradutor, chamado móduloobjeto, (na maioria das vezes não pode ser executado, depende de chamadas
externas “linkers”)
• Dependendo do programa-fonte são gerados 2 tipos de
módulos-obejto:
• Montador - Traduz o programa fonte em nãoexecutável
• Compilador - Traduz o programa fonte em executável
Prof. Fabiano Sabha | www.fabianosabha.com.br | [email protected]
TRADUTOR : MONTADOR & COMPILADOR
programa fonte
Tradutor
programa objeto
Compilador
Prof. Fabiano Sabha | www.fabianosabha.com.br | [email protected]
INTERPRETADOR
• É considerado um tradutor que não gera módulo-objeto
• Exemplo: Basic
•Maior desvantagem: Tempo gasto na tradução do programa
toda vez que for utilizado.
Prof. Fabiano Sabha | www.fabianosabha.com.br | [email protected]
LINKER
• Utilitário responsável por gerar, a partir de um ou mais
módulos-objeto, um único executável.
• outra função: realocação, determina qual a região de
memória o programa será carregado.
Prof. Fabiano Sabha | www.fabianosabha.com.br | [email protected]
LOADER
• Carregar na memória principal um programa para ser executado
• Loader absoluto – conhecer apenas o endereço de memória
inicial e o tamanho do módulo
• Loader relocável – Pode ser carregado em qualquer posição de
memória.
Prof. Fabiano Sabha | www.fabianosabha.com.br | [email protected]
DEPURADOR
• Permite acompanhar a execução de um programa e
detectar erros
• Visualização e alteração de variáveis
• Breakpoints (pontos de parada)
• Watchpoints (alteração de variáveis)
Prof. Fabiano Sabha | www.fabianosabha.com.br | [email protected]
Download

Conceito de Hardware e SOftware