我在Windows上完成了相当多的编程,但现在我必须编写第一个Linux应用程序。在Linux应用程序中的建筑建议
我需要使用UDP与硬件设备对话。我必须每秒发送60个数据包,大小为40个字节。如果我在1秒内发送少于60个数据包,就会发生不好的事情。 数据包的数据可能需要一段时间才能生成。但是如果数据没有准备好发送出去,可以发送上次发送的相同数据。 计算机是一个命令行的唯一设置,只会运行此程序。
我对Linux不太了解,所以我希望能够得到一个大概的想法,你如何设置一个应用程序来满足这些要求。 我希望得到如下答案:
制作2个线程,一个用于发送数据包,另一个用于计算。
但我不确定这是如此简单(也许是)。也许用一些从共享内存发出数据包的守护进程更可靠,然后让另一个应用程序进行计算?如果它是一个多进程解决方案,你会推荐什么通信机制? 有什么方法可以让我的应用比普通或类似的应用更具优先级?
PS:越防弹越好!
既然你不知道UDP数据包是否到达(这是一种不可靠的协议),怎么办你知道你发送的60 +/-数据包到达了吗?如果一秒钟发送61个数据包会发生什么? 59怎么样?其他号码? – 2008-12-28 02:47:12