All of lore.kernel.org
 help / color / mirror / Atom feed
* [Xenomai-help] pSOS+ skin: unique task names
@ 2010-09-22 19:24 ronny meeus
  2010-09-23  5:38 ` Philippe Gerum
  0 siblings, 1 reply; 2+ messages in thread
From: ronny meeus @ 2010-09-22 19:24 UTC (permalink / raw)
  To: Xenomai-help

[-- Attachment #1: Type: text/plain, Size: 3212 bytes --]

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

[-- Attachment #2: Type: text/html, Size: 3459 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2010-09-23  5:38 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-09-22 19:24 [Xenomai-help] pSOS+ skin: unique task names ronny meeus
2010-09-23  5:38 ` Philippe Gerum

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.