有没有关于Windows应用程序优化资源(图书网站等)的建议?
我有一个C++控制台应用程序,它需要以相当高的速率给一个硬件设备提供相当数量的数据。(缓冲区大小为32K,每秒大约消耗800k字节)
它将流数据没有欠运行,除了当我执行文件IO,如打开文件夹等。。。(它似乎略微满足了时间要求)。
不管怎样。。一本好的书或资源来复习windows的实时性能将是有帮助的。
谢谢!

最佳答案

在商品窗口上,你所能期望的最好结果是“通常满足时间要求”。如果系统正在运行除目标应用程序以外的任何进程,它偶尔会由于调度不一致而错过最后期限。但是,如果您的应用程序/硬件能够处理罕见但偶尔发生的未命中,那么您可以做一些事情来减少未命中的次数。
将进程的优先级设置为实时优先级
通过timeBeginPeriod()函数(Windows多媒体库的一部分)将调度程序的粒度更改为1毫秒分辨率
尽可能避免主循环中的系统调用(这包括分配内存)。每个系统调用都是操作系统使进程进入睡眠状态的一个机会,因此,对于不确定的调度程序来说,也是错过下一个截止日期的一个机会
如果这不能帮您完成工作,您可以考虑尝试应用实时内核补丁的Linux发行版。我发现它们提供了近乎完美的计时(在几个小时内,精度在10微秒以内)。也就是说,没有什么比真正的实时操作系统更能给你带来完美的了,但是实时linux发行版比普通的Windows更接近。

关于c++ - Windows性能调整的资源建议(实时),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3754827/

10-13 05:05