行业资讯

Braiins(Slush Pool)正开发bOSminer:CGminer的开源替代品“ku游备用登录入口”

:ku游备用登录入口 :2024-02-03
本文摘要:就在一年多以前,Braiins OS(slush pool)启动了第一个用作比特币挖矿的开源软件项目:Braiins OS miner。

就在一年多以前,Braiins OS(slush pool)启动了第一个用作比特币挖矿的开源软件项目:Braiins OS miner。随着2017年隐密运营的AsicBoost失利,针对ASIC矿机的开源操作系统的必要性显得显而易见了,但无论再次发生什么事件,这一点都将很最重要。由于只有极少数竞争性硬件制造商为比特币建构ASIC专用矿机,因此获取半透明的替代工厂固件的方法可能会集中整个挖矿行业中最集中于的部分。

但是,Braiins OS只是整个比特币挖矿堆栈的一个组件。当我们开始这个项目时,我们的更大志向是使整个堆栈开源,标准化,高效和安全性。

这意味著要处置堆栈的其他组件:CGminer和分层协议。我们将在以后的文章中共享有关后者的近期信息,但现在,我们将专心于我们研发的替代CGminer的替代品,我们将其称作bOSminer。CGminer的背景CGminer最初是任何人都可以运营的开源CPU矿工程序。随着2010年底GPU挖矿的引进,我们开始看见矿机的某些开源部分正在消失。

每个GPU变体都有正在研发的GPU内核的类似部分,并且只有其中一部分是立刻开源的。整个社区都无法用于任何能用的东西。

FPGA是数字货币挖矿硬件的下一个发展时期,但早已CGminer组件而言,变化并不大。有些人将他们的代码开源,而其他人则没。然后,在2012年末,ASIC转入市场,并很快开始主导SHA-256算法。

ASIC是嵌入式设备,这意味著它们包括一个类似的(而不是标准化的)目的计算出来系统。典型的ASIC体系结构还包括以下内容:一般来说,您有一个控制板,上面具有一个FPGA和一个运营某种形式的Linux的CPU,然后还有一些具有挖矿芯片的哈希算力版,这些芯片可以继续执行实际的比特币挖矿工作。控制板在此体系结构中的起到是倒数向芯片获取适度的新挖矿工作。

最初,CGminer用作此目的。但是,随着时间的推移,制造商将逻辑从CGminer移往到控制板上的FPGA。最出名的例子就是我们上面提及的:Antminer S9再次发生的AsicBoost事件,其中FPGA坐落于CPU和哈希算力板之间,暗地落成了AsicBoost功能。

制造商实质上禁令用于AsicBoost,因为控制器中的代码是无意的错误,并且没记录在案。可以用于一些CGminer源代码,但是它只不会产生很差的解决方案,完全没用。目前,我们必须一个FPGA和一个微控制器来驱动哈希算力板。CGminer实质上已沦为FPGA的杂乱无章且严苛有限的前端。

实质上,它甚至超过了创立它的工程师Con Kolivas都必需暂停反对它的地步。同时,网卓新闻网,由于ASIC架构如此之大,CGminer本身还足以运营整个系统,因为它运营的是某些Linux。因此,您必须驱动程序,引领读取程序等才能实际运营它-它们一般来说也是堵塞源代码。

即使制造商说道他们遵从标准化公共许可证(GPL),还是要由个人来尝试搜集所有软件,然后以某种方式将它们修复在一起以运营原始的系统光碟。简而言之,那就是一团糟。如今的挖矿行业缺少标准化开源的矿机操作系统如今,整个比特币生态系统中研发了许多令人兴奋的开源项目,但意外的是挖矿行业的核心部分仍然领先。

考虑到类似于Antbleed矿机后门和隐密启动AsicBoost之类的事件,我们指出现在是该采取行动的时候了。似乎,这很简单,因为不存在各种类型的挖出设备,而且有所不同的制造商一般来说会公布对CGminer代码库的改动(违背GPL)。因此,我们开始为挖矿设备研发Braiins固件。

与此相关的更加有意思的事情之一是,我们要求用Rust编程语言撰写软件,这实质上是一个具备挑战性但十分有益比特币挖矿行业的要求。为什么我们自由选择Rust即便享有非常丰富的嵌入式研发经验,我们告诉无论自由选择哪种语言,这都是一个不利的挑战。

话虽如此,Rust是一种现代编程语言,具备一些特性,使其非常适合此类应用程序:1)记忆安全性编译器时,Rust不会继续执行大部分安全检查和内存管理决策。因此,在采访内存时,相对于非内存安全性语言,可以更佳地维护它免遭软件错误和其他安全漏洞的侵犯。

2)限于于嵌入式设备没其他知名的编程语言可以编译器和强劲类型化,也没运营时。Rust没运营时,没虚拟机来处置内存管理-所有内容都是静态编译器的。

而且比C ++轻盈得多。所有这些使它非常适合于ASIC等嵌入式设备。3)代码可器重性与大多数其他语言有所不同,用于Rust,我们告诉,如果为设备编译器了某些内容,则很有可能在服务器端器重完全相同的代码组件。

太好了,因为它容许用于一次为主机和嵌入式设备分享代码库,从而修改了测试和生产。4)纸盒系统Rust十分独有,因为它容许您同时用于同一代码包在的有所不同版本。换句话说,我们可以在编译器光碟中运营同一库的两个版本,例如,如果我们用于C或C ++,这实质上是不有可能的。

5)内置测试线束一般来说,开发人员不讨厌撰写测试。您不会在CGminer上看见这一点,那里没制造商获取测试用例。

Rust附带了一个不俗的测试工具,因此您可以非常简单地运营“测试”并检查代码中否没重返。6)幸福的未来对于Microsoft,Amazon和其他许多公司正在大力投资Rust的更进一步发展的事实,可以说道一句话。

自由选择具备光明前景的技术是有意义的。另外,这意味著应当有更好可器重的代码,这可以为我们节省大量的未来研发时间。


本文关键词:ku游备用登录入口

本文来源:ku游备用登录入口-www.sallymessinger.com