我可以在外壳中显示RTP的全局变量吗?

时间:2020-03-06 14:50:12  来源:igfitidea点击:

在VxWorks中,我可以在shell中显示全局变量,如下所示:

-> my_global
my_global = 0x103c4110: value = 4 = 0x4

有没有办法对RTP全局变量做同样的事情?

解决方案

我们可以通过使用命令(cmd)解释器并添加到RTP来在特定的RTP中显示全局变量。
这是带括号的示例。

-> cmd                                   (switch to command interpreter)
[vxWorks *]# rtp exec Hello_RTP.vxe &
Launching process 'Hello_RTP.vxe' ...
Process 'Hello_RTP.vxe' (process Id = 0x105e4d50) launched.
Attachment number for process 'Hello_RTP.vxe' is %1.
[vxWorks *]# echo $my_global             (display my_global in the kernel context)
0x4
[vxWorks *]# %1                          (attach to RTP - can also use rtp attach)
[Hello_RTP]# echo $my_global
0x6b7                                    (global variable from RTP context)
[Hello_RTP]# echo $my_global
0x16e1                                   (same global variable..it increments)
[Hello_RTP]# %0                          (detach from RTP. Go to kernel)
[vxWorks *]# echo $my_global             (back to kernel context)
0x4

请注意,此功能仅在VxWorks 6.x中可用,在6发行版之前,vxWorks中没有RTP。