我有一个使用pcap文件的C++程序(在linux上执行)。处理来自该pcap文件的每个数据包并在文本文件中生成结果。我编写了一个脚本,用不同的输入参数运行这个程序的两个实例。该程序的一个实例在一个CPU上运行,另一个实例在第二个CPU上运行。两个进程共享相同的pcap文件
问题是,在我的程序中,我硬编码了pcap文件名。因此,在两个CPU上打开pcap文件并从中读取数据包。
我希望这两个程序都能打开相同的pcap文件进行读取,这种情况只发生一次,一个pcap文件被打开,并且每个数据包都被发送到CPU1和CPU2上运行的进程。
请给我一些方向,我该如何才能完成这项任务。
所以你想要第三个程序读取PCAP文件,并以某种方式将数据包发送到其他两个程序?为什么?由于您刚刚从PCAP文件读取的程序不会有任何问题。 –
@JoachimPileborg这会不会导致内存使用方面的任何问题,因为两个进程打开相同的pcap文件。 – Xara
我不知道PCAP库,但除非文件非常大并且完全加载到内存中,否则不会有问题。你不用担心如你的源文件是由你的编辑器和你的编译器加载的? –