Lar Desenvolvimento Thunk - o que é techopedia

Thunk - o que é techopedia

Índice:

Anonim

Definição - O que significa Thunk?

Um thunk, em um contexto geral de computação, é um código de baixo nível gerado por máquina, que implementa os detalhes de um sistema de software. É um dos seguintes:

  1. Um pedaço de código que executa uma computação atrasada
  2. Um recurso de uma implementação de tabela de função virtual
  3. Um mapeamento de dados da máquina de um formulário específico do sistema para outro para problemas de compatibilidade

Techopedia explica Thunk

Os conceitos de thunk surgiram no início de 1961. É um cálculo retornando um valor do argumento quando executado. Uma chamada por necessidade substitui uma conversão pelo seu valor de retorno após a primeira execução. Os idiomas com ligação tardia têm pesquisa em tempo de execução, com base em cálculos realizados por thunk.


Funções nulas (funções que não aceitam argumentos) na programação funcional são chamadas de thunk. Thunks simulam uma avaliação lenta e atrasam o cálculo do argumento da função. Essas funções ainda forçam os thunks a obter valores reais. Thunk também pode aparecer naturalmente na implementação de funções constantes na programação de alta ordem.


Compiladores de linguagens orientadas a objetos, como C ++, geram funções denominadas thunks. Eles otimizam chamadas de função virtual na presença de heranças virtuais ou múltiplas.


Algumas instâncias de código relocável usam thunks locais para chamar funções de biblioteca. A chamada de biblioteca dinâmica no código salta para thunks em uma tabela de salto, que é posteriormente substituída por funções que carregam a biblioteca aplicável ou são movidas para um ponto adequado em uma biblioteca já carregada. Portanto, um thunk nessa área calcula ou retorna valores previamente calculados e armazenados em cache. Os thunks são usados ​​em sistemas de memória virtual baseados em software para executar um mapeamento do endereço virtual para o físico. A criação de uma máquina DOS virtual de 16 bits dentro de um sistema operacional de 32 bits é denominada thunking e garante uma compatibilidade retroativa com aplicativos que usam chamadas de sistema antigas.


Os thunks planos usam thunks que traduzem chamadas de código de 32 bits para código de 16 bits. Um código intermediário converte o endereço de memória entre plataformas. A Microsoft possui uma camada de thunking chamada Win32s, que permite que o aplicativo do Windows de 32 bits seja executado no Windows de 16 bits. A versão do Windows de 64 bits também fornece uma camada thunking, WoW64, que permite o uso de aplicativos do Windows de 32 bits.

Thunk - o que é techopedia