Você está na página 1de 4

OC

1 - Arquitetura de computadores define como os componentes de um computador se comunicam e


trabalham juntos. Organização de computadores é a forma como esses componentes são
implementados fisicamente. Arquitetura define o "o que", organização define o "como".

2 - Uma família de processadores é um grupo de processadores produzidos pela mesma empresa


que compartilham a mesma arquitetura e são projetados para funcionar juntos. Eles têm as mesmas
especificações de instruções e recursos, mas podem variar em desempenho, consumo de energia e
outras características. Isso permite que programas possam ser escritos para funcionar em qualquer
processador dentro da mesma família.

A Unidade Lógico-Aritmética (ALU, na sigla em inglês) é uma parte importante de um processador


que executa operações matemáticas e lógicas, como adição, subtração, multiplicação e comparação

A Unidade de Controle é responsável por controlar o fluxo de informações e operações dentro do


processador. Ele lê as instruções do programa e determina qual ação deve ser realizada pela ALU e
outros componentes do sistema. A unidade de controle também controla a transferência de dados
entre a memória e a ALU.

Em resumo, a ALU realiza as operações matemáticas e lógicas enquanto a Unidade de Controle


controla o fluxo de informações e operações dentro do processador.

Processadores.

Diferença entre CISC e RISC.


A arquitetura CISC (Complex Instruction Set Computing) é uma abordagem de design de
processadores que inclui instruções complexas e multi-etapa. Isso permite que o processador
execute muitas tarefas com apenas uma única instrução, o que pode tornar o código do programa
mais curto e mais fácil de escrever.

Já a arquitetura RISC (Reduced Instruction Set Computing) é uma abordagem de design de


processadores que utiliza instruções simples e de alta performance. Embora a quantidade de
instruções seja menor, a execução é mais rápida e eficiente. A ideia é que a execução de uma grande
quantidade de instruções simples é mais rápida do que a execução de uma pequena quantidade de
instruções complexas.

Em resumo, a principal diferença entre CISC e RISC é que a CISC prioriza a complexidade de
instruções e a eficiência de código, enquanto a RISC prioriza a velocidade e eficiência de execução.

​ Byte (B): A menor unidade de armazenamento, composta por 8 bits.


​ Kilobyte (KB): 1 KB é igual a 1024 bytes (2^10 bytes).
​ Megabyte (MB): 1 MB é igual a 1024 KB ou 1.048.576 bytes (2^20 bytes).
​ Gigabyte (GB): 1 GB é igual a 1024 MB ou 1.073.741.824 bytes (2^30 bytes).

CISC (Complex Instruction Set Computing): realizar operações sofisticadas diretamente em


hardware.
​ ISC utiliza um conjunto de instruções complexas e
C ​Processadores CISC tendem a ter uma arquitetura
variadas, onde cada instrução pode realizar múltiplas mais complexa, com um grande número de modos
operações. de endereçamento e uma grande variedade de
​Instruções CISC geralmente têm tamanhos variados, instruções disponíveis.
e algumas podem ser bastante longas e complexas.
​Essa arquitetura visa fornecer uma gama ampla de RISC (Reduced Instruction Set Computing):
instruções em um único ciclo de clock, permitindo
​ ISC adota um conjunto de instruções mais simples
R ​ ssa arquitetura concentra-se na execução rápida de
E
e com formatos uniformes, cada instrução instruções com ciclos de clock curtos e alta taxa de
executando apenas uma operação básica. processamento de instruções por segundo (IPC).
​Instruções RISC geralmente possuem tamanhos ​Processadores RISC tendem a ter uma arquitetura
fixos e são mais simples de serem decodificadas e mais simplificada, com menos modos de
executadas. endereçamento e um conjunto menor de instruções

Principais diferenças:

● CISC possui instruções complexas e variadas, enquanto RISC utiliza instruções mais simples
e uniformes.
● CISC oferece instruções que podem realizar múltiplas operações em um único ciclo,
enquanto RISC executa uma operação básica por instrução.
● CISC tem uma arquitetura mais complexa, enquanto RISC é mais simples e otimizado para
maior velocidade de execução.
● RISC tende a ter um conjunto menor de instruções, o que facilita sua decodificação e
execução mais rápida.

A principal inovação da Arquitetura de von Neumann é a ideia de armazenar as instruções do


programa e os dados na mesma memória, o que permitiu que o computador pudesse acessar e
executar instruções de forma sequencial. Essa integração entre programa e dados foi um avanço
crucial que possibilitou o desenvolvimento dos primeiros computadores programáveis e se tornou
fundamental para o progresso da computação moderna

o byte é a menor unidade de armazenamento e pode conter 8 bits, enquanto a palavra é uma unidade
de dados utilizada internamente pela CPU para suas operações e pode ter tamanhos diferentes
dependendo da arquitetura do computador. A palavra geralmente é maior que o byte e determina a
quantidade de dados que a CPU pode manipular em cada ciclo de processamento.

Memoria Principal

Os barramentos que interligam o processador e a memória principal em um computador são:

1. **Barramento de Dados (Data Bus):**


Função: Responsável por transportar os dados entre o processador e a memória principal.
Direção do fluxo de sinais: Bidirecional. Os dados podem ser lidos do processador e escritos na
memória ou lidos da memória e escritos no processador.

2. **Barramento de Endereços (Address Bus):**


Função: É utilizado para especificar o endereço de memória que o processador deseja acessar.
Direção do fluxo de sinais: Unidirecional (do processador para a memória). O processador envia o
endereço de memória para a memória principal para indicar qual célula de memória está sendo lida
ou escrita.

3. **Barramento de Controle (Control Bus):**


Função: Responsável por transmitir os sinais de controle e coordenação entre o processador e a
memória principal.

Direção do fluxo de sinais: Bidirecional. Ambos os lados (processador e memória) podem enviar
sinais de controle para coordenar operações, como leitura, escrita e ciclos de clock.
Em resumo, o barramento de dados transporta os dados entre o processador e a memória, o
barramento de endereços é usado pelo processador para especificar o local da memória que deseja
acessar, e o barramento de controle transmite os sinais de controle e coordenação para garantir a
comunicação adequada entre o processador e a memória principal.

Resumo dos Cálculos e Diferença entre os Tipos de Mapeamento de Cache:

1. **Mapeamento Direto:**
- Cálculos:
- Número de linhas da cache: É igual ao número de linhas/endereços da cache e é dado pelo
número de bits da linha no formato de endereços.
- Largura de cada bloco/linha: É dado pelo número de bits do byte no formato de endereços.
- Quantidade de blocos atribuídos a cada linha da cache: É sempre 1, pois cada linha da cache
armazena apenas um bloco da memória principal.
- Diferença: Cada bloco da memória principal é mapeado para uma linha específica da cache,
usando apenas uma função hash simples do endereço.

2. **Mapeamento Associativo Completo:**


- Cálculos:
- Número de linhas da cache: É igual ao número de blocos distintos na memória principal, pois
cada bloco pode ser armazenado em qualquer linha da cache.
- Largura de cada bloco/linha: É dado pelo número de bits do byte no formato de endereços.
- Quantidade de blocos atribuídos a cada linha da cache: Sempre 1, pois cada linha da cache
armazena apenas um bloco da memória principal.
- Diferença: Cada bloco da memória principal pode ser alocado em qualquer linha da cache,
tornando o acesso flexível, mas com o custo de maior complexidade de busca.

3. **Mapeamento Associativo por Conjuntos:**


- Cálculos:
- Número de linhas da cache: É igual ao número de conjuntos distintos na memória principal, pois
cada conjunto é mapeado para um conjunto específico na cache.
- Largura de cada bloco/linha: É dado pelo número de bits do byte no formato de endereços.
- Quantidade de blocos atribuídos a cada linha da cache: É determinado pelo tamanho do conjunto
(número de blocos em um conjunto).
- Diferença: Cada bloco da memória principal é mapeado para um conjunto específico da cache, e
os blocos desse conjunto podem ser armazenados em qualquer linha dentro desse conjunto. Isso
oferece um equilíbrio entre a flexibilidade do mapeamento associativo completo e a simplicidade do
mapeamento direto.

Em resumo, o mapeamento direto utiliza uma correspondência unívoca entre blocos da memória
principal e linhas da cache, o mapeamento associativo completo permite que cada bloco da memória
principal seja armazenado em qualquer linha da cache, e o mapeamento associativo por conjuntos
divide a cache em conjuntos, permitindo que os blocos de um conjunto sejam mapeados em
qualquer linha desse conjunto. Cada tipo de mapeamento tem suas vantagens e desvantagens em
termos de complexidade, flexibilidade e eficiência.

Vamos calcular a quantidade de endereços de memória distintos que um computador com palavra de
24 bits pode acessar e a quantidade máxima de memória que ele pode possuir.

Para calcular a quantidade de endereços de memória distintos, usamos a fórmula:


**Quantidade de endereços = 2^comprimento_da_palavra**

O comprimento da palavra é de 24 bits, portanto:

**Quantidade de endereços = 2^24 = 16.777.216 endereços**

Agora, para calcular a quantidade máxima de memória que ele pode possuir, consideraremos que
cada endereço de memória corresponde a um byte de armazenamento.

**Quantidade máxima de memória = quantidade de endereços * tamanho de cada endereço**

O tamanho de cada endereço é de 24 bits, o que equivale a 3 bytes (24 bits / 8 bits por byte).

**Quantidade máxima de memória = 16.777.216 endereços * 3 bytes por endereço**

Vamos converter essa quantidade em bytes para unidades maiores, como KB (kilobytes) e MB
(megabytes):

**Quantidade máxima de memória = 16.777.216 endereços * 3 bytes por endereço**


**Quantidade máxima de memória = 50.331.648 bytes**
**Quantidade máxima de memória em KB = 50.331.648 bytes / 1024 bytes por KB ≈ 49.152 KB**
**Quantidade máxima de memória em MB = 50.331.648 bytes / (1024 KB por MB) ≈ 48 MB**

Resumindo as contas:
- Quantidade de endereços de memória distintos: 16.777.216 endereços
- Quantidade máxima de memória: 50.331.648 bytes, aproximadamente 49.152 KB ou 48 MB.

Claro! Abaixo está um resumo dos níveis de RAID 1, RAID 0 e RAID 10:

**RAID 0 (Striping):**
- Distribui os dados entre dois ou mais discos (stripes) para melhorar o desempenho de leitura e
gravação.
- Não oferece redundância ou tolerância a falhas.
- Ideal para situações em que o desempenho é mais importante do que a segurança dos dados.

**RAID 1 (Mirroring):**
- Mantém duas cópias idênticas dos dados em discos diferentes (espelhamento).
- Oferece alta tolerância a falhas, pois os dados permanecem acessíveis mesmo se um dos discos
falhar.
- A capacidade de armazenamento é reduzida pela metade, pois metade dos discos é utilizada para
redundância.

**RAID 10 (RAID 1+0 ou Mirrored-Striping):**


- Combina as características do RAID 1 e RAID 0.
- Os dados são espelhados em pares de discos e, em seguida, os pares são combinados usando
striping.
- Oferece alta tolerância a falhas e excelente desempenho, mas requer um número mínimo de quatro
discos.

Esses são os três níveis de RAID mencionados e suas principais características. O RAID 0 é usado
para melhorar o desempenho, mas não oferece tolerância a falhas, enquanto o RAID 1 e RAID 10
fornecem redundância para maior segurança dos dados em caso de falha do disco. A escolha do
nível de RAID adequado dependerá das necessidades específicas de cada sistema em relação ao
equilíbrio entre desempenho e confiabilidade dos dados.

Você também pode gostar