Difference between revisions of "Template:Linux layers"
Jump to navigation
Jump to search
imported>Gdominik100 (Include the musl C Library for embedded systems,) |
|||
| Line 13: | Line 13: | ||
|- style="background-color: #dfd" | |- style="background-color: #dfd" | ||
| colspan=1 style="width: 10%" | '''[[C standard library]]''' | | colspan=1 style="width: 10%" | '''[[C standard library]]''' | ||
| − | | colspan=5 style="width: 80%" | <tt>open()</tt>, <tt>exec()</tt>, <tt>sbrk()</tt>, <tt>socket()</tt>, <tt>fopen()</tt>, <tt>calloc()</tt>, ... (up to 2000 [[subroutine]]s)<br>''[[GNU C Library|glibc]]'' aims to be [[POSIX]]/[[Single UNIX Specification|SUS]]-compatible, ''[[uClibc]]'' | + | | colspan=5 style="width: 80%" | <tt>open()</tt>, <tt>exec()</tt>, <tt>sbrk()</tt>, <tt>socket()</tt>, <tt>fopen()</tt>, <tt>calloc()</tt>, ... (up to 2000 [[subroutine]]s)<br>''[[GNU C Library|glibc]]'' aims to be [[POSIX]]/[[Single UNIX Specification|SUS]]-compatible, ''[[musl]]'' and ''[[uClibc]]'' target embedded systems, ''[[Bionic (software)|bionic]]'' written for [[Android (operating system)|Android]], etc. |
|- | |- | ||
! rowspan=3 style="width: 10%" | Kernel mode | ! rowspan=3 style="width: 10%" | Kernel mode | ||
Revision as of 20:24, 1 May 2019
| User mode | User applications | For example, bash, LibreOffice, GIMP, Blender, 0 A.D., Mozilla Firefox, etc. | ||||
|---|---|---|---|---|---|---|
| Low-level system components: | System daemons: systemd, runit, logind, networkd, PulseAudio, ... |
Windowing system: X11, Wayland, SurfaceFlinger (Android) |
Other libraries: GTK+, Qt, EFL, SDL, SFML, FLTK, GNUstep, etc. |
Graphics: Mesa, AMD Catalyst, ... | ||
| C standard library | open(), exec(), sbrk(), socket(), fopen(), calloc(), ... (up to 2000 subroutines) glibc aims to be POSIX/SUS-compatible, musl and uClibc target embedded systems, bionic written for Android, etc. | |||||
| Kernel mode | Linux kernel | stat, splice, dup, read, open, ioctl, write, mmap, close, exit, etc. (about 380 system calls) The Linux kernel System Call Interface (SCI, aims to be POSIX/SUS-compatible) | ||||
| Process scheduling subsystem |
IPC subsystem |
Memory management subsystem |
Virtual files subsystem |
Network subsystem | ||
| Other components: ALSA, DRI, evdev, LVM, device mapper, Linux Network Scheduler, Netfilter Linux Security Modules: SELinux, TOMOYO, AppArmor, Smack | ||||||
| Hardware (CPU, main memory, data storage devices, etc.) | ||||||
See also an SVG equivalent at File:Free and open-source-software display servers and UI toolkits.svg.
To do
Missing from both versions are: Mesa (computer graphics) and Advanced Linux Sound Architecture.
Also please note, that there are Wikipedia contents for free and open-source device drivers, e.g.:
- Free and open-source graphics device drivers
- Free and open-source device drivers: audio
- Free and open-source device drivers: IEEE 802.11
- Maybe Lines of code could be used to illustrate the size/extent of a library.
| The above documentation is transcluded from Template:Linux layers/doc. (edit | history) Editors can experiment in this template's sandbox (edit | diff) and testcases (create) pages. Please add categories to the /doc subpage. Subpages of this template. |