Linux architecture: Difference between revisions

Content deleted Content added
No edit summary
Line 13:
 
== Kernel -or- System Software ==
The '''[[Linux kernel''']] includes true multitasking, [[virtual memory]], [[shared library|shared libraries]], demand loading, shared [[copy-on-write]] executables, proper [[memory management]], and [[TCP/IP]] [[computer network|networking]].
 
Today Linux is a module-loading [[monolithic kernel]]. [[Device driver]]s and kernel extensions typically run in [[ring 0]], with full access to the hardware, although some run in [[user space]]. Unlike standard monolithic kernels, device drivers are easily configured as [[module (Linux)|modules]], and loaded or unloaded while running the system. Also unlike standard monolithic kernels, device drivers can be pre-empted under certain conditions. This latter feature was added to handle [[hardware interrupt]]s correctly, and to improve support for [[symmetric multiprocessing]]. Preemption also improves latency, increasing responsiveness and making Linux more suitable for real-time applications.