Far-western University Central Office, Mahendranagar Operating System



Similar documents
Undergraduate Course Syllabus

Gildart Haase School of Computer Sciences and Engineering

Devices and Device Controllers

Weighted Total Mark. Weighted Exam Mark

CTE214 Operating Systems Syllabus

OS OBJECTIVE QUESTIONS

Computer Science 4302 Operating Systems. Student Learning Outcomes

Operating Systems OBJECTIVES 7.1 DEFINITION. Chapter 7. Note:

CPU Scheduling. Basic Concepts. Basic Concepts (2) Basic Concepts Scheduling Criteria Scheduling Algorithms Batch systems Interactive systems

Operating Systems, 6 th ed. Test Bank Chapter 7

Chapter 11 I/O Management and Disk Scheduling

W4118 Operating Systems. Instructor: Junfeng Yang

COS 318: Operating Systems. Virtual Machine Monitors

Why study Operating Systems? CS 372. Why study. Why study. Introduction to Operating Systems

Chapter 6, The Operating System Machine Level

Operating System Structures

Chapter 11 I/O Management and Disk Scheduling

CS 377: Operating Systems. Outline. A review of what you ve learned, and how it applies to a real operating system. Lecture 25 - Linux Case Study

CPU Scheduling. CPU Scheduling

Scheduling. Yücel Saygın. These slides are based on your text book and on the slides prepared by Andrew S. Tanenbaum

Operating Systems Principles

Chapter 2: OS Overview

Page 1 of 5. IS 335: Information Technology in Business Lecture Outline Operating Systems

Storage and File Systems. Chester Rebeiro IIT Madras

Operating Systems. III. Scheduling.

Introduction Disks RAID Tertiary storage. Mass Storage. CMSC 412, University of Maryland. Guest lecturer: David Hovemeyer.

Objectives. Chapter 5: CPU Scheduling. CPU Scheduler. Non-preemptive and preemptive. Dispatcher. Alternating Sequence of CPU And I/O Bursts

Performance Comparison of RTOS

I/O Management. General Computer Architecture. Goals for I/O. Levels of I/O. Naming. I/O Management. COMP755 Advanced Operating Systems 1

How To Understand And Understand An Operating System In C Programming

Road Map. Scheduling. Types of Scheduling. Scheduling. CPU Scheduling. Job Scheduling. Dickinson College Computer Science 354 Spring 2010.

OPERATING SYSTEMS Internais and Design Principles

OPERATING SYSTEMS SCHEDULING

CPU Scheduling. CSC 256/456 - Operating Systems Fall TA: Mohammad Hedayati

Red Hat Linux Internals

Chapter 10 Case Study 1: LINUX

How To Understand The History Of An Operating System

Operating Systems 4 th Class

Deciding which process to run. (Deciding which thread to run) Deciding how long the chosen process can run

ICS Principles of Operating Systems

Operating System Components and Services

CHAPTER 15: Operating Systems: An Overview

Technical Properties. Mobile Operating Systems. Overview Concepts of Mobile. Functions Processes. Lecture 11. Memory Management.

CSC 2405: Computer Systems II

Objectives. Chapter 5: Process Scheduling. Chapter 5: Process Scheduling. 5.1 Basic Concepts. To introduce CPU scheduling

IT 342 Operating Systems Fundamentals Fall 2014 Syllabus

Operating Systems. Design and Implementation. Andrew S. Tanenbaum Melanie Rieback Arno Bakker. Vrije Universiteit Amsterdam

Outline. Operating Systems Design and Implementation. Chap 1 - Overview. What is an OS? 28/10/2014. Introduction

File System & Device Drive. Overview of Mass Storage Structure. Moving head Disk Mechanism. HDD Pictures 11/13/2014. CS341: Operating System

Chapter 7: Deadlocks!

Chapter 5: CPU Scheduling. Operating System Concepts 8 th Edition

Have both hardware and software. Want to hide the details from the programmer (user).

CSC 314: Operating Systems Spring 2005

This tutorial will take you through step by step approach while learning Operating System concepts.

Chapter 19: Real-Time Systems. Overview of Real-Time Systems. Objectives. System Characteristics. Features of Real-Time Systems

A Deduplication File System & Course Review

Process Description and Control william stallings, maurizio pizzonia - sistemi operativi

REAL TIME OPERATING SYSTEMS. Lesson-10:

Lecture 25 Symbian OS

POSIX. RTOSes Part I. POSIX Versions. POSIX Versions (2)

Operating Systems Introduction

Operating System: Scheduling

RARITAN VALLEY COMMUNITY COLLEGE COURSE OUTLINE. CISY 103 Computer Concepts and Programming

Chapter 10: Mass-Storage Systems

Incorporating Multicore Programming in Bachelor of Science in Computer Engineering Program

Processes and Non-Preemptive Scheduling. Otto J. Anshus

LABORATORY. 14 Disk Scheduling OBJECTIVE REFERENCES. Watch how the operating system schedules the reading or writing of disk tracks.

Why Computers Are Getting Slower (and what we can do about it) Rik van Riel Sr. Software Engineer, Red Hat

Chapter 5 Process Scheduling

Operating Systems Concepts: Chapter 7: Scheduling Strategies

CS0206 OPERATING SYSTEMS Prerequisite CS0201, CS0203

Operating Systems Lecture #6: Process Management

Review from last time. CS 537 Lecture 3 OS Structure. OS structure. What you should learn from this lecture

Analysis and Comparison of CPU Scheduling Algorithms

Virtual Memory Paging

Operating Systems. Lecture 03. February 11, 2013

Introduction to Operating Systems. Perspective of the Computer. System Software. Indiana University Chen Yu

Chapter 3: Operating Systems

CHAPTER 1: OPERATING SYSTEM FUNDAMENTALS

Multiprogramming. IT 3123 Hardware and Software Concepts. Program Dispatching. Multiprogramming. Program Dispatching. Program Dispatching

Announcements. Basic Concepts. Histogram of Typical CPU- Burst Times. Dispatcher. CPU Scheduler. Burst Cycle. Reading

CPU SCHEDULING (CONT D) NESTED SCHEDULING FUNCTIONS

Operating Systems. Virtual Memory

Operating System Tutorial

Comparison between scheduling algorithms in RTLinux and VxWorks

Chapter 14 MS-DOS Operating System

Convenience: An OS makes a computer more convenient to use. Efficiency: An OS allows the computer system resources to be used in an efficient manner.

Introduction. What is an Operating System?

Comp 204: Computer Systems and Their Implementation. Lecture 12: Scheduling Algorithms cont d

Real-Time Scheduling 1 / 39

ENGG*4420 Real Time Systems Design Fall 2015

Midterm Exam #2 Solutions November 10, 1999 CS162 Operating Systems

CS Fall 2008 Homework 2 Solution Due September 23, 11:59PM

IT6203 Systems & Network Administration. (Optional)

Konzepte von Betriebssystem-Komponenten. Linux Scheduler. Valderine Kom Kenmegne Proseminar KVBK Linux Scheduler Valderine Kom

Transcription:

Far-western University Central Office, Mahendranagar Operating System Course Title: Operating Systems Credit: 3+1 Course No: B.Sc. CS OS 231 hour 45+15 Nature of the Course: Theory + Lab Year: 2 nd, Semester: III Level: B. Sc. CS 1. Course Introduction This course demonstrates basic features of operating system components. It describes process management, deadlocks and process synchronization, memory management techniques, File system implementation, and I/O device management principles. It also includes case study on Linux operating system so that students can compare principles studied in the course with their real implementation. 2. Objectives At the end of this course the students should be able to: Describe need and role of operating system. Understood OS components such a scheduler, memory manager, file system handlers and I/O device managers. Analyze and criticize techniques used in OS components Demonstrate and simulate algorithms used in OS components Identify algorithms and techniques used in different components of Linux 3. Specific Objectives and Contents Specific Objectives Explain Evolution of operating system generation wise Understand system calls and operating modes of OS Describe OS structures and open source operating systems Differentiate program, process, and threads Contents Unit I: Overview (4) 1.1. Definition, Two views of operating system, Evolution of operating system, Types of OS. 1.2. System Call, Handling System Calls, System Programs, Types of System Call 1.3. Operating System Structure, The Shell, Open Source Operating Systems Unit II: Process Management (10) 2.1. Process vs Program, Multiprogramming, Process

Understand process states, process control blocks and thread table Understand and Simulate interprocess communication IPC and mutual exclusion. Trace and simulate process scheduling algorithms and compare them Describe and simulate classical IPC problems Characterize and simulate deadlock occurrence. Understand deadlock prevention and avoidance techniques Enable to apply deadlock detection and recovery techniques. Analyze and understand impact of multiprogramming in resource utilization Describe memory management and allocation techniques Understand virtual memory, paging and segmentation. Demonstrate and simulate page replacement algorithms Describe file and directory concept Understand and simulate file and directory implementation Model, Process States, Process Control Block. 2.2. Threads, Thread vs Process, User Space Threads, Kernel Space Threads. 2.3. Inter Process Communication, Race Condition, Critical Section 2.4. Implementing Mutual Exclusion: Mutual Exclusion with Busy Waiting (Disabling Interrupts, Lock Variables, Strict Alteration, Peterson s Solution, Test and Set Lock), Sleep and Wakeup, Semaphore, Monitors, Message Passing, Classical IPC problems (Producer Consumer, Sleeping Barber, Dining Philosopher Problem) 2.5. Process Scheduling: Goals, Batch System Scheduling (First-Come First-Served, Shortest Job First, Shortest Remaining Time Next), Interactive System Scheduling (Round-Robin Scheduling, Priority Scheduling, Multiple Queues), Evaluating Scheduling Algorithms, Overview of Real Time System Scheduling. Unit III: Process Deadlocks (6) 3.1. Introduction, Deadlock Characterization, Preemptable and Nonpreemptable Resources, Resource Allocation Graph, Conditions for Deadlock 3.2. Handling Deadlocks: Ostrich Algorithm, Deadlock prevention, Deadlock Avoidance (Safe and Unsafe States, Bankers Algorithm for Single and Multiple Resource Instances), Deadlock Detection (For Single and Multiple Resource Instances), Recovery From Deadlock (Through Preemption and Rollback) Unit IV: Memory Management (8) 4.1. Introduction, Monoprogramming vs Multiprogramming, Modelling Multiprogramming, Multiprogramming with fixed and variable partitions, Relocation and Protection. 4.2. Memory management (Bitmaps & Linked-list), Memory Allocation Strategies 4.3. Virtual memory: Paging, Page Table, Page Table Structure, Handling Page Faults, TLB s 4.4. Page Replacement Algorithms: FIFO, Second Chance, LRU, Optimal, LFU, Clock, WS-Clock, Concept of Locality of Reference, Belady s Anomaly 4.5. Segmentation: Why Segmentation?, Drawbacks, Segmentation with Paging(MULTICS) Unit V: File Management (6) 5.1. File Overview: File Naming, File Structure, File Types, File Access, File Attributes, File Operations, Single Level, two Level and Hierarchical Directory Systems,

strategies. Exemplify disk free space management techniques Describe device types and structures. Understand Interrupts, DMA and IO software Demonstrate IO handling techniques Exemplify and simulate disk scheduling algorithms Correlate above knowledge with Linux operating system File System Layout. 5.2. Implementing Files: Contiguous allocation, Linked List Allocation, Linked List Allocation using Table in Memory, Inodes. 5.3. Directory Operations, Path Names, Directory Implementation, Shared Files 5.4. Free Space Management: Bitmaps, Linked List Unit VI: Device Management (6) 6.1. Classification of IO devices, Controllers, Memory Mapped IO, DMA Operation, Interrupts 6.2. Goals of IO Software, Handling IO(Programmed IO, Interrupt Driven IO, IO using DMA), IO Software Layers (Interrupt Handlers, Device Drivers) 6.3. Disk Structure, Disk Scheduling (FCFS, SSTF, SCAN, CSCAN, LOOK, CLOOK), Disk Formatting (Cylinder Skew, Interleaving, Error handling), RAID Unit VII: Linux Case Study (5) 7.1. History, Kernel Modules, Process Management,, Scheduling, Inter-process Communication, Memory Management, File Systems Evaluation System External Evaluation End semester examination (Details are given in the separate table at the end) Marks 60 External 60 Internal Undergraduate Programs Internal Weightage Marks Practical Weightage Mark Evaluation Assignments 20% 50% Quizzes 10% Practical Record 20 copy 25% Attendance 20% Viva 25% Internal Exams 50% 100% 20 100% 20 20 Full Marks 60+20+20 = 100

External evaluation 1. End semester examination: It is a written examination at the end of the semester. The questions will be asked covering all the units of the course. The question model, full marks, time and others will be as per the following grid. 2. External Practical Evaluation: After completing the end semester theoretical examination, practical examination will be held. External examiner will conduct the practical examination according to the above mentioned evaluation. There will be an internal examiner to assist the external examiner. Three hours time will be given for the practical examination. In this examination Students must demonstrate the knowledge of the subject matter. Full Marks: 100, Pass Marks: 45, Time: 3 Hrs Nature of question Group A: multiple choice Group B: Short answer type questions Group C: Long answer type question/long menu driven programs questions to be asked questions to be answered marks 20 20 20 1 = 20 20% 8 6 6 8 = 48 48% 3 2 2 16 =32 32% 100 100% Weightage marks 12.0 28.8 19.2 60 3. Internal evaluation Assignment: Each student must submit the assignment individually. The stipulated time for submission of the assignment will be seriously taken. Quizzes: Unannounced and announced quizzes/tests will be taken by the respective subject teachers. Such quizzes/tests will be conducted twice per semester. The students will be evaluated accordingly. Attendance in class: Students should regularly attend and participate in class discussion. Eighty percent class attendance is mandatory for the students to enable them to appear in the end semester examination. Below 80% attendance in the class will signify NOT QUALIFIED (NQ) to attend the end semester examination. Presentation: Students will be divided into groups and each group will be provided with a topic for presentation. It will be evaluated individually as well as group-wise. Individual students have to make presentations on the given topics.

Mid-term examination: It is a written examination and the questions will be asked covering all the topics in the session of the course. Discussion and participation: Students will be evaluated on the basis of their active participation in the classroom discussions. Instructional Techniques: All topics are discussed with emphasis on real-world application. List of instructional techniques is as follows: Lecture and Discussion Group work and Individual work Assignments Presentation by Students Quizzes Guest Lecture Students are advised to attend all the classes and complete all the assignments within the specified time period. If a student does not attend the class(es), it is his/her sole responsibility to cover the topic(s) taught during that period. Laboratory Work Student should simulate at least 15 algorithms discussed in class, prepare lab sheet for each of the algorithm simulated in lab. Minimum 3 lab hour per week in required. Algorithms to be simulated can be decided by instructor, but it must cover IPC, process scheduling, Page Replacement, Free Space management, File System, and deadlock. Prescribed Text Modern Operating Systems: Andrew S. Tanenbaum, PH1 Publication, Third edition, 2008 Reference Abraham Silberschatz, Peter Baer Galvin and Greg Gagne, Operating System Concepts, John Wiley & Sons (ASIA) Pvt. Ltd, Seventh edition, 2005. Harvey M. Deitel, Paul J. Deitel, and David R. Choffnes, Operating Systems, Prentice Hall, Third edition, 2003.