|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
fork and
exec family of instructions.
Discussion on absolute addresses (and the need for them), and
logical addresses.
|
|
|
|
|
clone() system call to treat
processes and threads alike, and the copy-on-write poilcy.
Discussion on returning more than one parameter, and why is a subroutine also known as a function. Discussion on `name-mangling' of functions (polymorphism of functions in an OOPS invironment), and having a variable number of parameters. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
clone() system call.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Real-Time Scheduling. Hard and Soft Real Time. Physical constraints. Rate-Monotonic Scheduling. Earliest-Deadline First (EDF) Scheduling. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Basic structure of a synchronisation problem, three basic points. |
|
|
|
|
Synchronisation hardware: the TestAndSet instruction.
An example of an n- process synchronisation problem with TestAndSet .
|
|
|
|
|
TestAndSet (contd.)
The de facto standard for synchronisation primitives: semaphores and mutexes. Definitions. Issues in atomicity on a single core single processor system. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Sequentialisation/Serialisation through Semaphores. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Deadlock Avoidance (contd): The second subroutine of Banker's Algorithm for Deadlock Avoidance: the resource request algorithm (which in turn, uses the safety algorithm). Illustrations of Banker's Algorithm for Deadlock Avoidance. Deadlock Detection: Banker's Algorithm for Deadlock Detection. Deadlock Recovery: Deadlock Recovery Techniques. What do OSs do in cases of deadlocks? |
|
|
Deadlock Detection [SGG: Section 7.6 Deadlock Detection (all sub-sections)] Deadlock Recovery [SGG: Section 7.7 Recovery from Deadlock (all sub-sections)] The textbook's slides web page has a link to all slides in the PPT and PDF formats. |
|
Virtual Memory and Caches: Similarities and Differences. Review of cache organisations (Direct-Mapped, Fully Associative, Set-Associative). The Write-back policy for cache writes. Why is Write-Through not feasible for Virtual Memory? Paging: Introduction to Virtual Memory with a simple paging example. Basic concepts. Prominent features of paging. Large page tables. Segmentation: Basic Concepts. Hybrid strategies in Paging and Segmentation. Miscellaneous Concepts: Background: Protection, Address Binding, Logical-versus-Physical Address Space, Dynamic Loading, Dyniamic Linking and Shared Libraries. Swapping. Contiguous Memory Allocation: Fragmentation. Page Replacement: Introduction. Demand Paging. Copy-on-Write. Page Replacement: Introduction. Thrashing. Common page replacement algorithms: FIFO and Belady's Anomaly, Optimal Page Replacement, LRU Page Replacement, LRU Approximations. Others: Frequency-based Page Replacement, LRU Approximations, Kernel Memory Allocation. |
|
|
Paging: [For an introduction, please refer to some lecture notes, which the instructor will send out over email.] [SGG: One may skim through the material in Sections 8.5.1 Basic Paging, 8.5.3 Protection and 8.5.4 Shared Pages.] [Large Page Tables: SGG: Section 8.6 Structure of the Page Table. Instead of Section 8.6.1 Hierarchical Paging, please refer to the lecture notes which the instructor will send out over email. SGG: Sections 8.6.2 Hashed Page Tables and 8.6.3 Inverted Page Tables: basic concepts. Segmentation: [SGG: Section 8.4 Segmentation: basic concepts] Miscellaneous Concepts: [SGG: Sections 8.1 Background, 8.2 Swapping, 8.3 Contiguous Memory Allocation] Page Replacement: [SGG: Sections 9.1 (skim through), 9.2 Demand Paging: 9.2.1 Basic Concepts, 9.3 Copy-on-Write, 9.4 Page Replacement, 9.6 Thrashing, 9.6.1 Cause of Thrashing, 9.8 Allocating Kernel Memory] The textbook's slides web page has a link to all slides in the PPT and PDF formats. |
|
File Systems: Organisation, Data Structures, Allocation. Implementing File-Systems: Free Space Management, Performance, Opening, Closing, Partitions, Mounting. Unified Buffer Cache, Log structure file systems. Mass-Storage Structure: Secondary structure devices and bus protocols (EIDE, ATA, SATA, USB, FC, SCSI), Disk Structures, Disk Scheduling, Formatting, Boot blocks, bad blocks, RAID. |
|
|
Implementing File-Systems: [SGG: Sections 11.1 File-System Structure, 11.2 File-System Implementation, 11.3 Directory Implementation, 11.4 Allocation Methods, 11.5 Free-Space Management, 11.6 Efficiency and Performance, 11.7 Recovery, 11.8 NFS, 11.9 Example: The WAFL File System] Mass-Storage Structure: [SGG: Sections 12.1 Overview of Mass-Storage Structure, 12.2 Disk Structure, 12.3 Disk Attachment, 12.4 Disk Scheduling, 12.5 Disk Management, 12.6 Swap-Space Management, 12.7 RAID Structure] The textbook's slides web page has a link to all slides in the PPT and PDF formats. |
|
Measures of performance evaluation. The A/B/n model for client-server systems: an introduction. M/M/1 systems. The Poisson Distribution for the arrival process. The Exponential Distribution for the service time distribution. Steady State situation, Little's Law. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ELL783 Evaluation: Programming Assignment Groups,
Assignment/Examination-related Information
[Internal Link: IIT Delhi]
ELL783 Grades (Anonymised)