FERRAMENTAS LINUX: Os pontos de atualização manual do programador AMD chegam para o suporte a PCID, chaves de proteção de memória

quinta-feira, 30 de abril de 2020

Os pontos de atualização manual do programador AMD chegam para o suporte a PCID, chaves de proteção de memória



Confira !!



Parece que as CPUs AMD Zen 3 finalmente suportarão o PCID! E as chaves de proteção de memória também estão chegando, pelo menos de acordo com o mais recente manual de referência para programadores da AMD.

A AMD publicou uma nova revisão do Manual de Referência do Programador. Os novos registros detalhados são para PCID e PKEY.

Sim, finalmente o PCID e os Identificadores de Contexto do Processo estão sendo suportados nas CPUs AMD. O PCID é suportado pelas CPUs Intel desde 2010, enquanto desde 2018 se fala muito mais em ajudar a compensar parte da sobrecarga de desempenho decorrente das mitigações do Meltdown, já que o PCID permite evitar uma descarga TLB extra. Embora a Intel tenha suportado o PCID há muito tempo, os processadores AMD até o momento não têm suporte para identificadores de contexto de processo. O kernel do Linux suporta o uso dos Identificadores de Contexto do Processo e da instrução INVPCID desde o Linux 4.14, com a liberação TLB otimizada para o PCID .

Conforme descrito no PRM ",O recurso Identificador de Contexto do Processo (PCID) permite que um processador lógico armazene em cache os mapeamentos TLB simultaneamente para vários espaços de endereço virtual. Quando ativado (configurando CR4.PCIDE = 1), o processador associa o PCID de 12 bits atual a cada mapeamento TLB criado. Somente as entradas correspondentes ao PCID atual são usadas ao executar traduções de endereço. Dessa maneira, o processador pode reter mapeamentos TLB em cache para vários contextos. "

A outra adição notável do manual atualizado de hoje é o suporte à Chave de proteção de memória (PKE). O suporte à AMD PKE também habilita as instruções RDPKRU e WRPKRU. A Intel desde que o Linux suporte por anos e no lado da CPU é suportado desde o Xeon Skylake. As teclas de proteção de memória permitem proteções de memória baseadas em páginas através das instruções RDPKRU / WRPKRU. Conforme explicado no manual da AMD, " [MPK] fornece uma maneira de os aplicativos imporem proteções de acesso a dados com base em páginas (leitura / gravação, somente leitura ou sem acesso), sem exigir a modificação de tabelas de páginas e subseqüentes invalidações de TLB quando o aplicativo muda os domínios de proteção. "

O kernel do Linux, GCC e Clang e outras bibliotecas de chaves como a Glibc já têm suporte para chaves de proteção de memória em boa ordem, graças ao trabalho anterior da Intel.

Embora não seja garantido, dado o momento da atualização manual, a funcionalidade PCID e PKE / MPK quase certamente faz parte dos processadores AMD Zen 3 lançados ainda este ano.

O manual mais recente da AMD pode ser encontrado aqui .


Fonte

Até a próxima !!

Nenhum comentário:

Postar um comentário