2017-08-14 158 views
0

如何从RTP应用程序执行如dump memory (d())xbdCreatePartitiondosFsVolFormatdosFsShow的shell命令? Linux提供系统命令来完成这项工作,这在VxWorks6.9中如何实现?在VxWorks 6.9 RTP应用程序中执行shell命令

+0

那么,VxWorks手册告诉你什么?你有什么尝试?感觉就像你可能在错误的地方问,因为你没有问过一个特定的C++问题。也许你应该寻找一个VxWorks SO站点? –

回答

-1

我假设您有一台主机和一台运行在vxworks上的目标。这意味着您正在使用交叉编译器IDE,例如Windriver Workbench或Tornado。

在这一刻,你有2种可能性。

1)您的目标上有VGA或HDMI端口,因此您可以轻松插入显示器,并且您可以看到蓝色屏幕上运行的vxworks shell。

在那里你可以运行你的shell命令。

https://userweb.jlab.org/~brads/Manuals/VxWorks/vxWorks_commands.html

2)您可以使用WindRiver的调试工具。但是您需要将组件添加到vxworks内核映像,例如INCLUDE_DEBUG_AGENT。你可以自己配置它。当您连接远程设备时,您可以打开一个外壳窗口并开始输入系统调用。

https://borkhuis.home.xs4all.nl/vxworks/vxw_pt2.html

好运...

0

如果你正在寻找的system()等效的,允许你执行任意命令,你的运气了。

但是,您习惯与之交互的“Shell”实际上是一个C解释器,并且您正在运行的任何命令都可以从代码中调用。所以你可以从你自己的代码中调用dosFsVolFormat

这里有个警告,就是大多数功能都是在内核中实现的,所以这些函数可能在你的RTP中不可用。可用功能因发行版而异,也可能取决于您的内核配置。您可以将标头的用户版本与内核版本进行比较,以查看可用的内容。

但是,您可以随时编写自己的系统调用,以将内核功能公开给RTP应用程序。