http://0pointer.de/blog/projects/locking Много и хорошо описано и по факту в Linux не работают POSIX locks нормально. Если хотите -- используйте BSD, так и говорят!