IGNOU PGDCA Operating System - MCA-203

 


MCS-203 OPERATING SYSTEMS 

                                             Credits : 4                                                             

Objectives

This is the core course on Operating Systems (OS). The main objectives of this course are:

  • To understand the OS role in the overall computer system
  • To study the operations performed by OS as a resource manager
  • To understand process concept, process concurrency, synchronization and Deadlocks
  •  To design and solve synchronization problems
  • To understand the scheduling policies of OS
  • To understand the different memory management techniques
  • To understand the concepts of input/output, storage and file management 
  • To understand the goals and principles of protection
  • To understand the advanced topics such as Multiprocessor Systems, Distributed OS and Mobile OS 
  • To study and compare different OS(Windows, Linux, Android and Ios) and compare their features.


Block and Unit Structure

BLOCK 1: Introduction to Operating

Systems and Process Management

Unit 1 Operating System-An Overview

  •  What is an Operating System (OS)?
  •  Goals of an Operating System
  •  Generations of Operating Systems
  •  Types of Operating Systems
  •  Desirable Qualities of OS
  •  Operating Systems : Some Examples
  •  Functions of OS

Unit 2 Processes

 Concept of Process

 System Calls for Process Management

 Process Scheduling

 Scheduling Algorithms

o First Come First serve (FCFS)

o Shortest Job First (SJF)

o Round Robin (RR)

o Shortest remaining time next (SRTN)

o Priority Based Scheduling or Event

Driven (ED) scheduling

 Performance evaluation of the Scheduling Algorithms

Unit 3:Interprocess Communication and Synchronization

 Interprocess Communication

 Interprocess Synchronization

 Semaphores

 Classical problems in concurrent programming

 Locks

 Monitors and Conditional Variables

Unit 4:Deadlocks

 Deadlocks

 Characterization of a Deadlock

 A Resource Allocation Graph

 Dealing with Deadlock Situations

o Deadlock Prevention

o Deadlock Avoidance

o Deadlock Detection and Recovery

 Deadlock detection and recovery

 Deadlock Prevention

o Havender’s Algorithm

 Deadlock Avoidance

o Banker’s Algorithm

BLOCK 2: Memory Management, File Management and Security

Unit 1:Memory Management

 Overlays and Swapping

 Logical and Physical Address Space

 Single Process Monitor

 Contiguous Memory Methods

 Paging

o Principles of operation

o Page allocation

o Hardware Support for Paging

o Protection and Sharing

 Segmentation

o Principles of operation

o Address Translation

o Protection and Sharing

Unit 2:Virtual Memory

 Virtual Memory

o Principles of operation

o Virtual Memory management

o Protection and sharing

 Demand paging

 Page Replacement policies

 Thrashing

o Working Set Model

o Page Fault Rate

 Demand Segmentation

 Combined Systems

o Segmented paging

o Paged segmentation

Unit 3: I/O and File Management

 Organization of the I/O function

 I/O Buffering

 Disk Organization

 Disk Scheduling

 RAID

 Disk Cache

 Command language user’s view of File System

 The System programmer’s view of the file System

 The Operating systems’ view of file Management

o Directories

o Disk Space Management

o Disk address translation

o File related system services

o Asynchronous Input / Output

Unit 4:Security and Protection

 Security Threats

 Security Policies and Mechanisms

 Authentication

o Passwords

o Alternative Forms of Authentication

 Protection in Computer Systems

 Security Models

o Access-Control Matrix

o Mandatory Access Control

o Discretionary Access Control

o Rule-Based Access Control

o Role-Based Access Control

o The Take-grant Model

o Multilevel Models

BLOCK 3:Advanced Topics in Operating Systems

Unit 1:Multiprocessor Systems

 Multiprocessor and Processor Coupling

 Types of Multiprocessor Operating System

o Separate Supervisors

o Master/Slave

o Symmetric

 Multiprocessor OS Functions and Requirements

Unit 2: Distributed Operating Systems

 Characteristics of Distributed Systems

 Design Issues Involved in Distributed Systems

 Communication in Distributed Systems

 Clock Synchronization in Distributed Systems

 Mutual Exclusion

 Distributed File Systems

 Distributed Shared Memory

 Remote Procedure Calls

 Other Middleware Technologies

UNIT 3: Mobile Operating Systems

 Introduction

 Objectives

 Mobile Devices – An Introduction

 Mobile Operating System

 Evolution of Mobile OS

 Need for the Mobile OS

 Characteristics of Smartphone OS

 Design Issues in Mobile OS

 Popular Mobile OS

Block – 4 Case Studies (Windows, Linux,  Android & IoS)

Unit 1:Case Study 1 – Windows 10

Unit 2:Case Study 2 - LINUX

Unit 3:Case Study 3 – ANDROID

Unit 4: Case Study




MCSL-204 WINDOWS and LINUX Lab Credits:2

Objectives:

Main objective of this laboratory course is to provide hands on exercises to the learners based

on Operating Systems Course.

Lab Sessions:

 There will be 20 practicalsessions (3 hours each) of which 10 sessions will be on

Windows Operating System and 10 sessions will be on LINUX.

 The practice problems for all 20 sessions will be listed session-wise in the lab manual.

Block 1: WINDOWS and LINUX Lab

Section 1: WINDOWS 10

Section 2: LINUX 


For Previous Year Question Paper Just click here  

PGDCA Program Guide 


IGNOU Books 


WHAT IS AN OPERATING SYSTEM?

In a computer system, we find four main components: the hardware, the operating system, the application software and the users. In a computer system the hardware 8 provides the basic computing resources. The applications programs define the way in which these resources are used to solve the computing problems of the users. The operating system controls and coordinates the use of the hardware among the various systems programs and application programs for the various users.

We can view an operating system as a resource allocator. A computer system has many resources (hardware and software) that may be required to solve a problem: CPU time, memory space, files storage space, input/output devices etc. The operating system acts as the manager of these resources and allocates them to specific programs and users as necessary for their tasks. Since there may be many, possibly conflicting, requests for resources, the operating system must decide which requests are allocated resources to operate the computer system fairly and efficiently.

An operating system is a control program. This program controls the execution of user programs to prevent errors and improper use of the computer. Operating systems exist because: they are a reasonable way to solve the problem of creating a usable computing system. The fundamental goal of a computer system is to execute user programs and solve user problems.


Goals of OS as:

  • The primary goal of an operating system is to make the computer convenient to use.
  • The secondary goal is to use the hardware in an efficient manner.

 

A computer’s operating system is a group of programs designed to serve two basic purposes:

 To control the allocation and use of the computing system’s resources among

the various users and tasks, and

 To provide an interface between the computer hardware and the programmer that simplifies and makes feasible the creation, coding, debugging, and maintenance of application programs.

An effective operating system should accomplish the following functions:

 Should act as a command interpreter by providing a user friendly environment.

 Should facilitate communication with other users.

 Facilitate the directory/file creation along with the security option.

 Provide routines that handle the intricate details of I/O programming.

 Provide access to compilers to translate programs from high-level languages to machine language

 Provide a loader program to move the compiled program code to the

computer’s memory for execution.

 Assure that when there are several active processes in the computer, each will get fair and non-interfering access to the central processing unit for execution.

 Take care of storage and device allocation.

 Provide for long term storage of user information in the form of files.

 Permit system resources to be shared among users when appropriate, and be protected from unauthorized or mischievous intervention as necessary.

 

TYPES OF OPERATING SYSTEMS


1. Batch Processing Operating System

2. Time Sharing

3. Real Time Operating System (RTOS)

4. Multiprogramming Operating System

5. Multiprocessing System

6. Networking Operating System

7. Distributed Operating System

8. Operating Systems for Embedded Devices



OPERATING SYSTEMS: SOME EXAMPLES


1. DOS

2. UNIX

3. WINDOWS

4. MACINTOSH



FUNCTIONS OF OS

The main functions of an operating system are as follows:

 Process Management

 Memory Management

 Secondary Storage Management

 I/O Management

 File Management

 Protection

 Networking Management

 Command Interpretation.

 


Block -1 

UNIT 1 OPERATING SYSTEM :  An Overview


OVERVIEW

Structure

1.1 Introduction

1.2 Objectives

1.3 What is an Operating System?

1.4 Goals of an Operating System

1.5 Generations of Operating Systems

1.5.1 0th Generation

1.5.2 First Generation (1951-1956)

1.5.3 Second Generation (1956-1964)

1.5.4 Third Generation (1964-1979)

1.5.5 Fourth Generation (1979-Present)

1.6 Types of Operating Systems

1.6.1 Batch Processing Operating System

1.6.2 Time Sharing

1.6.3 Real Time Operating System (RTOS)

1.6.4 Multiprogramming Operating System

1.6.5 Multiprocessing System

1.6.6 Networking Operating System

1.6.7 Distributed Operating System

1.6.8 Operating Systems for Embedded Devices

1.7 Desirable Qualities of OS

1.8 Operating Systems : Some Examples

1.8.1 DOS

1.8.2 UNIX

1.8.3 Windows

1.8.4 Macintosh

1.9 Functions of OS

1.9.1 Process Management

1.9.2 Memory Management

1.9.3 Secondary Storage Management

1.9.4 I/O Management

1.9.5 File Management

1.9.6 Protection

1.9.7 Networking

1.9.8 Command Interpretation


UNIT 2 PROCESSES

Structure

2.1 Introduction

2.2 Objectives

2.3 The Concept of Process

2.3.1 Implicit and Explicit Tasking

2.3.2 Processes Relationship

2.3.3 Process States

2.3.4 Implementation of Processes

2.3.5 Process Hierarchy

2.3.6 Threads

2.3.7 Levels of Threads

2.4 System Calls for Process Management

2.5 Process Scheduling

2.5.1 Scheduling Objectives

2.5.2 Types of Schedulers

2.5.3 Scheduling Criteria

2.6 Scheduling Algorithms

2.6.1 First Come First Serve (FCFS)

2.6.2 Shortest Job First (SJF)

2.6.3 Round Robin (RR)

2.6.4 Shortest Remaining Time Next (SRTN)

2.6.5 Priority Based Scheduling or Event Driven (ED) Scheduling

2.7 Performance Evaluation of the Scheduling Algorithms


UNIT 3 INTERPROCESS COMMUNICATION AND SYNCHRONIZATION

Structure

3.1 Introduction

3.2 Objectives

3.3 Interprocess Communication

3.3.1 Shared-Memory System

3.3.2 Message-Passing System

3.4 Interprocess Synchronization

3.4.1 Serialization

3.4.2 Mutexes: Mutual Exclusion

3.4.3 Critical Sections: The Mutex Solution

3.4.4 Dekker’s Solution for Mutual Exclusion

3.4.5 Bakery’s Algorithm

3.5 Semaphores

3.6 Classical Problems in Concurrent Programming

3.6.1 Producers/Consumers Problem

3.6.2 Readers and Writers Problem

3.6.3 Dining- Philosophers Problem

3.6.4 Sleeping Barber Problem

3.7 Locks

3.8 Monitors and Condition Variables 

UNIT 4 DEADLOCKS

Structure

4.1 Introduction

4.2 Objectives

4.3 Deadlocks

4.4 Characterization of a Deadlock

4.4.1 Mutual Exclusion Condition

4.4.2 Hold and Wait Condition

4.4.3 No-Preemptive Condition

4.4.4 Circular Wait Condition

4.5 Resource Allocation Graph

4.6 Dealing with Deadlock Situations

4.6.1 Deadlock Prevention

4.6.2 Deadlock Avoidance

4.6.3 Deadlock Detection and Recovery

 

Block -2  

UNIT 1 MEMORY MANAGEMENT

Structure

1.0 Introduction

1.1 Objectives

1.2 Overlays and Swapping

1.3 Logical and Physical Address Space

1.4 Single Process Monitor

1.5 Contiguous Allocation Methods

1.5.1 Single Partition System

1.5.2 Multiple Partition System

1.6 Paging

1.6.1 Principles of Operation

1.6.2 Page Allocation

1.6.3 Hardware Support for Paging

1.6.4 Protection and Sharing

1.7 Segmentation

1.7.1 Principles of Operation

1.7.2 Address Translation

1.7.3 Protection and Sharing


UNIT 2 VIRTUAL MEMORY

Structure

2.0 Introduction

2.1 Objectives

2.2 Virtual Memory

2.2.1 Principles of Operation

2.2.2 Virtual Memory Management

2.2.3 Protection and Sharing

2.3 Demand Paging

2.4 Page Replacement Policies

2.4.1 First In First Out (FIFO)

2.4.2 Second Chance (SC)

2.4.3 Least Recently Used (LRU)

2.4.4 Optimal Algorithm (OPT)

2.4.5 Least Frequently Used (LFU)

2.5 Thrashing

2.5.1 Working-Set Model

2.5.2 Page-Fault Rate

2.6 Demand Segmentation

2.7 Combined Systems

2.7.1 Segmented Paging

2.7.2 Paged Segmentation 


UNIT 3 I/O AND FILE MANAGEMENT

Structure

3.0 Introduction

3.1 Objectives

3.2 Organisation of the I/O Function

3.3 I/O Buffering

3.4 Disk Organisation

3.4.1 Device Drivers and IDs

3.4.2 Checking Data Consistency and Formatting

3.5 Disk Scheduling

3.5.1 FCFS Scheduling

3.5.2 SSTF Scheduling

3.5.3 SCAN Scheduling

3.5.4 C-SCAN Scheduling

3.5.5 LOOK and C-LOOK Scheduling

3.6 RAID

3.7 Disk Cache

3.8 Command Language User’s View of the File System

3.9 The System Programmer’s View of the File System

3.10 The Operating System’s View of File Management

3.10.1 Directories

3.10.2 Disk Space Management

3.10.3 Disk Address Translation

3.10.4 File Related System Services

3.10.5 Asynchronous Input/Output 


UNIT 4 SECURITY AND PROTECTION

Structure

4.0 Introduction

4.1 Objectives

4.2 Security Threats

4.3 Security Policies and Mechanisms

4.4 Authentication

4.4.1 Passwords

4.4.2 Alternative Forms of Authentication

4.5 Protection in Computer Systems

4.6 Security Models

4.6.1 Access Matrix Model

4.6.2 Mandatory Access Control

4.6.3 Discretionary Access Control

4.6.4 Rule-Based Access Control

4.6.5 Role-Based Access Control

4.6.6 Take-Grant Model

4.6.7 Multilevel Models


BLOCK -3 


UNIT 1 MULTIPROCESSOR SYSTEMS

Structure

1.1 Introduction

1.2 Objectives

1.3 Multiprocessing and Processor Coupling

1.4 Multiprocessor Interconnections

1.4.1 Bus-oriented System

1.4.2 Crossbar-connected System

1.4.3 Hypercubes System

1.4.4 Multistage Switch-based System

1.5 Types of Multiprocessor Operating Systems

1.5.1 Separate Supervisors

1.5.2 Master-Slave

1.5.3 Symmetric

1.6 Multiprocessor Operating System - Functions and Requirements

1.7 Multiprocessor Synchronization

1.7.1 Test-and-set

1.7.2 Compare-and-Swap

1.7.3 Fetch-and-Add 


UNIT 2 DISTRIBUTED OPERATING SYSTEMS

Structure

2.1 Introduction

2.2 Objectives

2.3 History of Distributed Computing

2.3.1 Workstations – Networks

2.3.2 Wide-Scale Distributed Computing and the Internet

2.4 Distributed Systems

2.5 Key Features and Advantages of a Distributed System

2.5.1 Advantages of Distributed Systems Over Centralised Systems

2.5.2 Advantages of Distributed Systems over Isolated PC’s

2.5.3 Disadvantages of Distributed Systems

2.6 Design Goals of Distributed Systems

2.6.1 Concurrency

2.6.2 Scalability

2.6.3 Openness

2.6.4 Fault Tolerance

2.6.5 Privacy and Authentication

2.6.6 Transparency

2.7 Design Issues Involved in Distributed Systems

2.7.1 Naming

2.7.2 Communication

2.7.3 Software Structure

2.7.4 Workload Allocation

2.7.5 Consistency Maintenance

2.7.6 Lamport’s Scheme of Ordering of Events

2.8 Distributed System Structure

2.8.1 Application Model 1: Client Server

2.8.2 Application Model 2: Distributed Objects

2.8.3 Application Model 3: Distributed Shared Memory

2.9 Mutual Exclusion in Distributed Systems

2.9.1 Mutual Exclusion Servers

2.9.2 Token Based Mutual Exclusion

2.9.3 Lamport’s Bakery Algorithm

2.9.4 Ricart and Agrawala’s Mutual Exclusion Algorithm

2.10 Remote Procedure Calls

2.10.1 How RPC Works?

2.10.2 Remote Procedure Calling Mechanism

2.10.3 Implementation of RPC

2.10.4 Considerations for Usage

          2.10.5 Limitations

        2.11 Other Middleware Technologies  


UNIT 3 MOBILE OPERATING SYSTEMS

Structure

3.1 Introduction

3.2 Objectives

3.3 Mobile Devices – An Introduction

3.3.1 Characteristics of Mobile Devices

3.3.2 Data Input Mechanisms for Mobile Devices

3.3.3 Wireless Communication

3.3.4 Mobile Operating System

3.3.5 Types of Processors Used by Mobile Devices

3.3.6 Limitations of Mobile Devices

3.4 Mobile Operating System

3.5 Evolution of Mobile OS

3.6 Need for the Mobile OS

3.7 Characteristics of Smartphone OS

3.8 Design Issues in Mobile OS

3.9 Popular Mobile OS 


BLOCK-4  


UNIT 1 CASE STUDY - WINDOWS 10

Structure

1.0 Introduction

1.1 Objectives

1.2 Features of Windows 10

1.3 Evolution of Windows 10

1.4 Windows 10 Editions

1.5 Windows OS Components

1.6 Process Management in Windows 10

1.6.1 Processes and Threads

1.6.2 Scheduling

1.6.3 Interprocess Communication

1.7 Memory Management in Windows 10

1.7.1 Memory Representation

1.7.2 Physical Memory Organization

1.7.3 Virtual Memory Organization

1.7.4 Demand Paging

1.7.5 Memory Compression

1.8 File System Management in Windows 10

1.8.1 Directory Management

1.8.2 Disk Management

1.8.3 File Management

1.8.4 File Compression 


UNIT 2 CASE STUDY - LINUX

Structure

2.1 Introduction

2.2 Objectives

2.3 Linux Operating System

2.4 Evolution of Linux

2.5 Characteristics of Linux

2.6 Linux Kernel

2.7 Fundamental Architecture of Linux

2.8 Process Management in Linux

2.9 Memory Management in Linux

2.10 Linux File System

2.11 Security Features in Linux

2.12 Windows Vs Linux 


UNIT 3 CASE STUDY - ANDROID

Structure

3.0 Introduction

3.1 Objectives

3.2 Salient Features of Android

3.3 Evolution of Android

3.4. Layered Architecture of Android OS

3.5. Processes and Threads Management in Android

3.6 Memory Management in Android

3.7 File Management in Android

3.8 Security Features in Android 


 UNIT 4 CASE STUDY - iOS

Structure

4.0 Introduction

4.1 Objectives

4.2 Features of iOS

4.3 Evolution of iOS

4.4 Architecture of iOS

4.5 iOS Kernel Architecture

4.6 Processes and Threads Management

4.6.1 Threading Packages

4.6.2 Threads Alternatives

4.7 Memory Management

4.7.1 Application Memory Management

4.7.2 Virtual Memory Management

4.7.3 Page List in Kernel

4.7.4 Page Fault

4.8 File System in iOS

4.8.1 iOS Directories

4.8.2 iCloud Container

4.8.3 Identification of File Type

4.8.4 Security of File System

No comments:

Post a Comment

If you have any query or doubt, please let me know. I will try my level best to resolve the same at earliest.

Resources That will Make You Better at IT, Education and specifically in Digital Marketing.: Build career in Medical coding in 2021

Resources That will Make You Better at IT, Education and specifically in Digital Marketing.: Build career in Medical coding in 2021 :  As He...