No ano passado, a Intel publicou documentação sobre um recurso para futuras CPUs que eles apelidaram de FRED, o retorno flexível e a entrega de eventos. O FRED tem a capacidade de ajudar no desempenho do sistema e no tempo de resposta, enquanto agora os patches iniciais para o kernel do Linux foram publicados para oferecer suporte ao FRED.
Agora, um conjunto inicial de pedidos de comentários (RFC) de 32 patches foi enviado para habilitar a funcionalidade Intel Flexible Return and Event Delivery (FRED) no kernel do Linux.
Para relembrar o recurso, os engenheiros da Intel resumiram o FRED como:
A arquitetura flexível de retorno e entrega de eventos (FRED) da Intel define novas transições simples que alteram o nível de privilégio (transições de anel). A arquitetura FRED foi projetada com os seguintes objetivos:
1) Melhorar o desempenho geral e o tempo de resposta, substituindo a entrega de eventos pela tabela do descritor de interrupção (entrega de eventos IDT) e o retorno de eventos pela instrução IRET com transições de menor latência.
2) Melhorar a robustez do software garantindo que a entrega do evento estabeleça o contexto completo do supervisor e que o retorno do evento estabeleça o contexto completo do usuário.As novas transições definidas pela arquitetura FRED são FRED event delivery e, para retorno de eventos, duas instruções FRED return. A entrega de evento FRED pode efetuar uma transição do anel 3 para o anel 0, mas também é usada para entregar eventos incidentes para o anel 0. Uma instrução FRED (ERETU) efetua um retorno do anel 0 para o anel 3, enquanto a outra (ERETS) retorna permanecendo no anel 0.
Além dessas transições, a arquitetura FRED define uma nova instrução (LKGS) para gerenciar o estado do registrador de segmento GS. A instrução LKGS pode ser usada por sistemas operacionais de 64 bits que não usam as novas transições FRED.
Simplificando, FRED é basicamente sobre transições de baixa latência entre os níveis de privilégio da CPU. Este trabalho do kernel Linux FRED segue a Intel em outubro, tendo publicado patches Linux para LKGS, uma nova instrução que faz parte do FRED, mas também pode ser usada independente do FRED estar habilitado.
Intel envia patches iniciais de kernel Linux para FRED
A Intel manteve a documentação do FRED para os interessados ??em aprender mais sobre esse recurso que vem com os processadores da geração futura.
A atual série de patches RFC equivale a cerca de mil linhas de novo código para habilitar o Intel Flexible Return and Event Delivery para Linux. Os patches agora são públicos para revisão e eventual upstreaming no kernel do Linux. Como de costume, a Intel enviou esses patches cedo e bem antes de qualquer CPU ser lançada com FRED para permitir tempo suficiente para revisão e inclusão no upstream antes (idealmente) de enviar produtos.