通常ファイルのロックは勧告ロックとなり、セマフォの排他処理のように、プロセス間で必要なロックを取得してファイル操作を行うことで、ファイルの読み書きの処理を行うようになっている。これを勧告ロック(アドバイザリロック)と言い。一方ロックをかけたファイルは問答無用にロックの処理をおこなうのを強制ロック言う。 (Linuxではファイルロックの種類とし、flock/fctrl/releseの3種類あるが、強制ロックの概念はこれと直接関係ない。) 強制ロックはfctrlシステムコール(POSIXロック)下でサポートされているよう。なお、flockシステムコールにLOCK_MANDオプションがあり、カーネルに強制ロックをおこなう関数が組み込まれているが、現行カーネルではファイル読み書きにおいて、その処理はバインドされていない模様・・・。 fctrlシステムコール実装での、勧告ロック/強制ロックの違いはな