To give some idea of, what actually goes on within the client library functions,
I have drawn flow diagrams for p_open, p_close,
p_lock, and p_unlock. These are attached (being the makings
of a non-LATEX 2-compatible program) to Appendix C. An explanation is
included there.