Доступно ли flock () в вашей системе? В противном случае эти две программы должны быть синхронизированы, они могут обмениваться данными через канал или сокет или через наличие / отсутствие файла.
Другим направлением, если вы работаете в Unix-подобной системе, можно использовать lsof output.
Я предполагаю, что запуск первой программы во второй невозможен.