Accueil Développement Thunk - définition de techopedia

Thunk - définition de techopedia

Table des matières:

Anonim

Définition - Que signifie Thunk?

Un thunk, dans un contexte informatique général, est un morceau de code généré par une machine de bas niveau, qui implémente les détails d'un système logiciel. Il s'agit de l'un des éléments suivants:

  1. Un morceau de code effectuant un calcul retardé
  2. Une caractéristique d'une implémentation de table de fonction virtuelle
  3. Un mappage des données machine d'un formulaire spécifique au système à un autre pour les problèmes de compatibilité

Techopedia explique Thunk

Les concepts de thunk sont apparus au début de 1961. Il s'agit d'un calcul renvoyant une valeur de l'argument lorsqu'il est exécuté. Un appel par nécessité remplace un thunk par sa valeur de retour après la première exécution. Les langages avec liaison tardive ont une recherche au moment de l'exécution, basée sur des calculs effectués par thunk.


Les fonctions nulles (fonctions qui ne prennent pas d'arguments) dans la programmation fonctionnelle sont appelées thunk. Thunks simule une évaluation paresseuse et retarde le calcul de l'argument de la fonction. Ces fonctions forcent en outre les thunks à obtenir des valeurs réelles. Thunk peut également apparaître naturellement dans la mise en œuvre de fonctions constantes dans la programmation d'ordre élevé.


Les compilateurs de langages orientés objet tels que C ++ génèrent des fonctions appelées thunks. Ils optimisent les appels de fonctions virtuelles en présence d'héritages virtuels ou multiples.


Certaines instances de code déplaçable utilisent des thunks locaux pour appeler des fonctions de bibliothèque. L'appel de bibliothèque dynamique dans le code passe aux thunks dans une table de sauts, qui est en outre remplacé par des fonctions chargeant la bibliothèque applicable ou se déplaçant vers un point approprié dans une bibliothèque déjà chargée. Ainsi, un thunk dans cette zone calcule ou renvoie des valeurs précédemment calculées et mises en cache. Les Thunks sont utilisés dans les systèmes logiciels de mémoire virtuelle pour effectuer un mappage de l'adresse virtuelle à l'adresse physique. La création d'une machine DOS virtuelle 16 bits dans un système d'exploitation 32 bits est appelée thunking et garantit une compatibilité descendante avec les applications utilisant les anciens appels système.


Les thunks plats utilisent des thunks qui convertissent les appels du code 32 bits en code 16 bits. Un code intermédiaire traduit l'adresse mémoire entre les plates-formes. Microsoft a une couche thunking d'elle-même appelée Win32s, qui permet aux applications Windows 32 bits de s'exécuter sur Windows 16 bits. La version Windows 64 bits fournit également une couche thunking, WoW64, qui permet d'utiliser des applications Windows 32 bits.

Thunk - définition de techopedia