マスターロック(THR_LOCK)とロックインスタンス(THR_LOCK_DATA)があり、任意のスレッドは任意の数だけロックインスタンスを持つことができる。当然の如く使い終わったら、解放する必要がある。インスタンスを生成する処理がなされるということになる。既存の実装は理解したので、ようやくファイルを開く処理を書く。ロックなどなどは置いといてまずファイルディスクリプタをどこかで保持する必要がある。