Site icon NetworkHunt

Introduction to Linux

What is Linux?

Linux is a kernel similar to UNIX and MINIX, developed by Linus Torvalds in 1991, for an initiative to provide a free and flexible system for Personal Computers. Linux is an Open-Source System i.e. its source code is accessible to anyone and anyone can use or modify it as they require for their own use or for distribution. As mentioned, Linux actually is a Kernel, not an Operating System on its own. Kernel is low-level software that manages communication between the Operating System and the Hardware of the Computer. Thus, Operating Systems made on Linux Kernel combining software packages and utilities are called Linux Distributions often referred to as Distros. To learn more about Linux Distributions click here.

History of Linux-

Origins (1960s-1980s)-
Early Development (1991)-
Growth and Collaboration (1992-1994)-
Community and Distributions (1995-2000)-
Mainstream Adoption (2000s)-
The Rise of Desktop Linux (2000s-2010s)-
Continued Evolution (2010s-Present)-

Linux Operating System Architecture-

  1. Hardware– It contains the hardware component on which the Operating System runs, this includes RAM (Random Access Memory), Processor, Storage, I/O Devices, etc.
  2. Kernel- Kernel is the core component of an Operating System, it serves as a medium of communication between the hardware and software. Kernel performs various tasks such as-
    • Process Management– Creation, Scheduling and Termination of processes.
    • Memory Management- Allocate and Manage Memory for processes.
    • Device Management- Communicate with Hardware Devices through Drivers.
    • File Management System- Handle Data Storage and Organization.
  3. System Libraries- System Libraries are pre-written codes used by different applications to perform specific tasks such File Management, System Calls, Network Communication, etc. These libraries also facilitates faster and efficient application development as developer does not need to rewrite code for common tasks.
  4. System Utilities– System Utilities are essential tools and programs that are used in management and configuration of systems. These turn out very handy and useful in various administrative tasks such as network configuration, monitoring system performance, installing software, etc.
  5. Shell- Shell acts as command line interface, facilitating communication between the user and the Kernel as it translates user commands and executes them by communicating with Kernel. Shell allows user to perform various tasks such as managing files, configuring system, run programs, etc. Bash (Bourne Again SHell), Zsh (Z Shell), Fish (Friendly Interactive SHell) are a few types of shells that are very commonly found across devices.
  6. Applications- An application is a software that provide functionality needed by a user. Applications include software such as Desktop Environment (GNOME/KDE), Web Browsers, Development Tools, etc.
Exit mobile version