Whats the purpose of the Apache Portable Runtime (APR)?
Prior to the APR, Apache code was littered with platform-determined conditionally compiled code, which made the code hard to read and maintain. In a nutshell, the APR delivers an almost totally uniform API regardless of the run time platform by abstracting away operating system differences. See An Introduction to APR 2.0 by Christian Gross.