SóProvas


ID
204685
Banca
CESPE / CEBRASPE
Órgão
Banco da Amazônia
Ano
2010
Provas
Disciplina
Sistemas Operacionais
Assuntos

Acerca de características dos sistemas operacionais modernos,
julgue os itens subsequentes.

TLB (translation lookaside buffer) ou memória associativa é um dispositivo em hardware desenvolvido para mapear os endereços virtuais para endereços físicos sem passar pela tabela de páginas.

Alternativas
Comentários
  • TLB: Translation look-aside buffer

    Translation Look-aside Buffer (TLB) is cache in a CPU that contains parts of the page table which translate from virtual into real addresses. This buffer has a fixed number of entries and is used to improve the speed of virtual address translation. The buffer is typically a content addressable memory (CAM) in which the search key is the virtual address and the search result is a real or physical address (which, perversely, may not be the same thing). If the CAM search yields a match the translation is known and the match data is used. If no match exists, the translation proceeds via the page table, which will take several more cycles to complete – particularly if the translation tables are swapped out into secondary storage. The TLB enables faster computing because it allows the address processing to take place independent of the normal address-translation pipeline.


    fonte: http://www.javvin.com/hardware/TLB.html

    ===================================================

     

  • Essa questão envolve um conceito complexo, que é a TLB.

    A TLB é uma espécie de memória cache. Vamos ver como ela funciona. Isso envolve alguns conceitos extras.

    A memória principal é dividida em blocos, ou frames. O programa, ou aplicativo do usuário é dividido em páginas. Em certos momentos, algumas dessas páginas estão alocadas nos blocos da memória principal. Existe uma coisa chamada de TABELA DE PÁGINAS. Ela possui três parâmetros, geralmente: O primeiro é um número de página (1, 2, 3 ...depende de quantas páginas possui um programa), o segundo é o bloco (em que bloco da memória principal está a página requerida) e um endereço relativo (usado para encontrar a informação dentro da página ou bloco).

    O que acontece é que a tabela de páginas é muito grande. Assim, não tem como mantê-la por completo na memória principal. Ela fica, por esse motivo, na memória virtual. Isso abre um gargalo no sistema, pois, para saber onde está a página no bloco, tem-se que, primeiro, acessar a página no endereço virtual e depois acessar a informação. São dois acessos. Para evitar esse problema, foi criado a TLB.

    A TLB é uma memória cache (dita no começo) que contém as entradas da tabela de página usadas mais recentemente. Vamos supor que a CPU requisite a página de número 10. É verificado primeiramente se essa entrada se encontra na TLB. Se sim, dessa entrada é gerada o endereço físico da página (os programa tem somente endereço relativo, que precisam ser tranformador em end. físico).
    Caso não esteja na TLB:é feito um acesso à tabela de página na memória virtual. Verifica-se se a página 10 está na memória principal.

    1 - Se estiver, a TLB é atualizada, gera-se o endereço físico da página 10 e verifica-se se a informação está na cache. Caso esteja, o dado é entregado à CPU. Caso contrário, é buscada da memória principal e atualizada a cache.
    2 - Se não estiver, ocorre falha de página e é preciso trazê-la da memória virtual para a principal. Depois, é atualizada a tabela de páginas. Logo depois, é feita a consulta novamente à TLB. Nesse caso, dará erro novamente, sendo necessário uma busca na Tabela de páginas. Agora, está Ok. A TLB é atualizada e o endereço é buscado na cache, caso esteja lá. Caso contrário, é buscado na memória principal e atualiza a cache.

    A partir de agora, não é mais necessário acesso à Tabela de páginas, pois a TLB possui a entrada da página 10. Isso evita aquele acesso demorado e custoso. Da TLB é gerado o endereço físico e a informação é entrega à CPU.

    Finalizando, a TLB é um hardware (cache) que mapeia endereços virtuais em físicos sem passar pela Tabela de páginas.

    Espero ter sido claro. Prolixo, mas claro.

     
  • Translation Address Table. A TLB é fundamental no acesso à memória. Basicamente, os endereços de toda a memória RAM disponível são divididos em páginas de memória. Cada página de memória tem uma tabela de endereços, com os dados armazenados e sua localização.

    Esta tabela precisa ser consultada antes de cada acesso à memória. O grande problema é que em condições normais, a tabela fica armazenada na própria memória RAM, o que faz com que o processador precise fazer um duplo acesso à memória, o primeiro para ler a tabela de endereços e o segundo para recuperar os dados propriamente ditos.

    A TLB é uma espécie de cache, incluído no processador, que permite que ele mantenha as tabelas de endereços de algumas páginas pré-carregados, o que melhora consideravelmente a velocidade de acesso à memória, quando os dados necessários não são encontrados no cache L1 e L2. Quanto maior é a TLB, mais endereços podem ser armazenados e maior é o ganho.

    Fonte:http://www.hardware.com.br/termos/tlb

  • Certinho.

    A TLB fica localizada dentro da MMU e funciona como uma “cache” em relação a tabela de páginas (armazenada em memória principal).
    A busca é realizada inicialmente na TLB, caso não seja encontrada a página deverá ser pesquisada na tabela de páginas.