Exploser On Linux Kernel Architecture

T. V. Surya Narayana, V. Muralidhar, K. S. Vijaya Simha

Tenali Engineering College, Anumarllapudi (v), Guntur

Don Bosco Engineering college, Guntur



This paper describes the abstract or conceptual software architecture of the Linux kernel. This level of architecture is concerned with the large-scale subsystems within the kernel, but not with particular procedures or variables. One of the purposes of such an abstract architecture is to form a mental model for Linux developers and architects. The model may not reflect the as-built architecture perfectly, but it provides a useful way to think about the overall structure. This model is most useful for entry-level developers, but is also a good way for experienced developers to maintain a consistent and accurate system vocabulary. The architecture presented here is the result of reverse engineering an existing Linux implementation; the primary sources of information used were the documentation and source code. The Linux kernel is composed of five main subsystems that communicate using procedure calls. Four of these five subsystems are discussed at the module interconnection level. At all times the relation of particular subsystems to the overall Linux system is considered. The architecture of the kernel is one of the reasons that many users have successfully adopted Linux. In particular, the Linux kernel architecture was designed to support a large number of volunteer developers. Further, the subsystems that are most likely to need enhancements were architected to easily support extensibility. These two qualities are factors in the success of the overall system.

Keywords:  Device Driver, I-Node or index nodes, Network File System (NFS), Process, Ram disk, Swapping, Task




International eJournal of Mathematics and Engineering

Volume 2, Issue 3, Pages:  1036 - 1045