Alternativa A
A questão aborda o funcionamento da memória virtual e os mecanismos de tradução de endereços virtuais para físicos. O objetivo principal é identificar qual afirmação descreve corretamente o processo de mapeamento e suas otimizações.
Análise das Alternativas
Para encontrar a resposta correta, precisamos entender como o sistema operacional e o hardware gerenciam a memória:
- Alternativa A (Correta): O mapeamento de endereços virtuais para físicos exige consulta às tabelas de páginas, o que é lento se feito apenas via software ou acesso direto à RAM. Para resolver isso, utiliza-se um componente de hardware chamado TLB (Translation Lookaside Buffer), que funciona como uma tabela associativa (ou cache de tradução). Ela armazena as traduções mais recentes, acelerando drasticamente o acesso aos dados. Embora a sigla padrão seja TLB, o conceito de "tabela associativa em nível de hardware" está correto.
- Alternativa B (Incorreta): O acesso à memória para conversão de endereço prejudica o desempenho. Cada vez que ocorre um "miss" no TLB, o processador precisa acessar a tabela de páginas na memória principal, o que adiciona latência e reduz a velocidade do processo.
- Alternativa C (Incorreta): As arquiteturas de 32 bits e 64 bits influenciam diretamente o endereçamento. Uma arquitetura de 32 bits limita o espaço endereçável a $2^{32}$ bytes (aprox. 4 GB), enquanto 64 bits permite um espaço teoricamente muito maior ($2^{64}$ bytes). Isso afeta o tamanho das entradas da tabela de páginas e a quantidade de memória gerenciável.
- Alternativa D (Incorreta): Em tabelas de páginas multiníveis, a estrutura é organizada hierarquicamente (como uma árvore) baseada nos bits do endereço virtual, e não em "listas encadeadas". Listas encadeadas são mais comuns em estratégias de alocação dinâmica ou tabelas invertidas (embora estas usem hashing).
- Alternativa E (Incorreta): Esta descrição confunde as estruturas. Tabelas de páginas invertidas mapeiam números de quadro físico (PFN) para endereços virtuais, geralmente usando uma tabela de hash, e não possuem níveis hierárquicos onde "níveis superiores apontam para níveis inferiores" (essa descrição pertence às tabelas multiníveis).
Resumo Conceitual
O uso de memória virtual introduz a necessidade de traduzir endereços. Como esse processo consome tempo, o hardware utiliza caches especiais (TLBs) para evitar acessos repetidos à memória principal durante a conversão.
- TLB: Cache de alta velocidade dentro da CPU/MMU.
- Função: Armazenar mapeamentos recentes (Virtual \rightarrow Físico).
- Vantagem: Reduz o tempo de busca na tabela de páginas.
Portanto, a alternativa que descreve corretamente a solução de hardware para agilizar a conversão é a A.