在嵌入式系统中运行Python的系统开销如何
芯片环境是imx 6UL,ARM Cortex-A7,处理器运行速度528 MHz,跑linux系统
原先我们是移植CAN festival 协议栈实现CAN通信,跑在STM32上,现在上了系统而且BSP还是支持Python的,有个同事说可以直接用Python的库,之前没听过,一查还真有
之前用过Python写过一些简单的测试脚本,库的功能确实强大,不过就是不太了解,系统开销这块会不会增大?
比如原先我用C在linux上写协议栈,然后现在用Python写协议栈,根据高级语言开销大的原理,Python势必比C的开销大,但是到底大多少,这个有哪位大神了解的吗?
虽然我可以两个都跑起来,然后看进程的CPU和内存,但是这个方法感觉是从用户角度,有没有从编译角度解释的呢?
各位大神,如果有了解,麻烦回复一下,哪怕提点一两句方法也可以啦,非常感谢!
论坛逛下来的结果,Python运行速度慢,不太适合写协议栈,协议栈对通信速率要求很高,所以用C写的多,而Python多用于实现强大功能,嵌入式的硬件往往性能不高,Python跑应用实在是吃不住,请我我的理解对吗?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
考虑一下Rtt-micropython ?
修改下答案:
micropython
并非要和rtt
或者stm32
绑定在一起micropython官网, 它是原始的项目。C
说:俺也是高级语言这一类啊。用户角度就够了。或者说用户角度的差异是由两种语言的运行模型决定的,一个是翻译成硬件指令,一个是用虚拟机逐个解析。
另外,抛开应用本身谈性能本身就是耍流氓..
你说的协议栈是INET协议栈吗。协议栈就是个干活的,对通信速率要求高的只能是应用,这个锅还轮不到协议栈背...还是要看你的应用啊....算法更重要。
"Make things working first. Then optimize"