Acasă Dezvoltare Thunk - definiție din techopedia

Thunk - definiție din techopedia

Cuprins:

Anonim

Definiție - Ce înseamnă Thunk?

Un cod, într-un context general de calcul, este o bucată de cod generat la mașină la nivel scăzut, care implementează detaliile unui sistem software. Este una dintre următoarele:

  1. O bucată de cod care efectuează un calcul întârziat
  2. O caracteristică a implementării unei tabele de funcții virtuale
  3. O mapare a datelor de la mașină de la un formular specific de sistem la altul pentru probleme de compatibilitate

Techopedia explică Thunk

Conceptele de thunk au apărut la începutul anului 1961. Este un calcul care returnează o valoare a argumentului atunci când este executat. Un apel la nevoie înlocuiește un bagaj cu valoarea de returnare după prima execuție. Limbile cu legare tardivă au căutare în timp de rulare, bazate pe calcule efectuate de cizel.


Funcțiile nulare (funcții care nu iau argumente) în programarea funcțională sunt denumite subțire. Thunks simulează evaluarea leneșă și întârzie calcularea argumentului funcției. Aceste funcții forțează și mai mult ca atare să obțină valori reale. Thunk poate apărea, de asemenea, în mod natural, în implementarea funcțiilor constante în programarea de ordine înaltă.


Compilatoarele de limbaje orientate pe obiect, cum ar fi C ++ generează funcții numite thunks. Ele optimizează apelurile funcțiilor virtuale în prezența moștenirilor virtuale sau multiple.


Unele cazuri de cod relocabile folosesc butoane locale pentru a apela funcțiile bibliotecii. Apelul dinamic de la bibliotecă în codul de sare se ridică la zgomot într-o tabelă de salt, care este înlocuit în continuare cu funcții de încărcare a bibliotecii aplicabile sau se mută într-un punct adecvat dintr-o bibliotecă deja încărcată. Așadar, un cod din această zonă calculează sau returnează valorile calculate anterior și în cache. Thunks-urile sunt utilizate în sistemele de memorie virtuală bazate pe software pentru a efectua o mapare de la adresa virtuală la cea fizică. Crearea unei mașini DOS virtuale pe 16 biți în cadrul unui sistem de operare pe 32 de biți se numește thunking și asigură o compatibilitate înapoi cu aplicațiile care utilizează apeluri vechi ale sistemului.


Thunks-uri plate folosesc traducerea apelurilor de la cod de 32 de biți la cod de 16 biți. Un cod intermediar traduce adresa de memorie între platforme. Microsoft are un strat de zguduire numit Win32s, care permite rularea aplicației Windows pe 32 de biți pe Windows pe 16 biți. Versiunea Windows pe 64 de biți oferă, de asemenea, un strat de redresare, WoW64, care permite utilizarea aplicațiilor Windows pe 32 de biți.

Thunk - definiție din techopedia