Ethereum n’est probablement pas trop préoccupé par la « rétrocompatibilité ». Il y a quelques années, l’écosystème Polkadot a également été mis à niveau de fond en comble, et plusieurs applications DeFi importantes sont passées de V1 et V2 à V3 et V4, et les utilisateurs n’avaient guère de perception, sans parler du fait qu’il n’y avait rien qui ne pouvait pas être changé...
Le nouvel article de blog de V mentionne le système Rosetta d’Apple, qui reflète avec précision les défis techniques auxquels le réseau principal Ethereum sera confronté s’il veut remplacer les EVM par d’autres VM, un peu comme lorsqu’Apple a abandonné Intel en faveur de ses propres puces de la série M basées sur l’architecture Arm. Qu’est-ce qu’il y a de si difficile là-dedans ? Comme nous l’avons déjà dit, tout code écrit dans un langage de haut niveau finit par s’exécuter sur un certain jeu d’instructions : - Si le processeur de votre ordinateur est Intel/AMD, le programme sera exécuté selon le jeu d’instructions x86 - Dans le cas des puces Apple de la série M, le programme s’exécutera éventuellement sur le processeur selon le jeu d’instructions Arm Rappelez-vous ensuite : comment le programme a-t-il vu le jour ? Une fois qu’un programmeur a écrit du code dans un langage de haut niveau, il doit utiliser le compilateur pour le compiler dans un fichier exécutable « pour un certain système d’exploitation et un certain jeu d’instructions ». Lors du téléchargement d’une application, votre habituel « Linux-x86 », « macOS-x86 », « macOS-Arm » l’illustre, et le suffixe du nom de fichier représente le jeu d’instructions cible (pourquoi il y a toujours un système d’exploitation, la prochaine fois que vous pourrez en parler) Alors, Tim, quel est le prix ? 😡 Lorsque Apple a décidé de changer le noyau, il n’y avait pas de version Arm compilée prête à l’emploi pour un grand nombre d’applications, et le résultat était que les programmes macOS-x86 ne pouvaient pas fonctionner nativement sur la puce M. Que faire ? Trouvez un traducteur : c’est là que Rosetta entre en jeu. Rosetta, de Rosetta Stone. Ce qui est génial, c’est que le même contenu a été enregistré dans trois langues anciennes, et que le grec ancien est devenu la clé pour déchiffrer les hiéroglyphes égyptiens. De la même manière, Rosetta agit principalement comme une « couche de traduction » entre les deux ensembles d’instructions, traduisant le programme compilé du jeu d’instructions A en jeu d’instructions B de manière dynamique ou en une seule fois. De cette façon, le programme précédent peut également fonctionner de manière transparente sur du matériel qui utilise le nouveau jeu d’instructions. Grâce à l'"équivalence de calcul », la sortie du programme traduit est exactement la même, mais au prix d’une certaine performance. Pourquoi Rosetta est-elle rarement mentionnée ? Au fur et à mesure que l’écosystème de la puce M mûrit, les développeurs compilent généralement une version Arm du programme lors de la mise à jour de leurs applications. Seuls les vieux logiciels qui sont vieux et non entretenus doivent compter sur Rosetta. Par conséquent, si Ethereum veut vraiment remplacer l’EVM, il devra essentiellement suivre à nouveau le chemin de migration d’Apple : - Créez votre propre « Rosetta » afin que l’ancien bytecode du contrat puisse continuer à s’exécuter sur la nouvelle VM - Progressivement, laissez le nouveau contrat se compiler directement sur la nouvelle VM native C’est encore un long, long, long chemin entre la mise en place de la couche de compatibilité et la couverture de tous les anciens contrats.
Show original
7,36 k
8
The content on this page is provided by third parties. Unless otherwise stated, OKX is not the author of the cited article(s) and does not claim any copyright in the materials. The content is provided for informational purposes only and does not represent the views of OKX. It is not intended to be an endorsement of any kind and should not be considered investment advice or a solicitation to buy or sell digital assets. To the extent generative AI is utilized to provide summaries or other information, such AI generated content may be inaccurate or inconsistent. Please read the linked article for more details and information. OKX is not responsible for content hosted on third party sites. Digital asset holdings, including stablecoins and NFTs, involve a high degree of risk and can fluctuate greatly. You should carefully consider whether trading or holding digital assets is suitable for you in light of your financial condition.