Distributed Information Systems Lecture 8 - Operating Systems, Lecture notes of Database Management Systems (DBMS)

In this document description about Operating Systems, Significance of this lecture, Operating System Architectures, Kernels,Protection, Processes and Threads.

Typology: Lecture notes

2010/2011

Uploaded on 09/09/2011

rossi46
rossi46 🇬🇧

4.5

(10)

313 documents

1 / 28

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Operating Systems
Dr Simon Blake
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c

Partial preview of the text

Download Distributed Information Systems Lecture 8 - Operating Systems and more Lecture notes Database Management Systems (DBMS) in PDF only on Docsity!

Operating Systems

Dr Simon Blake

Significance of this lecture

  • This lecture focuses on a node and their

central control mechanisms

  • How is software linked to physical

hardware?

  • What controls exist for our physical

resources?

  • This lesson is concerned with important

operating system concepts that impact ondistributed system design and behaviour.

The DIS model

-^

Resource sharing is an important aspect of a DIS

-^

What is involved in sharing?^ –

Clients invoke operations on resources on remote nodes or other localprocesses

-^

This process is simplified through the use of middleware

-^

In a DIS client applications/services send request to the middleware

-^

The middleware then sends its requests to the host operating system(OS)

-^

The OS then utilizes computer and network hardware to send requests

-^

So “What is the role of the OS?”^ –

The OS provide an abstraction of the hardware (network and computer)

-^

i.e. processors, memory, communications, storage, etc.

-^

Middleware talks to the OS rather than the hardware directly

Layers of a computer

Application, services
Middleware
OS
Computer / network hardware

OS layers

-^

Required functionality of an OS^ –

Encapsulation:

-^

With a

useful

set of operations to clients

-^

Unnecessary details should be transparent (memory management)

-^

Protection:

-^

protection to resources from incorrect and illegitimate access

-^

Concurrent processing:

-^

transparent concurrent process management

-^

With respect to remote invocations an OS also needs the followingfunctionality:^ –

Communication:

-^

to remote processes or at least other processes within the computer

-^

Scheduling

-^

Invoked operations need to be schedules to be processed.

Encapsulation

requests

requests

requests

Operating system

Accessvia theexportedmethods

Protection

Memory management Other OS functions

Encapsulationboundary

OS layers

-^

Process manager:^ –

Manages the creation and operations of processes

-^

Thread manager:^ –

Creates, synchronizes and schedules threads

-^

Communication manager:^ –

Communication between threads on the same host

-^

Memory manager:^ –

Physical and virtual memory

-^

Supervisor:^ –

The base layer - the hardware abstraction layer

-^

Interrupts, system traps, register manipulation, control of the memorymanagement, processor control

-^

Micro kernel^ – Implement as much as possible outside the kernel– Execute less code in Kernel Mode– Leads to more context switches– Requires inter process messaging

-^

Monolithic kernel^ – Nearly all functions exist within the kernel– Executes more code executed in kernel mode– Kernels can become very large– Faster execution– Has high function and code dependence

Micro/Monolithic kernels

Safeguards and protection

-^

Resources require protection from illegitimateaccess^ – illegitimate access is access without privileges

  • An operation is performed that the client does not have
access rights to perform
  • illegitimate access is access in unplanned way
    • An operation is performed that is not permitted at all -^

Protection is mainly the responsibility of the OSkernel

Safeguards and protection

-^

Features of the OS Kernel:^ –

It is always running,

-^

Its code has complete access to the physical resources of the computer

-^

Processors, memory, etc.

-^

The kernel allocates resources to processes^ –

For example, memory is allocated to user processes and they can onlyaccess memory inside its allocated region of memory

-^

Kernel protection^ –

User

processes run their own code in their allocated resource space

-^

However

user

processes can also run kernel code

-^

They do this through calling kernel supplied handlers

-^

These handlers control the access safeguarding against illicit activities

-^

Using interrupts or machine-level traps

Processes and threads

•^

Creating a process^ – Creating the process and its execution environment– More complex in a DIS

  • Chose a target host• Maybe determined by policy
    • i.e. Always at originator– Could be based on load balancing (see pp217-218)
Create the execution environment on the selectedhost^ • Two approaches:
  • Share the address space of the existing execution environment– Create a new address space

Processes and threads

• Threads (Threads of execution)

– Exist and run within a process execution

environment

– Cannot access threads in other processes– Can be dynamically created and destroyed by

the process

– Allow process to perform concurrent

operations

Server threading

-^

Thread per request^ –

A new thread is generated for each request

-^

They are destroyed when the request completes

-^

Increases throughput but introduces creation and destruction overheads

-^

This is managed via an I/O thread

Remoteobjects

Workerthreads

I/Othread

Server threading

-^

Thread per connection^ –

Creates a new thread for each connection that is made to the server

-^

Connection could make many requests through its single thread

Remoteobjects

ThreadPerconnection