EOS原理分析

代币

创建代币、发行代币、发送代币。本质是把每个账户的余额保存到数据库,转账即是对余额的修改。

轮询出块

21个超级节点轮询出块

schedule_production_loop

produce_block    void producer_plugin_impl::produce_block()

void commit_block( bool add_to_fork_db )

内存买卖

从eosio.ram买内存,并交0.5%手续费给eosio.ramfee

卖内存给eosio.ram,并交0.5%手续费给eosio.ramfee

void system_contract::buyram( account_name payer, account_name receiver, asset quant )

void system_contract::sellram( account_name account, int64_t bytes ) {

延迟收回押金(3天)

static constexpr time refund_delay = 3*24*3600; 

void system_contract::refund( const account_name owner ) {

cpu、net抵押

用户需要抵押eos换取cpu和net才能发起交易

cpu和net抵押的eos可以收回,但是需要等待3天

eos异常停止-重放区块

nodeos  --replay-blockchain true --hard-replay-blockchain  true --data-dir ./data --config-dir ./config --genesis-json ./config/genesis.json

nodeos --delete-all-blocks --data-dir ./data --config-dir ./config --genesis-json ./config/genesis.json

重放完区块,生产者节点重新启动,加上-e参数, 1) -e enable-stale-production,开启后,即使链过时了,也能产生区块

最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 终于等过了一个瑟瑟发抖的冬季,便触摸到了温柔恬静的春天,如同一个亭亭玉立的少女翩翩起舞地来到我们身边,带来的是满心...
    目目鱼阅读 232评论 0赞 0
  • 高效率慢生活践行第26天(VIP第6天) 2018.11.23晨间检视 杨一诺三个标签: 1.哺乳指导 2.细胞营...
    yn13阅读 378评论 0赞 0
  • 十二经筋的联接关系 为进一步弄清十二经筋的相互联接关系,现将其衔接走向简要介绍如下,可以边看边模仿,边看边比划,这...
    01cf05eaaa01阅读 3,810评论 0赞 3
  • 从九月一号到现在,专科毕业的我开始了对未来的极度迷茫,变得恐慌。偶然看到了一句:你可以有迷茫期,但迷茫不能成为你工...
    有种默契叫做忠阅读 199评论 0赞 0

友情链接更多精彩内容