Subjects (AY: 2026-2027 Sem-1)
2
Theory of Computation
Automata, Languages & Computability
📄 Click here to view Syllabus
🟢 UNIT-I Active
Prerequisites:
- Discrete Mathematics
- Data Structures & Algorithms
- Mathematical Logic & Set Theory
- Digital Logic Design
Course Objectives:
- Understand finite automata, regular languages and their applications.
- Apply regular expressions and prove language properties using Pumping Lemma.
- Design context-free grammars, parse trees and normal forms.
- Understand pushdown automata and their equivalence to context-free languages.
- Analyse Turing machines, Church-Turing thesis, decidability and P vs NP.
Course Outcomes:
CO1Understand and design finite automata (DFA, NFA, ε-NFA) for regular languages.
CO2Apply regular expressions, Arden's theorem and Pumping Lemma to analyse formal languages.
CO3Design context-free grammars, construct parse trees and convert to CNF/GNF.
CO4Understand pushdown automata and establish equivalence with context-free grammars.
CO5Analyse Turing machines, decidability, Rice's theorem and computational complexity (P vs NP).
📝 Unit Notes
Theory of Computation — A Road MapK.L.P. Mishra & N. Chandrasekaran — Theory of Computer Science, 3rd Ed.
UNIT IFinite Automata
CO1
Intro to TOC
DFA
NFA
ε-NFA
DFA ↔ NFA Equivalence
Minimization of DFA
Mealy & Moore Machines
UNIT IIRegular Expressions
CO2
Regular Expressions
RE to FA Conversion
Arden's Theorem
Properties of RL
Pumping Lemma for RL
Chomsky Hierarchy
Applications of RL
UNIT IIIContext Free Grammars
CO3
CFG Definition
Parse Trees & Derivations
Ambiguous Grammars
Simplification of CFGs
Chomsky Normal Form
Greibach Normal Form
Pumping Lemma for CFLs
Closure Properties CFLs
UNIT IVPushdown Automata
CO4
PDA — 7-tuple
Instantaneous Description
Moves of PDA
DPDA vs NPDA
CFG to PDA
PDA to CFG
UNIT VTuring Machines
CO5
TM — Definition
Variants of TM
Church-Turing Thesis
Halting Problem
Rice's Theorem
Decidability & Undecidability
P vs NP Problem
Unit I
Unit II
Unit III
Unit IV
Unit V
💡 Click any topic to see CO-PO mapping
1
Current
Prerequisites:
- Data Structures & Algorithms
- Computer Organization & Architecture
- C / C++ Programming
- Discrete Mathematics
Course Objectives:
- Explain the services an OS provides to users, processes and other systems.
- Examine different process scheduling and synchronization algorithms.
- Demonstrate deadlock handling and prevention mechanisms.
- Apply and analyse memory management and virtual memory techniques.
- Examine file system implementation, I/O systems and security protection.
Course Outcomes:
CO1Illustrate the structure, functionality and services of an Operating System.
CO2Implement CPU scheduling algorithms and inter-process communication.
CO3Demonstrate process synchronization mechanisms and deadlock handling.
CO4Apply and analyse memory management and virtual memory mechanisms.
CO5Demonstrate file system structure, I/O management and OS protection.
Operating System Concepts — A Road MapSilberschatz, Galvin & Gagne — OS Concepts, 10th Ed.
UNIT IIntro to OS & Shell
CO1
Overview of OS
Types of OS
OS Structures
OS Services
System Calls
Virtual Machines
Shell Programming
UNIT IIProcess Management
CO2
Process Concept & PCB
Process Scheduling
Operations on Process
IPC
Client-Server Comm.
Threads & Multithreading
CPU Scheduling Algorithms
UNIT IIISync & Deadlock
CO3
Critical Section Problem
Peterson's Solution
Sync Hardware
Semaphores
Classical Problems
Monitors
Deadlock: Avoid, Detect & Recover
UNIT IVMemory Management
CO4
Logical vs Physical Addr.
Contiguous Allocation
Paging & TLBs
Segmentation
Swapping
Virtual Memory
Page Replacement & Thrashing
UNIT VFile Systems & Protection
CO5
File Concepts & Access Methods
Directory Structure
File System Implementation
Disk Scheduling
I/O Systems
Goals of Protection
Access Matrix
Unit I
Unit II
Unit III
Unit IV
Unit V
💡 Click any topic to see CO-PO mapping
3
OS Lab (23CM4212)
CN & OS Laboratory — OS Component | CSM-C | Every Monday 1:00–3:30 PM
Prerequisites:
- C Programming & Data Structures
- Operating Systems Theory (23CM4114)
- Basic Linux / Unix environment
- Computer Organization & Architecture
Course Objectives:
- Acquire knowledge of OS shell commands and develop proficiency in shell scripting.
- Learn and execute basic UNIX system calls for process management and IPC.
- Understand and implement process synchronization and deadlock algorithms.
- Simulate memory management and file management techniques programmatically.
- Solve problems related to page replacement and virtual memory management.
Course Outcomes:
CO1Execute UNIX shell programming on the given system and acquire skills in various system calls.
CO2Simulate process scheduling, synchronization, deadlock avoidance and detection algorithms.
CO3Simulate page replacement algorithms and virtual memory management techniques.
CO4Implement memory allocation strategies and file system management techniques.
OS Lab (23CM4212) — Experiment Road MapSilberschatz, Galvin & Gagne — OS Concepts, 10th Ed. | Platform: Linux + GCC + Bash
CO1Shell & System Calls
Wks 1–2
Exp 1: Shell Commands
Exp 2: Shell Scripts
Exp 3: fork() & IPC
CO2Scheduling & Sync
Wks 3–6
Exp 4: CPU Scheduling
Exp 5: Dining Philosophers
Exp 6: Producer-Consumer
Exp 7: Banker's Algorithm
CO3Virtual Memory
Wks 7–8
Exp 8: Page Replacement
Exp 9: Virtual Memory
CO4Memory & File Mgmt
Wks 9–11
Exp 10: First Fit & Best Fit
Exp 11: File Allocation
Exp 12: Bitmap
CO1 – Shell & System Calls (Exps 1–3)
CO2 – Scheduling & Sync (Exps 4–7)
CO3 – Virtual Memory (Exps 8–9)
CO4 – Memory & File Mgmt (Exps 10–12)
💡 Click any experiment to see CO-PO mapping | Click CO tag to view CO details