1.解读RAM和Storage的钱s钱区别和联系
2.eos全家桶系列eos系统合约介绍—系统操作合约eosio.system(上)
解读RAM和Storage的区别和联系
RAM与Storage的区别与联系
EOS主网上线后,RAM价格飙升,包源包RAM的码里内涵及其与物理Storage的关系引起了开发者关注。本文以EOSIO源码解析为核心,钱s钱揭示两者间的包源包实质区别与联系,以助开发者深入理解。码里jdk集合源码分析RAM:内存货币
RAM可视为一种基于EOS和Bancor算法的钱s钱token。Bancor算法的包源包工作原理不在本文详述,有兴趣者可自行查阅相关资料。码里 EOSIO的钱s钱state db操作,无论增删改,包源包都会影响RAM使用,码里进而触发计费。钱s钱初始设置中,包源包最大RAM容量为GB。码里使用与管理
通过`cleos`查询RAM信息,包括总量、小程序 库存 源码已预留和抵押的EOS金额。扩容RAM需调用`eosio.system`合约的`setram`方法,权限受限于eosio.prods,需要至少个BP节点的签名。Storage:物理存储空间
Storage代表实际的物理存储空间,以文件形式存在,通过内存映射进行读写。默认大小为1GB,小程序 库源码为了优化性能,需要锁定内存。通过`db_size_api_plugin`插件,可以实时监控存储使用情况。 当state db大小超出预设,写入会失败,此时需重启调整参数,可修改config.ini或通过命令行设置`--chain-state-db-size-mb`。ai分时线源码总结
RAM作为EOSIO的系统资源,市场定价,扩容需BP节点共识;而Storage则是实际的存储空间,通过内存映射与state db交互。理解这两者,有助于开发者更好地利用EOSIO系统资源。eos全家桶系列eos系统合约介绍—系统操作合约eosio.system(上)
本篇文章旨在详细介绍EOS系统中至关重要的系统操作合约——eosio.system。该合约负责处理包括账户创建、虚幻4传奇源码投票选举超级节点、资源质押和域名竞拍等多种功能。本文将重点阐述eosio.system合约在资源质押和超级节点投票方面的具体实现。
EOS网络中的超级节点选举和投票机制均以账户为中心展开。eosio.system合约中的投票功能可通过cleos system命令行工具便捷地执行。投票过程涉及两个主要角色:投票账户和候选超级节点账户。它们必须遵循特定的步骤才能完成投票或当选:
**步骤一:抵押EOS资源
**抵押EOS资源以换取cpu和net资源是投票前的必要条件。使用delegatebw命令,指定抵押EOS的账户和接收抵押资源的账户。
**步骤二:注册为超级节点候选账户
**注册为超级节点候选账户需要提供公钥,该公钥用于当选后产块时的签名验证。
**步骤三:投票给超级节点候选账户
**通过voteproducer命令,投票账户可以为多个超级节点候选账户投票。投票账户可以取消投票通过赎回质押的EOS,赎回期为3天。
下面将演示赎回质押EOS的步骤:
**步骤一:取消质押
**使用undelegatebw命令取消质押,该命令与delegatebw命令相似。在某些情况下,例如本机私链,赎回期可被调整,质押的EOS将在指定时间后赎回到账。
**步骤二:源码解析
**delegatebw和undelegatebw命令最终都会调用changebw方法。changebw根据操作类型进行相应的资源转移或赎回操作。
**步骤三:投票权重衰减与更新
**为了鼓励用户定期投票,EOS引入了投票权重衰减机制。用户需定期重新投票以维持其投票权重,确保投票效力不受影响。
本文简要介绍了eosio.system合约在资源质押和超级节点投票方面的核心功能及其背后的源码实现。接下来,我们将探讨eosio.system合约在域名竞拍方面的功能,敬请期待。