我有一個使用pcap文件的C++程序(在linux上執行)。處理來自該pcap文件的每個數據包並在文本文件中生成結果。我編寫了一個腳本,用不同的輸入參數運行這個程序的兩個實例。該程序的一個實例在一個CPU上運行,另一個實例在第二個CPU上運行。兩個進程共享相同的pcap文件
問題是,在我的程序中,我硬編碼了pcap文件名。因此,在兩個CPU上打開pcap文件並從中讀取數據包。
我希望這兩個程序都能打開相同的pcap文件進行讀取,這種情況只發生一次,一個pcap文件被打開,並且每個數據包都被髮送到CPU1和CPU2上運行的進程。
請給我一些方向,我該如何才能完成這項任務。
所以你想要第三個程序讀取PCAP文件,並以某種方式將數據包發送到其他兩個程序?爲什麼?由於您剛剛從PCAP文件讀取的程序不會有任何問題。 –
@JoachimPileborg這會不會導致內存使用方面的任何問題,因爲兩個進程打開相同的pcap文件。 – Xara
我不知道PCAP庫,但除非文件非常大並且完全加載到內存中,否則不會有問題。你不用擔心如你的源文件是由你的編輯器和你的編譯器加載的? –