【问题标题】:Embedded linux call using system嵌入式linux调用使用系统
【发布时间】:2010-06-14 14:48:58
【问题描述】:

我在 linux 的嵌入式系统上使用 C 中的 system("command") 调用时遇到问题。对应用程序的调用在命令行上运行良好,但在使用系统命令在编译的 cgi 脚本中调用时,速度非常慢。任何帮助表示赞赏?

【问题讨论】:

  • 我很好奇......这个问题值得否决?投反对票的人能否解释一下?

标签: c linux embedded


【解决方案1】:

使用system() 调用shell 来处理您提供的参数。根据我的经验,当需要简单地运行外部命令时,让 shell 参与几乎没有用处。 shell 增加了开销,这可能是让你放慢速度的原因。

如果您正在做的事情并不真正需要 shell,那么请尝试使用 fork() 创建子进程,而不是 system(),然后使用 exec() 来运行您需要的可执行文件。

【讨论】:

  • 它必须是一个令人痛苦的小系统,以启动 shell 以使某些东西“痛苦地”缓慢...
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-06-23
  • 2012-06-30
  • 1970-01-01
  • 2015-01-23
相关资源
最近更新 更多