La machine virtuelle TRON (TVM) est une machine virtuelle complète et légère développée pour l’écosystème de TRON. Son objectif est de fournir à des millions de développeurs mondiaux un système de chaîne de blocs personnalisé, efficace, pratique, stable, sécurisé et évolutif.

TVM peut se connecter de manière transparente à l'écosystème de développement existant et prend en charge DPOS. TVM est capable d'être compatible avec l'environnement EVM au début, de sorte qu'au lieu d'apprendre un nouveau langage de programmation, les développeurs peuvent développer, déboguer et compiler des contrats intelligents dans un environnement Remix avec Solidity et d'autres langages. Une fois que vous avez créé et téléchargé votre contrat intelligent sur le réseau principal de TRON, il sera exécuté sur le TVM du nœud SR à isoler des connexions externes.

De plus, TVM utilise le concept de bande passante. Contrairement au mécanisme de gaz sur l'EVM d'Ethereum, les opérations de transaction ou les contrats intelligents sur TVM sont gratuits, sans jetons consommés. Techniquement, la capacité de calcul exécutable sur TVM n'est pas limitée par la rétention totale des jetons.

Caractéristiques de TVM

 1-    Lightweight TVM adopte une architecture légère dans le but de réduire la consommation de ressources pour garantir les performances du système.
 2-   Stabilité et sécurité Avec un paradigme de conception méticuleux et un code d'opération sous-jacent affiné, TVM peut garantir la précision de chaque étape d'un calcul, réduisant ainsi l'ambiguïté au maximum. Pour des raisons de sécurité, les transferts et l'exécution de contrats intelligents ne coûtent que des points de bande passante, pas TRX, ce qui dispense TRON d'être attaqué de la même manière que Ethereum pour son mode de consommation de gaz. La stabilité de la consommation de bande passante est atteinte tandis que le coût de chaque étape de calcul est fixe.
 3-   Compatibilité Actuellement, TVM est compatible avec EVM et sera avec d'autres machines grand public à l'avenir. Ainsi, tous les contrats intelligents sur EVM sont exécutables sur TVM. En se connectant de manière transparente à l'écosystème de développement existant, les développeurs peuvent améliorer leur efficacité. Inutile d'apprendre un nouveau langage de programmation, ils peuvent utiliser des langages de programmation traditionnels pour des contrats intelligents tels que Solidity pour développer, déboguer et compiler des contrats intelligents dans l'environnement Remix, ce qui réduit considérablement les coûts de développement.
4-    Grâce à la configuration de la bande passante de TVM, les coûts de développement sont réduits et les développeurs peuvent se concentrer sur la logique de leur code de contrat. TVM propose également des interfaces tout-en-un pour le déploiement, le déclenchement et la visualisation de contrats, pour le confort des développeurs. Les interfaces suivantes sont disponibles dans Tron Wallet-CLI:

   -- deploycontract (mot de passe, adresse du contrat, ABI, code, données, valeur)
  --  triggercontract (mot de passe, contractAddress, selector, data, value)
  --   getcontract (contractAddress) Les développeurs peuvent appeler ces interfaces pour déployer, déclencher ou vérifier des contrats intelligents.

Comment fonctionne TVM?

L'organigramme ci-dessus montre comment TVM fonctionne:
Compilation du contrat intelligent Tron → moteurs d'exécution et de calcul de VM → couche de service d'interopérabilité pour les interfaces externes

En termes simples, le flux est le suivant:

 -   Actuellement, TVM est principalement compatible avec Solidity. Le compilateur traduit le contrat intelligent de Solidity en un bytecode lisible et exécutable sur TVM.
 -   Une machine virtuelle traite des données via un code opération, ce qui équivaut à utiliser une logique d'une machine à états finis basée sur une pile.
 -   TVM accède aux données de la chaîne de blocs et appelle l'interface de données externes via la couche d'interopérabilité.

DĂ©veloppement futur de TVM

1-    Des outils de débogage plus conviviaux pour les développeursTron se consacrera au développement d'outils de débogage optimisés et à la mise en place de formats de symboles et de données standardisés, pour une efficacité accrue des développeurs.
2-    Réalisation d'exigences de traitement diversifiées Différent du mécanisme de consommation de gaz pour chaque transaction sur EVM, il n'y a pas de frais pour TVM. Chaque opération n'occupe que la bande passante, qui sera libérée dans un certain délai après la fin de la transaction. Il faut très peu aux développeurs pour développer des contrats intelligents avec une logique plus complexe. Nous croyons qu'en plus d'être utilisés pour les transactions d'actifs numériques, les contrats intelligents pourraient également être appliqués de manière appropriée dans des domaines tels que le développement de jeux, la modélisation des risques financiers et le calcul scientifique. La conception de TVM prend en charge de manière inhérente les tâches multi-scénarios et optimise davantage la vitesse de traitement, le temps de réponse et la compatibilité en virgule flottante.
 3-   Amélioration de la vitesse de compilation Just-In-Time (JIT) et intégration de WebAssembly

Améliorer la vitesse de compilation de JIT favorise une interprétation plus rapide et une compilation optimisée du code local.
Pendant ce temps, Tron prévoit d’optimiser davantage sa TVM en s’appuyant sur WebAssembly (WASM). WebAssembly, dirigé par Apple, Google, Microsoft et Mozilla, est conçu pour briser les goulots d'étranglement des navigateurs Web actuels et peut être généré via la compilation de C / C ++ et d'autres langages de programmation.
Intégrant WASM, TVM sera en mesure de fournir des performances élevées et un débit élevé pour que la chaîne de blocs puisse faire face à des scénarios complexes.

Reference:
https://github.com/tronprotocol/Documentation/blob/master/English_Documentation/TRON_Virtual_Machine/Virtual_Machine_Introduction.md

Did this answer your question?