hello friends! new(ish)!
Userland: Difference between revisions
Jump to navigation
Jump to search
>Morpheus (Readded userland and kernel space layers) |
>Morpheus mNo edit summary |
||
Line 13: | Line 13: | ||
| colspan=1 style="width: 18%; background-color: #9db5f9"| '''System [[wikipedia:Daemon (computing)|daemons]]''':<br>''[[systemd]], [[wikipedia:runit|runit]], logind, networkd, [[PulseAudio|soundd]], ...'' | | colspan=1 style="width: 18%; background-color: #9db5f9"| '''System [[wikipedia:Daemon (computing)|daemons]]''':<br>''[[systemd]], [[wikipedia:runit|runit]], logind, networkd, [[PulseAudio|soundd]], ...'' | ||
| colspan=1 style="width: 18%; background-color: #9db5f9"| '''Windowing system''':<br>''[[Xorg|X11]], [[Wayland]], [[wikipedia:Mir (software)|Mir]], [[wikipedia:SurfaceFinger|SurfaceFlinger]] (Android)'' | | colspan=1 style="width: 18%; background-color: #9db5f9"| '''Windowing system''':<br>''[[Xorg|X11]], [[Wayland]], [[wikipedia:Mir (software)|Mir]], [[wikipedia:SurfaceFinger|SurfaceFlinger]] (Android)'' | ||
| colspan=2 style="width: 36%; background-color: #ffac75" | '''Other libraries:'''<br>''[[GTK+]], [[Qt]], [[wikipedia:Enlightenment Foundation Libraries|EFL]], [[wikipedia:Simple DirectMedia Layer|SDL]], [[wikipedia:Simple and Fast Multimedia Library|SFML]], [[wikipedia:FLTK]], [[wikipedia:GNUstep]]'', etc. | | colspan=2 style="width: 36%; background-color: #ffac75" | '''Other libraries:'''<br>''[[GTK+]], [[Qt]], [[wikipedia:Enlightenment Foundation Libraries|EFL]], [[wikipedia:Simple DirectMedia Layer|SDL]], [[wikipedia:Simple and Fast Multimedia Library|SFML]], [[wikipedia:FLTK|FLTK]], [[wikipedia:GNUstep]]'', etc. | ||
| colspan=1 style="width: 18%; background-color: #9db5f9"| '''Graphics''':<br>''[[wp:Mesa (computer graphics)|Mesa]]'', ''[[wikipedia:AMD Catalyst|AMD Catalyst]]'', ... | | colspan=1 style="width: 18%; background-color: #9db5f9"| '''Graphics''':<br>''[[wp:Mesa (computer graphics)|Mesa]]'', ''[[wikipedia:AMD Catalyst|AMD Catalyst]]'', ... | ||
|- style="background-color: #96d5aa" | |- style="background-color: #96d5aa" |
Revision as of 13:43, 19 January 2016
A userland is the system utilities that are not a part of the main kernel, but provide a base system. The term userland (or user space) refers to all code that runs outside the operating system's kernel. Userland usually refers to the various programs and libraries that the operating system uses to interact with the kernel: software that performs input/output, manipulates file system objects, application software etc.
User mode | User applications | For example, bash, LibreOffice, OpenOffice, Blender, 0 A.D., Mozilla Firefox, etc. | ||||
---|---|---|---|---|---|---|
Low-level system components: | System daemons: systemd, runit, logind, networkd, soundd, ... |
Windowing system: X11, Wayland, Mir, SurfaceFlinger (Android) |
Other libraries: GTK+, Qt, EFL, SDL, SFML, FLTK, wikipedia: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, uClibc targets 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.) |