关于操作系统反应速度变慢的一个问题请教xtang先生及各位同行

我的一个应用是在PHAB下写的,发现在运行一段时间以后界面对鼠标的反应速度变慢,而且整个操作系统对鼠标键盘的反应也变的很慢,此时如果关掉此应用,操作系统就恢复正常了,所以应该是我的应用独占了系统资源引起的。有几个问题请教一下xtang先生及各位:
1、如果是应用独占了CPU的大部分时间,在QNX425下用什么命令可以看应用对CPU的利用率?
2、如果应用使用的内存很大会不会导致上面的情况?我用sin -P xyz memory(xyz是应用的名字)看了一下内存占用情况,发现最大的时候应用的DATA部分为2000K左右,而且因为我的应用是多线程的,能看到所有的这几个线程的DATA占用都是一样的。这个内存是程序实际要用的大小吗?会不会可能是这个原因引起系统变慢?
谢谢!

sin times ?

一般来说,键盘反映变慢,是因为你的进程在死循环,妨碍了别的进程使用CPU时间。

Mr.xtang ,我能确定我的应用不会进入死循环,我想知道还会不会有别的原因,比如占用了很大的内存,象上面所说用SIN看到占用了20000K或者更多的内存;或者每间隔很短的时间比如10MS就用Send向另一个进程发一个消息诸如此类。想听一下您的分析。谢谢

可能是在哪里对数组的操作超越了边界等野指针的原因

占用大内存应该不会。QNX不使用磁盘交换的虚拟内存技术,不会因内存减少而增加swaping次数,从而减低系统响应。

系统响应变慢,最直接的是有比键盘驱动,或是shell程序更高优先级的程序持续占用CPU时间,从而导致shell不能获得CPU时间而无法响应。

还有一个办法是去找一下QNX4版的top程序,网上应该找得到。这个程序可以显示哪一个程序占用了系统时间。

请问xtang:可有qnx6版的top程序啊,3x