Apache Portable Runtime

The Apache Portable Runtime (APR) is a supporting library for the Apache web server. It provides a set of APIs that map to the underlying operating system (OS).[2] Where the OS does not support a particular function, APR will provide an emulation. Thus programmers can use the APR to make a program truly portable across platforms.

Apache Portable Runtime
Developer(s)Apache Software Foundation
Stable release
1.7.4 / April 16, 2023; 18 months ago (2023-04-16)[1]
Repository
Written inC
Operating systemCross-platform
TypeDevelopment library
LicenseApache License 2.0
Websiteapr.apache.org

APR originally formed a part of Apache HTTP Server, but the Apache Software Foundation spun it off into a separate project. Other applications can use it to achieve platform independence.

Functionality

edit

The range of platform-independent functionality provided by APR includes: [3]

Similar projects

edit
  • GLib – provides similar functionality. It supports many more data structures and OS-independent functions, but fewer IPC-related functions. (GLib lacks local and global locking and shared-memory management.)
  • Netscape Portable Runtime (NSPR) is a cross-platform abstraction library used by the Mozilla project. It is used by another subproject of Mozilla application framework (XPFE) to provide cross-platform graphical user interface (GUI) functionality.
  • Adaptive Communication Environment (ACE) is an object-oriented library written in C++ similar in functionality to APR. It is widely deployed in commercial products.[4]
  • commonc++ is a cross-platform C++ class library for systems programming, with much of the same functionality as APR.
  • POCO is a modern C++ framework similar in concept but more extensive than APR.
  • WxWidgets is an object-oriented cross-platform GUI library that also provides abstraction classes for database communication, IPC and networking functionality.
  • KDE Frameworks – used by KDE SC

References

edit
  1. ^ "Apache Portable Runtime APR 1.7.4 Released". Retrieved 7 October 2023.
  2. ^ Stable Apache Release Hits, Sean Michael Kerner, 2 December 2005, "Apache Portable Runtime (APR) 1.0 API, which provides libraries that interface between the underlying operating system and the server."
  3. ^ "Apache Portable Runtime modules". Apache. Retrieved 23 September 2023.
  4. ^ "ACE and TAO Success Stories". Archived from the original on 29 August 2008. Retrieved 2008-07-31.
edit