Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.
details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

Arquitetura: atributos visíveis de um sistema ao programador.
Organização: Unidades operacionais e interconexões. Implementa a
arquitetura.
Funções básicas do computador:
1. Processamento de dados;
2. Armazenamento de dados;
3. Movimentação de dados;
4. Controle.
Componentes estruturais
1. Unidade central de processamento (CPU): controla as operações do
computador e funções do processamento de dados;
2. Memória principal: armazena dados;
3. E/S: move dados entre o computador e o ambiente externo
4. Interconexão do sistema: barramento
Principais componentes da CPU
1. Unidade de controle: controla as operações da CPU;
2. Unidade aritmética e lógica: processamento de dados;
3. Registradores: armazenamento interno à CPU;
4. Interconexões da CPU: mecanismo que oferece comunicação entre todos
esses componentes.
Arquitetura de Von Neumann
1. Uma memória principal para armazenar dados e instruções;
2. Uma unidade lógica e aritmética capaz de operar sobre dados binários;
3. Uma unidade de controle que interpreta as instruções na memória e faz
com que sejam executadas;
4. Equipamento de E/S operado pela UC (unidade de controle).
Uma característica principal da arquitetura de Von Neumann é o
compartilhamento da memória entre dados dos usuários e instruções
executadas.
** Palavra: um dado a ser armazenado ou uma instrução.
** Carregar palavras com 2 instruções é melhor
Processador
O processador precisa ser alimentado com um fluxo constante de instruções
(para não ficar ocioso).
A velocidade da memória não acompanha a do processador, então algumas
soluções são:
- Reduzir a frequência de acesso a memória utilizando caches entre a
memória principal e o processador;
- Usar barramento de alta velocidade;
Para aumentar a velocidade do processador:
- Aumentar a velocidade de hardware do processador diminuindo o
tamanho das portas lógicas, deixando-as mais próximas entre si,
aumentando a taxa de clock;
- Com o aumento de velocidade do clock, vem o problema da potência e
fica difícil para dissipar o calor gerado em chips.
RISC x CISC
RISC: processador com um número pequeno de instruções simples.
CISC: capaz de executar várias instruções complexas.
(alguns computadores usam soluções híbridas)
Desempenho do processador
Quanto maior o acesso à memória, o desempenho do processo é pior.
A velocidade do processador é ditada pela frequência do clock.
Benchmarks
Um conjunto de programas usados para medir desempenho.
É escrito em linguagem de alto nível, pode ser medido com facilidade, tem
ampla distribuição e representa um estilo de programação.
Para obter uma comparação confiável, é preferível usar uma série de programas
de benchmarks.
Funções básicas do computador
Função básica do computador:
- execução de programas;
- duas etapas: busca e execução de dados.
Busca e execução:
- Processador memória: dados podem ser transferidos entre eles;
- Processador E/S: dados pode ser transferidos de ou para periféricos;
- Processamento de dados: processador realiza alguma operação lógica ou
aritmética sobre os dados;
- Controle: uma instrução pode especificar que a sequência de execução
seja alterada.
Interrupções
Um mecanismo para que outros módulos possam interromper o processamento
normal do processador. Serve para melhorar a eficiência do processamento.
Classe de interrupções:
- Programa: divisão por zero, execução de instrução ilegal, etc;
- Timer: sleep em threads;
- E/S: conclusão ou falha de operação;
- Falha de hardware: erro de memória, etc.
Ciclo de interrupção: o processador verifica se houve alguma interrupção e se
não tiver, segue o ciclo de busca. Se tiver, ele suspende a execução atual, salva o
contexto e trata a interrupção.
Interrupções múltiplas: dá para proceder com duas maneiras:
1. Tratar sequencialmente. Se uma interrupção estiver sendo processada e
outra acontecer durante esse tempo, ela ficará pendente até terminar a que
estiver sendo processada. Desvantagem: não leva em consideração a
prioridade ou necessidade de tempo crítico;
2. Definir prioridades. Permite que uma interrupção de maior prioridade
faça com que o tratamento de uma de menor prioridade seja interrompido
para ser tratada.
Função de E/S
Um módulo de E/S pode trocar dados diretamente com o processador e o
processador pode ler/escrever em um módulo de E/S. O processador pode
conceder ao módulo de E/S autoridade para de ler/escrever na memória.
Interconexão
Conecta os principais componentes do computador (processador, memória e
E/S).
Estrutura: deve permitir as transferências:
- memória processador;
- E/S processador;
- E/S memória (DMA).
Barramento: um caminho de comunicação que conecta dois ou mais
dispositivos. Um sinal transmitido por qualquer dispositivo está disponível a
todos conectados no barramento. Só um dispositivo por vez pode transmitir com
sucesso pois, se mais transmitirem ao mesmo tempo, os sinais são sobrepostos e
distorcidos.
O barramento consiste em linhas e transmite sinais representando binários 1 e 0.
Barramento do sistema: conecta os principais componentes do computador.
Estrutura do barramento:
- Linha de dados: caminho para a movimentação de dados. Pode consistir
em 32, 64, 128 ou mais linhas. O número de linhas é a largura do
barramento e pode determinar o desempenho geral do sistema.
- Linha de endereço: designar origem ou destino dos dados da linha de
dados. A largura determina a capacidade de memória máxima possível do
sistema. Também usado para endereçar portas de E/S.
- Linha de controle: usada para controlar o acesso e uso das linhas.
Sinais de comando:
- Escrita/Leitura de memória e E/S;
- ACK de transferência: indica que dados foram escritos ou colocados no
barramento;
- Solicitação para concessão do barramento;
- Requisição de interrupção: indica interrupção pendente;
- ACK de interrupção: interrupção pendente reconhecida;
- Clock: usado para operações de sincronização;
- Reset: inicializa todos os módulos.
Hierarquia de barramento múltiplo:
Muitos dispositivos conectados ao barramento prejudicam o desempenho pois o
barramento precisa ser maior e, quanto maior o barramento, maior o atraso de
propagação. Solução: múltiplos barramentos dispostos em hierarquia.
Elementos do projeto de barramento:
Tipo (linha):
- dedicado:
- multiplexado:
Método de atribuição: mais de um módulo pode precisar ter o controle do
barramento mas só uma unidade pode transmitir de cada vez
- centralizado: controlador de barramento;
- distribuído: cada módulo do sistema contém uma lógica de controle de
acesso.
Sincronização:
- Síncrona: determinada por um relógio;
- Assíncrona: depende de um evento.
Memória cache
É uma memória interna e a capacidade é expressa em palavras ou bytes (1 byte
= 8 bits).
Uma distinção entres os tipos de memória são os métodos de acesso:
- Sequencial: o acesso é feito em sequência linear. Ex: fitas magnéticas;
- Direto: blocos ou registros possuem endereço exclusivo mas necessita
acesso sequencial até o local final. Ex: unidade de disco;
- Aleatório: cada unidade possui mecanismo de endereçamento exclusivo.
Ex: memória principal;
- Associativo: memória de acesso aleatório que possibilita comparar
simultaneamente bits de uma palavra com todas as outras da memória. A
palavra é buscada pelo conteúdo e não pelo endereço. Ex: memória
cache.
Desempenho:
- Tempo de acesso (latência): tempo gasto para posicionar o mecanismo ou
realizar uma operação de leitura/escrita;
- Tempo de ciclo da memória: tempo de acesso antes que outro acesso
possa ser realizado. Da memória de acesso aleatório;
- Taxa de transferência: taxa em que os dados podem ser transferidos para
dentro ou fora de uma unidade de memória.
Volátil e não volátil:
- Volátil: as informações são perdidas na ausência de energia elétrica.
- Não volátil: a informação permanece gravada, não sendo necessário
energia elétrica.
Hierarquia:
No topo da pirâmide estão as memórias mais rápidas, caras e com menor
capacidade.
O uso de dois níveis de memória pode reduzir o tempo médio de acesso.Princípios da memória cache:
Baratear o sistema e manter a velocidade de execução rápida. Visa obter
velocidade de memória próxima das mais rápidas e disponibilizar grande
capacidade ao preço de memórias baratas.
Contém algumas partes da memória principal na cache, assim quando o
processador tentar ler uma palavra na memória primeiro é feito a verificação na
cache.
Elementos do projeto de cache
Memória virtual: permite que os programas enderecem a memória a partir de
um ponto de vista lógico sem considerar a quantidade de memória principal
disponível (usa uma parte do disco rígido como se fosse RAM, aumentando a
capacidade de memória)
Os endereços das instruções possuem endereços virtuais
- Realocação: cada processo tenha seu próprio espaço de endereçamento;
- Proteção: impede que um processo utilize um endereço que não seja dele;
- Paginação: possibilita um processo utilizar mais memória do que a física
existente;
- MMU: unidade de gerenciamento de memória: traduz cada endereço
virtual para físico na memória principal.
Endereços de cache:
- Lógica (virtual): armazena dados usando endereços virtuais;
- Física: armazena dados usando endereços físicos.
A vantagem da lógica é que a velocidade de acesso é maior, pode
responder antes do trabalho do MMU.
Tamanho da cache:
Caches grandes tendem a ser mais lentas que as pequenas.
O desempenho da cache depende da carga de trabalho, é impossível chegar em
um único tamanho ideal.
Funções de mapeamento

Mais conteúdos dessa disciplina