Вам не нужно использовать Python для этого. Учитывая, что вы используете Unix, попробуйте это:
Сначала создайте трубу для семафора.
mknod /tmp/semaphore p
Затем программы:
Console A:
$ first_program && echo a > /tmp/semaphore
Console B:
$ read < /tmp/semaphore && second_program
На самом деле, этот метод работает в обоих направлениях. Чтение будет блокироваться до тех пор, пока не произойдет запись, и наоборот.