There are two types of [[Applicationapplication programming interface]] (API) in the [[Linux kernel]] that are not to be confused: the "kernel user-kernelspace" API and the "in-kernel-internal" API.
== UserKernel user-kernelspace API ==
[[File:Linux kernel API.svg|thumb|300px|The '''Linux kernel API''' versus the [[POSIX]] API. Maybe 1.000 people are working on the [[Linux kernel]].]]
The User-kernel user-space API is the API that allows programs in user- space to access system resources and services of the Linux kernel. This API, by choice, never breaks. The [[POSIX]] API is only a small part of the Linux kernel API.
ManyMuch available [[free and open-source software]] is written withfor the POSIX API. But since the last POSIX version is from 2008, and since so much more development is going on with the Linux kernel as compared to the other POSITPOSIX-compatible kernelkernels, morevarious programssoftware pophas up,been developed that aretarget written withsolely the Linux kernel user-space API in mind. Well-known examples are [[systemd]] and [[Weston (software)|Weston]].
People likesuch e.g.as [[Lennart Poettering]] openly advocate to writewriting software solely for the Linux kernel user-space API instead of POSIX, where this offers advantages.