0
我們有一個vxWorks應用程序,我們希望將其部署爲內核模塊或實時進程。有沒有辦法在vxWorks中爲RTP和內核模塊使用相同的文件?
有沒有辦法從同一個源文件做到這一點,還是我們必須創建一個文件內核模塊,另一個用於RTP?
我們有一個vxWorks應用程序,我們希望將其部署爲內核模塊或實時進程。有沒有辦法在vxWorks中爲RTP和內核模塊使用相同的文件?
有沒有辦法從同一個源文件做到這一點,還是我們必須創建一個文件內核模塊,另一個用於RTP?
最簡單的解決辦法是有一個可以被編譯無論是作爲一個內核模塊,或者作爲實時進程的單個文件。 它可能應該是這個樣子:
void MyModule_Init()
{
// Initialize the module
...
}
...
#ifdef __RTP__
int main(...)
{
// RTP Main just invokes the Module's initialization
MyModule_Init();
}
#endif
的__RTP__宏定義如果構建一個RTP環境
如果構建是一個內核環境_WRS_KERNEL宏定義。
有了這兩個宏,你可以有代碼編譯兩個環境。
也必須小心不要使用任何系統調用的從RTP所特有的DKM。 – endTunnel 2017-03-09 02:56:44