Alternativa C
A questão aborda o conceito fundamental de memória virtual em sistemas operacionais e arquitetura de computadores. Para entender a resposta, é preciso compreender como os endereços de memória funcionam nesse contexto.
Resumo da Resposta
A alternativa C é correta porque define a essência da memória virtual: abstrair a memória física para o programa, permitindo que ele opere com endereços lógicos independentemente do tamanho real da RAM instalada.
Análise Didática
A memória virtual funciona como uma camada de abstração entre o software (o programa) e o hardware (a memória RAM).
Conceitos-Chave
- Endereço Lógico (Virtual): É o endereço visto pelo programa. O programador não precisa saber onde os dados estão fisicamente na RAM.
- Endereço Físico: É o local real no chip de memória RAM onde os dados estão armazenados.
- MMU (Memory Management Unit): É o componente de hardware responsável por traduzir o endereço lógico em endereço físico antes de acessar a memória principal.
Por que a Alternativa C está Correta?
A definição apresentada na letra C captura a vantagem principal da memória virtual:
- Ela cria uma ilusão de que o computador possui muito mais memória do que realmente existe.
- Os programas são escritos pensando em um espaço de endereçamento contínuo e lógico.
- O sistema operacional gerencia essa abstração, movendo dados entre a RAM e o disco rígido (swapping/paging) conforme necessário.
Por que as outras estão Incorretas?
- Alternativa A: Quando a memória virtual está ativa, os campos de endereço nas instruções da máquina contêm endereços lógicos, não físicos. Se fossem físicos, o sistema não poderia fazer a tradução necessária.
- Alternativa B: A MMU traduz o endereço virtual para um endereço físico, não lógico. O termo "lógico" geralmente se refere ao mesmo conceito de "virtual" neste contexto.
- Alternativa D: A terminologia "cache lógica" ou "cache virtual" misturada com endereços físicos nesta frase gera confusão conceitual. Geralmente, caches podem usar endereços virtuais ou físicos, mas a descrição fornecida não é tecnicamente precisa para definir o mecanismo geral.
- Alternativa E: O TLB (Translation Lookaside Buffer) é uma estrutura de cache de alta velocidade (geralmente parte da CPU ou MMU) que armazena entradas recentes da tabela de páginas. Descrevê-lo simplesmente como "uma memória RAM dinâmica" é impreciso, pois ele é distinto da memória principal de acesso sequencial.
Conclusão
A memória virtual permite que os processos utilizem endereços lógicos, desacoplando a programação da realidade física da memória. Isso facilita o desenvolvimento de software e otimiza o uso dos recursos de hardware disponíveis. Portanto, a definição dada na Alternativa C é a única correta.