Apache Portable Runtime
Utseende
Utvikler(e) | Apache Software Foundation | ||
---|---|---|---|
Nyeste versjon | 1.5.1 / April 21, 2014 | ||
Kodelager | https://github.com/apache/apr | ||
Type | Programvarebibliotek[1] | ||
Lisens | Apache-lisensen | ||
Nettsted | apr.apache.org (en)[2] |
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).[3] 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.
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
The range of platform-independent functionality provided by APR includes:
- Memory allocation and memory pool functionality
- Atomic operations
- Dynamic library handling
- File I/O
- Command-argument parsing
- Locking
- Hash tables and arrays
- Mmap functionality
- Network sockets and protocols
- Thread, process and mutex functionality
- Shared memory functionality
- Time routines
- User and group ID services
Similar projects
- 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
- ^ https://projects.apache.org/json/projects/apr-portable_runtime.json; besøksdato: 8. april 2020.
- ^ projects.apache.org, besøkt 8. april 2020[Hentet fra Wikidata]
- ^ 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."
- ^ «ACE and TAO Success Stories». Arkivert fra originalen 29 August 2008. Besøkt 31. juli 2008. Sjekk datoverdier i
|arkivdato=
(hjelp)
External links
![]() |
Wikibøker: [[b:APR tutorial|]] – bøker |