0% found this document useful (0 votes)
18 views

CSC 2209 Operating Systems_Summer2019

Uploaded by

Sadatur Rahman
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
18 views

CSC 2209 Operating Systems_Summer2019

Uploaded by

Sadatur Rahman
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

AMERICAN INTERNATIONAL UNIVERSITY-BANGLADESH

(AIUB)
Faculty of Science and Technology (FST)
Department of Computer Science (CS)
Undergraduate Program

COURSE PLAN Summer 2018-2019 SEMESTER

I. Course Core and Title V. Vision:


Our vision is to be the preeminent Department of Computer
CSC 2209: Operating Systems
Science through creating recognized professionals who will
II. Credit provide innovative solutions by leveraging contemporary
research methods and development techniques of computing
5 credit hours (2 hours theory and 3 hours Laboratory per
American International University-Bangladesh (AIUB)

that is in line with the national and global context.


week) VI. Mission:
The mission of the Department of Computer Science of AIUB
III. Nature
is to educate students in a student-centric dynamic learning
Core Course for CS, CSE, CSSE, SE, CIS environment; to provide advanced facilities for conducting
innovative research and development to meet the challenges of
IV. Prerequisite
the modern era of computing, and to motivate them towards a
CSC 2106: Computer Organization and Architecture life-long learning process.

VII - Course Description:


 Explain modern operating systems.
(The course will begin with an overview of the structure of modern operating systems.)
 Describe the fundamental concepts and issues involved in operating system design, and explain
about the basic services provided by operating systems in general.
(We will focus on UNIX-based operating systems, though we will also learn about alternative
operating systems, including Windows.)
 Discuss the history of modern computers, analyze in detail each of the major components of an
operating system (from processes to threads), and explore more advanced topics in the field,
including memory management and file input/output.
(Topics include process description and control, critical sections and mutual exclusion, deadlock,
process scheduling, threads, process synchronization, semaphores and memory management
strategies)
 Present two central building blocks of modern operating systems: Processes and Threads.
Processes (instances of a running computer program) and threads (a specific task running within a
program) are integral to the understanding of how an OS executes a program and the communication
of information between each of the computer's architectural layers. We will start with an overview
of each concept, including definitions, uses, and types.
 Differentiate between processes and threads.
 Explain process on Context Switching and the important role they play in CPU scheduling, which
will be discussed more in depth in scheduling lecture.
 Analyze process synchronization methods and techniques.
 Justify and explain different levels of access control, operating system protection and security.
 Analyze CPU scheduling algorithm.
 Categorize different scheduling algorithms and justify a good algorithm which will allocate
resources, allowing an efficient execution of all running programs.
 Describe Deadlock in Operating system. Relate Deadlock with previous two units of CPU
Scheduling and Processes and Threads.
© Dept. of Computer Science, FST, AMERICAN INTERNATIONAL UNIVERSITY-BANGLADESH (AIUB) 1
 Analyze different algorithms to prevent Deadlock.
 Discuss about deadlock detection, as well as methods for recovering from a deadlocked state.
 Discuss the role of memory in an Operating System.
 Implement error-handling techniques using exception handling.
 Create multithreaded programs and explain the advantage compared with single threaded programs.

VIII – Course outcomes (CO) Matrix:

By the end of this course, students should be able to:


CO CO Definition Blooms Blooms PO Assessment
Level Learning Level Map Method
C P A
CO1 Comprehend how different types of the 2 C 2.1 CT
modern operating system works, their
underlying fundamental concepts,
techniques, and applications.
Distinguishing how these different
techniques and algorithms are used to
achieve optimum hardware and software
resource utilization.
CO2 Compare different types of CPU 4 C P 2.2 Midterm Exam
Scheduling, Process Management,
Synchronization, deadlock handling
mechanisms to get the optimum resource
allocation and utilization.
CO3 Apply various shell commands and system 3 P A 3.1 Lab
calls to implement ShellScripts for various (TS
fundamental task automation. )
CO4 Justify and explain user access control, OS 5 C P 3.2 Final Exam
security, and protection mechanisms to
prevent operating system vulnerability
and to ensure the OS stability. Compare
virtual, cloud, and distributed OS, etc.
C: Cognitive; P: Psychomotor; A: Affective; S: Soft-skills (CT: Critical Thinking, TS: Teamwork)
*The numbers under the ‘Level of Domain’ columns represent the level of Bloom’s Taxonomy each CO corresponds to.
** The numbers under the ‘PO Assessed’ column represent the PO each CO corresponds to.

PO2 2.1 Identify, Research and Formulate complex engineering problems


2.2 Analyse and Reach substantiated conclusions using the principle of mathematics, the natural
sciences and the engineering sciences
PO3 3.1 Design solution for complex engineering problems
3.2 Design system components or processes that meet the specified needs with appropriate
consideration for public health and safety and of cultural, societal and environmental concerns

CSC 2209: Operating Systems (OS) 2


IX – Topics to be covered in Theory class*:

Specific Time Suggested Teaching CO


TOPICS
Objective(s) Frame Activities Strategy(s) mapped
Operating • Knowing Mission
Systems & Vision of AIUB.
overview • Understand basic Lecture
Justifying, Group
applications of Study
Subject Topic: operating system. LAB:
Basic definition of • Understand the
Operating System Introduction about
(OS) and its
functions of OS Lab, Lab rules, Lecture
different Multiprogramming, Safety issues. notes,
applications. Batched Systems, Week
question- CO1
Time-Sharing 1&2 Environment setup:
Lab: answer
Systems, Personal- Virtual machine
Study of UNIX session.
commands with all
Computer Systems, setup for Linux.
their important Parallel Systems,
options. Distributed Systems, Some basic Linux
Real-Time Systems. based commands
• Use basic
commands for Linux
operating system.
Computer
System
Overview and
System
American International University-Bangladesh (AIUB)

Structure
Subject Topic:
Basic OS Lecture
hardware & Justifying, Group
software Study, Perform
components; • Understand basic Exercise
functions & operations of LAB :
features of an Computer-System Learn basic Unix
Operation, I/O commands such as
OS, interrupts,
Structure, Hardware
copying/move a file, Lecture
types of create a file, write on
Protection, General notes,
interrupts, Week a file, changing
System Architecture. question & CO1
interrupt 3 directories, changing answer
handling; permission of session.
interrupt • Apply Linux directories and files
processing, commands to etc.
multiple perform some basic
interrupt tasks via terminal. Lab exercise-1
processing and
I/O concept. Quiz 1 on 3nd
Properties of Week
modern OS,
Microkernel
architecture &
symmetric
multiprocessing.

© Dept. of Computer Science, FST, AMERICAN INTERNATIONAL UNIVERSITY-BANGLADESH (AIUB) 3


Processes •Explain processes
Concept
and its applications
Subject Topic: in operating system. Lecture
Process • Explain system Lab:
Concepts, calls related to Get more familiar
Process with linux
process and process
Scheduling, commands, work on Lecture
Operation on control.
some editors such as notes,
Processes, •. Week
Cooperating
Vim and Nano. question- CO2
4
Processes, answer
Threads, Inter-
• Relate Context Quiz 2 on 4th session.
process Switching with Week
Communication. process state
diagram and the
Lab: Study important role they Lab Exercise
system calls
related to process
play in CPU
& process control scheduling.
Multithreaded • To learn thread,
Programming multicore
programming and
Subject Topic: their benefits.
Multithreading • To learn about
model, thread multithreading Lecture Lecture
models. LAB :
library, notes,
Utilize scripting
threading issues. • To learn about Week 5 language to manage
question- CO2
different thread process and create answer
Lab: Utilize libraries make file. session.
scripting • To learn how to
language to implement scripting
erican International University-Bangladesh (AIUB)

manage process language to manage


and create make process and create
file. make file
Process
Scheduling

Subject Topic: • Understand


Basic Concepts, scheduling process,
Scheduling algorithms and its
Criteria, applications.
Scheduling Lecture
Algorithms, • Compare different
Justifying, Group Lecture
Lab: scheduling
Study. notes,
1. Simulating algorithm. CO2,
Week 6 question-
CPU scheduling CO3
answer
algorithm using LAB: session.
any • Develop small Perform Exercise and
programming projects with Coding.
language, different CPU
Simulation of scheduling algorithm
Process using C/C++
scheduling language.
algorithm:
Feedback policy,
Simulation of
CSC 2209: Operating Systems (OS) 4
I/O requests
scheduling
algorithm:
Elevator
algorithm
2. Shell
Programming

Midterm Week
Week 7
Process
Scheduling

Subject Topic:
Multiple-
Processor
Scheduling,
Real-Time
Scheduling,
Algorithm
Evaluation.

Lab: • Analyze different


1. Simulating scheduling Lecture
CPU scheduling algorithms and its
applications Justifying, Group Lecture
algorithm using
Study. notes,
any Week CO2,
question-
programming 8-10 CO3
erican International University-Bangladesh (AIUB)

answer
language, • Execute CPU LAB: session.
Simulation of scheduling algorithm Perform Exercise and
Process using C/C++ Coding.
scheduling language.
algorithm:
Feedback policy,
Simulation of
I/O requests
scheduling
algorithm:
Elevator
algorithm
2. Shell
Programming

• Understand
Process Lecture
different constraints
Synchronization
of the Justifying, Group Lecture
Subject Topic: Synchronization in Study. notes,
Week CO2,
Critical Section operating system, its question-
problem, 11 CO3
applications. answer
Peterson’s LAB:
solution,
session.
Perform Exercise and
Synchronization • Evaluate Coding.
semaphores and it’s
© Dept. of Computer Science, FST, AMERICAN INTERNATIONAL UNIVERSITY-BANGLADESH (AIUB) 5
hardware, Mutex performance in
lock, Semaphores synchronizations.

Deadlock

Subject Topic:
Categories of
resources,
Resource
allocation
graphs,
conditions for
deadlock,
• Evaluate
prevention
constraints of the Lecture
occurrence of a
deadlock in
deadlock, Justifying, Group Lecture
operating system, its
Banker’s Study. notes,
applications and Week CO2,
algorithm, question-
algorithms. 12 CO3
deadlock answer
• Implement LAB:
avoidance, session
deadlock handling Perform Exercise and
detection and
algorithm: Banker’s Coding.
recovery.
algorithm
Lab:
1. Simulation of
deadlock
(AIUB)International University-Bangladesh (AIUB)

handling
algorithm:
Banker’s
algorithm
2. Shell
Programming
Protection and
Security

Subject Topic:
OS protection,
access control,
domain of • Evaluate different Lecture
protection, levels of access
Justifying, Group Lecture
access matrix, controls, learn
Study. notes,
OS security, different types of Week CO3,
question-
program threats, program, OS and 13-14 CO4
answer
system and network threats. LAB: session
network threats • Learn Linux access Perform Exercise and
etc. controls. Coding.

Lab:
1. Linux Access
Control
2. Shell
American

Programming
Final term Week
Week 14
desh

CSC 2209: Operating Systems (OS) 6


XI- Course Requirements
At least 80% class attendance is necessary to sit for the exam. If there is any assignment/project given to the
students, they have to submit it before the deadline decided by the course teacher.

XII – Evaluation & Grading System


. following grading system will be strictly followed in this class
The
Marking system for Theory and Lab (Midterm) Marking system for Theory and Lab (Final term)
Attendance 10% Attendance 10%
Quiz 20% Quiz 20%
Lab performance 20% Lab Performance 20%
Midterm written exam 50% Final term written exam 50%
Total 100% Total 100%

Grand Total 100% = 50% of Midterm + 50% of Final Term


The evaluation system will be strictly followed as par the AIUB grading policy.

Letter Grade Point Numerical %


A+ 4.00 90-100
A 3.75 85 - < 90
B+ 3.50 80 - < 85
B 3.25 75 - < 80
C+ 3.00 70 - < 75
C 2.75 65 - < 70
D+ 2.50 60 - < 65
D 2.25 50 - < 60
F 0.00 < 50
I Incomplete
W Withdrawal
nternational University-Bangladesh (AIUB)

UW Unofficially Withdrawal

XIII – Teaching Methods

Maximum topics will be covered from the textbook and some online tutorials. For the rest of the topics,
reference books will be followed. Study materials will be uploaded in your portal. White board, multimedia
projector will be used for the convenience of the students.
Students must study up to the last lecture before coming to the class and it is suggested that they should go
through the relevant chapter before coming to the class. Just being present in the class is not enough- students
must participate in classroom discussions.
Students are highly suggested to setup their virtual machine in their computers.

XIV – Textbook/ References


1. Silberschatz, A and Galvin, P (and Gagne, G), Operating System Concepts (Ninth Edition)
2. Modern Operating Systems (3rd Edition) by Andrew S. Tanenbaum.
3. William S. Davis and T. M. Rajkumar, Operating Systems, A Systematic View, Sixth Edition, Addison Wesley,
2004.
4. Kanetkar, Yashavant P., Unix shell programming, BPB Publications, 1996.
5. Online tutorials. (You will be guided in the class).
© Dept. of Computer Science, FST, AMERICAN INTERNATIONAL UNIVERSITY-BANGLADESH (AIUB) 7
XV - List of Faculties Teaching the Course
1. Dr. Kamruddin Nur
2. Umme Marzia Haque
3. Jamia Yasmin Papry
4. Tanvir Ahmed

XVI – Verification:

Prepared by :

---------------------------------
Dr. Kamruddin Nur
Course Convener
Associate Professor, Computer
Science
American International University-Bangladesh (AIUB)

Date:.........................................

Checked by: Certified by: Approved by:

.................................................... ......................................................... .........................................................

Dr. M. M. Mahbubul Syeed Dr. Dip Nandi Mr. Mashiour Rahman


Head, Director, Associate Dean,
Department of Computer Science Faculty of Science & Technology Faculty of Science & Technology

Date:............................................... Date:...............................................
Date:..........................................

CSC 2209: Operating Systems (OS) 8

You might also like