嵌入式linux调用使用系统

发布于 2024-09-05 18:38:38 字数 102 浏览 2 评论 0原文

我在 Linux 嵌入式系统上使用 C 语言的系统(“命令”)调用时遇到问题。对应用程序的调用在命令行上工作正常,但是当使用系统命令在编译的 cgi 脚本中调用时,速度非常慢。有什么帮助吗?

I'm having a problem using system("command") call in C on an embedded system in linux. The call to the app works fine on the command line but when called in a compiled cgi script using the system command it is painfully slow. Any help appreciated?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

岁吢 2024-09-12 18:38:38

使用 system() 调用 shell 来处理您提供的参数。根据我的经验,当只需要运行外部命令时,使用 shell 很少有用。 shell 增加了开销,这可能是拖慢你速度的原因。

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

Using system() invokes a shell to process the arguments you provide. In my experience, it's rarely useful to have the shell involved when the need is simply to run an external command. The shell adds overhead, and that may be what is slowing you down.

If what you're doing doesn't really require the shell, then instead of system() try using fork() to create a child process, followed by exec() to run the executable you need.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文