CSE2202 - OPERATING SYSTEMS - CourseHandout
CSE2202 - OPERATING SYSTEMS - CourseHandout
A. Introduction: This course is offered by Dept. of Computer Science and engineering as a department core subject. The
course provides a comprehensive understanding of Operating System principles, techniques and approaches used for
designing the software. The focus of the course is to make the students understand how various components of
operating system interact and provides services for execution of application software. Student will be apprised of
process management, deadlock, concurrency control, memory management, file management and I/O management in
detail, which will be beneficial for software development.
B. Course Outcomes: At the end of the course, students will be able to:
[2202.1]. Discuss the objectives, structure, functionality, and types of operating systems.
[2202.2]. Apply skills to develop system programs using file and process system calls and PThread API.
[2202.3]. Judge various process scheduling algorithms as per scheduling criteria.
[2202.4]. Examine concepts related to process synchronization and various deadlock handling strategies to solve
resource allocation problems.
[2202.5]. Distinguish different memory management techniques and page replacement algorithms.
[2202.6]. Describe file concepts and compare various disk scheduling and storage strategies.
[PO.1] Engineering knowledge: Apply the knowledge of mathematics, science, engineering fundamentals, and an
engineering specialization to the solution of complex engineering problems
[PO.2] Problem analysis: Identify, formulate, research literature, and analyze complex engineering problems
reaching substantiated conclusions using first principles of mathematics, natural sciences, and engineering
sciences
[PO.3] Design/development of solutions: Design solutions for complex engineering problems and design system
components or processes that meet the specified needs with appropriate consideration for the public health
and safety, and the cultural, societal, and environmental considerations
[PO.4] Conduct investigations of complex problems: Use research-based knowledge and research methods
including design of experiments, analysis and interpretation of data, and synthesis of the information to
provide valid conclusions
[PO.5] Modern tool usage: Create, select, and apply appropriate techniques, resources, and modern engineering
and IT tools including prediction and modeling to complex engineering activities with an understanding of
the limitations
[PO.6] The engineer and society: Apply reasoning informed by the contextual knowledge to assess societal, health,
safety, legal, and cultural issues and the consequent responsibilities relevant to the professional engineering
practice
[PO.7] Environment and sustainability: Understand the impact of the professional engineering solutions in
societal and environmental contexts, and demonstrate the knowledge of, and need for sustainable
development
[PO.8] Ethics: Apply ethical principles and commit to professional ethics and responsibilities and norms of the
engineering practices.
[PO.9] Individual and teamwork: Function effectively as an individual, and as a member or leader in diverse teams,
and in multidisciplinary settings
[PO.10] Communication: Communicate effectively on complex engineering activities with the engineering
community and with society at large, such as, being able to comprehend and write effective reports and
design documentation, make effective presentations, and give and receive clear instructions
[PO.11] Project management and finance: Demonstrate knowledge and understanding of the engineering and
management principles and apply these to one’s own work, as a member and leader in a team, to manage
projects and in multidisciplinary environments.
[PO.12] Life-long learning: Recognize the need for, and have the preparation and ability to engage in independent
and life-long learning in the broadest context of technological change
[PSO.1] Will be able to design, develop and implement efficient software for a given real life problem.
[PSO.2] Will be able to apply knowledge of AI, Machine Learning and Data Mining in analyzing big data for
extracting useful information from it and for performing predictive analysis.
[PSO.3] Will be able to design, manage and secure wired/ wireless computer networks for transfer and sharing of
information.
D. ASSESSMENT PLAN:
Criteria Description Maximum Marks
Sessional Exam I (Closed Book) 30
Internal Assessment Class Test and Assignments 30
(Summative) (Accumulated and Averaged) 20- (Two Class Test Before Mid-Term
and After Mid-Term)
5+5 (Average of two Assignments,
Attendance)
End Term Exam End Term Exam (Closed Book) 40
(Summative)
Total 100
Attendance A minimum of 75% Attendance is required to be maintained by a student to be
(Formative) qualified for taking up the End Semester examination. The allowance of 25%
includes all types of leaves including medical leaves.
Make up Assignments Students who miss a class will have to report to the teacher about the absence. A
(Formative) makeup assignment on the topic taught on the day of absence will be given which
has to be submitted within a week from the date of absence. No extensions will be
given on this. The attendance for that day of absence will be marked blank, so that
the student is not accounted for absence. These assignments are limited to a
maximum of 5 throughout the entire semester.
Homework/ Home Assignment/ There are situations where a student may have to work in home, especially before a
Activity Assignment flipped classroom. Although these works are not graded with marks. However, a
(Formative) student is expected to participate and perform these assignments with full zeal since
the activity/ flipped classroom participation by a student will be assessed and marks
will be awarded.
E. SYLLABUS
Introduction: Definition of operating systems, Single and multi-processor systems, Operating system services, System
commands and system calls, Interrupt, System boot, Operating system structure, Types of OS, Multi-user, Multitasking,
Embedded, Real-time, Network, Distributed; Process and Thread: Process concept, Operations on processes, Inter-
process communication, UNIX pipes, Multithreading, Multithreaded models, Programs using PThread; Process
Scheduling: Basic concepts, Scheduling criteria, Scheduling algorithms; Synchronization: Critical section problem,
Dekker’s algorithm, Peterson solution, Synchronization hardware, Semaphores, Classical problems of synchronization,
Deadlock, Methods for handling deadlock- prevention, avoidance, detection, and recovery; Memory Management:
Address binding, Logical vs Physical address space, Swapping, Contiguous memory allocation, Paging, Structure of Page
Table, Segmentation, Demand Paging, Page Replacement Policies, Allocation of Frames, Thrashing; File System
Interface and Implementation: File Concept, Access Methods, Directory and Disk Structure, File System Mounting,
File System Structure, File System Implementation, Allocation Methods, Free Space Management; Disk Management:
Disk Scheduling Algorithms, Disk Management, Swap Space Management; Case Studies: Linux, Windows, iOS,
Android.
References:
1. A. Silberschatz, P. B. Galvin, G. Gagne, Operating System Concepts, (9e), Wiley, 2014.
2. A.S. Tanenbaum, H. Bos, Modern Operating Systems, (4e), Pearson, 2015.
3. W. Stallings, Operating Systems: Internals and Design Principles, (9e), Pearson, 2018.
F. Lecture Plan:
Lecture No Topics Session Outcome Mode of Corresponding Mode of Assessing
Delivery CO the Outcome
1 Introduction and Course To acquaint and clear Lecture NA NA
Hand-out briefing teachers’ expectations and
understand student
expectations
2,3 Introduction: Definition of Discuss the objectives of Lecture 2202.1 Quiz
operating systems, Single OS, dual mode CPU MTE-1
and multi-processor systems, operation, execution of End Term
Operating system Services, system calls, interrupts, and
System commands and booting process.
system calls, Interrupt,
System boot.
4,5 OS Structure: Simple, Distinguish various Lecture 2202.1 Quiz
Layered, Microkernel, operating system structures MTE-1
Hybrid, Modules, Types of and types of operating End Term
OS, Multi-user, Multitasking, systems.
Embedded, Real-time,
Network, Distributed.
6 Tutorial
7,8,9,10 Process: Process Concept, Describe process state Lecture 2202.2 Quiz
Process scheduling transitions, process control MTE-1
Operations on processes block, and context End Term
Inter-process switching and write system Programming
Communication, Unix Pipes programs for process Assignment
creation, execution, inter-
process communication.
11 Tutorial
12,13,14 Multithreaded Describe significance of Lecture 2202.2 Quiz
Programming: Overview, threads, multithreaded MTE-1
multithreaded models Thread models and write system End Term
libraries Programs using programs using PThreads Programming
Pthreads Assignment
15, 16, 17, Process scheduling: Basic Judge various algorithms Lecture 2202.3 Quiz
18 concepts, scheduling criteria, used for process scheduling Tutorial Mid Term I
Scheduling Algorithms. based on various End Term
scheduling criteria
19, 20, 21, Process Synchronization: Apply concepts related to Lecture 2202.4 Quiz
22, 23 Background, Critical section concurrency to achieve the Tutorial MTE-1
problem Peterson’s solution same for cooperating End Term
Synchronization Hardware, processes.
Semaphores, Classical
problems of synchronization.
24, 25 Synchronization Programs Write programs for Lecture 2202.4 Quiz
using PThreads synchronization problems. MTE-1
End Term
Project
26, 27, 28, Deadlocks: System model, Apply various deadlock Lecture 2202.4 Quiz
29 Deadlock Characterization, handling strategies to solve Tutorial MTE-1
Methods for handling resource allocation End Term
deadlocks, Deadlock problems.
prevention, Deadlock
avoidance, Deadlock
detection, Recovery from
deadlock.
30, 31, 32, Memory Management: Distinguish between Lecture 2202.5 Quiz
33, 34 Background, Swapping, different memory Tutorial End Term
Contiguous Memory management techniques.
Allocation, Paging, Structure
of Page Table, Segmentation,
35, 36, 37, Demand Paging, Page Describe the concept of Lecture 2202.5 Quiz
38, 39 Replacement Policies, virtual memory, and Tutorial End Term
Allocation of Frames, compare various page
Thrashing. replacement algorithms
40, 41, 42, File System Interface and Compare various file Lecture 2202.6 Quiz
43, 44, 45 Implementation: File allocation methods and free Tutorial End Term
Concept, Access Methods, space management
Directory and Disk Structure, techniques.
File System Mounting, File
System Structure, File
System Implementation,
Space Allocation Methods
for Files, Free Space
Management.
46, 47, 48 Disk Management: Disk Compare various disk Lecture 2202.6 Quiz
Scheduling Algorithms, Disk scheduling algorithms. Tutorial End Term
Management, Swap Space
Management.
49,50 Case Studies: Linux, Case Study for multiple Lecture 2202.6 Quiz
Windows, iOS, Android Operating System Tutorial End Term
G. Course Articulation Matrix: (Mapping of COs with POs)