J'ai entendu parler de choses comme "C Runtime", "Visual C ++ 2008 Runtime", ".NET Common Language Runtime", etc.
- Qu'est-ce que " runtime " exactement?
- De quoi est-ce fait?
- Comment interagit-il avec mon code? Ou peut-être plus précisément, comment mon code est-il contrôlé par lui?
Lors du codage du langage d'assemblage sous Linux, je pouvais utiliser l'instruction INT pour effectuer l'appel système. Donc, le runtime n'est-il qu'un tas de fonctions préfabriquées qui enveloppent la fonction de bas niveau dans des fonctions plus abstraites et de haut niveau? Mais cela ne ressemble-t-il pas davantage à la définition de la bibliothèque, pas à celle de l'exécution?
Est-ce que "runtime" et " runtime library " sont deux choses différentes?
AJOUTER 1
Ces jours-ci, je pense que Runtime a peut-être quelque chose en commun avec la soi-disant machine virtuelle , telle que JVM. Voici la citation qui conduit à une telle réflexion:
Ce processus de compilation est suffisamment complexe pour être divisé en plusieurs couches d'abstraction, et celles-ci impliquent généralement trois traducteurs: un compilateur, une implémentation de machine virtuelle et un assembleur. --- Les éléments des systèmes informatiques (Introduction, The Road Down To Hardware Land)
AJOUTER 2
Le livre Expert C Programming: Deep C Secrets . Le chapitre 6 Structures de données d'exécution est une référence utile à cette question.
runtime library
plus un code de contrôle et un état (fourni par le système d'exploitation).