We're done with the client side of things.
The following are key points to remember:
- The client usually triggers communication with the resource manager via
open() (or fopen()).
- Once the client's request has resolved to a particular
resource manager, we never change resource managers.
- All further messages for the client's session are based on the file
descriptor (or FILE * stream), (e.g.,
read(),
lseek(),
fgets()).
- The session is terminated (or dissociated) when the client
closes the file descriptor or stream (or terminates for any reason).
- All client file-descriptor-based function calls are translated into messages.