Hello

I have a question related to the pSOS+ skin. It might be relevant for other
skins as well.

What I observe is that the taskname while creating a task should be unique.
If I use the same taskname twice, I get a failure. I think this is not a
restriction in the real pSOS+ implementation, so this means that some
applications will not be portable.

I second issue I see is that since the main task is also registered under
the name "MAIN". This means I can have only 1 process that makes use of the
pSOS skin. If I start a second process, an error code is returned since the
"MAIN" task already exists (it is automatically created during the
initialization phase).

I made a workaround for this by appending the PID to the task names created
in the application.
I also to the same for the "MAIN" task.

After applying the change and starting the same application 2 times, I get
following result when I dump the scheduler information:
# cat /proc/xenomai/sched
CPU  PID    CLASS  PRI      TIMEOUT   TIMEBASE   STAT       NAME
  0  0      idle    -1      -         master     R          ROOT
  0  1046   rt       0      5370t     psos       D          MAIN_1046
  0  1048   rt      10      100t      psos       D          TST5_1046
  0  1049   rt      64      0t        psos       Wl         TTT0_1048
  0  1050   rt      64      0t        psos       Wl         TTT1_1048
  0  1051   rt      64      0t        psos       Wl         TTT2_1048
  0  1052   rt      64      0t        psos       Wl         TTT3_1048
  0  1053   rt      64      0t        psos       Wl         TTT4_1048
  0  1054   rt      64      0t        psos       Wl         TTT5_1048
  0  1055   rt      64      0t        psos       Wl         TTT6_1048
  0  1056   rt      64      0t        psos       Wl         TTT7_1048
  0  1057   rt      64      0t        psos       Wl         TTT8_1048
  0  1058   rt      64      0t        psos       Wl         TTT9_1048
  0  1059   rt       0      6802t     psos       D          MAIN_1059
  0  1061   rt      10      100t      psos       D          TST5_1059
  0  1062   rt      64      0t        psos       Wl         TTT0_1061
  0  1063   rt      64      0t        psos       Wl         TTT1_1061
  0  1064   rt      64      0t        psos       Wl         TTT2_1061
  0  1065   rt      64      0t        psos       Wl         TTT3_1061
  0  1066   rt      64      0t        psos       Wl         TTT4_1061
  0  1067   rt      64      0t        psos       Wl         TTT5_1061
  0  1068   rt      64      0t        psos       Wl         TTT6_1061
  0  1069   rt      64      0t        psos       Wl         TTT7_1061
  0  1070   rt      64      0t        psos       Wl         TTT8_1061
  0  1071   rt      64      0t        psos       Wl         TTT9_1061

Now the question is: is this the right technique or do other means exist to
start multiple clients (processes) of the pSOS skin.

It might be better to use a unique ID per "application" instead of the PID
since now the full name depends on the actual thread that has created the
new process. To be more clear: all tasks belonging to a certain process
could be appended with the same unique number.

Please comment.

Best regards,
Ronny
_______________________________________________
Xenomai-help mailing list
[email protected]
https://mail.gna.org/listinfo/xenomai-help

Reply via email to