About Linux Components
PAGE TAGS: Linux kernel components bash original bourne shell KDE, Gnome lilo grub, Linux Software Tutorial, Linux Software Tutorial
LINUX COMPONENTS
The Linux operating system is a modular system, which means that the components can function without affecting one another. Because of its modular nature, you can create a highly customized Linux operating system based on your individual requirements. The table below lists the modules typical to Linux. Each component (or set of components) is generally developed independently, and each component offers functionality while minimally affecting the other components.
•
Kernel
- The kernel is the core component of the operating system, The kernel coordinates communication between the hardware and other software components. The kernel is the only component that is technically Linux. All other components are add-ons that turn the system into a fully-functional operating system.
•
Shell
- The shell is the user interface that accepts and interprets commands (either from a command prompt or a script) and forwards them to the kernel. A Linux shell is comparable to the DOS interpreter/DOS prompt.
Example
1) bash (Bourne-Again Shell) is the most common (and default) Linux shell. It is an enhancement of the original Bourne shell (sh).
2) tcsh is an enhanced version of the Berkeley UNIX C-shell (csh).
•
Graphical User Interface (GUI)
- The GUI is responsible for drawing graphical elements on the computer screen. The Linux GUI was designed to work the same way regardless of the video hardware on the computer system. Example: XWindows is the most common GUI system. X Windows works in conjunction with an X Client to render the GUI. X Windows is capable of running as a server and sending the GUI images to separate machines running an X Client. Xfree86 is the most common X Client
•
Window Manager/Desktop Environment
- The window manager modifies the GUI output that comes from X Windows. To change or modify the X Windows output, you can simply change the window manager. You can also use a desktop environment with a window manager. A desktop environment provides software (e.g., Web browsers and file managers) and gives users access to common tasks.
Example:
1) KDE (Kommon Desktop Environment), which uses the K Window Manager (kwm) and comes with the Qt toolkit for C++.
2) GNOME (GNU Object Model Environment) does not specify a window manager because its design allows use of any window manager. However, it does use Metacity as a default window manager in the absence of a window manager. GNOME requires the use of the GIMP Toolkit (GTK) to render the full GNOME desktop.
•
Boot Loader
- A boot loader runs after the system executes the BIOS ROM and POST functions. It loads the Linux kernel from the boot partition on the hard disk. It is also used to boot other operating systems present on the computer.
Example:
1) LILO (LInux LOader) is the most common bootloader.
2) GRUB (GRand Unified Bootloader) is a new bootloader that offers extra functionality.
•
Applications and Utilities
- Utilities are special programs that help you manage the system.
Applications are programs that let you use the computer for specific tasks (such as word processing, listening to music, or managing data).
Example:
1) Text Editors (command-line based)
2) File Managers
3) Office Applications
4) Graphical Editor
•
Daemons (Services)
- Daemons are programs that run in the background, providing additional functionality to a system. The Windows equivalent of a daemon is a service.
Example:
1) File/Print Services
2) Print services
3) Web Servers
4) Proxy Servers
5) Email
6) DNS
7) Firewall
As you can see, there are dozens of components that can be used with the Linux core. The availability of multiple components to provide a specific feature gives you a lot of choice, more than you might have with other operating system choices such as Microsoft Windows.