Template:Linux layers
Appearance
| User mode | User applications | bash, LibreOffice, GIMP, Blender, 0 A.D., Mozilla Firefox, ... | ||||
|---|---|---|---|---|---|---|
| System components | init daemon: OpenRC, runit, systemd... |
System daemons: polkitd, smbd, sshd, udevd... |
Windowing system: X11, Wayland, SurfaceFlinger (Android) |
Graphics: Mesa, AMD Catalyst, ... |
Other libraries: GTK, Qt, EFL, SDL, SFML, FLTK, GNUstep, ... | |
| C standard library | fopen, execv, malloc, memcpy, localtime, pthread_create... (up to 2000 subroutines)glibc aims to be fast, musl aims to be lightweight, uClibc targets embedded systems, bionic was written for Android, etc. All aim to be POSIX/SUS-compatible. | |||||
| 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[1] | ||||
| Process scheduling subsystem | IPC subsystem | Memory management subsystem | Virtual files subsystem | Networking subsystem | ||
| Other components: ALSA, DRI, evdev, klibc, LVM, device mapper, Linux Network Scheduler, Netfilter Linux Security Modules: SELinux, TOMOYO, AppArmor, Smack | ||||||
| Hardware (CPU, main memory, data storage devices, etc.) | ||||||
| This template uses TemplateStyles: |
See also an SVG equivalent at File:Free and open-source-software display servers and UI toolkits.svg.
To do
[edit]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.
See also
[edit]- {{freedesktop.org}} — for software hosted by this organization
- {{GNOME}} — for software developed by this organization
- {{GNU}} — for all software maintained by the GNU Project
- {{KDE}} — for software developed by this organization
- {{Linux}} — covers the Linux kernel-based family of operating systems (= Linux kernel + GNU and non-GNU software)
- {{Linux distributions}}
- {{Linux package management systems}} — only for distinct articles, to replace messy {{Package management systems}} and {{Software digital distribution platforms}} navboxes
- ^ "Admin Guide README". Kernel.org git repositories.