The Apache Portable Runtime (APR) library provides a variety of services masking the differences between different operating systems with a uniform, platform-neutral interface.
The Apache Portable Runtime (APR) project's stated mission is:
The mission of the Apache Portable Runtime (APR) project is to create and maintain software libraries that provide a predictable and consistent interface to underlying platform-specific implementations. The primary goal is to provide an API to which software developers may code and be assured of predictable if not identical behaviour regardless of the platform on which their software is built, relieving them of the need to code special-case conditions to work around or take advantage of platform-specific deficiencies or features.