update docs home

This commit is contained in:
yslcrypto 2021-09-21 13:54:12 +02:00
parent 4111849f5e
commit 0a9f9fd428
No known key found for this signature in database
GPG Key ID: 8AE1218652D73713
1 changed files with 10 additions and 16 deletions

View File

@ -10,28 +10,22 @@ However, **resource-restricted hardware is not the only thing Nimbus is good for
## Programming language ## Programming language
[Nim](https://nim-lang.org/) is an efficient, general-purpose systems programming language with a Python-like syntax that compiles to C. Nim will allow us to implement Ethereum rapidly and take advantage of the mature C-language tooling: in compilation of machine code, and in the analysis of static code. [Nim](https://nim-lang.org/) is an efficient, general-purpose systems programming language with a Python-like syntax that compiles to C. Nim allows us to implement Ethereum rapidly and take advantage of the mature C-language tooling: in compilation of machine code, and in the analysis of static code.
With Ethereum research currently modeled in Python, the end result of implementing in Nim should be code that: The end result of implementing in Nim is code that:
1. Enables us to easily bring research into production 1. Enables us to easily bring research into production
1. Has a high degree of reasonability for researchers 2. Has a high degree of reasonability for researchers
1. Is performant in production 3. Is performant in production
The core contributors and Nim community have been very supportive and enthusiastic for the project. Both the Nim core contributors and the wider Nim community have been very supportive of this choice.
## Development on Embedded Systems ## Light by design
We believe that the largest successful deployment of Ethereum will reside on embedded systems: IoT devices and mobile personal devices, such as smartphones. Although Nimbus will support full and archival nodes, its main implementation will be as a light client, with focus on Proof of Stake and sharding.
Existing implementations of Ethereum have focused on desktop computers and servers. These implementations have played a major role in the initial success of Ethereum, and they are suitable for full and archival nodes. However, their deployment on embedded systems has been an afterthought.
During the deployment of Status among 40,000 alpha testers, we found that a significant portion (23.6%) of users were still running old mobile devices. In addition, recently discovered [Spectre vulnerabilities](https://en.wikipedia.org/wiki/Spectre_(security_vulnerability)) have led to an increase in the demand for open processors. For these reasons, we propose a self-imposed constraint and a requirement that Status perform well on the following:
1. 2014 [SoC](https://en.wikipedia.org/wiki/System_on_a_chip) architectures, such as the [Cortex-A53](https://developer.arm.com/products/processors/cortex-a/cortex-a53) (Samsung Note 4 & [Raspberry Pi 3](https://www.raspberrypi.org/products/raspberry-pi-3-model-b/)) and the Apple A8 (iPhone 6) Existing implementations of Ethereum have focused on desktop computers and servers. These implementations have played a major role in the initial success of Ethereum, however, their deployment on resource-restricted systems has been an afterthought.
1. [MIPS](https://en.wikipedia.org/wiki/MIPS_architecture)-based architectures, such as the [Onion Omega2](https://onion.io/omega2/)
1. Open-source processors, such as [RISC-V](https://riscv.org)
When the 2020 scalability goal is fully realised, this constraint will help ensure that Ethereum runs performantly on resource-restricted hardware that is at least 6 years old. We believe the ability to run a node on resource-restricted hardware is key to a safe and secure Ethereum going forward.
As such, **Nimbus strives to perform just as well on resource-restricted hardware as it does on desktop computers and servers.**