A technical overview of the Linux kernel
Jun 11, 2007 — by LinuxDevices Staff — from the LinuxDevices Archive — 1 viewsIBM's DeveloperWorks website has published a broad, technical article describing the history, architecture, and salient features of the Linux kernel. Written by M. Tim Jones of Emulex, the article examines Linux's major subsystems, architecture-dependent features, and interesting functionality such as KVM… (kernel-based virtual machine).
Jones notes that Linux is a relative newcomer among operating systems. With direct forebears that include Minix, Unix, Unics, and Multics, Linux has grown over the past 15 years into a world-wide development project comprised of about six million lines of code.
Although large, Linux's source code is organized well, Jones reckons. Architecture-specific code is largely segregated. However, in some cases, architecture- and even processor-specific features do reach Linux's topmost system call interface (SCI), the kernel's API (application programming interface) for user-space applications.
Architecture-dependent components, or BSPs (board-support packages), comprise one of Linux's major subsystems, in Jones's view. The others include the SCI, process (aka thread) management (PM), virtual file system (VFS), memory management (MM), and the network stack. Jones spends a few paragraphs on each subsystem.
Jones concludes by noting that Linux is a great test-bed for new technologies, such as experimental networking protocols like SCTP (stream control transmission protocol). Another example is the kernel's relatively new KVM (kernel-based virtual machine) feature, aimed at exploiting the processor virtualization features found in the newest processors (but often disabled in processors earmarked for systems that will ship to consumers).
The complete DeveloperWorks article — which includes four informative illustrations — can be found here.
This article was originally published on LinuxDevices.com and has been donated to the open source community by QuinStreet Inc. Please visit LinuxToday.com for up-to-date news and articles about Linux and open source.