《rust实践》RUST语言在嵌入式的应用问题
[复制链接]
rust越来越变得流行了,最近看到一则消息:著名的开源数据库InfluxDB的3.0版本是使用rust重新编写的,InfluxDB的以前版本都是使用GOlang编写的,使用rust编写后性能得到了显著的提升,这说明rust的地位正在逐步的提升,但是这些提升多数是在编写大型的应用的方面,作为嵌入式好像rust的进步没有这么快,那么rust在嵌入式方面都遇到了哪些问题呢?
一、Rust的程序对于小型的嵌入式来说编写不是很容易,主要是芯片厂家对rust的支持不是很积极,导致rust的原生应用库很少。而且很多是需要C库的结合,反而增加了工作量。
二、Rust对内存的管理非常的苛刻,导致编写效率不是很高,嵌入式应用程序往往内存受限,例如:8051的内存只有128Byte字节,需要使用很高的编程技巧以及精巧的数据结构,rust的限制很多,就造成了编写困难。
三、迫切性不够,rust的优势是内存管理和并发程序,但是这些在嵌入式程序中都问题都不是很突出,嵌入式的程序的大规模的输入/输出交互很少,并发程序的需求也不高。甚至任务模型就是非常传统的前后台,俗称“大循环”。
以上问题,都是rust语言在嵌入式应用的问题,但是随着IoT、AI、GUI等应用的发展,rust应该会逐步的得到发展。
目前在嵌入式领域学习rust还说一个不错的方向。
|