私は、Linux上のttyデバイスが一度に1つのインスタンスからしかアクセスできないようにする必要があります。 これを行うには、flock()
関数を実装しました。 しかし、私のテストでは、flock()
ロジックがなくても、別のプロセスからシリアルポートを開くことができませんでした。同時に複数のプロセスからttyを開くことは可能ですか?
これはすべての場合の通常の動作であるかどうか疑問に思っていますので、flock()
ロジックを削除し、ブロックopen()
のロジックに頼ることができますか?いずれにしても、異なるインスタンスから同時にシリアルポートを開くことは可能ですか?
EDIT:
私はflock()
ロジックなしで同時にTTYポートを複数回開くことが実際に可能であることを考え出しました。 しかし、open()
の機能は、flock()
によってブロックされているようです。