Why does flock use a descriptor or file Why does flock use a descriptor or file shell shell