Operating Systems
Semester IV · BCA 251 · 3 credits
0 / 10
chapters done
-
The syllabus asks for
- What is an operating system?
- History and generations of operating systems
- Types of operating systems
- Functions of an operating system
- Key hardware ideas an OS relies on
- Seeing the ideas: three machines, two roles, one utilisation curve
Key points
- An OS is the privileged layer that manages hardware and offers abstractions (files, processes, address spaces) to applications.
- It acts both as an extended machine and as a resource manager.
- OS history is a history of keeping the CPU busy: batch, multiprogramming, time-sharing, personal computers, distributed and mobile systems.
- Batch, time-sharing, real-time, distributed, network, embedded and mobile OS types differ in their main goal: throughput, response time, deadlines, transparency, or power and footprint.
- Interrupts, a timer, protection registers and the user/kernel mode bit are the hardware that makes an OS possible.
-
The syllabus asks for
- System components and system calls
- Monolithic and layered structure
- The kernel and its types
- Client-server model
- Virtual machines
- The shell
- Seeing the ideas: shells, kernels and hypervisors
Key points
- System calls are the controlled entry into the kernel; most programs use APIs built on them.
- Monolithic kernels trade safety for speed; layered designs make verification easy; microkernels move services to user space for reliability; exokernels expose raw hardware.
- The client-server model and VMs extend the same idea of separating services from each other.
- The shell is only a program; the kernel is what makes it possible.
-
The syllabus asks for
- Process concepts
- Threads
- Inter-process communication and synchronization
- Process scheduling
- Seeing the ideas: states, races, semaphores and schedules
Key points
- A process is a program in execution described by a PCB; it moves among new, ready, running, waiting and terminated; fork, exec, wait and exit manage it.
- Threads share the address space but have their own stacks and registers; one-to-one is the dominant model.
- Unsynchronised access to shared data creates race conditions; the critical-section solution needs mutual exclusion, progress and bounded waiting. Peterson and TSL use busy waiting; semaphores, monitors and message passing block instead.
- The classical problems (bounded buffer, dining philosophers, readers-writers, sleeping barber) are templates for real synchronization bugs. Two-phase locking and timestamps give serializable transaction schedules.
- Scheduling algorithms trade throughput, turnaround, waiting and response time: SJF/SRTF minimise waiting, RR gives fairness, MLFQ adapts, RMS/EDF handle deadlines.
-
The syllabus asks for
- System model and resources
- Deadlock modelling: the resource-allocation graph
- The ostrich algorithm and methods of handling deadlocks
- Deadlock prevention
- Deadlock avoidance
- Deadlock detection
- Recovery from deadlock
- Seeing the ideas: gridlock, graphs and the Banker
Key points
- Deadlock needs mutual exclusion, hold-and-wait, no preemption and circular wait; breaking any one prevents it.
- RAGs show deadlocks as cycles (certain with single instances).
- Strategies: ostrich, prevention (ordering resources is most practical), avoidance (Banker's), detection with recovery.
- The Banker's algorithm keeps the system in safe states using maximum claims. Detection uses the same logic with current requests.
- Recovery means killing processes or preempting resources, while watching out for starvation.
-
The syllabus asks for
- Basic memory management
- Paging
- Virtual memory
- Segmentation
- Seeing the ideas: memory, swap space and the page table
Key points
- The MMU maps logical to physical addresses; base and limit registers give relocation and protection.
- Contiguous allocation suffers fragmentation; fit strategies, coalescing and compaction mitigate it.
- Paging removes external fragmentation; page tables are made practical by multilevel, hashed and inverted structures and the TLB.
- Demand paging loads pages on first use; page faults are costly, so the replacement policy matters. OPT is a lower bound, LRU approximates it, FIFO is simple but anomalous.
- Thrashing results when working sets do not fit; segmentation offers a programmer's view and combines with paging.
-
The syllabus asks for
- Principles of I/O hardware
- Principles of I/O software
- I/O software layers
- Disk hardware and disk scheduling
- Seeing the ideas: interrupt controllers, disks and head movement
Key points
- Devices are block or character; each has a controller reached through ports or memory-mapped registers.
- DMA lets the controller move whole blocks and interrupt the CPU once.
- I/O software aims for device independence, uniform naming, buffering and error handling; it is layered (handler, driver, device-independent, user).
- Disk time is dominated by seek and rotation, so the arm is scheduled: SSTF is greedy, SCAN and C-SCAN sweep, LOOK variants save needless travel.
-
The syllabus asks for
- File concept
- Directories
- Access methods
- File-system layout and allocation (what the interface hides)
- Protection
- Seeing the ideas: tapes, card indexes and directory trees
Key points
- A file is a named, persistent collection of bytes with attributes; a file descriptor is the handle returned by open.
- Directories are organised as trees (or graphs with links); paths are absolute or relative.
- Access is sequential or direct. Inodes, linked and contiguous allocation are the implementations behind the interface.
- Protection uses permission bits, ACLs and capabilities, ideally with least privilege.
-
The syllabus asks for
- The security problem
- User authentication
- User authorization
- Program threats
- System threats
- Seeing the ideas: tokens, keys, fingerprints and attacks
Key points
- Security aims at confidentiality, integrity and availability and must be applied at physical, human, OS and network levels.
- Passwords are weak against guessing and brute force; they must be stored salted and hashed; longer is far better than "complex".
- OTPs (HOTP/TOTP), tokens and biometrics add factors; authorization applies least privilege after login.
- Program threats (Trojan, trap door, buffer overflow) abuse trust in code; system threats (viruses, worms, DoS) abuse trust in the network and the host.
-
The syllabus asks for
- Introduction
- Hardware and software concepts
- Communication in distributed systems
- Processes and threads in distributed systems
- Clock synchronization
- Seeing the ideas: nodes, clocks and message diagrams
Key points
- A distributed system is independent computers that look like one; it gives economy, speed, reliability and growth at the price of complexity, networking and security problems.
- Hardware divides into multiprocessors and multicomputers; software into network OS, distributed OS and middleware.
- Message passing and RPC are the basic communication tools; RPC hides messaging but not failures or latency.
- Clocks drift, so Cristian's and Berkeley's algorithms and NTP synchronise physical clocks, while Lamport clocks give a consistent order of events.
-
The syllabus asks for
- MS-DOS
- Windows
- UNIX
- Linux
- Comparison
- Seeing the ideas: four systems side by side
Key points
- MS-DOS shows what a minimal OS looks like and why protection and multitasking were needed.
- Windows NT adds a layered hybrid design, preemptive priority scheduling, NTFS and a security model with ACLs.
- UNIX contributed portability, a unified file abstraction and small cooperating tools.
- Linux combines the UNIX design with open-source development, loadable modules and a fair scheduler.
No chapter matches. Try another word.
The paper
TU assessment: 60% final examination set by the university, 40% internal (assignments, lab work, attendance). Confirm the split in your college's notice.
Where the hours go
Teaching hours are the board's guide to how much of the paper each part carries.
- Unit 3 · Process Management15 h
- Unit 5 · Memory Management7 h
- Unit 4 · Deadlocks4 h
- Unit 6 · Input/Output Device Management4 h
- Unit 9 · Distributed Operating Systems4 h
- Unit 8 · Security Management3 h
- Unit 1 · Introduction to Operating Systems2 h
- Unit 2 · Operating System Structure2 h
- Unit 7 · File System Interface Management2 h
- Unit 10 · Case Study: DOS, Windows, UNIX and Linux2 h