Difference between revisions of "Template:Linux layers"
Jump to navigation
Jump to search
imported>Gang65 m (add references to other wiki pages) |
|||
| Line 17: | Line 17: | ||
! rowspan=3 style="width: 10%" | Kernel mode | ! rowspan=3 style="width: 10%" | Kernel mode | ||
| rowspan=3 style="width: 10%" | '''[[Linux kernel]]''' | | rowspan=3 style="width: 10%" | '''[[Linux kernel]]''' | ||
| − | | colspan=5 style="width: 80%; background-color: #ffb7b7;" |<code>[[stat (system call)|stat]]</code>, <code>[[splice (system call)|splice]]</code>, <code>[[dup (system call)|dup]]</code>, <code>[[read (system call)|read]]</code>, <code>[[open (system call)|open]]</code>, <code>[[ioctl]]</code>, <code>[[write (system call)|write]]</code>, <code>[[mmap]]</code>, <code>[[close (system call)|close]]</code>, <code>[[exit (system call)|exit]]</code>, etc. (about 380 system calls)<br>The Linux kernel [[System call|System Call Interface]] (SCI, aims to be [[POSIX]]/[[Single UNIX Specification|SUS]]-compatible) | + | | colspan=5 style="width: 80%; background-color: #ffb7b7;" |<code>[[stat (system call)|stat]]</code>, <code>[[splice (system call)|splice]]</code>, <code>[[dup (system call)|dup]]</code>, <code>[[read (system call)|read]]</code>, <code>[[open (system call)|open]]</code>, <code>[[ioctl]]</code>, <code>[[write (system call)|write]]</code>, <code>[[mmap]]</code>, <code>[[close (system call)|close]]</code>, <code>[[exit (system call)|exit]]</code>, etc. (about 380 system calls)<br>The Linux kernel [[System call|System Call Interface]] (SCI, aims to be [[POSIX]]/[[Single UNIX Specification|SUS]]-compatible){{Citation needed|reason=Have any of the maintainers publicly expressed the intention to be compatible?}} |
|- style="background-color: #ffb7b7;" | |- style="background-color: #ffb7b7;" | ||
| style="width: 18%;" | [[Scheduling (computing)|Process scheduling]]<br>subsystem | | style="width: 18%;" | [[Scheduling (computing)|Process scheduling]]<br>subsystem | ||
Revision as of 11:56, 25 October 2020
| 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 fast, musl and uClibc target embedded systems, bionic 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)[citation needed] | ||||
| 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. |