我有一个c ++程序(在linux上执行),它使用了一个pcap文件。处理来自此pcap文件的每个数据包,并在文本文件中生成结果。我编写了一个脚本,用不同的输入参数运行这个程序的两个实例。该程序的一个实例在一个CPU上运行,另一个实例在第二个CPU上运行。
问题是在我的程序中我已经硬编码了pcap文件名。结果,在两个CPU上打开pcap文件并从中读取数据包。
我希望这两个程序打开相同的pcap文件进行读取,这种情况只发生一次打开pcap文件并且每个数据包都发送到CPU1和CPU2上运行的进程。
请给我一些指示,我该怎样才能完成这项任务。
答案 0 :(得分:2)
听起来您希望您的流程执行以下操作:
您可以让脚本读取pcap文件并将stdin上的二进制数据传递给您的c ++程序,然后再处理它。或者您可以使用套接字,共享内存管道而不是标准输入。
我假设您可以访问您所说的程序的代码。
如果没有,那就复杂得多。