Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 441014 - Please peer review the uclibc project page
Summary: Please peer review the uclibc project page
Status: RESOLVED FIXED
Alias: None
Product: Documentation
Classification: Unclassified
Component: Project-specific documentation (show other bugs)
Hardware: All Linux
: Normal minor
Assignee: Anthony Basile
URL: http://www.gentoo.org/proj/en/hardene...
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-11-02 22:15 UTC by Francisco Blas Izquierdo Riera (RETIRED)
Modified: 2012-12-17 19:41 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Francisco Blas Izquierdo Riera (RETIRED) gentoo-dev 2012-11-02 22:15:07 UTC
There is a disagreement between blueness and me about what is the proper wording for the project description whilst

I propose:
All modern operating systems are comprised of a kernel and userland. The kernel deals with hardware and resource management and runs at the highest privilege level, providing a basic interface to the userland which contains all the program logic and operates at the lowest privilege level. But, since the interfaces provided by the kernel are too basic and differ strongly from one system to another they usually interface through a library with standarized functions, the most frequent of which is the one for the C language defined by the POSIX standard. This library is referred usually as "the POSIX C standard library".

He proposes:
All modern operating systems are comprised of a kernel and userland. The former deals with hardware and resource management at the highest privilege level (ring 0) while the later deals with the end user and operates at the lowest privilege level (ring 3). The two interface at one central library referred to as "the C standard library."

My reasons for disagreement are:
* The references to ring 0 and ring 3 are very architecture specific (apply only to x86 and amd64 as far as I know).
* The text leads to confusion making the user think that the c runtime library is the one providing the interface to userland applications when it is just a wrapper around the syscall interface.
* The text leads also to confusion by stating there is only one library to interface with the system which is "the C standard library", this is untrue since different languages may interface with the system through different libraries and may even bypass the c library if they want to do so and call the syscalls directly (although this carries a higher cost to port the runtime to other platforms), also there are different standards as to which functions the C runtime library has to provide, glibc follows the POSIX standard with some specific extensions but that differ a lot from, for example the runtime library provided on windows systems which follows the win32 API.
Comment 1 Matt Turner gentoo-dev 2012-11-04 21:32:46 UTC
I don't understand why this text is needed at all.
Comment 2 Steev Klimaszewski (RETIRED) gentoo-dev 2012-11-05 16:51:59 UTC
I'm not sure why this text is needed either.  That said... in klondike's version "provided by the kernel are too basic" - this is subjective.  And who ever says "I use the POSIX C standard library" ?  Also, referred usually as isn't the right phrasing, I don't think.  Maybe "normally referred to as".
Comment 3 Anthony Basile gentoo-dev 2012-12-17 19:41:01 UTC
Please review the first paragraph which I updated.  Reopen if you still don't like it for some reason.

@matt  The first paragraph isn't "needed" per se, but it is nice to contextualize just what we expect from libc.  What is its function wrt to the rest of the OS.