The second layer provided by the resource manager library is the POSIX layer. As with the base layer, you could code a resource manager without using it, but it would be a lot of work! Before we can talk about the POSIX-layer functions in detail, we need to look at some of the base layer data structures, the messages that arrive from the clients, and the overall structure and responsibilities of a resource manager.