I am converting a control program of a robot arm from QNX4 to Neutrino
(6.2). What puzzled me is that the same codes will take longer time for
computation in Neutrino than QNX4, and this adversely affects the stability
of the robot arm (previous stable system becomes unstable now). The code
basically deals with reading encoders, calculating the compensation outputs,
and output to D/A card. A hardware interrupt is used to generate a 100Hz
sampling rate. The hardware configurations are the same.
I also tried a much simpler process like just writing to the registers of
the D/A card, and it takes LONGER time for the card to react in Neutrino
than in QNX 4. Could any guru please let me know which may cause the
difference? And how to solve the problem, if possible?
Here are some information related to the computer system (any other
information are needed, please let me know):
CPU: 586 Cyrix, 299MHz, FPU; 127M memory available.
Compiler: QCC for Neutrino, Watcom for QNX4.
Priority of the Process: 10 (I increased the priority of the process, but
have no improvement)
Other processes running (blocked) concurrently:
/boot/sys/procnto
sbin/tinit
proc/boot/sloggger
sbin/mqueue
proc/boot/pci-bios
roc/boot/devb-eide
/x86/sbin/devc-con
.4/x86/sbin/fs-pkg
sbin/pipe
sbin/devp-pccard
sbin/devc-pty
sbin/devc-par
sbin/io-net
usr/sbin/spooler
sbin/devc-ser8250
sbin/devb-fdc
usr/sbin/inetd
usr/sbin/random
usr/sbin/dumper
usr/sbin/dhcp.client
usr/photon/bin/pterm
usr/photon/bin/pwm
/photon/bin/photon
photon/bin/fontsleuth
bin/sh
photon/bin/io-graphics
photon/bin/devi-hirun
usr/photon/bin/shelf
photon/bin/bkgdmgr
photon/bin/wmswitch
usr/phton/bin/saver
Thanks a lot,
Jeff