Connect with us

Masters of Computer Science

Linux Kernel Fundamentals. Things you need to know about Linux Kernel

Published

on

install linux on chromebook

Introduction of Kernel

  • Kernel is core of OS representing core aspect of Linux distribution for computers and servers
  • Architecture of Kernel is monolithic and OS operates in Kernel space.
  • Complete control over anything is there with Kernel
  • Linux Kernel is a layer between hardware of device and software.
  • Kernel is responsible for
    • For application execution,  process is managed by Kernel
    • Memory Management
    • I/O Management
    • System call control
    • With help of device drivers, Kernel has role in device management.

Operations of Kernel

  • As Kernel controls all the programs in system, sometimes Kernel is considered is heart of the operating system.
  • When the device starts, initialization process starts where functions such as checking of memory is performed.
  • Memory allocation is performed and environment is created where application runs with no disturbances.
  • As Kernel works as service provider, for accomplishing  multiple tasks like requesting the usage of disk, network card etc, program can request Kernel.
  • For CPU to enable multitasking, Kernel can set interrupts.
  • By not letting faulty programs to enter operational functions of others, computational environment is protected by Kernel.
  • Unauthorized programs are stopped by Kernel at entrance itself by not allowing memory space.
  • Kernel can also limits the CPU time consumed by unauthorized programmes.

Types of Kernel

Monolithic Kernel

  • Contains many drivers.
  • Creates communication interface between h/w and s/w if device
  • Consist various modules which can be dynamically loaded and unloaded.
  • This architecture expands the capacities of OS and allows easy extension to Kernel
  • Maintenance of Kernel is easy  as it allows concern module to load and unload when there is need of bug fixation

Microkernel

  • Executes basic functionality without interruptions
  • Addresses the issue of ever growing size of Kernel code (monolithic failed in this)
  • To run in user space, some basic services are allowed. Services are protocol stack, device driver management, file system etc.
  • Capability of OS can be enhanced with minimum code, improved security and ensuring stability.
  • All the basic OS services are available to program via IPC – Interprocess Communication
  • Allows direct interaction between device drivers and hardware

Hybrid Kernel

  • Combines monolithic and microkernel
  • Can decide what it wants to run in user and supervisor mode.
  • Device drivers, filesystens I/O etc run in user mode
  • In supervisor mode, server calls and IPC are placed.

Kernel Space Vs User Space

Kernel Space

  • Found in elevated state. Kernel space provides full access of hardware devices
  • It protects memory space
  • Memory space and user space is togetherly called Kernel space.
  • In environment of Kernel space, core access to system service and hardware are maintained.
  • This is provided as sercice to rest of the system.

User Space

  • It’s a code that run outside OS Kernel Environment

Userspace is various applications/programs/libraries which are used by OS to connect with Kernel.

Facebook Comments

10 Hits in 30 Days

DMCA
PROTECTED