Javier Barreiro <jbarreiro@vai-ingdesi.com> wrote:
I have to port a library from QNX2 to QNX6, and it has some QNX2
functions that are not available on QNX6.
The functions are:
- signal_hw_port
I don’t find signal_hw_port in my docs, but do have:
signal( port ) – best replaced by pulses.
- set_int_mask
- set_int_vec
Look at the Interrupt* functions, in particular:
InterruptAttach() and InterruptMask() – but the architecture may be
a bit different.
- name_attach
- name_locate
- name_detach
Look at name_open() and name_attach().
- detach
> attach_port
Again, look at pulses – I’d read through the Architecture manual
section on IPC. You’ll need to look at channels, connections, and
pulses in particular. Channels are where you get messages/notification,
connections are where you send them (connect to a channel) and
pulses are the non-blocking notification mechanism that is the
closest replacement for signallling a port under QNX2.
- create_seg
Segments no longer exist/are supported. These were often used for
hardware access and/or DMA memory. Under QNX 6, you’ll want the
mmap(), mmap_device_memory(), and/or mmap64() routines.
I think that name_attach, name_locate, and name_detach are the old
“qnx_name_attach”, “qnx_name_locate” and “qnx_name_detach” but i would like
if anyone could confirm that.
Yes, and then became name_open(), name_attach(), name_detach() in QNX6.
-David
QNX Training Services
http://www.qnx.com/support/training/
Please followup in this newsgroup if you have further questions.