Content deleted Content added
Tom.Reding (talk | contribs) m →{{Anchor|Linux API}}Linux API: Enum 1 author/editor WL; WP:GenFixes on |
|||
Line 29:
Much available [[free and open-source software]] is written for the POSIX API. Since so much more development flows into the Linux kernel as compared to the other POSIX-compliant combinations of kernel and C standard library,{{citation needed|date=July 2014}} the Linux kernel and its API have been augmented with additional features. As far as these additional features provide a technical advantage, programming for the Linux API is preferred over the POSIX-API. Well-known current examples are [[udev]], [[systemd]] and [[Weston (software)|Weston]].<ref>{{cite web |url=https://lwn.net/Articles/430598/ |title=Choosing between portability and innovation |publisher=[[LWN.net]] |date=2011-03-02}}</ref> People such as [[Lennart Poettering]] openly advocate to prefer the Linux API over the POSIX API, where this offers advantages.<ref name="fosdem1">{{cite web|url=https://archive.fosdem.org/2011/interview/lennart-poettering.html |publisher=fosdem.org |title=Interview: Lennart Poettering - Lennart Poettering will give a talk about "Systemd: beyond init" at FOSDEM 2011.|year=2011 |accessdate=2014-06-16 |quote=''In fact, the way I see things the '''[[Linux kernel API|Linux API]]''' has been taking the role of the '''POSIX API''' and Linux is the focal point of all Free Software development. Due to that I can only recommend developers to try to hack with only Linux in mind and experience the freedom and the opportunities this offers you. So, get yourself a copy of [[The Linux Programming Interface]], ignore everything it says about [[POSIX]] compatibility and hack away your amazing Linux software. It's quite relieving!''}}</ref>
At [[FOSDEM]] 2016, [[Michael Kerrisk]] explained some of the perceived issues with the Linux kernel's user-space API, describing that it contains multiple design errors by being non-extensible, unmaintainable, overly complex, of limited purpose, in violation of standards, and inconsistent. Most of those mistakes cannot be fixed because doing so would break the ABI that the kernel presents to the user space.<ref>{{cite web|url=https://archive.fosdem.org/2016/schedule/event/design_linux_kernel_api/|title=How to design a Linux kernel API|author=
=== {{Anchor|System Call Interface|SCI}} System Call Interface of the Linux kernel===
|