我已经开发了一个嵌入式系统(Linux和C),可以手动读取两个传感器(5 5Hz和200 5Hz)轮询,检查这两个文件中是否有可用的数据。
现在,我想使用Poll或Select POSIX函数来节省CPU使用量。我一直在读到它以及套接字中可能存在的一些延迟。我想知道轮询和选择函数是否很慢,或者只是我读取的这种“延迟”是微不足道的。
传感器每5ms发送一次数据,算法可能需要1-2ms(卡尔曼滤波器)。所以系统离下一个传感器样本还有2-3毫秒,否则对我的应用程序来说太慢了。
发布于 2017-02-09 19:25:28
轮询和选择机制的目的是相同的。通过this链接。这将对这两种机制的性能进行深入的理解。在那之后,你就可以做出决定了。
有关Poll机制的更多信息,请访问页面。
有关select机制的更多信息,请访问页面。我建议通过它的Multithreaded applications section。
还可以看看epoll机制。这可以帮助你拓宽你的实现思路。
https://stackoverflow.com/questions/42131685
复制相似问题