TVM 概览
本文提供了TVM如何执行交易的概览。
本文档提供 TVM 如何执行事务的鸟瞰图。
提示
- TVM 源 - TVM C++ 实现
- TVM Retracer
TON 课程:TVM
提示
在开始课程之前,请确保您已充分了解区块链技术的基础知识。如果您的知识有缺口,我们建议您参加区块链基础知识与 TON(RU 版本, CHN 版本)课程。
TON Blockchain 课程是TON Blockchain 开发的综合指南。
模块 2 完全涵盖 TVM、事务、可扩展性和业务案例。
检查 TON 区块链课程
中文
以及四种不同的cell类型:
控制寄存器
当某个 TON 链上的账户发生某些事件时,就会引起交易。最常见的事件是 "某些信息的到达",但一般来说也可能有 "滴答"、"合并"、"拆分 "和其他事件。
每个交易最多由 5 个阶段组成:
- Storage phase - in this phase, storage fees accumulated by the contract due to the occupation of some space in the chain state are calculated. Read more in Storage Fees.
- Credit phase - 在这一阶段,将计算与(可能的)接收信息值有关的合约余额和收取的存储费。
- Compute phase - 在此阶段,TVM 正在执行合约(见下文),合约执行的结果是
exit_code
、actions
(序列化的操作列表)、gas_details
、new_storage
和一些其他信息的集合。 - Action phase - 如果计算阶段成功,则在此阶段处理计算阶段的 "行动"。具体而言,行动可能包括发送消息、更新智能合约代码、更新库等。请注意,某些操作在处理过程中可能会失败(例如,如果我们尝试发送的消息的 TON 超过合约所拥有的 TON),在这种情况下,整个交易可能会回退或跳过该操作(这取决于操作的模式,换句话说,合约可能会发送 "发送或回退 "