SlideShare a Scribd company logo
Linux Internal By:- BOSS Team Member CDAC-chennai
Linux Internal Introduction
Kernel
Process Management
Memory Management
File System
Device Driver
Network Stack
Architecture-dependent code
Introduction Operating System is a software designed to control the hardware of a system in order to allow users and application programs to make use of it.
Linux is a  free operating system based on UNIX standards.
LINUX® is a registered trademark of Linus Torvalds.
Features of Linux. Multiprogramming
Multi-user
Secure
Fast
Components of Linux System Architecture of the GNU/Linux operating system
Components of a Linux System (Cont.)‏ When Linux is running in main memory,the it is divided in to two parts  1) User space.  2) Kernel space. User's applications are running in user space.
Kernel is running in kernel space. The  system libraries (e.g. glibc)  define a standard set of functions through which applications interact with the kernel, and which implement much of the operating-system functionality that does not need the full privileges of kernel code.
The Linux Kernel Kernel is a resource manager whether resource being managed is a  process,memory,hardware device.
Short history of Linux kernel development.
Linux Kernel Types of Kernel Monolithic Kernel.  (e.g. Linux kernel)‏
Micro kernel  (e.g. Windows NT kernel,Mach kernel etc.)‏
Structure of monolithic and micro-kernel-based operating systems Monolithic kernel  Micro Kernel
Linux Kernel 2.6.x Characteristics that differ between the Linux kernel and other Unix variants: Dynamic loading of kernel module
Preemptive
Symmetric multiprocessor (SMP) support.
Linux does not differentiate between threads and normal processes.
Linux provides an object-oriented device  model with device classes,hotpluggable events and user-space device file system(sysfs).

More Related Content

What's hot (20)

PDF
semaphore & mutex.pdf
Adrian Huang
 
PDF
An Introduction To Linux
Ishan A B Ambanwela
 
PPTX
Linux basic commands
Sagar Kumar
 
PDF
Linux Kernel - Virtual File System
Adrian Huang
 
PDF
Part 02 Linux Kernel Module Programming
Tushar B Kute
 
PPTX
Linux System Programming - File I/O
YourHelper1
 
PDF
Network Drivers
Anil Kumar Pugalia
 
PDF
Physical Memory Models.pdf
Adrian Huang
 
PPTX
Linux Kernel Programming
Nalin Sharma
 
PDF
Physical Memory Management.pdf
Adrian Huang
 
PPTX
Introduction Linux Device Drivers
NEEVEE Technologies
 
PDF
Memory Mapping Implementation (mmap) in Linux Kernel
Adrian Huang
 
PPTX
Linux ppt
lincy21
 
PDF
Embedded Linux Kernel - Build your custom kernel
Emertxe Information Technologies Pvt Ltd
 
PPT
Basic 50 linus command
MAGNA COLLEGE OF ENGINEERING
 
PDF
Linux-Internals-and-Networking
Emertxe Information Technologies Pvt Ltd
 
PDF
Introduction to Linux
sureskal
 
PDF
Linux introduction
Md. Zahid Hossain Shoeb
 
PDF
Introduction to char device driver
Vandana Salve
 
semaphore & mutex.pdf
Adrian Huang
 
An Introduction To Linux
Ishan A B Ambanwela
 
Linux basic commands
Sagar Kumar
 
Linux Kernel - Virtual File System
Adrian Huang
 
Part 02 Linux Kernel Module Programming
Tushar B Kute
 
Linux System Programming - File I/O
YourHelper1
 
Network Drivers
Anil Kumar Pugalia
 
Physical Memory Models.pdf
Adrian Huang
 
Linux Kernel Programming
Nalin Sharma
 
Physical Memory Management.pdf
Adrian Huang
 
Introduction Linux Device Drivers
NEEVEE Technologies
 
Memory Mapping Implementation (mmap) in Linux Kernel
Adrian Huang
 
Linux ppt
lincy21
 
Embedded Linux Kernel - Build your custom kernel
Emertxe Information Technologies Pvt Ltd
 
Basic 50 linus command
MAGNA COLLEGE OF ENGINEERING
 
Linux-Internals-and-Networking
Emertxe Information Technologies Pvt Ltd
 
Introduction to Linux
sureskal
 
Linux introduction
Md. Zahid Hossain Shoeb
 
Introduction to char device driver
Vandana Salve
 

Viewers also liked (7)

PPTX
Linux internals v4
Liran Ben Haim
 
PPTX
QUADCOPTER
tusarjena22
 
PDF
Quadcopter Technology
Michael Bseliss
 
PPTX
Quadcopter
Aakash Goyal
 
PDF
QUAD COPTERS FULL PPT
Girija Sankar Dash
 
PDF
Drone (Quadcopter) full project report by Er. ASHWANI DIXIT
Ashwani Dixit
 
PDF
Vx works RTOS
Sai Malleswar
 
Linux internals v4
Liran Ben Haim
 
QUADCOPTER
tusarjena22
 
Quadcopter Technology
Michael Bseliss
 
Quadcopter
Aakash Goyal
 
QUAD COPTERS FULL PPT
Girija Sankar Dash
 
Drone (Quadcopter) full project report by Er. ASHWANI DIXIT
Ashwani Dixit
 
Vx works RTOS
Sai Malleswar
 
Ad

Similar to Linux internal (20)

PPT
Linux architecture
mcganesh
 
PPT
Linux architecture
mcganesh
 
PPTX
Linux os
MD Mynuddin
 
PDF
Linux kernel architecture
SHAJANA BASHEER
 
PPT
Linux introduction
Abhishek Khune
 
PPSX
linux kernel overview 2013
Rohit Pratap Singh
 
PPT
Ch20 OS
C.U
 
PPT
OSCh20
Joe Christensen
 
PDF
Ganesh naik linux_kernel_internals
Ganesh Naik
 
PDF
Ganesh naik linux_kernel_internals
nullowaspmumbai
 
PPT
Mca ii os u-5 unix linux file system
Rai University
 
PPT
Ch22
guestaf6c9b
 
PPTX
Operating Systems: Linux in Detail
Damian T. Gordon
 
PPTX
Io sy.stemppt
muthumani mahesh
 
PDF
Ospresentation 120112074429-phpapp02 (1)
Vivian Vhaves
 
PPTX
ubantu ppt.pptx
MrGyanprakash
 
PPT
Chapter 21 - The Linux System
Wayne Jones Jnr
 
PPTX
UNIT I.pptx
YogapriyaJ1
 
PDF
Ubuntu OS Presentation
Loren Schwappach
 
Linux architecture
mcganesh
 
Linux architecture
mcganesh
 
Linux os
MD Mynuddin
 
Linux kernel architecture
SHAJANA BASHEER
 
Linux introduction
Abhishek Khune
 
linux kernel overview 2013
Rohit Pratap Singh
 
Ch20 OS
C.U
 
Ganesh naik linux_kernel_internals
Ganesh Naik
 
Ganesh naik linux_kernel_internals
nullowaspmumbai
 
Mca ii os u-5 unix linux file system
Rai University
 
Operating Systems: Linux in Detail
Damian T. Gordon
 
Io sy.stemppt
muthumani mahesh
 
Ospresentation 120112074429-phpapp02 (1)
Vivian Vhaves
 
ubantu ppt.pptx
MrGyanprakash
 
Chapter 21 - The Linux System
Wayne Jones Jnr
 
UNIT I.pptx
YogapriyaJ1
 
Ubuntu OS Presentation
Loren Schwappach
 
Ad

Recently uploaded (20)

PDF
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
PDF
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
PDF
CIFDAQ Weekly Market Wrap for 11th July 2025
CIFDAQ
 
PPTX
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
PPTX
Q2 Leading a Tableau User Group - Onboarding
lward7
 
PDF
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
PDF
Smart Air Quality Monitoring with Serrax AQM190 LITE
SERRAX TECHNOLOGIES LLP
 
PDF
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
PDF
Learn Computer Forensics, Second Edition
AnuraShantha7
 
PDF
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
PPTX
Top iOS App Development Company in the USA for Innovative Apps
SynapseIndia
 
PDF
Complete JavaScript Notes: From Basics to Advanced Concepts.pdf
haydendavispro
 
PPTX
MSP360 Backup Scheduling and Retention Best Practices.pptx
MSP360
 
PDF
Chris Elwell Woburn, MA - Passionate About IT Innovation
Chris Elwell Woburn, MA
 
PDF
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
PDF
SFWelly Summer 25 Release Highlights July 2025
Anna Loughnan Colquhoun
 
PPTX
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
PPTX
UiPath Academic Alliance Educator Panels: Session 2 - Business Analyst Content
DianaGray10
 
PDF
Windsurf Meetup Ottawa 2025-07-12 - Planning Mode at Reliza.pdf
Pavel Shukhman
 
PDF
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
CIFDAQ Weekly Market Wrap for 11th July 2025
CIFDAQ
 
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
Q2 Leading a Tableau User Group - Onboarding
lward7
 
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
Smart Air Quality Monitoring with Serrax AQM190 LITE
SERRAX TECHNOLOGIES LLP
 
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
Learn Computer Forensics, Second Edition
AnuraShantha7
 
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
Top iOS App Development Company in the USA for Innovative Apps
SynapseIndia
 
Complete JavaScript Notes: From Basics to Advanced Concepts.pdf
haydendavispro
 
MSP360 Backup Scheduling and Retention Best Practices.pptx
MSP360
 
Chris Elwell Woburn, MA - Passionate About IT Innovation
Chris Elwell Woburn, MA
 
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
SFWelly Summer 25 Release Highlights July 2025
Anna Loughnan Colquhoun
 
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
UiPath Academic Alliance Educator Panels: Session 2 - Business Analyst Content
DianaGray10
 
Windsurf Meetup Ottawa 2025-07-12 - Planning Mode at Reliza.pdf
Pavel Shukhman
 
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 

Linux internal

  • 1. Linux Internal By:- BOSS Team Member CDAC-chennai
  • 10. Introduction Operating System is a software designed to control the hardware of a system in order to allow users and application programs to make use of it.
  • 11. Linux is a free operating system based on UNIX standards.
  • 12. LINUX® is a registered trademark of Linus Torvalds.
  • 13. Features of Linux. Multiprogramming
  • 16. Fast
  • 17. Components of Linux System Architecture of the GNU/Linux operating system
  • 18. Components of a Linux System (Cont.)‏ When Linux is running in main memory,the it is divided in to two parts 1) User space. 2) Kernel space. User's applications are running in user space.
  • 19. Kernel is running in kernel space. The system libraries (e.g. glibc) define a standard set of functions through which applications interact with the kernel, and which implement much of the operating-system functionality that does not need the full privileges of kernel code.
  • 20. The Linux Kernel Kernel is a resource manager whether resource being managed is a process,memory,hardware device.
  • 21. Short history of Linux kernel development.
  • 22. Linux Kernel Types of Kernel Monolithic Kernel. (e.g. Linux kernel)‏
  • 23. Micro kernel (e.g. Windows NT kernel,Mach kernel etc.)‏
  • 24. Structure of monolithic and micro-kernel-based operating systems Monolithic kernel Micro Kernel
  • 25. Linux Kernel 2.6.x Characteristics that differ between the Linux kernel and other Unix variants: Dynamic loading of kernel module
  • 28. Linux does not differentiate between threads and normal processes.
  • 29. Linux provides an object-oriented device model with device classes,hotpluggable events and user-space device file system(sysfs).
  • 30. Linux Kernel Kernel version naming convention: Linux kernel currently consists of four numbers A.B.C[.D]
  • 31. The A number denotes the kernel version. It is changed least frequently, and only when major changes in the code and the concept of the kernel occur.
  • 32. The B number denotes the major revision of the kernel. If B is even then kernel is stable else it is unstable.
  • 33. The C number indicates the minor revision of the kernel is only changed when new drivers or features are introduced.
  • 34. minor fixes are handled by the D number.
  • 35. Linux kernel Block diagram of Linux Kernel.
  • 36. Linux Kernel- System Call Interface System call is the mechanism used by an application program to request service from the operating system.
  • 37. API is a function definition that specifies how to obtain a given service(ex.calloc,malloc ,free etc.), while System call is an explicit request to the kernel made via a software interrupt (ex.brk)‏
  • 38. Invoking a system call by user mode process.
  • 39. Linux Kernel-Process Management Process is a program in execution.
  • 40. Process is represented in OS by Process Control Block.
  • 41. Linux Kernel-Process Management Linux kernel stores the list of process in a circular doubly linked list called task_list.
  • 42. Each element in task list is a process descriptor of the type task_struct .
  • 43. task_struct structure is allocated via slab/slub allocator.
  • 44. Linux Kernel-Process Management Thread is a unit of execution or objects of activity within process.
  • 45. Thread is simply a new process that happens to share the same address space as its parent
  • 46. Process creation: fork () creates a child process that is a copy of current process. it differs in PID,PPID. exec() loads new executable in to address space. clone() creates a new process(LWP) with its own identity, but that is allowed to share the data structures of its parent.
  • 47. Process Termination: when process calls system call exit(). Process can also terminate involuntarily by signals or exceptions it can not handle or ignore.
  • 48. Linux Kernel-Process Management Process state is defined in part of current activity of that process
  • 49. The kernel implements a O(1) scheduler algorithm that operates in constant time, regardless of the number of threads vying for the CPU. It supports SMP.
  • 50. Linux Kernel-Memory Management Computer memory layout:
  • 51. Linux Kernel-Memory Management Linux’s physical memory-management system deals with allocating and freeing pages, groups of pages, and small blocks of memory. It has additional mechanisms for handling virtual memory, memory mapped into the address space of running processes.
  • 52. Splitting of Memory in a Buddy Heap
  • 53. Managing Physical Memory The page allocator allocates and frees all physical pages; it can allocate ranges of physically-contiguous pages on request. The allocator uses a buddy-heap algorithm to keep track of available physical pages. Each allocatable memory region is paired with an adjacent partner.
  • 54. Whenever two allocated partner regions are both freed up they are combined to form a larger region.
  • 55. If a small memory request cannot be satisfied by allocating an existing small free region, then a larger free region will be subdivided into two partners to satisfy the request. Memory allocations in the Linux kernel occur either statically (drivers reserve a contiguous area of memory during system boot time) or dynamically (via the page allocator).
  • 56. Virtual Memory The VM system maintains the address space visible to each process: It creates pages of virtual memory on demand, and manages the loading of those pages from disk or their swapping back out to disk as required.
  • 57. The VM manager maintains two separate views of a process’s address space: A logical view describing instructions concerning the layout of the address space. The address space consists of a set of non overlapping regions, each representing a continuous, page-aligned subset of the address space. A physical view of each address space which is stored in the hardware page tables for the process.
  • 61. File System A file system is the methods and data structures that an operating system uses to keep track of files on a disk or partition; that is, the way the files are organized on the disk.
  • 62. A file is an ordered string of bytes
  • 63. Files are organized in directory.
  • 64. File information like size,owner,access permission etc. are stored in a separate data structure called inode.
  • 65. Superblock is a data structure containing information about file system
  • 66. Filesystem The Virtual Filesystem (also known as Virtual Filesystem Switch or VFS) is a kernel software layer that handles all system calls related to a standard Unix filesystem. Its main strength is providing a common interface to several kinds of filesystems.
  • 67. ex. copy a file from MS-dos filesystem to Linux
  • 68. Filesystem file object stores information about the interaction between an open file and a process. This information exists only in kernel memory during the period when a process has the file open.
  • 72. command line utility for Filesystem maintenance
  • 76. Device Driver Device drivers take on a special role in the Linux kernel. They are distinct “black boxes” that make a particular piece of hardware respond to a well-defined internal programming interface; they hide completely the details of how the device works.
  • 77. Linux Device Driver are categorised in three types such as
  • 81. Network stack The network stack, by design, follows a layered architecture modeled after the protocols themselves. Recall that the Internet Protocol is the core network layer protocol that sits below the transport protocol . Above TCP is the sockets layer, which is invoked through the SCI.
  • 82. The sockets layer is the standard API to the networking subsystem and provides a user interface to a variety of networking protocols. From raw frame access to IP protocol data units and up to TCP and the User Datagram Protocol (UDP), the sockets layer provides a standardized way to manage connections and move data between endpoints.
  • 83. Architecture-dependent code While much of Linux is independent of the architecture on which it runs, there are elements that must consider the architecture for normal operation and for efficiency. The ./linux/arch subdirectory defines the architecture-dependent portion of the kernel source contained in a number of subdirectories that are specific to the architecture . For a typical desktop, the i386 directory is used. Each architecture subdirectory contains a number of other subdirectories that focus on a particular aspect of the kernel, such as boot, kernel, memory management, and others.
  • 84. Thank You