Apache Portable Runtime

from Wikipedia, the free encyclopedia
Apache Portable Runtime
Basic data

developer Apache Software Foundation
Current  version 1.7.0
( April 5, 2019 )
operating system platform independent
programming language C.
License Apache license v2.0
German speaking No

Apache Portable Runtime (APR) is a free program library from the Apache Software Foundation . It is the further development of individual generalization functions from an older version of the Apache HTTP server : This web server runs on various operating systems (including Linux and other Unix variants, Windows and NetWare ).

These systems offer slightly different interfaces for identical tasks. To unify one made do in earlier versions of Apache on non-Unix platforms with a POSIX - emulation layer . Since this comes at the expense of stability and speed, the developers took a new approach with Apache version 2.0: The APR is set up separately for each platform and provides functions with identical behavior to the outside world. In this way, it generalizes (abstracts) certain basic functions that the web server needs without slowing down the individual strengths of the individual systems.

The Apache Portable Runtime provides functions from the following areas:

  • File accesses
  • Network sockets
  • Memory management
  • Date and time functions
  • Text and string handling
  • Alignment of file and path names in a file system-independent format
  • Random generator
  • Thread and process management
  • Loading dynamic libraries

Since the APR greatly simplifies the programming of platform-independent network applications, other projects of the Apache Software Foundation and other providers are now making use of it, for example Apache Flood , JXTA-C , some Tomcat modules or the Subversion version control system .

Web links

Individual evidence

  1. www.apache.org . (accessed April 27, 2019).
  2. The apache_portable_runtime Open Source Project on Open Hub: Languages ​​Page . In: Open Hub . (accessed on July 18, 2018).
  3. projects.apache.org . In: Open Hub . (accessed on April 8, 2020).