[[!meta copyright="Copyright © 2010, 2011, 2013 Free Software Foundation, Inc."]] [[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU Free Documentation License|/fdl]]."]]"""]] [[!tag faq/support]] [[!meta title="POSIX compatibility"]] Is it favorable of rather a hindrance to be compatible to POSIX and similar standards? A lot of things in POSIX et al. are designed for [[UNIX]]-like systems with traditional monolithic [[kernel]]s. Thus, a [[microkernel]]-based system, as ours is, has to employ a bunch of detours, for example to implement the [[`fork` system call|glibc/fork]]. On the other hand, (mostly) complying to these standards, made a really big body of software *just work* without any (or just trivial) [[hurd/porting]]. Especially so for command-line programs, and libraries. But: a large part of today's user programs are not written according to POSIX et al. low-level interfaces, but against GNOME, GTK+2, and other high-level frameworks and libraries. It may be a valid option to enrich these instead of striving for total POSIX compliance -- and the high-level programs (that is, their users) may not even notice this, but we would avoid a lot of overhead that comes with wrapping the [[Hurd interfaces|hurd/interface]] to be POSIX compliant.