【问题标题】:Dynamic languages for embedded devices? [closed]嵌入式设备的动态语言? [关闭]
【发布时间】:2011-02-12 11:04:09
【问题描述】:

我需要将一种动态语言部署到小型嵌入式 Linux 设备上,但很难找到合适的语言:我想用这种语言(使用 Sinatra 或 Camping 等小型框架)构建一个小型 Web 应用程序并编写一些维护脚本。

我更喜欢 Ruby,因为我在这方面有一些经验,但是经过几天的交叉编译尝试,我只能构建准系统解释器,没有库 (miniruby)。它的问题是,它实在是太大了:被剥离了超过 1 MB!

您使用的是什么语言,让它工作起来有多困难?

【问题讨论】:

标签: ruby dynamic-languages embedded-linux


【解决方案1】:

我个人不使用它,但lua 占用空间非常小。

【讨论】:

  • 我的一位同事在使用 lua 方面取得了巨大成功。根据您的需要,它也可以变得非常小。
  • 我会支持这个。 Lua 很容易上手,因为它几乎可以编译为 ANSI C89(作为 C 或 C++)。随意查看 eLua,它还有一些补丁和模块,使其适用于微控制器环境:eluaproject.net(整个项目可能无法满足您的需求,但一些想法/补丁/代码可能有用)跨度>
【解决方案2】:

动态语言非常非常难以缩小。或许tinypy 会给你一些灵感,让你挤出更多的东西。

【讨论】:

    【解决方案3】:

    我自己正在调查这个,我发现了一些有趣的候选人:

    • eLua - 专门用于嵌入式设备的 Lua 实现。
    • p14p - 芯片上的 Python。
    • Forth - 老福斯,我还能说什么?

    【讨论】:

    • 只是一个小更新:从那时起,我成功编译并使用了 Ruby,但结果好坏参半:它功能齐全,它让我的生活更轻松地实现了 web 服务,但另一方面它相当速度慢,而且有点占用内存。
    【解决方案4】:

    我在 Techbase NPE GPRS 调制解调器上使用 ruby​​ 1.8.7。它有一个 180MHz 的 ARM 处理器,上面已经有很多服务(例如 Apache、嵌入式 PostgreSQL)。工作得相当好,但您需要注意一些与 ruby​​ 相关的问题(例如 Timeout 会导致 ruby​​ 出现 SegFault)。

    计划在今年晚些时候升级到 ruby​​1.9...

    【讨论】:

      猜你喜欢
      • 2011-03-14
      • 2011-01-13
      • 1970-01-01
      • 2011-08-07
      • 2011-04-30
      • 1970-01-01
      • 2012-09-17
      • 1970-01-01
      • 2010-12-17
      相关资源
      最近更新 更多