per person /
$

Free

Home Courses

Operating System Concepts

Operating System Concepts

Teacher

Suvendu Kumar Nayak

Category

Core Courses

Course Attendees

Still no participant

Course Reviews

Still no reviews

Course Name : Operating System Concepts

Code(Credit) :CUTM1032 (1-1-1)

Course Objectives

To understand the services provided by and the design of an operating system.

To understand the structure and organization of the file system.

To understand what a process is and how processes are synchronized and scheduled.

To understand different approaches to process management, management and resource management

To understand the data structures and algorithms used to implement an OS.

Learning Outcomes

Demonstrate understanding of the concepts, structure and design of operating Systems

Demonstrate understanding of operating system design and its impact on application system design and performance

Demonstrate competence in recognizing and using operating system features.

Course Syllabus

Module I: Overview and System Call (4 Hrs)

What is an OS,  Computer System Organization, OS Design , Major OS Services System Call and Its Types,  Concurrent Programming

Practice:

1.Copy from one file to another using unbuffered I/O system calls

2.Print contents of a directory using system calls to open and read directory contents

3.Infinite loop - kill by sending SIGINT signal through ctrl C or kill command

Module II: Linux Commands and Utilities ( 3 Hrs)

su, sudo, cat, man,ls,kill, ps, top,   more, less, head, tail,cp,rm, info, passwd, chage,  ssh(Remote  Login), Changing Login Shell, grep ,lpr,  lpq, sort, uniq, file, pipe( Communication between processes),echo, date, script, tar,bzip2,xz,gzip,which, whereis, locate,  who ,w, free

Practice: 

4.Gaining Root privilege with su and sudo

5.Archiving and compressing of files

6.Creating user , setting up password and managing password policies

7.Login to remote system through SSH

8.Monitoring Linux process using top and ps

9.Communication between process using pipe

Module III:  File System (3 Hrs)

The Hierarchical Filesystem, Directory Files and Ordinary Files , The Working Directory ,Your Home Directory, Pathnames, Relative Pathnames ,Working with Directories , Access Permissions ,ACLs: Access Control Lists, Hard Links  Symbolic Links

Practice:

10.Demonstration of Hierarchical File System in Linux

11.Controlling Access to Files with Linux File System Permission

12.Controlling Access to Files with ACL

Module IV: Vi Editor (3 Hrs)

Using vim to Create and Edit a File , Introduction to vim Features, Moving the Cursor, Input Mode, Deleting and Changing Text, Searching and Substituting, Copying, Moving, and Deleting Text,  The General-Purpose Buffer

Practice:

13.Create , Edit, Save and Exit a File

14.Edit a System File with Vim by Using Maximum Editing Feature

Module V : Shell Scripting (4 Hrs)

About bash , Variables, Array, Operators, Decision Making, Loop Controls, Functions, I/O redirections

Practice:

15.Write a script to demonstrate decision making and loop control

16.Write a script to demonstrate array and function

17. Write a script to demonstrate I/O redirection

Module VI: Process and Thread Management ( 5 Hrs)

Process Concepts, Process State , Process Schedulers , Context switch , Inter-process Communication,Thread Overview, Multi-threading Models, Process Synchronization, Scheduling Concepts, Scheduling Criteria , Scheduling Algorithms (FCFS, SJF, PRIORITY,RR)

Practice:

18.Process creation using fork()

19.Write a  program to simulate producer-consumer problem using semaphores

20.Write a multi-threaded program

21.Write a  program to simulate the following  CPU scheduling algorithms to find turnaround time and waiting time.

a) FCFS b) SJF c) Round Robin d) Priority

Module VII:Resource and Memory Management (5Hrs)

Deadlock Characterization , Deadlock Prevention, Deadlock Avoidance, Deadlock Detection and Recovery,Swapping ,Contiguous  Memory Allocation , Paging ,segmentation

Practice:

22.Write a  program to simulate Bankers algorithm for the purpose of deadlock avoidance.

23.Write a  program to simulate page replacement algorithms

a) FIFO b) LRU c) LFU

 

Text Books:

1.A Practical Guide to Linux Commands, Editors, and Shell Programming, by Mark G. Sobell, Prentice Hall, 2013

2.Operating System Concepts, by ABRAHAM SILBERSCHATZ , PETER BAER GALVIN, GREG GAGNE , Wiley, Ninth Edition, 2013

 

Projects :

1.Making Your Own Linux Shell

2.Creating Linux Kernel Modules

3.The Dining Philosophers Problem

4.Adding Your Own System Call To Linux Kernel

5.Disk Scheduler

6.Library Management System Using Shell Scripting

Session Plan

Session 1

Session 2

Session 3 & 4

Session 5 & 6

Session 7

File archiving , compression and backup (tar,bzip2,xz,gzip)

OSC-session-7-PDF

https://www.youtube.com/watch?v=tSRlNwaUgPQ

Session 8

The Hierarchical Filesystem, Pathnames, Relative Pathnames,Directory Files and Ordinary Files , The Working Directory ,Your Home Directory

OSC-session-8-PDF

https://www.youtube.com/watch?v=HbgzrKJvDRw

Session 9

Session 10

Session 12 & 13

Mastering vi ( Editing a file with advanced features)

https://www.youtube.com/watch?v=wlR5gYd6um0

Session 14

About Shell , Create and run a shell scripting,  variable , operator

OSC-session-14-PDF

https://www.youtube.com/watch?v=Djgrtlv4cng

https://www.youtube.com/watch?v=pjh9rU9h22Q

Session 15 & 16

Session 17

Session 18

Process Concepts, Process State , Process Schedulers , Context switch

OSC-session-18-PDF

https://www.youtube.com/watch?v=ss1-REMJ9GA

Session 19

Session 20

Thread Overview, Multi-threading Models

OSC-session-20-PDF

https://www.youtube.com/watch?v=LOfGJcVnvAk

Session 21

Session 22

Session 23

Deadlock characterization,  Deadlock prevention

OSC-session-23-PDF

https://www.youtube.com/watch?v=ZI9FFrGd4vc

Session 24 & 25

Session 26

Swapping ,Contiguous  Memory Allocation

OSC-session 26-PDF

Session 27

Page Replacement Algorithms ( FIFO ,OPTIMAL, LRU)

OSC-session -27-PDF

https://www.youtube.com/watch?v=9u5pCxLviCs

Session 28

Project Execution Time

Session 29

Project Execution Time

Session 29

Project Execution Time

Session 30

Project Execution Time

Our Main Teachers

Suvendu Kumar Nayak

Faculty, Dept. of Computer Science & Engineering, SoET
VIEW PROFILE

  He is currently working as an Assistant Professor in the Department of Computer Science and Engineering under Centurion University of Technology and Management, Odisha. He is pursuing his Ph.D. in the field of Information Security at  Centurion University of Technology & Management and received, MTech (CS) Degree from Berhampur University in the year 2009. […]

Mrs.B.Sowjanya

Assistant Professor
VIEW PROFILE

B.Sowjanya working as Assistant Professor, Dept of CSE, Centurion University of Technology and Management, Andhra Pradesh . Interested to work on Computer Networks,Databases,Artificial Intelligence and Machine Learning. Programming Skill: C Programming ,Data Structure, Object Oriented Programming using C++,JAVA Programming, Formal Language Automata Theory ,Python Web Development(HTML,CSS,PHP) Database Management Systems.