Linux Operating System: Done by
Linux Operating System: Done by
Abhinav R
Adnaan Khan
Akshar KH
Linux operating
Bhuvan MH
Chanan TM
system
SLIDESMANIA
Objectives
system History Distribution
To explore the history of the UNIX operating system
from which Linux is derived and the principles upon
which Linux’s design is based
Also to learn more about Kernels, it modules and
implementation
Linux distibution
Other operating systems like Microsoft combine each bit of codes internally and release it as a single
package. You have to choose from one of the version they offer. But Linux is different from them.
Different parts of Linux are developed by different organizations.
• A Linux distribution is an OS made through a software collection that contains the Linux kernel and
a package management system often.
• Usually, Linux users obtain their OS by downloading a Linux distribution, available for a range of
systems from embedded devices (e.g., OpenWrt) to robust supercomputers (e.g., Rocks Cluster
Distribution).
SLIDESMANIA
Linux distibution
• A Linux distribution is composed of a Linux
kernel, GNU libraries and tools, other software, a
window system, documentation, a desktop
environment, and a window manager.
• Almost every added software is open-source and
free and becomes available both as in source
code and compiled binary form, permitting
changes to the actual software.
SLIDESMANIA
Kernel modules
● Kernel modules are pieces of code that can be loaded and unloaded into the kernel
upon demand. They extend the functionality of the kernel without the need to
reboot the system.
Custom codes can be added to Linux kernels via two methods.
• The basic way is to add the code to the kernel source tree and recompile the kernel.
• A more efficient way is to do this is by adding code to the kernel while it is
running. This process is called loading the module, where module refers to the
code that we want to add to the kernel.
SLIDESMANIA
Module management
● Supports loading modules into memory and letting them talk to the rest of the
kernel
● Module loading is split into two separate sections:
○ Managing sections of module code in kernel memory
○ Handling symbols that modules are allowed to reference
● The module requestor manages loading requested, but currently unloaded,
modules; it also regularly queries the kernel to see whether a dynamically loaded
module is still in use, and will unload it when it is no longer actively needed
SLIDESMANIA
Driver registration
● A device driver is a piece of code that configures and manages a device. The device driver code
knows how to configure the device sending data to the device, and it knows how to process
requests which originate from the device.
● When the device driver code is loaded into an operating system such as Linux, it exposes
interfaces to the user space so that the user application can communicate with the device. Without
the device driver, the OS or the application will not have a clear picture of how to deal with a
device.
SLIDESMANIA
Driver registration
● Allows modules to tell the rest of the kernel that a new driver has become available
● The kernel maintains dynamic tables of all known drivers, and provides a set of
routines to allow drivers to be added to or removed from these tables at any time
● Registration tables include the following items:
○ Device drivers
○ File systems
○ Network protocols
○ Binary format
SLIDESMANIA