Open In App

Operating System Tutorial

Last Updated : 31 Jan, 2025
Comments
Improve
Suggest changes
Like Article
Like
Report

An Operating System(OS) is a software that manages and handles hardware and software resources of a computing device.

  • Responsible for managing and controlling all the activities and sharing of computer resources among different running applications.
  • A low-level Software that includes all the basic functions like processor management, memory management, file management, etc.
  • It mainly acts a government for your system that has different departments to manage different resources.
  • Examples are Linux, Unix, Windows 11, MS DOS, Android, macOS and iOS.
OS1

Basics :

  1. Introduction
  2. Types of OS
  3. Functions of OS
  4. System Initialization
  5. Kernel in OS
  6. System Call
  7. Privileged Instructions

Process Scheduling :

  1. Process Introduction
  2. Process Creation and Deletion
  3. States of a Process
  4. Process Table and Control Block
  5. Types of Processes in Process Table
  6. Process Management Introduction
  7. Process Scheduler
  8. CPU Scheduling Algorithms
  9. Preemptive vs Non-Preemptive
  10. Time spent in Context Switch
  11. Dispatcher vs scheduler
  12. Starvation and Aging in Operating Systems

>> Quiz on CPU Scheduling

Process Synchronization

  1. Inter Process Communication
  2. Introduction to Process Synchronization
  3. Critical Section
  4. Peterson’s Algorithm in Process Synchronization
  5. Lock variable synchronization mechanism
  6. Semaphores in operating system
  7. Classical IPC Problems 
  8. Communication using signals in C
  9. Mutex vs. Semaphore
  10. Monitors for Process Synchronization
  11. Dekker’s algorithm
  12. Bakery Algorithm
  13. Mutex lock for Linux Thread Synchronization
  14. Priority Inversion

>> Quiz on Process Management in OS

Deadlock :

  1. Deadlock Introduction
  2. Deadlock Prevention And Avoidance
  3. Deadlock Detection And Recovery
  4. Banker’s Algorithm
  5. Deadlock, Starvation, and Livelock
  6. Resource Allocation Graph (RAG)
  7. Methods of resource allocation to processes by operating system
  8. Program for Deadlock free condition in Operating System
  9. Deadlock detection in Distributed systems
  10. Techniques used in centralized approach of deadlock detection in distributed systems

>> Quiz on Deadlock

Multithreading:

  1. Operating System | Thread
  2. Threads and its types
  3. Operating System | User Level thread Vs Kernel Level thread
  4. Process-based and Thread-based Multitasking
  5. Multi threading models
  6. Benefits of Multithreading
  7. Operating System | Remote Procedure call (RPC)

Memory Management :

  1. Introduction to memory and memory units
  2. Memory Management in Operating System
  3. Buddy System: Memory allocation technique
  4. Paging
  5. Segmentation
  6. Virtual Memory
  7. Memory Interleaving
  8. Operating system based Virtualization
  9. Swap Space
  10. Page Fault Handling
  11. Memory Segmentation in 8086 Microprocessor
  12. Program for Next Fit algorithm in Memory Management
  13. Overlays in Memory Management
  14. Belady’s Anomaly
  15. Page Replacement Algorithms
  16. Second Chance (or Clock) Page Replacement Policy
  17. Allocating kernel memory (buddy system and slab system)
  18. Static and Dynamic Libraries | Set 1
  19. Working with Shared Libraries | Set 1
  20. Named Pipe or FIFO with example C program
  21. Tracing memory usage in Linux

>> Quiz on Memory Management

Disk Management:

  1. File Systems
  2. Unix File System
  3. Implementing Directory Management using Shell Script
  4. File Directory | Path Name
  5. Structures of Directory
  6. File Allocation Methods
  7. File Access Methods
  8. Secondary memory
  9. Secondary memory – Hard disk drive
  10. Disk Scheduling Algorithms
  11. Program for SSTF disk scheduling algorithm
  12. What exactly Spooling is all about?
  13. Difference between Spooling and Buffering
  14. Free space management

>> Quiz on Input Output Systems

Misc

  1. Computer Memory
  2. Introduction to UNIX System
  3. Microkernel
  4. Kernel I/O Subsystem (I/O System)
  5. Important Linux Commands (leave, diff, cal, ncal, locate and ln)
  6. Process states and Transitions in a UNIX Process
  7. Introduction to Linux Shell and Shell Scripting
  8. ‘crontab’ in Linux with Examples
  9. indepth and maxdepth in Linux find() command for limiting search to a specific directory.
  10. Real time systems
  11. Tasks in Real Time systems
  12. Monolithic Kernel and key differences from Microkernel
  13. Get/Set process resource limits in C
  14. Dual Mode operations in OS

Types of Operating System

  • Batch OS (e.g. Transactions Process, Payroll System, etc.)
  • Multi-programmed OS(e.g. Windows, UNIX, macOS, etc.)
  • Timesharing OS(e.g. Multics, Linux, etc.)
  • Real-Time OS(e.g. PSOS, VRTX, etc.)
  • Distributed OS(e.g. LOCUS, Solaris, etc.)

Operating System Functions

  • Memory and processor Management
  • Network Management
  • Security Management
  • File Management
  • Error Detection
  • Job Accounting

Article Tags :

Similar Reads