Как отследить проблему при портировании приложения linux posix на xenomai - PullRequest
0 голосов
/ 24 апреля 2020

Недавно я перенес приложение linux для запуска в linux 3.18.20 + xenomai 3.1.

приложение linux - это стек prof inet, он может нормально работать как обычный процесс в linux, но из-за производительности в реальном времени его пришлось перенести в приложение xenomai.

когда я исправляю linux с помощью xenomai 3.1 и перекомпилирую приложение со скином xenomai posix. Портал TIA не смог отсканировать приложение. казалось, что какой-то поток может не отвечать требованию к сети.

/ proc / xenomai / sched / stat был таким:

CPU  PID    MSW        CSW        XSC        PF    STAT       %CPU  NAME
  0  0      0          0          0          0     00218000  100.0  [ROOT/0]
  1  0      0          0          0          0     00218000  100.0  [ROOT/1]
  2  0      0          119332     0          0     00218000  100.0  [ROOT/2]
  3  0      0          174171     0          0     00218000   99.8  [ROOT/3]
  3  1721   14         2749       2930       0     00248044    0.0  dksw_linux
  3  1723   2          4          7          0     00242042    0.0  Task_ASYNC_Timer
  3  1724   2          4          4          0     00242042    0.0  Task_OS_Timer
  3  1725   4          23         69         0     00242042    0.0  PrintRS232PostTask
  3  1726   2          3          3          0     00242042    0.0  Pnio_NvData
  3  1727   3          5453       5448       0     0024a044    0.0  Pnio_Idle
  3  1728   7          27         188        0     0024a0c0    0.0  MainAppl
  3  1729   2          135222     676095     0     0024a044    0.1  Pnio_CycleIO
  3  1730   3463       3463       3464       0     0024a0c0    0.0  sniff_packet
  3  1731   11         27219      27448      0     0024a044    0.0  t_IDL
  3  1732   6          84         215        0     0024a042    0.0  t_APP
  3  1733   459        4661       8961       0     0024a042    0.0  t_EDD
  3  1734   2          112        166        0     0024a042    0.0  t_ORG
  3  1735   30         1071       7346       0     0024a042    0.0  t_PNO
  3  1736   3          2465       5339       0     0024a042    0.0  t_TCP
  3  1737   2          26         42         0     0024a042    0.0  t_POF
  3  1738   2          10         10         0     00242042    0.0  t_REM
  3  1739   3          53         85         0     0024a042    0.0  t_STP
  3  1740   2          5          30         0     0024a042    0.0  Pnio_PnpbPost
  3  1741   2          25         138        0     0024a042    0.0  Pnio_Pnpb
  0  0      0          165200     0          0     00000000    0.0  [IRQ2305: [timer]]
  1  0      0          12551      0          0     00000000    0.0  [IRQ2305: [timer]]
  2  0      0          893793     0          0     00000000    0.0  [IRQ2305: [timer]]
  3  0      0          2791299    0          0     00000000    0.1  [IRQ2305: [timer]]

/ proc / xenomai / sched / thread был например:

CPU  PID    CLASS  TYPE      PRI   TIMEOUT       STAT       NAME
  0  0      idle   core       -1   -             R          [ROOT/0]
  1  0      idle   core       -1   -             R          [ROOT/1]
  2  0      idle   core       -1   -             R          [ROOT/2]
  3  0      idle   core       -1   -             R          [ROOT/3]
  3  1721   rt     cobalt     19   698ms369us    D          dksw_linux
  3  1723   rt     cobalt     20   -             Wr         Task_ASYNC_Timer
  3  1724   rt     cobalt     20   -             Wr         Task_OS_Timer
  3  1725   rt     cobalt      6   -             Wr         PrintRS232PostTask
  3  1726   rt     cobalt      5   -             Wr         Pnio_NvData
  3  1727   rt     cobalt      1   461ms50us     Dr         Pnio_Idle
  3  1728   rt     cobalt      4   -             Xr         MainAppl
  3  1729   rt     cobalt     19   8ms828us      Dr         Pnio_CycleIO
  3  1730   rt     cobalt     19   -             Xr         sniff_packet
  3  1731   rt     cobalt     11   98ms679us     Dr         t_IDL
  3  1732   rt     cobalt     10   -             Wr         t_APP
  3  1733   rt     cobalt     18   -             Wr         t_EDD
  3  1734   rt     cobalt     17   -             Wr         t_ORG
  3  1735   rt     cobalt     16   -             Wr         t_PNO
  3  1736   rt     cobalt     15   -             Wr         t_TCP
  3  1737   rt     cobalt     14   -             Wr         t_POF
  3  1738   rt     cobalt     13   -             Wr         t_REM
  3  1739   rt     cobalt     12   -             Wr         t_STP
  3  1740   rt     cobalt     10   -             Wr         Pnio_PnpbPost
  3  1741   rt     cobalt      9   -             Wr         Pnio_Pnpb

Может ли какой-нибудь эксперт по xenomai помочь мне выяснить, есть ли какие-либо проблемы с вышеуказанными рабочими данными?

...