Apache Portable Runtime
From Wikipedia, the free encyclopedia
| Apache Portable Runtime | |
| Developer: | Apache Software Foundation |
|---|---|
| Latest release: | 1.2.8 / December 04, 2006 |
| OS: | Cross-platform |
| Use: | Development Library |
| License: | Apache 2.0 licence |
| Website: | http://apr.apache.org/ |
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. Where the OS doesn't support a particular function, APR will provide a replacement. Thus, the APR can be used to make a program truly portable across platforms.
APR was originally a part of Apache, but has now been spun off into a separate project of the Apache Software Foundation, and is used by other applications to achieve platform independence.
The range of platform-independent functionality provided by APR includes:
- Memory allocation and memory pool functionality
- Atomicity 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
- Glib provides similar functionality. It supports many more data structures and OS-independent functions, but fewer IPC-related functions (local and global locking, dynamic loading, or shared memory management are not provided).
- NSPR is a cross-platform abstraction library used by the Mozilla project. It is used by another subproject of Mozilla XPFE to provide cross-platform graphical user interface (GUI) functionality.
- Adaptive Communication Environment (ACE) is an object-oriented library similar in functionality to APR. It is widely deployed in commercial products[citation needed].
- WxWidgets is an object-oriented cross-platform GUI library that also provides abstraction classes for database communication, IPC and networking functionality.
- The APR website
- The current APR programming documentation
- The Apache Software Foundation website
- APR tutorial
|
|
|
|---|---|
| Top level Projects | Apache HTTP Server • ActiveMQ • Ant • APR • Beehive • Cayenne • Cocoon • Directory • Excalibur • Forrest • Geronimo • Gump • iBATIS • Jackrabbit • James • Lenya • Maven • Mina • MyFaces • OFBiz • mod_perl • SpamAssassin • Struts • Tcl • Tomcat • Axis • Axis2 • WSIF • XMLBeans • Tapestry • HiveMind • WebWork 2 • Harmony • Velocity • Santuario • Shale |
| Apache Jakarta Project | BCEL • BSF • Cactus • Commons • ECS • HttpComponents • JCS • JMeter • ORO • POI • Regexp • Slide • Taglibs • Turbine |
| Apache DB | Derby • Torque • DdlUtils • OJB • JDO |
| Apache Portals | Jetspeed 1 • Jetspeed 2 • Graffito • Pluto • WSRP4J |
| Apache Lucene | Lucene Java • Nutch • Hadoop • Lucene4c • Lucy |
| Apache XML | AxKit • Xalan • Xerces |
| XML Graphics | Batik • FOP |
| Apache Logging | Log4j • Log4Cxx • Log4Perl • Log4PLSQL |
| Apache Incubator | XAP • River • OpenEJB • OpenJPA • ServiceMix • Wicket • Graffito • Tuscany • Log4Net • Roller • Felix • Abdera • CeltiXfire • FtpServer • Heraldry • Ivy • JuiCE • Kabuki • Lokahi • Lucene.Net • mod_ftp • NMaven • Ode • stdcxx • Woden • WSRP4J • Yoko • Log4PHP • WADI • Qpid • stdcxx • TripleSoup • UIMA • wadi |
| License: Apache License • Website: apache.org | |