Pular para o conteúdo principal

Questão de Arquitetura de Computadores — Memória — Instituto Access 2026

Arquitetura de ComputadoresMemória
Código
qg739232
Banca
Instituto Access
Órgão
UNIPAMPA
Ano
2026
Nível
Superior
Cargo
Analista de Tecnologia da Informação
Em um sistema multicore homogêneo, cada núcleo possui cache L1 privado, enquanto o cache L2 é compartilhado entre todos os núcleos. Para garantir a consistência dos dados quando múltiplos núcleos acessam e modificam a mesma linha de cache, são empregados protocolos de coerência. Considere a situação em que dois núcleos distintos acessam e alteram uma mesma linha de cache. Nesse contexto, qual alternativa descreve de forma mais adequada a principal diferença entre os protocolos de coerência MESI e MOESI no tratamento de dados modificados que ainda não foram escritos na memória principal?
  1. AO protocolo MESI admite que dados permaneçam em estado compartilhado mesmo após modificações locais, realizando atualizações periódicas, ao passo que o MOESI impõe invalidação imediata de todas as cópias ao detectar uma escrita.
  2. BNo protocolo MESI, uma linha de cache em estado modificado deve ser escrita na memória principal antes que seu conteúdo possa ser fornecido a outro núcleo; no MOESI, o estado Owned permite que essa linha modificada seja compartilhada e transferida diretamente entre caches, sem necessidade de escrita imediata na memória.
  3. CEm MESI, um bloco modificado por um núcleo invalida automaticamente o mesmo bloco nos outros núcleos, enquanto em MOESI o núcleo que sofre a invalidação passa a manter uma cópia exclusiva modificável sem troca adicional de mensagens.
  4. DMESI e MOESI apresentam comportamento equivalente quanto a dados modificados, exigindo em ambos os casos a escrita imediata na memória principal antes de qualquer transferência entre caches, diferindo apenas no número de estados definidos.
Revelar gabarito e comentário

GabaritoB — No protocolo MESI, uma linha de cache em estado modificado deve ser escrita na memória principal antes que seu conteúdo possa ser fornecido a outro núcleo; no MOESI, o estado Owned permite que essa linha modificada seja compartilhada e transferida diretamente entre caches, sem necessidade de escrita imediata na memória.

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Coerência de cache: protocolos MESI × MOESI

Gabarito: letra B. A principal diferença entre os protocolos está no tratamento de linhas de cache modificadas que ainda não foram escritas na memória principal. O MOESI adiciona o estado Owned (O), que permite que um cache forneça seu dado modificado diretamente a outro cache sem necessidade de write-back imediato. No MESI, uma linha em estado Modified, ao ser solicitada por outro núcleo, deve ser escrita na memória principal antes de ser compartilhada.

A banca testa o conhecimento dos cinco estados (MESI vs. MOESI = 4 estados vs. 5) e, sobretudo, a utilidade prática do estado Owned.

Protocolo

Estados

Tratamento de linha modificada (sem write-back)

Transferência entre caches

MESI

4 (Modified, Exclusive, Shared, Invalid)

Deve ser escrita na memória principal antes de fornecer a outro núcleo

Exige write-back imediato

MOESI

5 (Modified, Owned, Exclusive, Shared, Invalid)

Estado Owned permite manter linha modificada sem write-back imediato

Permite transferência direta entre caches

Alternativa A — ❌ Incorreta

Afirma que no MESI dados permanecem em estado compartilhado mesmo após modificações locais, com atualizações periódicas. Isso é falso: o MESI usa invalidação em escritas – uma linha em estado Shared deve ser invalidada antes de ser modificada. O MOESI também usa invalidação. A descrição está invertida.

Alternativa B — ✅ Correta ⟵ GABARITO

Descreve exatamente a diferença central:

  • No MESI, uma linha em Modified deve ser escrita na memória principal (write-back) antes que seu conteúdo possa ser transferido a outro núcleo.

  • No MOESI, o estado Owned permite que o cache mantenha a linha modificada e a transfira diretamente a outro cache, sem write-back imediato. O cache doador continua responsável pela escrita final na memória.

Alternativa C — ❌ Incorreta

Confunde os mecanismos. No MESI, uma escrita em bloco modificado invalida as outras cópias (correto), mas no MOESI o núcleo que sofre invalidação não mantém cópia exclusiva modificável – ele perde a cópia (vai para Invalid). O MOESI também envia mensagens de invalidação.

Alternativa D — ❌ Incorreta

Afirma que MESI e MOESI têm comportamento equivalente quanto a dados modificados, ambos exigindo escrita imediata na memória antes de qualquer transferência entre caches. Isso é falso: o MOESI permite transferência entre caches sem write-back imediato, graças ao estado Owned. A diferença não é só no número de estados, mas no tratamento de dados modificados.

Gabarito: letra B

Link permanente: /questoes/qg739232