Pergunta

página FreeBSD implementos colorir com filas de paginação. As filas estão dispostas de acordo com o tamanho do Caches L1 e L2 do processador; e quando uma nova página precisa ser alocado, FreeBSD tenta obter um que é perfeitamente alinhada para o cache.

Pode alguém por favor explicar as linhas acima, o que é o conceito de filas de paginação?

Obrigado!

Foi útil?

Solução

Os sistemas operacionais têm de gerir os tamanhos dos caches de CPU, a fim de reduzir falta de cache ( também explica página da coloração). Mais simplesmente, os dados armazenados nas caches (em unidades denominadas páginas) deve ser cuidadosamente selecionado com base em quantas vezes ele é usado, se é susceptível de ser utilizado novamente em breve, e como 'caro' seria a re-recuperar o dados da memória principal / HD / SomeOtherDevice. Estas escolhas são importantes em aplicações onde a largura de banda de memória é um gargalo.

Este tipo de coisa é feito muitas vezes com uma fila de prioridade que implementa a estratégia de substituição de paginação escolhida pelos desenvolvedores do sistema operacional. Essas filas determinar quais páginas são substituídos quando novos dados são movidos para o cache, e onde os dados serão localizados no cache. Você deve consultar a documentação do FreeBSD, se você quiser saber qual a estratégia está sendo usado.

Para o alinhamento, os dados no cache (ou na memória principal) precisa ser colocado começou em limites específicos, a fim de ser acessado de forma eficiente (ou seja, para ser movido para um registo CPU). Se os dados não estiver alinhado, é necessária a computação extra para alinhá-lo.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top