gpt4 book ai didi

linux - rtems 中的编程与 Linux 有何不同?

转载 作者:太空宇宙 更新时间:2023-11-04 11:44:47 24 4
gpt4 key购买 nike

我是 rtem 编程的新手,想知道 rtems 和 linux 这两者在编程方面有何不同。我知道 rtems 是一个实时操作系统,但如果你要制作一个 hello world 应用程序,程序会不会一样?

最佳答案

请注意,您的问题很笼统。有很多细节差异。

最大的问题之一是二进制文件的格式:大多数 RTEMS 二进制文件静态链接在一起。您只有一个包含系统和应用程序的大二进制文件。支持一些动态加载,但大多数用户并不使用这种情况。

如前所述,我的 n.m.在评论中 RTEMS 有很多 POSIX API(至少是嵌入式子集)。因此,您可以像在 Linux 上一样使用许多相同的 API。

一个很大的区别是 RTEMS 有一个全局地址空间(在大多数目标上)。所以你没有任务之间的分离。这使得指针错误更难调试。

还有一个区别:大多数嵌入式系统都是针对长时间运行的应用程序。在这样的应用程序中(不管你是在 Linux 上还是在 RTEMS 上还是在任何其他系统上)你应该小心清理你的东西(关闭文件,释放内存,......)。在 Linux(或其他桌面类系统)中,您有进程,内核会在您的进程退出后清理所有资源。尽管您可以在 RTEMS 中创建线程,但在线程退出后没有人进行清理。

关于linux - rtems 中的编程与 Linux 有何不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58211928/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com