-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Open System API is an Open Source project that provides an API to access system services.
The API is intended to give developers the ability to create multi-platform programs by supplying them with an abstraction layer on top of each OS system functions. It provides access to system services for any programming language that can call a C library.
The project concept is completed and is now in the implementation phase.
Despite the fact that the target is multi-platform support, the first (and only for the moment) supported platform is Linux. Other platforms are to be added latter.
The project deliverable is a library to support client applications.
After cloning the GIT repository to a local directory (let's use $HOME/repository/osapi
for the example bellow):
- Add OSAPI_DIR variable to your environment
-
Linux
OSAPI_DIR=$HOME/repository/osapi; export OSAPI_DIR
- Go to the Release directory
-
Linux
cd $OSAPI_DIR/Release
- Execute make command
The resulting library (libosapi.so
) is placed in the Release directory.
The API documentation is still under development and will be placed under the project docs folder.
As a starting point consider reading the document OSAPI Overview. This document provides the design concepts, wrapper strategies and client usage examples.
The detailed description for the project is here.
While the API could in theory support any baseline, that is, any combination of OS types, OS versions, system libraries and C standards, it wouldn't be feasible to do so. In order to have a stable base, the following list is the library baseline:
- C Standard: C11
- Linux
- POSIX: 200809
- glibc: 2.28
The test environment uses version 4.18.0-13 of the Linux Kernel.
- Linux
- GCC/Clang supporting C11 are required (advise is to use the latest available > 8.x)
- GNU Make version 4.2.1 or above (older versions may be supported but were not tested)
The project license is the MIT license which means that the project can be used as you wish. However, your contribution is welcome in order to develop it so that others (and yourself) reap the benefits.