Introduction to Linux OS
Linux is open source free software which is based on UNIX. It is a difficult and complicated OS. Therefore on the other hand it puts its entire control on the shoulders of the end user to rectify its code accordingly. The basic architecture of Linux is based on kernel. The first Linux kernel was developed in 1991. It is ported to many PC architectures. All the Linux code can be modified free of cost and the redistribution is done on the commercial and non commercial ways by securing a license form GNU.
Components of Linux kernel
Linux is based on monolithic kernel. It is able to perform monolithic multitasking in user as well as kernel mode. It is also able to support visual memory. it also provides the facility of shared libraries. It is capable of providing on demand loading. It is also able to do better memory management and threading. It supports shared copy on write executables and inter process communication. It is the architecture of Linux that users have adopted it successfully. Linux is able to perform multi tasking in a way that it is translucent for the user processes. It seems at times that it is the only process running on the system memory by using main memory and some other useful hardware resources. There are five basic subsystems of Kernel which are process scheduler, memory manager, virtual file system, network interface and Inter process communication. The process scheduler allows and controls the process access to the central processing unit. Memory manager is there to guide the multi processes to make use of main memory in a secure manner. Virtual file system is responsible in making an abridgement of the details of the various hardware devices by in order to present the common file interface to possibly every device. Network interface is the one responsible for providing access to networking protocols and hardware. Inter process communication is complex task. As it is the process of handling variable mechanisms in order to support process to process communication on a one Linux system.
The Kernel Software of Linux OS
The Linux kernel is efficient software. It is capable of performing multitasking. It contains virtual memory, shared libraries, demand loading and memory manager. It can also share copies on write executables. It is also able to do proper memory management and TCP/IP networking. Linux has a monolithic kernel. The kernel extensions and device drivers typically operate in a ring0. This helps in the full access to the hardware, though some run into user space. Unlike standard monolithic kernels, it is easy to configure as modules loaded and unloaded while the system is running. The monolithic kernel also allows the preemption of drivers. Preemption is also considered for resolving latency, improving the responsiveness of the system and makes the Linux operating system more suitable for the real time applications.
File System of Linux
The file system of Linux is based on single root directory or sub directories. Sub directories are usually used as mount points, where it is possible to combine various network files. The hardware commands are also incorporated into the file hierarchy. Device driver interface to the end user is also a part of this device driver. The information is processed here and is largely mapped to the process directory. The UNIX security system is designed into the architecture this protects the entry of unauthorized or raw hardware to have direct access to the system. Moreover an internal security system provides individual access to three levels. these three levels include user only, world access, and group membership. Furthermore every category has executables, read and write options that can be set in any desired combination. It has additional directories for users.