EVM est l'abréviation d'Ethereum Virtual Machine, et la traduction littérale chinoise s'appelle Ethereum Virtual Machine. Pour les utilisateurs qui n'ont pas été exposés au développement de logiciels, EVM peut sembler obscur et difficile à comprendre. Mais si nous faisons d’abord une analogie avec ce qu’est une machine virtuelle Java, cela peut être plus facile à comprendre.

1. Une analogie simple : EVM est pour Ethereum, tout comme la machine virtuelle Java l'est pour le langage Java.

$BTC $ETH

Avant le développement, les programmeurs doivent compiler le code Java en bytecode, mais l'ordinateur ne peut pas reconnaître le bytecode. La fonction de la machine virtuelle Java est de compiler le bytecode en instructions de code machine que le système informatique peut reconnaître, puis de les exécuter sur l'ordinateur. . courir. De même, l'EVM existe pour permettre aux programmeurs d'exécuter du code de contrat écrit en Solidity dans l'environnement Ethereum.

On peut voir qu'Ethereum est équivalent à l'environnement informatique, et l'EVM est chargé de compiler le code du contrat en code machine qu'Ethereum peut reconnaître et exécuter. Lorsque le réseau sera plus prospère, c'est-à-dire lorsque la demande de développeurs pour créer des applications sera relativement forte, des dizaines de milliers de nouveaux codes seront écrits sur le réseau Ethereum chaque jour, voire toutes les heures. Cependant, si ces codes de contrat ne peuvent pas être compilés en signaux linguistiques que le système peut reconnaître, ils ne peuvent pas être convertis en instructions et programmes spécifiques. Par conséquent, nous pouvons considérer EVM comme le convertisseur de ressources le plus important de l’écosystème Ethereum. Sans lui, le code sur Ethereum ne sera pas efficace. Même si les développeurs travaillent sans relâche pour écrire des langages de programmation, cela équivaudra à arrêter les mises à jour. Il convient de noter que si le code d'un programme cesse de se mettre à jour, cela signifie qu'il prendra fin. De plus, sans EVM, personne ne peut exécuter de logiciel sur le protocole Ethereum, car le code qu'ils écrivent dans le système sera plein de bugs.

Afin de renforcer davantage le concept d'EVM des lecteurs, vous souhaiterez peut-être d'abord clarifier deux concepts : la machine virtuelle et l'exhaustivité de Turing.

2. Comprendre les deux concepts les plus critiques : les machines virtuelles et l'exhaustivité de Turing

Tout d'abord, une machine virtuelle (Virtual Machine) fait référence à un système informatique complet doté de fonctions matérielles complètes simulées par un logiciel et fonctionnant dans un environnement complètement isolé.

En d’autres termes, tout travail pouvant être effectué sur un ordinateur physique peut l’être sur une machine virtuelle. En générant une nouvelle image virtuelle du système d'exploitation existant, la machine virtuelle a exactement les mêmes fonctions que le système Windows, mais elle fonctionne de manière indépendante et n'affectera pas le système réel.

Par conséquent, on peut comprendre que la machine virtuelle Ethereum (EVM) est l'environnement d'exploitation du contrat intelligent Ethereum. Les nœuds du système peuvent utiliser l'EVM pour exécuter leurs propres DAPP. De plus, étant donné que l’environnement d’exécution de la machine virtuelle Ethereum est complètement isolé de la chaîne principale, cela forme naturellement un environnement de test. Ce type d'environnement de test donne à de nombreux développeurs sans expérience en technologie blockchain la possibilité d'essayer avec audace de commettre des erreurs, car leurs codes d'erreur n'affecteront pas du tout le contrat intelligent Ethereum.

Deuxièmement, Turing complet est un terme technique nommé d'après le mathématicien britannique Alan Turing, qui a inventé la première machine de Turing, précurseur des ordinateurs d'aujourd'hui. Plus tard, l’industrie informatique a utilisé l’exhaustivité de Turing pour désigner des calculs capables de gérer n’importe quel niveau de complexité. Théoriquement, Ethereum peut déployer des programmes informatiques de n’importe quel type et fonction, mais ces programmes sont distribués et non centralisés comme nous le voyons habituellement, et tout cela doit être attribué à la conception sous-jacente d’EVM. De ce point de vue, Bitcoin n’est pas complet à Turing car il ne s’agit que d’un grand livre distribué et ne peut exécuter aucune application.

Enfin, en combinant ces deux concepts, on constate qu’EVM est un système informatique entièrement virtualisé capable d’effectuer des calculs de toute complexité. De ce point de vue, il s’apparente au cerveau d’Ethereum.

3. Modules clés dans le processus d'exécution EVM

Le fonctionnement d’EVM tourne étroitement autour de l’écologie d’Ethereum. Par conséquent, de nombreux termes Ethereum qui nous font sentir obscurs mais familiers sont en réalité étroitement liés à EVM.

Le premier est l'opcode. EVM interprète et traduit les instructions écrites par Solidity via des opcodes. Il existe actuellement plus de 140 opcodes différents dans l'EVM, qui sont similaires aux instructions émises directement par l'EVM. Par exemple, l'opcode CREAT correspond à la création d'un contrat intelligent, et l'opcode STOP signifie la suspension d'un contrat en cours ;

Viennent ensuite les frais de gaz. Les frais de gaz sont la ressource pour exécuter du code dans l'environnement EVM, mesurés en « gwei » (unités d'éther). Concrètement, l'exécution de toute transaction nécessite de consommer des ressources informatiques et de l'espace de stockage, tout comme toute application que nous téléchargeons sur notre téléphone mobile nécessite de l'énergie et de la mémoire. Cette partie de la consommation implicite est intuitivement convertie en coût explicite du gaz sur la chaîne. La relation entre l'EVM et les frais de Gas est comme une voiture et l'essence. Chaque fois qu'EVM exécute une instruction, il consomme un montant correspondant de frais de Gas ;

Enfin, il y a la fonction de transfert, où EVM et tous les utilisateurs d'Ethereum peuvent s'identifier. Les étapes spécifiques du transfert EVM sont les suivantes :

1) Vérifiez s'il y a des erreurs, y compris la validité de la valeur de transfert et de la signature, etc. ;

2) Calculer les frais de gaz requis pour le transfert et exécuter les instructions de collecte des frais de gaz ;

3) Transférez les actifs numériques à l'adresse spécifiée.

Il convient de noter que si l'EVM détecte que le cédant n'a pas payé suffisamment de frais de traitement, le transfert sera annulé et les frais de transfert ne seront pas remboursés, mais seront payés directement aux mineurs. De plus, si la transaction échoue en raison d'une erreur dans l'adresse du bénéficiaire, EVM restituera le principal du transfert et les frais de traitement intacts au payeur.

4. Brève analyse du concept et des tendances importantes de la chaîne publique EVM

Ethereum occupe une position de leader dans le secteur de la chaîne publique, représentant la grande majorité du secteur en termes de nombre d'applications écologiques et de volume total bloqué. Par conséquent, les principales chaînes publiques du marché choisissent toutes d'être compatibles avec EVM, et elles sont également appelées chaînes publiques EVM.

La compatibilité EVM fait référence au fait que les contrats intelligents construits sur sa chaîne publique peuvent être migrés d'avant en arrière sur Ethereum rapidement, facilement et à faible coût, et transportés de manière transparente. Actuellement, de nombreuses chaînes publiques sont en cours de développement et ont délibérément implémenté des fonctions compatibles EVM pour maximiser la capacité d'entreprendre des projets de débordement Ethereum, similaires au détournement de trafic dans le jeu sur Internet mobile. Par conséquent, de nombreuses parties prenantes à des projets de chaîne publique feront de la compatibilité EVM leur principal argument de vente et leur principal attrait.

Bien entendu, à en juger par la situation actuelle du marché, le gagnant final de la chaîne compatible EVM est encore très peu nombreux. La chaîne publique OKC est susceptible de réussir dans la prochaine étape en étant compatible avec EVM.

Le 10 mai 2021, le réseau principal de la chaîne publique OKC est officiellement devenu compatible EVM, entrant ainsi dans une nouvelle ère. En tant que chaîne publique 100 % open source, OKC génère un nouveau bloc toutes les 0,5 secondes avec d'excellentes performances. Par rapport aux autres chaînes publiques compatibles EVM, ses performances sont plus stables, sa vitesse est plus efficace et son échelle écologique est plus forte.

La chaîne publique OKC est soutenue par OKX, qui est devenu un fournisseur mondial de services d'infrastructure Web3. L'écosystème Web3 d'OKC couvre la plus grande plateforme d'échange d'actifs numériques au monde, les portefeuilles numériques Web3 compatibles avec les devises de la plus haute qualité au monde et le marché NFT le plus rentable, etc. Grâce à cela, la chaîne publique OKC peut obtenir un flux constant d'inclinaison des ressources écologiques, et après avoir été compatible avec l'EVM, ces avantages seront continuellement amplifiés et accumulés. Comparée aux autres chaînes publiques EVM, la chaîne publique OKC est encore plus unique.

Un exemple suffit pour prouver les avantages uniques qu’OKC peut exercer après avoir été compatible avec EVM :

Après la mise en ligne de la chaîne publique OKC en 2021, la communauté des développeurs ouvrira le code original de la machine virtuelle EVM et le partagera avec la communauté Cosmos, résolvant ainsi le problème de compatibilité avec Ethereum pour le réseau Cosmos.

5. Qu'est-ce qu'eWASM ? Quelle est sa relation avec EVM ?

Les amis qui connaissent l'écosystème Ethereum savent qu'Ethereum 2.0 est la forme ultime d'Ethereum. Après avoir implémenté le mécanisme POW to POS, il peut gérer toutes les tâches informatiques avec des performances élevées, même comparables aux produits Internet Web2. Cependant, selon la conception sous-jacente et les performances actuelles d’EVM, EVM est vraiment incapable de s’adapter à l’état idéal d’Ethereum 2.0. En conséquence, eWASM (version ETH de WebAssemly) est devenu le successeur et le remplaçant d'EVM.

Pour expliquer, WebAssemly est un assemblage sur le Web. En tant qu'environnement d'exécution Web apparu ces dernières années, il s'agit d'un format d'instruction binaire conçu pour les machines virtuelles basées sur une pile. Par rapport à JavaScript, il présente les avantages d'une meilleure performance, d'un coût de stockage inférieur, d'un environnement d'exécution plus sûr et d'une meilleure prise en charge des langues.

Selon l'hypothèse, comme eWASM a de meilleures performances et une meilleure évolutivité que EVM, et peut prendre en charge des langages de programmation tels que Solidity, C++, Rust et AssemblyScript, il sera plus facile de développer des contrats. eWASM est également compatible avec les normes Web actuelles, ce qui facilite son exécution dans les navigateurs classiques et permet aux utilisateurs d'accéder aux DApp sans avoir besoin d'extensions.

De plus, Ethereum n’est pas le seul à utiliser WASM comme moteur d’exécution sous-jacent. EOS, Dfinity, Polkadot, Tron, Cardano, Spacemesh, etc. ont tous adopté ou sont en train d’adopter WASM.

#ETH #Binance #Web3 $BTC #热门话题 #pyth

Il convient de noter qu’Ethereum 2.0 est divisé en trois étapes : PoS, sharding et enfin eWASM. À l'heure actuelle, le transfert des points de vente qui préoccupe le plus tout le monde, à savoir la fusion, est encore en cours de préparation. Par conséquent, eWASM, qui a encore besoin de temps, ne dispose pas de beaucoup de mises à jour de code, mais son concept est suffisamment attractif. Nous continuerons de veiller à savoir si l’eWASM peut réellement exploiter l’ensemble d’Ethereum 2.0 comme prévu.