EOS资源的“余额”为什么可以是负数?
EIDOS挖矿,不仅是对EOS网络的考验,也是对EOS持有者知识的大考。很多平时遇不到的问题都会显现,比如:
CPU为零时就不能再使用,但挖矿玩家的CPU使用率为什么可能超过100%?
普通用户,明明啥都没做,为什么可用CPU资源会变成0?
石头将以EOS资源之一的CPU为例,谈谈这些问题的原因,以及CPU资源为零或负数的解决方法。NET的算法与CPU类似,可以参照本文理解;RAM的机制不同,以后有机会写文讨论。
CPU的“余额”是什么
EOS关于CPU的设计中,其实是没有余额这个量的。它有两个值:limit(上限)和usage(使用量)。
上限,就是没有任何消耗时的CPU值,类似于游戏中的血上限。甲账户CPU上限=全网CPU总量/全网CPU抵押数*甲账户CPU抵押数。全网CPU总量中短期变化是不大的,因此个人抵押的CPU越多,上限越大;全网抵押的CPU越多,上限越小。即使个人抵押的CPU不变,这个上限也会因为全网抵押量不停地变动。
EOS转账、使用dapp等都会消耗CPU,产生使用量。这个使用量会随随时间而衰减,离现在时间越久的操作,使用量衰减得越多。总使用量=上次使用量*系数A+上上次使用量*系数B+……
EOS执行操作时,是这样判断的:上限-使用量-本次消耗量>=0,可行;上限-使用量-本次消耗量<0,提示CPU资源不足,本次操作失败。
CPU使用率超过100%的原因
如果CPU的使用量是98,上限是100,还在好好地挖矿;突然全网CPU抵押量上升,使上限变成了95,CPU使用率=98/95,超过100%,不能继续挖矿。
CPU余额为负数的原因
CPU的余额,是部分钱包为方便理解而设置的,余额=上限-使用量。假如一个账号的上限是10,使用量是3,余额是7,看上去资源还挺充足。但是遇到EIDOS空投火热的情况,全网CPU抵押量会急剧上升,(回顾下公式:CPU上限=全网CPU总量/全网CPU抵押数*账户CPU抵押数),上限也就会急剧下降,虽然使用量不变,“余额”也会变为负数。(钱包大多数显示为零,实际是负数)这就是本次空投事件中,没参与的玩家躺枪的原因。
CPU余额为零(或负数)的解决方法
资源为负数的账户不能转账,不能玩dapp,甚至不能抵押,不能租借REX,除了收款啥都做不了。对于不常用的账户,可以等。使用量是会衰减的,等个几周几个月,总会恢复正常。如果急需使用,有两个解决方法:
1.有其他正常账户或土豪朋友,可以代为抵押。即便是在现在这种极端情况,抵押10-100个EOS也够正常使用了。
2.不少钱包可以用法币购买抵押,虽然通常比REX租赁贵,但可以应急。
来源:南极石头
- 免责声明
- 世链财经作为开放的信息发布平台,所有资讯仅代表作者个人观点,与世链财经无关。如文章、图片、音频或视频出现侵权、违规及其他不当言论,请提供相关材料,发送到:2785592653@qq.com。
- 风险提示:本站所提供的资讯不代表任何投资暗示。投资有风险,入市须谨慎。
- 世链粉丝群:提供最新热点新闻,空投糖果、红包等福利,微信:juu3644。

币圈学堂



