Course
Title: Operating System Course No.: ICT Ed. 445
Nature
of Course: Theoretical + Practical Level: Bachelor
Credit
Hour: 3 hours (2T + 1P) Program: BICTE
Teaching
Hour: 64 hours (32 + 32) Semester: Fourth
1. Course Description
This course is focused
on how operating system (OS) manage resources to support the functioning of
computer system. This course also helps the students to understand both
theoretical and practical knowledge about different concepts of operating
systems such as system structure of OS, process and thread management, memory
management, storage management, and I/O management concepts.
2.
General Objectives
Following are the general
objectives of this course:
· To familiarize the
basic concepts of operating systems.
· To develop both
practical and theoretical concepts of process and thread concept, process
synchronization and deadlock
· To make the student
knowledgeable about memory management strategies, file system management and
storage management.
· To be able to make
distinction between available operating systems in terms of their design and
working principle.
3.
Course
Outlines:
Specific Objectives |
Contents |
· To define
and basic concepts of operating systems · Identify
and state different types of operating systems · To
explain different operations of operating
systems · To
define different structure of operating systems · To
introduce system calls |
Unit 1: Introduction (3) 1.1. What
operating system do? 1.2. Operating
Systems operations 1.3. Operating
System services 1.4. Operating
System Structures 1.5. System
Calls Practical Work (3) - Write
program to make use of command line arguments - Create
different commands to support user operations |
· To
define and differentiate process and thread · To
define different operations of processes · To
illustrate different process states · To
explain inter-process communication · To solve
critical-selection problem · To
demonstrate process synchronization and its details · To
develop knowledge of scheduling criteria · To
make use of different CPU scheduling
algorithms · To
illustrate different concept of deadlock · To
explain different methods for handling deadlocks |
Unit 2: Process Management (12) 2.1. Process
and Thread Concepts 2.2. Operations
on processes 2.3. Interprocess
Communication 2.4. Process
states 2.5. Process
Synchronization: critical section problems and solutions 2.6. Peterson’s
Solution 2.7. Mutex
Locks 2.8. Semaphores 2.9. Monitors 2.10. CPU
Scheduling Concepts 2.11. Scheduling
Criteria 2.12. Scheduling
Algorithms: First come First Serve (FCFS), Shortest Job First (SJF), Shortest
Remaining Time First (SRTF), Round Robin 2.13. Deadlocks:
characterization, prevention, avoidance, detection and recovery Practical Works (9) - Demonstrate
process creation and thread creation - Simulate
CPU Scheduling algorithms: FCFS, SJF, SRTF, Round Robin - Simulate
deadlock avoidance algorithm: Banker’s Algorithm |
·
To understand
different memory management strategies · To explain
the concepts of swapping · To illustrate
about paging techniques and the detail structure of page table ·
To know about
segmentation · To
make distinction between paging and
segmentation · To explain
importance of virtual memory management · To implement
page replacement algorithms |
Unit 3: Memory Management (8) 3.1. Main
Memory Management 3.2. Swapping 3.3. Memory
allocation strategies 3.4. Paging
and its types 3.5. Structure
of the Page Table 3.6. Segmentation 3.7. Virtual
memory management 3.8. Page
replacement algorithms Practical Works (7) - Write
program to simulate paging - Write
program to simulate Page Replacement algorithms |
· To identify
disk structure · To
make use of disk scheduling algorithms · To explain
the basics and importance of RAID · To define
file concepts, different file access methods, file-system structure, and file-system
implementation · To explain
directory and directory implementation · To
demonstrate allocation methods and free space management |
Unit 4: Storage Management (9) 4.1. Disk
Structure 4.2. Disk Scheduling
algorithms: FCFS, SSTF, SCAN, C-SCAN, LOOK, C-LOOK 4.3. RAID
Structure 4.4. File
Concept and Access Methods 4.5. Directory
Structure 4.6. Directory
Implementation 4.7. File System
Structure and operations 4.8. Allocation
Methods 4.9. Free
Space Management Practical Works (7) - Demonstrate
Directory and File Attributes - Write
program to simulate disk scheduling algorithms: FCFS, SSTF, SCAN, C-SCAN,
LOOK, C-LOOK |
· Prepare
case study summary report to understand different aspect of Linux system and
Windows system |
Unit 5: Case Study (Practical Works) (6) 5.1. The
Linux System 5.2. Windows
OS 5.3. Android
OS |
4.
Instructional
Techniques
The instructional
techniques for this course are divided into two groups. First group consists of general instructional
techniques applicable to most of the units. The second group consists of
specific instructional techniques applicable to particular units.
4.1. General Techniques
Reading materials will be provided to students
in each unit. Lecture, Discussion, use of multi-media projector, brain storming
are used in all units.
4.2. Specific Instructional Techniques
Demonstration
is an essential instructional technique for all units in this course during
teaching learning process. Specifically,
demonstration with practical works will be specific instructional technique in
this course. The details of suggested instructional techniques are presented
below:
Units |
Activities |
Unit 1: Introduction |
·
Demonstrate the working mechanism of
operating systems ·
Monitoring of students' work by
reaching each student and providing feedback for improvement ·
Presentation by students on at least 5
operating systems |
Unit 2: Process Management |
·
Demonstrate process and thread concepts ·
To define the CPU scheduling and
interprocess communication ·
To define process synchronization,
scheduling, and deadlock ·
Lab work to demonstrate process creation
and thread creation and simulate
Processor Scheduling and deadlock detection algorithms |
Unit 3: Memory Management |
·
Demonstrate concepts of memory,
swapping, paging, and virtual memory ·
Lab work on page replacement algorithms |
Unit 4: Storage Management
|
·
Demonstrate disk structure, RAID
structure ·
To illustrate file and directory
concepts ·
Lab work to demonstrate directory and
file structure, and to simulate disk scheduling algorithms and file
management techniques |
Unit 5: Case Study |
·
Presentation by students on different
concepts of Linux, Android OS and Windows 10 Operating Systems |
5. Evaluation :
Internal Assessment |
External Practical Exam/Viva |
Semester Examination |
Total Marks |
40
Points |
20
Points |
40
Points |
100
Points |
Note: Students must
pass separately in internal assessment, external practical exam and semester
examination.
5.1 Internal Evaluation (40 Points):
Internal
evaluation will be conducted by subject teacher based on following criteria:
1)
Class
Attendance 5
points
2)
Learning
activities and class performance 5 points
3)
First
assignment ( written assignment) 10 points
4)
Second
assignment (Case Study/project work with presentation ) 10
points
5)
Terminal
Examination 10 Points
Total 40 Points
5.2 Semester
Examination (40 Points)
Examination Division, Dean
Office will conduct final examination at the end of semester.
1)
Objective
question (Multiple choice 10 questions x 1mark)
10
Points
2)
Subjective
answer questions (6 questions x 5
marks) 30
Points
Total 40 points
5.3
External Practical Exam/Viva (20
Points):
Examination
Division, Dean Office will conduct final practical examination at the end of
semester.
6. Recommended books
and References materials (including relevant published articles in national and
international journals)
Abraham
Silberschatz, Pter Baer Galvin and Greg Gagne, Operating System Concepts,
(2018). 10th Edition, John Wiley & Sons Inc
Andrew S.
Tanenbaum, Herbert Bos, Modern Operating Systems, 4th Edition,
Pearson
No comments:
Post a Comment