You are on page 1of 6

MANIPAL UNIVERSITY JAIPUR

School of Computing and Information Technology


Department of Computer and Communication Engineering
Course Hand-out
Operating Systems| CC2203| 4 Credits | 3 1 0 4
Session: Jan 23 – May 23 | Class: IV Semester

Dr. Renu Kumawat | Mr. Vivek Sharma

A. Introduction: This course is offered by Dept. of Computer and Communication 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


[CC2203.1]. Describe the objectives, structure, functionality and types of operating systems.
[CC2203.2]. Explain process, threads, scheduling, process synchronization, deadlocks, virtual memory, file system
[CC2203.3]. Apply various processes scheduling algorithms to solve scheduling problems.
[CC2203.4]. Use process synchronization and various deadlock handling strategies to solve resource allocation
problems.
[CC2203.5]. Evaluate the performance of different memory management techniques.
[CC2203.6]. Illustrate file concepts and compare various disk scheduling and storage strategies.

C. PROGRAM OUTCOMES AND PROGRAM SPECIFIC OUTCOMES


[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 team work: 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
PROGRAM SPECIFIC OUTCOMES
[PSO.1] Imbibe the basic concepts and applications of computer-based Communication or networking, information
sharing, signal processing, web-based systems, smart devices, and communication technology.
[PSO.2] Investigate prominent areas in the field of Computer and Communication Engineering to provide feasible
solutions.
[PSO.3] Apply the contextual knowledge in the field of Computing and Communication to assess social, health,
safety, and security issues relevant to the professional engineering practice.

• Assessment Plan:

Criteria Description Maximum Marks


Sessional Exam I (Closed Book) 20
Internal Assessment Sessional Exam II (Open Book) 20
(Summative) In class Quizzes (best 2 out of 3) and 20
Individual Assignments (2),
Group Assignment (1)
(Accumulated and Averaged)
End Term Exam End Term Exam (Close 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.

D. SYLLABUS

Introduction: evolution of operating system, classification of operating system, operating system structure, services,
functions, design and implementation, system programs, system calls, virtual machines, system boot; Processes:
concept, process scheduling, operations on processes, inter-process communication; Linux threads: basic concepts,
multithreaded models, thread libraries; CPU scheduling: scheduling criteria, scheduling algorithms, thread scheduling;
Process synchronization: concept of synchronization, critical section problem, Dekker’s algorithm, peterson’s
solution, synchronization hardware, semaphores, classical problems on synchronization, monitors; Deadlock:
deadlock concept, deadlock characterization, methods for handling deadlock, prevention, avoidance, detection,
recovery from deadlock; Memory management: concept of logical and physical memory, swapping, contiguous
memory allocation, paging, page table structure, segmentation, paging combined with segmentation, working of intel-
32/64; Virtual memory management: demand paging, copy-on write, page replacement, allocation of frames,
thrashing, memory mapped files, allocating kernel memory; Files: file concept, access methods, directory structure,
file system mounting, file sharing; Disk: architecture, scheduling algorithms; Security problem: program threats,
system and network threats; Case study: Linux / Solaris / Mac / Windows operating system.
References:

1. S. Tannenbaum, Modern Operating Systems, (4e), Pearson, 2014.


2. A. Silberschatz, P. B. Galvin, Operating System Concepts, (8e), International student version, Wiley, 2009.
3. W. Stallings, Operating Systems: Internals and Design Principles, (9e), Pearson, 2009.
4. H. Sibsankar, A. A. Alex, Operating Systems, (6e), Pearson, 2009.
5. W. Stallings, Operating Systems Design and Implementation, (3e), Prentice Hall Software Series, 2008.
6. J. A. Harris, Schaum’s Outline of Operating Systems, (2e), McGraw-Hill publications, 2002.
.
E. Lecture Plan:
Lecture No Topics Session Outcome Mode of Corresponding Mode of
Delivery CO Assessing the
Outcome
1 Introduction and Course Hand- To acquaint and clear Lecture NA NA
out briefing teachers’ expectations and
understand student
expectations
2,3, 4 Introduction: evolution of Describe the objectives, Lecture CC2203.1 Quiz
operating system, classification different types of operating MTE-1
of operating system, services, systems, functions and End Term
functions services
5,6 System structure: system Explain execution of Lecture CC2203.1 Quiz
programs, system calls, virtual system calls, interrupts, MTE-1
machines, system boot various operating system End Term
structures and booting
process
7,8,9,10,11 Process: Process Concept, Describe process state Lecture CC2203.2 Quiz
Process scheduling Operations transitions, process control MTE-1
on processes Inter-process block, and context End Term
Communication switching and write system Assignment
programs for process
creation, execution, inter-
process communication.
12,13,14,15 Multithreaded Programming: Describe significance of Lecture CC2203.2 Quiz
Linux threads: basic concepts, threads, multithreaded MTE-1
multithreaded models, thread models and write system End Term
libraries; programs using PThreads Programming
Assignment
14,15,16,17 CPU scheduling: Basic concepts, Compare various Lecture CC2203.3 Quiz
, 18,19 scheduling criteria, Scheduling algorithms used for Tutorial Mid Term I
Algorithms. process scheduling based End Term
on various scheduling Assignment
criteria Tutorial

FIRST SESSIONAL EXAM


20, 21, 22, Process Synchronization: Apply concepts related to Lecture CC2203.4 Quiz
23, 24, concept of synchronization, concurrency to achieve the Tutorial MTE-2
25,26 critical section problem, same for cooperating End Term
Dekker's algorithm, peterson’s processes Assignment
solution, synchronization Tutorial
hardware, semaphores,
classical problems on
synchronization, monitors
27, Deadlock: deadlock concept, Write programs for Lecture CC2203.4 Quiz
28,29,30 deadlock characterization, synchronization problems MTE-2
methods for handling End Term
deadlock, prevention, Assignment
Tutorial
avoidance, detection, recovery
from deadlock;
31, 32, 33, Memory management: Apply various deadlock Lecture CC2203.5 Quiz
34, 35 concept of logical and physical handling strategies to solve Tutorial MTE-2
memory, swapping, resource allocation End Term
contiguous memory allocation, problems Assignment
Tutorial
paging, page table structure,
segmentation, paging
combined with segmentation,
36, Virtual memory management: Evaluate the performance Lecture CC2203.5 Quiz
37,38,39,40 demand paging, copy-on of different memory Tutorial MTE-2
write, page replacement, management techniques End Term
allocation of frames, Assignment
thrashing, memory mapped Tutorial
files, allocating kernel
memory;
41,42,43 Files: file concept, access Describe the concept of Lecture CC2203.6 Quiz
methods, directory structure, virtual memory, and Tutorial End Term
file system mounting, file compare various page Tutorial
sharing; replacement algorithms
SECOND SESSIONAL EXAM
44, 45, 46, Disk: architecture, scheduling Compare various file Lecture CC2203.6 Quiz
algorithms; allocation methods and Tutorial End Term
free space management
techniques
47,48, 49 Security problem: program Analyse various disk Lecture CC2203.6 Quiz
threats, system and network scheduling strategies Tutorial End Term
threats;
50,51,52, Case study: Linux / Solaris / Apply various techniques Lecture CC2203.6 Quiz
Mac / Windows operating used for file security in Assignment
system. operating systems

END TERM EXAM


F. Course Articulation Matrix: (Mapping of COs with POs and PSOs)

CORRELATION WITH PROGRAM OUTCOMES CORRELATION WITH


CO PROGRAM SPECIFIC
STATEMENT OUTCOMES
PO PO PO PO PO PO PO PO PO PO PO PO PSO 1 PSO PSO
1 2 3 4 5 6 7 8 9 10 11 12 2 3
CC2203.1 Describe the 2 1 1 1
objectives,
structure,
functionality and
types of
operating
systems
CC2203.2 Explain process, 2 3 1 1 1 1 2 1
threads,
scheduling,
process
synchronization,
deadlocks,
virtual memory,
file system
CC2203.3 Apply various 2 3 3 1 1 1 1 2 2
processes
scheduling
algorithms to
solve scheduling
problems.
CC2203.4 Use process 2 3 3 1 1 1 1 2 2
synchronization
and various
deadlock
handling
strategies to
solve resource
allocation
problems.
CC2203.5 Evaluate the 2 2 2 1 1 1 1 2 2
performance of
different
memory
management
techniques.
CC2203.6 Illustrate file 2 2 2 1 1 1 2 1 1
concepts and
compare various
disk scheduling
and storage
strategies.
1- Low Correlation; 2- Moderate Correlation; 3- Substantial Correlation

You might also like