Course Content
Module 1: Introduction to Operating Systems and UNIX
Overview of Operating Systems: Functions, types, and components
Introduction to UNIX/Linux Systems: History, architecture, shell environments
Basic UNIX Commands: File handling (ls, cp, mv, rm), directory navigation (cd, pwd),
permissions (chmod, chown)
Module 2: Process Management
Processes and Process Control: Process states, lifecycle, and process control blocks
UNIX Process Commands: ps, top, kill, bg, fg, jobs
Process Scheduling Algorithms: First-Come-First-Served (FCFS), Shortest Job First (SJF),
Round Robin (RR)
UNIX System Calls for Process Management: fork(), exec(), wait(), exit()
Module 3: Memory Management
Memory Allocation Strategies: Contiguous, paging, and segmentation
Virtual Memory: Paging, page tables, and page replacement algorithms
Memory Management in UNIX: free, top, vmstat, ulimit
Swapping and Paging: swap, swap space management in UNIX
Module 4: File System Management
File System Structure: Inodes, directories, file metadata
File Operations: Open, read, write, close, delete
UNIX File Commands: ls, cat, cp, rm, ln
File Permissions and Ownership: chmod, chown, umask
Disk Scheduling Algorithms: FCFS, SSTF, SCAN, C-SCAN, LOOK, C-LOOK
Module 5: Inter-Process Communication (IPC)
IPC Basics: Shared memory, message passing, semaphores
UNIX IPC Mechanisms: Pipes, named pipes (mkfifo), message queues, semaphores
Synchronization Algorithms: Mutexes, semaphores, monitors, critical sections
UNIX Commands for IPC: ipcs, ipcrm, nc, shmget(), msgget()
Module 6: Scheduling Algorithms
CPU Scheduling Concepts: Scheduling criteria, throughput, waiting time, turn-around time
UNIX Scheduling: Priority scheduling, time-sharing
Advanced Scheduling Algorithms: Multilevel Queue Scheduling, Multilevel Feedback Queue
Scheduling
Real-Time Scheduling: Rate-Monotonic Scheduling, Earliest Deadline First