26
Distributed System Concepts and Architectures 2.3 Services Fall 2011 Student: Fan Bai Email: [email protected]

Distributed System Concepts and Architectures

  • Upload
    gavan

  • View
    35

  • Download
    1

Embed Size (px)

DESCRIPTION

Distributed System Concepts and Architectures . 2.3 Services Fall 2011 Student: Fan Bai Email: [email protected]. Outline. What is an operating system? The primary functions of an operating system OS = Service provider Basic Services and Fundamental services - PowerPoint PPT Presentation

Citation preview

Page 1: Distributed System Concepts and Architectures

Distributed System Concepts and Architectures

2.3 Services

Fall 2011Student: Fan Bai

Email: [email protected]

Page 2: Distributed System Concepts and Architectures

OutlineWhat is an operating system?

The primary functions of an operating system

OS = Service provider

Basic Services and Fundamental services

Privacy as an Operating System Service

References

Page 3: Distributed System Concepts and Architectures

What is an operating system?

A collection of software modules to assist programmers in enhancing system efficiency, flexibility, and robustness

An Extended Machine from the users’ viewpoint

A Resource Manager from the system’s viewpoint

Page 4: Distributed System Concepts and Architectures

The primary functions of an operating system

multiplexing the processor(s) scheduling processescoordinating interaction among processes, interprocess

communication and synchronizationmanaging system resources (I/O, memory, data files)enforcing access control and protectionmaintaining system integrity and performing error

recovery providing an interface to the users

Page 5: Distributed System Concepts and Architectures

OS = Service providerOperating system is the service provider. An operating system is a program that acts as an

intermediary between the user of a computer and the computer hardware.

The purpose of an operating system is to provide an environment in which a user can execute programs in a convenient and efficient manner.

Page 6: Distributed System Concepts and Architectures

OSTool to make programmer's job

easyResource allocator

◦Must be fair; not partial to any process, specially for process in the same class

◦Must discriminate between different class of jobs with different service requirements

Control programLayered architecture

Page 7: Distributed System Concepts and Architectures

Unix ---shellUnix command interpreter

◦Interprets the first word of a command line as a command name

A user program and not part of the kernelRedirection of input and outputBackground jobs

Page 8: Distributed System Concepts and Architectures

KernelPermanently resides in the main memoryControls the execution of processes by allowing

their creation, termination or suspension, and communication

Schedules processes fairly for execution on the CPU

Allocates main memory for an executing process

Page 9: Distributed System Concepts and Architectures

Basic ServicesEvolution of Modern Operating Systems• Centralized operating system◦ +network access and resource sharing• Network operating system◦ +transparency• Distributed operating system

Page 10: Distributed System Concepts and Architectures

Basic ServicesProgram executionI/O operationsFile-system manipulationCommunicationsError detection

Page 11: Distributed System Concepts and Architectures

Program Execution

The purpose of a computer systems is to allow the user to execute programs. So the operating systems provides an environment where the user can conveniently run programs. The user does not have to worry about the memory allocation or multitasking or anything. These things are taken care of by the operating systems.

Page 12: Distributed System Concepts and Architectures

I/O Operations

Each program requires an input and produces output. This involves the use of I/O. The operating systems hides the user the details of underlying hardware for the I/O. All the user sees is that the I/O has been performed without any details. So the operating systems by providing I/O makes it convenient for the users to run programs.

Page 13: Distributed System Concepts and Architectures

File System Manipulation

The output of a program may need to be written into new files or input taken from some files. The operating systems provides this service. The user does not have to worry about secondary storage management. User gives a command for reading or writing to a file and sees his her task accomplished. Thus operating systems makes it easier for user programs to accomplished their task.

Page 14: Distributed System Concepts and Architectures

Communications

There are instances where processes need to communicate with each other to exchange information. It may be between processes running on the same computer or running on the different computers. By providing this service the operating system relieves the user of the worry of passing messages between processes. In case where the messages need to be passed to processes on the other computers through a network it can be done by the user programs.

Page 15: Distributed System Concepts and Architectures

Error DetectionAn error is one part of the system may cause

malfunctioning of the complete system. To avoid such a situation the operating system constantly monitors the system for detecting the errors. This relieves the user of the worry of errors propagating to various part of the system and causing malfunctioning.

This service cannot allowed to be handled by user programs because it involves monitoring and in cases altering area of memory or deal location of memory for a faulty process. Or may be relinquishing the CPU of a process that goes into an infinite loop.

Page 16: Distributed System Concepts and Architectures

Fundamental servicesPrimitive servicesServices by the system serversValue added services

Page 17: Distributed System Concepts and Architectures

Primitive ServicesCommunication- Exchange of

Information between processes

Synchronization- Coordination of Events

Processor multiplexing

Page 18: Distributed System Concepts and Architectures

Services by System ServersName Server - used to locate users,

processes or machines

Network Server –used to translate addresses and locations obtained from Name server

Time Server-synchronization of processes to maintain a total order of event occurrences

File Server- managing shared file system resources

Page 19: Distributed System Concepts and Architectures

Example

Page 20: Distributed System Concepts and Architectures
Page 21: Distributed System Concepts and Architectures
Page 22: Distributed System Concepts and Architectures

Value Added ServicesWeb Server – accepts requests

from the clients , processes it and returns a response

Group Server –manages creation and termination of groups of interacting processes

Page 23: Distributed System Concepts and Architectures

Services for efficient operation of systemResource Allocation Resource allocation must be properly done when

multiple users or multiple jobs running concurrentlyAccounting OS keeps track of what kind of resources used,

how many users etcProtection and Security Ensuring that all access to system resources is

controlled. Access to the system from outsiders requires user authentication

Page 24: Distributed System Concepts and Architectures

Privacy as an Operating System Service [S.Iosannidis06]1.Transparent, privacy-providing storage

and network

2. Privacy-enhanced system calls

3. Privacy Libraries

4. Privacy-policy Management

Page 25: Distributed System Concepts and Architectures

References Distributed operating systems & Algorithms, By Randy chow,

Theodore Johnson. 1998 Operating System Concepts 6th ed - Silberschatz Galvin, ch -3

operating System structure. 2003 Advanced UNIX- A Programmer’s Guide, By Stephen Prata. 1997 Computer science illuminated, second edition, By Nell dale, John

Lewis. 2004 http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnumber=138323 Privacy as an operating system service ,Ioannidis ,S; Sidiroglou ,S;

D. Keromytis,A;Proceedings of the 1st USENIX Workshop on Hot Topics in Security,2006

http://roll.sohu.com/20110829/n317612817.shtml

Page 26: Distributed System Concepts and Architectures

Thank you!