Resultados da pesquisa a pedido "x86"
NOPs longos de vários bytes: macros comumente entendidas ou outra notação
Não é um grande segredo que os processadores x86 (e x86_64) tenham não apenas o byte únicoNOP instruções, mas também vários tipos de instruções semelhantes a NOP de vários bytes. Existem os que eu consegui encontrar: Recomendado pela AMD, ...
Quando fazer ou não o INVLPG, MOV para CR3 para minimizar a descarga do TLB
PrólogoEu sou um hobby de sistema operacional, e meu kernel roda em 80486+ e já suporta memória virtual. A partir de 80386, a família de processadores x86 da Intel e vários clones dela suportam memória virtual com paginação. É sabido que quando ...
Atomicidade por elemento da carga / armazenamento do vetor e coleta / dispersão?
Considere uma matriz comoatomic<int32_t> shared_array[]. E se você quiser SIMD vetorizarfor(...) sum += shared_array[i].load(memory_order_relaxed)? Ou para pesquisar em uma matriz o primeiro elemento diferente de zero ou zerar um intervalo dele? ...
Existe uma representação simples do DWARF CFI para funções que configuram um ponteiro de quadro convencional?
Estou programando em uma combinação de C, C ++ e assembly e gostaria de obter retornos confiáveis de qualquer parte do código. Isso funciona principalmente para o código C e C ++, pois eu posso gerar informações de depuração com-g, que para ...
Como a CPU sabe qual rotina de serviço de interrupção executar contra uma interrupção de hardware?
Por exemplo, uma tecla do teclado é pressionada, causando uma interrupção de hardware gerada na CPU, a CPU envia uma confirmação ao controlador de interrupção. No estágio do processo de interrupção, como a CPU sabe qual rotina de serviço de ...
Determinar a frequência TSC no Linux
Dado um x86 com umTSC constante [https://stackoverflow.com/a/51907627/149138], que é útil para medir em tempo real, como é possível converter entre as "unidades" dos ciclos de referência TSC e as unidades humanas normais em tempo real, como ...
O printf requer espaço adicional na pilha no x86-64? [duplicado]
Esta questão já tem uma resposta aqui:Imprimir números de ponto flutuante de x86-64 parece exigir que% rbp seja salvo 1 respostaEmbora eu saiba que é melhor ...
Como converter uma string para um número em Tasm?
Eu fiz um programa que lê uma string e a converte em um número. Uma representação de string do número inserido no sistema decimal. O resultado da conversão e...
Qual é a diferença entre __popcnt () e _mm_popcnt_u32 ()?
O MS Visual C ++ suporta 2 sabores da instrução popcnt em CPUs com SSE4.2:
Não é possível ler de volta do MSR
Eu estou escrevendo um módulo de kernel e é sobre ler e escrever MSRs. Eu escrevi um programa simples para testar, mas ainda falha. Tudo o que está fazendo é...