Linux(またはより一般的にはPOSIX OS)には、プログラムの実行中に、ファイルが閉じられて別のファイルが開かれた場合でも、ファイル記述子が再利用されないことを保証するものはありますか?私の理解では、この状況では通常、閉じたファイルのファイル記述子が新しく開いたファイルに再割り当てされます。
私はI/Oトレースプロジェクトに取り組んでおり、open()/ fopen()呼び出しの後、そのファイル記述子に対する後続のすべてのI / Oが同じファイルに対するものであると想定できれば、作業が簡単になります。
コンパイル時または実行時のソリューションを採用します。
それが不可能な場合は、トレースファイルを処理するときに自分でアカウンティングを行うことができます(すべてのオープンコールとクローズコールの場所を記録します)が、トレースされたプログラムの実行中に問題を解決したいと思います。