繁体   English   中英

使用USB串行端口运行程序时,为什么我的计算机仍然暂停?

[英]Why does my computer keep pausing when I run a progam using the USB-serial ports?

我编写了一个使用三个串行端口的程序(两个串行端口位于一个USB->串行连接器上,另一个串行端口位于其自己的USB->串行连接器上)。 当我运行程序时,每隔5秒钟左右,我的计算机就会停止响应,就好像内核正忙于做某事。 我没有写任何文件,所以它没有刷新到磁盘,并且我没有用完内存,所以没有交换。 还有什么呢? 会刷新串口还是什么? 那会很奇怪,因为我在等待下一个数据写入串行端口之前等待串行端口的响应。

如果我不使用最后一个串行端口(它自己的USB端口),则发生的情况会更少。

更多信息:

  • Debian Lenny(也尝试过挤压)
  • linux 2.6.26-2-686(也尝试过2.6.32-5-686)
  • 不使用ftdi_sio,使用libftd2xx1.0.2(也尝试过1.0.4)

libftd2xx似乎是问题所在。 它更改了线程的优先级,似乎忙于等待或似乎接管了系统。 允许用户访问/ proc / bus / usb中的usb设备并以普通用户身份运行程序似乎正常,因此我不确定libftd2xx为什么更改线程优先级。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM