diff options
author | Thomas Schwinge <thomas@codesourcery.com> | 2013-03-19 18:47:23 +0100 |
---|---|---|
committer | Thomas Schwinge <thomas@codesourcery.com> | 2013-03-19 18:47:23 +0100 |
commit | d166bfaaa3ddf8b83b5cc6bde62f8872e6a80c82 (patch) | |
tree | 4d8a8904c2c49122c37895ed4573a5fcbd19ed4f /faq/support/posix_compatibility.mdwn | |
parent | 64f867bbc45d265009a1bad590bc1d4d9ea91d6e (diff) | |
parent | ce8c2531cdb7ee05784437da4c38459e5d3897d6 (diff) | |
download | web-d166bfaaa3ddf8b83b5cc6bde62f8872e6a80c82.tar.gz web-d166bfaaa3ddf8b83b5cc6bde62f8872e6a80c82.tar.bz2 web-d166bfaaa3ddf8b83b5cc6bde62f8872e6a80c82.zip |
Merge remote-tracking branch 'savannah/master'
As part of the merge, fix some typos, add copyright and licensing headers, and
a few more minor changes.
Diffstat (limited to 'faq/support/posix_compatibility.mdwn')
-rw-r--r-- | faq/support/posix_compatibility.mdwn | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/faq/support/posix_compatibility.mdwn b/faq/support/posix_compatibility.mdwn new file mode 100644 index 00000000..4490b7cb --- /dev/null +++ b/faq/support/posix_compatibility.mdwn @@ -0,0 +1,32 @@ +[[!meta copyright="Copyright © 2010, 2011 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]]."]]"""]] + +[[!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. |