2017-08-14 199 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應用程序。