Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

it is a notes of operating system topics, Lecture notes of Computer Science

it shows notes of cse grup os syllabus and topics

Typology: Lecture notes

2023/2024

Uploaded on 01/22/2024

adicherla-swathantra-kumar
adicherla-swathantra-kumar 🇮🇳

3 documents

1 / 137

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Advanced Operating Systems
20MCA172
(Elective )
1
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b
pf3c
pf3d
pf3e
pf3f
pf40
pf41
pf42
pf43
pf44
pf45
pf46
pf47
pf48
pf49
pf4a
pf4b
pf4c
pf4d
pf4e
pf4f
pf50
pf51
pf52
pf53
pf54
pf55
pf56
pf57
pf58
pf59
pf5a
pf5b
pf5c
pf5d
pf5e
pf5f
pf60
pf61
pf62
pf63
pf64

Partial preview of the text

Download it is a notes of operating system topics and more Lecture notes Computer Science in PDF only on Docsity!

Advanced Operating Systems

20MCA

(Elective )

Contents

  • (^) Overview : Functions of Operating System– Design Approaches – Types of Advanced Operating Systems.
  • (^) Synchronization Mechanisms : Concept of Processes and Threads –The Critical Section Problem – Other Synchronization Problems:– Monitor –Serializer – Path Expressions.
  • (^) Distributed Operating Systems :- Issues in Distributed Operating System – Communication Networks And Primitives Lamport’s Logical clocks – Causal Ordering of Messages. (Mukesh Singhal and Niranjan G. Shivaratri, “ Advanced Concepts in Operating Systems - Distributed, Database, and Multiprocessor Operating Systems”, Tata McGraw-Hill, 2001.)

What is Advanced OS?

  • (^) Traditional Operating System : which ran on stand- alone computers with
single processors.
  • (^) Arise of Multiprocessor Systems and Distributed Systems.
  • (^) Due to the high demand and popularity of multiprocessor systems,
advanced operating system have gained high importance.

Functions of an Operating System

Two basic functions of operating systems are:

1. Resource management

2. User friendliness

Functions of an Operating System...

2. User friendliness

  • (^) It hides the unpleasant, low-level details and singularity of bare H/W machine.
  • (^) Friendlier interface to the machine.
  • (^) It encompasses the following functions.
    • (^) Execution environment (Process management – creation, control, and termination, file manipulation, interrupt handling, support for I/O operations. Language support).
    • (^) Error detection and handling
    • (^) Protection and security
    • (^) Fault tolerance and failure recovery.

Design Approaches

  • A typical operating system that supports a multiprogramming environment can easily be tens of megabytes in length and its design, implementation, and testing amounts to the undertaking of a huge software project.
  • Deal with complexities of modern systems.
  • How and what should be done in the context of operating systems
  • Separation of Policies and Mechanisms
    • (^) Policies - What should be done
    • (^) Mechanisms - How it should be done
    • (^) Ex: In CPU scheduling, mechanisms provide the means to implement various scheduling disciplines and policy decides which CPU scheduling discipline will be used.

Layered Approach

  • This approach divides the operating system into several layers.
  • (^) Each layer has well-defined functionality and input-output interfaces with the two adjacent layers.
  • The bottom layer interfaces with machine hardware and top layer interfaces with users or operators.
  • (^) This approach has all the advantages of modular design.
  • Each layer can be designed, coded and tested independently.
  • (^) This approach simplifies the design, specification, and implementation of an operating system.
  • Drawback : functions must be carefully assigned to various layers because a layer can make use only of the functionality provided by the layers beneath it.
  • Example : THE operating system and MULTICS operating system

Layered Approach

  • (^) Example is THE Operating System which consists of six layers.

Kernel Approach

  • (^) An operating system is an orderly growth of software over the kernel where all decisions regarding process scheduling, resource allocation, execution environment, file system, and resource protection, etc. are made.
  • (^) A kernel should contain a minimal set of functionality that is adequate to build an operating system with a given set of objectives.
  • (^) Including too much functionality in a kernel results in low flexibility at a higher level, whereas including too little functionality in a kernel results in low functional support at a higher level.
  • (^) Example : C.mmp (Kernal is Hydra)

Kernel Approach

Virtual Machine Approach

  • (^) Illusion of multiple instances of hardware

Types of Advanced Operating Systems

  • (^) The impetus for advanced operating systems has from 2 dimensions.
    1. it has come from advanced operating systems of multicomputer systems and is driven by a wide variety of high-speed architectures
    2. advanced operating systems driven by applications Types
    3. Distributed operating systems
    4. Multiprocessor operating systems
    5. Database operating systems
    6. Real-time operating systems

1. Distributed operating systems

  • (^) Are operating systems for a network of autonomous computers connected by a communication network.
  • (^) Controls and manages the hardware and software resources of a distributed system such that its users view the entire system as a powerful monolithic computer system.
  • When a program is executed in a distributed system, the user is not aware of where the program is executed or of the location of the resources accessed.
  • (^) Practical issues:
    • lack of shared memory
    • lack of global clock
    • unpredictable communication delays.

2. Multiprocessor operating systems

  • (^) Consists of a set of processors that shares a set of physical memory blocks over interconnection network.
  • (^) Is a tightly coupled system where the processors share an address space.
  • (^) Controls and manages the hardware and software resources such that users view the system as a powerful uniprocessor system
  • (^) User is not aware of the presence of multiple processors and the interconnection network
  • (^) Practical issues:
    • increased complexity of synchronization, scheduling, memory management, protection and security.