How To Make A Distributed System Transparent
|
|
- Alicia Nelson
- 3 years ago
- Views:
Transcription
1 Operating Systems Interface between the hardware and the rest: editors, compilers, database systems, application programs, your programs, etc. Allows portability, enables easier programming, The manager of different resources (memory, CPU, disk, printer, etc) in your system Takes responsibility away from the users, tends to improve metrics (throughput, response time, etc) 2 types: monolithic: all functions are inside a single kernel (central part of the OS) microkernel-based: non-basic functions float as servers (there is a small kernel for the basic functionality) Distributed Systems A distributed system is: A collection of independent computers that appears to its users as a single coherent system. (also, a collection of systems that when one breaks nothing works) 1
2 Distributed Systems 1.1 A distributed system organized as middleware. What s middleware? Note that the middleware layer extends over multiple machines. Issues in Distributed Computing Why distribute? What s bad about centralized? DISTRIBUTION: allows sharing of data, code, devices, messages, etc is more flexible (can add more resources, scalable) is cheaper (several small machines are cheaper than one powerful). That is, the price/performance ratio is smaller than in centralized is usually faster (same as above) can be fault tolerant (if one site fails, not all computations fail) much, MUCH MORE!!! More complex? YES, much more (here is the much more) More time consuming? (messages need to go back and forth) Slower response time? (messages, but can parallelize comps) What about reliability, security, cost, network, messages, congestion, load balancing... 2
3 Distributed OS Services Global Inter-Process Communication (IPC) primitives, transparent to the users (currently support to client-server computing) Global protection schemes, so that a validation at a site needs to be validated at another site (Kerberos) Global process management: usual (destroy, create, etc...) + migration, load distribution, so that the user need not manually logon to a different machine. The OS takes charge, and executes the program requested by the user in a less-loaded, fastresponding machine (compute server, file server, etc). Global process synchronization (supporting different language paradigms for heterogeneity and openness) Compatibility among machines (binary, protocol, etc) Global naming and file system Distributed OSs Transparency attempts to hide the nature of the system from users. Good, because users usually don t need to know details Degree of transparency is important, too much may be too much Performance is usually an issue that needs to be studied for a specific system architecture, application, users, etc. Scalability is important in the long run and general use some applications, systems, users, etc do not need scalability Distributed algorithms are also needed, which have the following characteristics: State information should be distributed to all nodes (how? overhead?) Decisions are made based on local information (why?) Fault tolerance (what for?) No global/synchronized clocks (why?) 3
4 Transparency in a Distributed System O H3P/NFE KFP/H9DBN.G Q C+DFEG.HJI KL1IM6N AB. )) # %( 8 "%("%9 1, > "%9 #$ ##, $! 1"%( =. "%9. %3 "%6,77 4 7%(, %9 6! 1"%9. ;.! %& %3 "%6,7 7 4 % %3 <! %3 $! ;. 8! %3 %3 "%6,7 " 4! #8 %9 %3 4 : ( %3 "%6,7 " 4! #8 %9 %3 4 5"! %3 )! # 1 4 # ).!!! " " 2%( #$ %& #'( )% *+, / 10 Degree of Transparency Observation: Aiming at full distribution transparency may be too much: Users may be located in different continents; distribution is apparent and not something you want to hide Completely hiding failures of networks and nodes is (theoretically and practically) impossible You cannot distinguish a slow computer from a failing one You can never be sure that a server actually performed an operation before a crash Full transparency will cost performance, exposing distribution of the system Keeping Web caches exactly up-to-date with the master copy Immediately flushing write operations to disk for fault tolerance 4
5 Scalability Three dimensions: Size: Number of users and/or processes Geographical: Maximum distance between nodes Administrative: Number of administrative domains Limitations: }~T +y< k _BVF[2X3]BgUl _Fà^ _BXsBUb _F^ k _BVF[2X3]BgUl _Fà`B].[3] k _BVF[2X3]BgUl _Fà]BgWBS/X2U[2m/dj^ ubvtw+xzy+{ n@^ UVFW6g_f^ _BX(s._BXTi3S/Xt]BggpZF^ _BX3^ n@^ UVFW6g_fS/VBo2gUVp_q[3_Bg_Be/mFS/Vp_h\FS/S/r RTS/UVFWYX3S/Z.[UVFWY\F]F^ _FàS/Vcb S/dfe/g_.[3_hUV.i&S/X2dj].[JUS/V Techniques for Scaling Distribution: Partition data and computations across multiple machines: Move computations to clients (e.g., Java applets) Decentralized naming services (e.g., DNS) Decentralized information systems (e.g., WWW) Replication: Make copies of data available at different machines (e.g., replicated file servers, databases, mirrored websites, etc) Caching: Allow client processes to access local copies Web caches (e.g., browser/web proxy) File caches (e.g., server or client) 5
6 Scalability Applying scaling techniques is easy, except for: Having multiple copies (cached or replicated), leads to inconsistencies: modifying one copy makes that copy different from the rest. Always keeping copies consistent and in a general way requires global synchronization on each modification. Global synchronization precludes large-scale solutions. Observation1: If we can tolerate inconsistencies, we may reduce the need for global synchronization. Observation2: Tolerating inconsistencies is application dependent. Scaling Techniques (Example 1) The difference between letting: a) a server or b) a client check forms as they are being filled 6
7 Scaling Techniques (Example 2) An example of dividing the DNS name space into zones. Hardware Concepts Different basic organizations and memories in distributed computer systems 7
8 Multiprocessors (1) A bus-based multiprocessor. Multiprocessors (2) A crossbar switch An omega switching network 8
9 Homogeneous Multicomputer Systems Grid Hypercube Software Concepts Distributed systems can be achieved in 3 ways: DOS (Distributed Operating Systems) NOS (Network Operating Systems) Middleware F ±"µ / / + / + œ ˆˆ + F±².³Jª µ1ª «š ŠŠ Š Ž 9 1 ˆ,. ˆ 7 š Ž Š # 9. " ( Š " 9 Ž š Š2 Š2 ( z 6 9 ž Š 1 ˆ " 9 Ž šš2 Š2 ( Ÿ ( š Ž Š$ 9. # " ( Š$ 3ž f Ž ˆ#, / Bˆ ˆ 9 Ž " / ( & Š Š 1 Š / + 7 Ž" 9 Ž š,š Ž /ª«? T p / 6 ˆ Ž ˆ Ž ˆ, Š Š š ( - ( Ž Š < 6 " Š Š 3 Ž Š1 Ž ƒ ˆ #ˆF Š2 3 ( Œ " 9 Ž 9
10 Uniprocessor Operating Systems Separating applications from operating system code through a microkernel. Multiprocessor Operating Systems Mutual exclusion and synchronization: Semaphores? Test-n-set and Swap instructions? Spin locks? Monitors? A combination thereof? Implementation issues: Shared memory? Message passing? A combination thereof? 10
11 Multicomputer Operating Systems (1) OS on each computer knows about the other computers OS on each computer is the same Services are generally (transparently) distributed across computers Multicomputer Operating Systems (2) No shared memory ¹ message passing Typically no broadcasting, thus need software Hard(er) to do synchronization No centralized decision making In practice, then, only very few truly distributed multicomputer OSs exist (Amoeba? Authors? º ) 11
12 Multicomputer Operating Systems (3) âpä ÞF å Ý3Ø ÞBÔæ Õ.ß1ÔØ6ÞèçFØ Ô Þß ÃÄ ½Å¾¼Æ ǼÀ6È Æ"É9ÊÄ ÏÈРмÀ6Æ Â É/Ð&ÈÄÄ ÃÄ ½Å¾¼Æ ǼÀ6È Æ"É9ÊÄ Ë7¼ ¾¾1 Ì ¼#¾¼Æ É ÃÄ ½Å¾¼Æ ǼÀ6È Æ"É9ÊÄ Ë7¼ ¾¾1 Ì ¼,À ¼ ½1¼ÊÍ ¼ Ç ÃÄ ½Å¾¼Æ ǼÀ6È Æ"É9ÊÄ Ë7¼ ¾¾1 Ì ¼Ç¼ÄÊÍ ¼À ¼ Ç â ÒBÞ.àcÖ Ü.ã3ã Ò/Ý Î.¼ ¾»/»/»/ Ñ6ÒBÓÔÕ/ÖBÓÒ, Ø<ÙqÙfÚ Û6Ü Õ/Ý3Õ/Þ.ßÒFÒ.à á»bâ É<Æ ¼ ½¼ ¾¾ ÀÁ»B É<Æ ¼ ½¼ ¾¾ ÀÁ»B¼ ½¼ ¾¾ ÀÁ»B¼ ½¼ ¾¾ ÀÁ Relation between blocking, buffering, and reliable communications. Distributed Shared Memory Systems (1) a) Pages of address space distributed among four machines b) Situation after CPU 1 references page 10 c) Situation if page 10 is read only and replication is used 12
13 Distributed Shared Memory Systems (2) False sharing of a page between two independent processes. Network Operating System (1) Each computer has its own operating system with networking facilities Computers work independently (i.e., they may even have different operating systems) Services are tied to individual nodes (ftp, telnet, WWW) Highly file oriented (basically, processors share only files) 13
14 Network Operating System (2) Two clients and a server in a network operating system. Network Operating System (3) Different clients may mount the servers in different places. 14
15 Middleware OS on each computer need not know about the other computers OS on different computers need not generally be the same Services are generally (transparently) distributed across computers Middleware Motivation: Too many networked applications were hard or difficult to integrate: Departments are running different NOSs Integration and interoperability only at level of primitive NOS services Need for federated information systems: Combining different databases, but providing a single view to applications Setting up enterprise-wide Internet services, making use of existing information systems Allow transactions across different databases Allow extensibility for future services (e.g., mobility, teleworking, collaborative applications) Constraint: use the existing operating systems, and treat them as the underlying environment (they provided the basic functionality anyway) 15
16 Middleware Services Communication Services: replace primitive sockets with Remote Procedure Calls (or Remote Method Invocations) Message passing Communicating streams Information Services: data management Large-scale, system-wide naming Advanced directory services Location services Persistent storage Data caching and replication Security Services: secure communication and processing Authentication and authorization Encryption Middleware and Openness Give applications control of when, where and how to access data (e.g., code migration and distributed transaction processing) In an open middleware-based distributed system, the protocols used by each middleware layer should be the same, as well as the interfaces they offer to applications. 16
17 ú ú ú Comparison between Systems B#=). ë ô ëfëfï Tø2ô3ó ìfð ê óbô ëbìfüù û ó jëcé7ûhï/ì ó îîbìfïpñ/ëfð ú ý ë ô ï ü ï/ê õëfð,ï é7û Bó ð õð ï ô ü ï ì õü ó.ø2õï/ì ëfð ï /ôü ë ó ì ó ë jëbì ø ûpü ó îóbý/õîõøù éêpëbìbìfëfð ð ò ë ôù õ ö ëfð û jë jï óbô ëfñ ôù ÿ-îï ü ëbì ýfó ø2ô3ó î î ú ï í+îïpð ëfñ >? 0 'A)2(5476 #$%&' "!" õ ö ëfð ëfð ð ó ë.ð ñ õð ÿ-îï ø2ô2õý.ø ýfó î ëfñ ïpñbë ô3ó.ø ëbîù í+îïbð ëfñ 89):;*-%=< 476.õîëFð þ ë ô ìpïpñbë ö ëfð éêfëbì õ ú ï ïpñbëbîfð êfëfü õ 9õü þ ë ô ìfïpñ/ë ò+óbô9õëfð éêpëbì A comparison between multiprocessor operating systems, multicomputer operating systems, network operating systems, and middleware based distributed systems. ï ú ï (( )+*-,.%&)./ 0,213)2(5476 Clients and Servers Servers typically manage shared resource, more intensive use Clients are thinner, less resource intensive, provide interface, manage smaller (digital?) components (e.g., barcode readers) Clients and servers may be in different machines Request/reply model (blocking or not?) 17
18 Application Layering Traditional three layers: User interface (only interface) Processing layer (no data) Data layer (only data) Typical application: database technology Many others Layering The general organization of an Internet search engine into three different layers 18
19 Alternative client-server organizations Example Architecture An example of a server acting as a client. 19
20 Modern Architectures An example of horizontal distribution of a Web service. Alternative C/S Architectures Cooperating servers: Service is physically distributed across a collection of servers. E.g., Replicated file systems Network news systems Naming systems (DNS, X.500, ) Workflow systems Cooperating clients: distributed application exists by virtue of client collaboration: Teleconferencing where each client owns a (multimedia) workstation Publish/subscribe (push/pull) architectures in which role of client and server is blurred 20
Distributed System: Definition
Distributed System: Definition A distributed system is a piece of software that ensures that: A collection of independent computers that appears to its users as a single coherent system Two aspects: (1)
More informationDistributed Operating Systems
Distributed Operating Systems Prashant Shenoy UMass Computer Science http://lass.cs.umass.edu/~shenoy/courses/677 Lecture 1, page 1 Course Syllabus CMPSCI 677: Distributed Operating Systems Instructor:
More informationDistributed Systems LEEC (2005/06 2º Sem.)
Distributed Systems LEEC (2005/06 2º Sem.) Introduction João Paulo Carvalho Universidade Técnica de Lisboa / Instituto Superior Técnico Outline Definition of a Distributed System Goals Connecting Users
More informationHow To Understand The Concept Of A Distributed System
Distributed Operating Systems Introduction Ewa Niewiadomska-Szynkiewicz and Adam Kozakiewicz ens@ia.pw.edu.pl, akozakie@ia.pw.edu.pl Institute of Control and Computation Engineering Warsaw University of
More informationPrinciples and characteristics of distributed systems and environments
Principles and characteristics of distributed systems and environments Definition of a distributed system Distributed system is a collection of independent computers that appears to its users as a single
More information2.1 What are distributed systems? What are systems? Different kind of systems How to distribute systems? 2.2 Communication concepts
Chapter 2 Introduction to Distributed systems 1 Chapter 2 2.1 What are distributed systems? What are systems? Different kind of systems How to distribute systems? 2.2 Communication concepts Client-Server
More informationDistributed Systems. REK s adaptation of Prof. Claypool s adaptation of Tanenbaum s Distributed Systems Chapter 1
Distributed Systems REK s adaptation of Prof. Claypool s adaptation of Tanenbaum s Distributed Systems Chapter 1 1 The Rise of Distributed Systems! Computer hardware prices are falling and power increasing.!
More informationVirtual machine interface. Operating system. Physical machine interface
Software Concepts User applications Operating system Hardware Virtual machine interface Physical machine interface Operating system: Interface between users and hardware Implements a virtual machine that
More informationDistribution transparency. Degree of transparency. Openness of distributed systems
Distributed Systems Principles and Paradigms Maarten van Steen VU Amsterdam, Dept. Computer Science steen@cs.vu.nl Chapter 01: Version: August 27, 2012 1 / 28 Distributed System: Definition A distributed
More informationCS550. Distributed Operating Systems (Advanced Operating Systems) Instructor: Xian-He Sun
CS550 Distributed Operating Systems (Advanced Operating Systems) Instructor: Xian-He Sun Email: sun@iit.edu, Phone: (312) 567-5260 Office hours: 2:10pm-3:10pm Tuesday, 3:30pm-4:30pm Thursday at SB229C,
More informationBasics. Topics to be covered. Definition of a Distributed System. Definition of a Distributed System
Topics to be covered Basics Definitions and Examples Goals Models (architectural, fundamental) Hardware and Software Concepts The -Server Model 1 2 Historical Definition of a Distributed System Two developments
More informationSoftware Concepts. Uniprocessor Operating Systems. System software structures. CIS 505: Software Systems Architectures of Distributed Systems
CIS 505: Software Systems Architectures of Distributed Systems System DOS Software Concepts Description Tightly-coupled operating system for multiprocessors and homogeneous multicomputers Main Goal Hide
More informationChapter 1: Distributed Systems: What is a distributed system? Fall 2008 Jussi Kangasharju
Chapter 1: Distributed Systems: What is a distributed system? Fall 2008 Jussi Kangasharju Course Goals and Content Distributed systems and their: Basic concepts Main issues, problems, and solutions Structured
More information1.4 SOFTWARE CONCEPTS
22 INTRODUCTION CHAP. 1 1.4 SOFTWARE CONCEPTS Hardware for distributed systems is important, but it is software that largely determines what a distributed system actually looks like. Distributed systems
More informationDistributed Systems. Examples. Advantages and disadvantages. CIS 505: Software Systems. Introduction to Distributed Systems
CIS 505: Software Systems Introduction to Distributed Systems Insup Lee Department of Computer and Information Science University of Pennsylvania Distributed Systems Why distributed systems? o availability
More informationChapter 18: Database System Architectures. Centralized Systems
Chapter 18: Database System Architectures! Centralized Systems! Client--Server Systems! Parallel Systems! Distributed Systems! Network Types 18.1 Centralized Systems! Run on a single computer system and
More informationCS 5523 Operating Systems: Intro to Distributed Systems
CS 5523 Operating Systems: Intro to Distributed Systems Instructor: Dr. Tongping Liu Thank Dr. Dakai Zhu, Dr. Palden Lama for providing their slides. Outline Different Distributed Systems Ø Distributed
More information1 Organization of Operating Systems
COMP 730 (242) Class Notes Section 10: Organization of Operating Systems 1 Organization of Operating Systems We have studied in detail the organization of Xinu. Naturally, this organization is far from
More informationTools Page 1 of 13 ON PROGRAM TRANSLATION. A priori, we have two translation mechanisms available:
Tools Page 1 of 13 ON PROGRAM TRANSLATION A priori, we have two translation mechanisms available: Interpretation Compilation On interpretation: Statements are translated one at a time and executed immediately.
More informationCHAPTER 2 MODELLING FOR DISTRIBUTED NETWORK SYSTEMS: THE CLIENT- SERVER MODEL
CHAPTER 2 MODELLING FOR DISTRIBUTED NETWORK SYSTEMS: THE CLIENT- SERVER MODEL This chapter is to introduce the client-server model and its role in the development of distributed network systems. The chapter
More informationCentralized Systems. A Centralized Computer System. Chapter 18: Database System Architectures
Chapter 18: Database System Architectures Centralized Systems! Centralized Systems! Client--Server Systems! Parallel Systems! Distributed Systems! Network Types! Run on a single computer system and do
More informationindependent systems in constant communication what they are, why we care, how they work
Overview of Presentation Major Classes of Distributed Systems classes of distributed system loosely coupled systems loosely coupled, SMP, Single-system-image Clusters independent systems in constant communication
More informationTier Architectures. Kathleen Durant CS 3200
Tier Architectures Kathleen Durant CS 3200 1 Supporting Architectures for DBMS Over the years there have been many different hardware configurations to support database systems Some are outdated others
More informationNetwork operating systems typically are used to run computers that act as servers. They provide the capabilities required for network operation.
NETWORK OPERATING SYSTEM Introduction Network operating systems typically are used to run computers that act as servers. They provide the capabilities required for network operation. Network operating
More informationClient/Server Computing Distributed Processing, Client/Server, and Clusters
Client/Server Computing Distributed Processing, Client/Server, and Clusters Chapter 13 Client machines are generally single-user PCs or workstations that provide a highly userfriendly interface to the
More informationMicrokernels, virtualization, exokernels. Tutorial 1 CSC469
Microkernels, virtualization, exokernels Tutorial 1 CSC469 Monolithic kernel vs Microkernel Monolithic OS kernel Application VFS System call User mode What was the main idea? What were the problems? IPC,
More informationA Comparison of Distributed Systems: ChorusOS and Amoeba
A Comparison of Distributed Systems: ChorusOS and Amoeba Angelo Bertolli Prepared for MSIT 610 on October 27, 2004 University of Maryland University College Adelphi, Maryland United States of America Abstract.
More informationNetwork Attached Storage. Jinfeng Yang Oct/19/2015
Network Attached Storage Jinfeng Yang Oct/19/2015 Outline Part A 1. What is the Network Attached Storage (NAS)? 2. What are the applications of NAS? 3. The benefits of NAS. 4. NAS s performance (Reliability
More informationCOMP5426 Parallel and Distributed Computing. Distributed Systems: Client/Server and Clusters
COMP5426 Parallel and Distributed Computing Distributed Systems: Client/Server and Clusters Client/Server Computing Client Client machines are generally single-user workstations providing a user-friendly
More informationWeighted Total Mark. Weighted Exam Mark
CMP2204 Operating System Technologies Period per Week Contact Hour per Semester Total Mark Exam Mark Continuous Assessment Mark Credit Units LH PH TH CH WTM WEM WCM CU 45 30 00 60 100 40 100 4 Rationale
More informationCHAPTER 1: OPERATING SYSTEM FUNDAMENTALS
CHAPTER 1: OPERATING SYSTEM FUNDAMENTALS What is an operating? A collection of software modules to assist programmers in enhancing efficiency, flexibility, and robustness An Extended Machine from the users
More informationFunctions of NOS Overview of NOS Characteristics Differences Between PC and a NOS Multiuser, Multitasking, and Multiprocessor Systems NOS Server
Functions of NOS Overview of NOS Characteristics Differences Between PC and a NOS Multiuser, Multitasking, and Multiprocessor Systems NOS Server Hardware Windows Windows NT 4.0 Linux Server Software and
More informationChapter 11 Distributed File Systems. Distributed File Systems
Chapter 11 Distributed File Systems Introduction Case studies NFS Coda 1 Distributed File Systems A distributed file system enables clients to access files stored on one or more remote file servers A file
More informationHow To Write A Network Operating System For A Network (Networking) System (Netware)
Otwarte Studium Doktoranckie 1 Adaptable Service Oriented Architectures Krzysztof Zieliński Department of Computer Science AGH-UST Krakow Poland Otwarte Studium Doktoranckie 2 Agenda DCS SOA WS MDA OCL
More informationIntroduction to CORBA. 1. Introduction 2. Distributed Systems: Notions 3. Middleware 4. CORBA Architecture
Introduction to CORBA 1. Introduction 2. Distributed Systems: Notions 3. Middleware 4. CORBA Architecture 1. Introduction CORBA is defined by the OMG The OMG: -Founded in 1989 by eight companies as a non-profit
More informationComputer Science 4302 Operating Systems. Student Learning Outcomes
Computer Science 4302 Operating Systems Student Learning Outcomes 1. The student will learn what operating systems are, what they do, and how they are designed and constructed. The student will be introduced
More informationB) Using Processor-Cache Affinity Information in Shared Memory Multiprocessor Scheduling
A) Recovery Management in Quicksilver 1) What role does the Transaction manager play in the recovery management? It manages commit coordination by communicating with servers at its own node and with transaction
More informationAutomatic load balancing and transparent process migration
Automatic load balancing and transparent process migration Roberto Innocente rinnocente@hotmail.com November 24,2000 Download postscript from : mosix.ps or gzipped postscript from: mosix.ps.gz Nov 24,2000
More informationChapter 2 TOPOLOGY SELECTION. SYS-ED/ Computer Education Techniques, Inc.
Chapter 2 TOPOLOGY SELECTION SYS-ED/ Computer Education Techniques, Inc. Objectives You will learn: Topology selection criteria. Perform a comparison of topology selection criteria. WebSphere component
More informationSynchronization. Todd C. Mowry CS 740 November 24, 1998. Topics. Locks Barriers
Synchronization Todd C. Mowry CS 740 November 24, 1998 Topics Locks Barriers Types of Synchronization Mutual Exclusion Locks Event Synchronization Global or group-based (barriers) Point-to-point tightly
More informationDesign and Implementation of the Heterogeneous Multikernel Operating System
223 Design and Implementation of the Heterogeneous Multikernel Operating System Yauhen KLIMIANKOU Department of Computer Systems and Networks, Belarusian State University of Informatics and Radioelectronics,
More informationMiddleware and Distributed Systems. Introduction. Dr. Martin v. Löwis
Middleware and Distributed Systems Introduction Dr. Martin v. Löwis 14 3. Software Engineering What is Middleware? Bauer et al. Software Engineering, Report on a conference sponsored by the NATO SCIENCE
More informationSystem Models for Distributed and Cloud Computing
System Models for Distributed and Cloud Computing Dr. Sanjay P. Ahuja, Ph.D. 2010-14 FIS Distinguished Professor of Computer Science School of Computing, UNF Classification of Distributed Computing Systems
More informationLinuxWorld Conference & Expo Server Farms and XML Web Services
LinuxWorld Conference & Expo Server Farms and XML Web Services Jorgen Thelin, CapeConnect Chief Architect PJ Murray, Product Manager Cape Clear Software Objectives What aspects must a developer be aware
More informationChapter 17: Distributed Systems
Chapter 17: Distributed Systems Chapter 17: Distributed Systems Advantages of Distributed Systems Types of Network-Based Operating Systems Network Structure Communication Structure Communication Protocols
More informationLecture 2 Parallel Programming Platforms
Lecture 2 Parallel Programming Platforms Flynn s Taxonomy In 1966, Michael Flynn classified systems according to numbers of instruction streams and the number of data stream. Data stream Single Multiple
More informationDistributed Systems Lecture 1 1
Distributed Systems Lecture 1 1 Distributed Systems Lecturer: Therese Berg therese.berg@it.uu.se. Recommended text book: Distributed Systems Concepts and Design, Coulouris, Dollimore and Kindberg. Addison
More informationOPERATING SYSTEMS Internais and Design Principles
OPERATING SYSTEMS Internais and Design Principles FOURTH EDITION William Stallings, Ph.D. Prentice Hall Upper Saddle River, New Jersey 07458 CONTENTS Web Site for Operating Systems: Internais and Design
More informationOperating Systems 4 th Class
Operating Systems 4 th Class Lecture 1 Operating Systems Operating systems are essential part of any computer system. Therefore, a course in operating systems is an essential part of any computer science
More informationChapter 7: Distributed Systems: Warehouse-Scale Computing. Fall 2011 Jussi Kangasharju
Chapter 7: Distributed Systems: Warehouse-Scale Computing Fall 2011 Jussi Kangasharju Chapter Outline Warehouse-scale computing overview Workloads and software infrastructure Failures and repairs Note:
More informationAmoeba Distributed Operating System
Amoeba Distributed Operating System Matt Ramsay Tim Kiegel Heath Memmer CS470 Case Study Paper 4/19/02 Amoeba Introduction The Amoeba operating system began as a research project at Vrije Universiteit
More informationWrite a technical report Present your results Write a workshop/conference paper (optional) Could be a real system, simulation and/or theoretical
Identify a problem Review approaches to the problem Propose a novel approach to the problem Define, design, prototype an implementation to evaluate your approach Could be a real system, simulation and/or
More informationOperating System Components and Services
Operating System Components and Services Tom Kelliher, CS 311 Feb. 6, 2012 Announcements: From last time: 1. System architecture issues. 2. I/O programming. 3. Memory hierarchy. 4. Hardware protection.
More informationCluster, Grid, Cloud Concepts
Cluster, Grid, Cloud Concepts Kalaiselvan.K Contents Section 1: Cluster Section 2: Grid Section 3: Cloud Cluster An Overview Need for a Cluster Cluster categorizations A computer cluster is a group of
More informationDeploying a distributed data storage system on the UK National Grid Service using federated SRB
Deploying a distributed data storage system on the UK National Grid Service using federated SRB Manandhar A.S., Kleese K., Berrisford P., Brown G.D. CCLRC e-science Center Abstract As Grid enabled applications
More informationClient/Server and Distributed Computing
Adapted from:operating Systems: Internals and Design Principles, 6/E William Stallings CS571 Fall 2010 Client/Server and Distributed Computing Dave Bremer Otago Polytechnic, N.Z. 2008, Prentice Hall Traditional
More informationChapter 1: Operating System Models 1 2 Operating System Models 2.1 Introduction Over the past several years, a number of trends affecting operating system design are witnessed and foremost among them is
More informationOpenMosix Presented by Dr. Moshe Bar and MAASK [01]
OpenMosix Presented by Dr. Moshe Bar and MAASK [01] openmosix is a kernel extension for single-system image clustering. openmosix [24] is a tool for a Unix-like kernel, such as Linux, consisting of adaptive
More informationNetwork File System (NFS) Pradipta De pradipta.de@sunykorea.ac.kr
Network File System (NFS) Pradipta De pradipta.de@sunykorea.ac.kr Today s Topic Network File System Type of Distributed file system NFS protocol NFS cache consistency issue CSE506: Ext Filesystem 2 NFS
More informationMobile and Heterogeneous databases Database System Architecture. A.R. Hurson Computer Science Missouri Science & Technology
Mobile and Heterogeneous databases Database System Architecture A.R. Hurson Computer Science Missouri Science & Technology 1 Note, this unit will be covered in four lectures. In case you finish it earlier,
More informationAgent Languages. Overview. Requirements. Java. Tcl/Tk. Telescript. Evaluation. Artificial Intelligence Intelligent Agents
Agent Languages Requirements Overview Java Tcl/Tk Telescript Evaluation Franz J. Kurfess, Cal Poly SLO 211 Requirements for agent Languages distributed programming large-scale (tens of thousands of computers)
More informationChapter 1: Introduction. What is an Operating System?
Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered System Real -Time Systems Handheld Systems Computing Environments
More informationCOS 318: Operating Systems. Virtual Machine Monitors
COS 318: Operating Systems Virtual Machine Monitors Andy Bavier Computer Science Department Princeton University http://www.cs.princeton.edu/courses/archive/fall10/cos318/ Introduction Have been around
More informationChapter 3: Operating-System Structures. Common System Components
Chapter 3: Operating-System Structures System Components Operating System Services System Calls System Programs System Structure Virtual Machines System Design and Implementation System Generation 3.1
More informationA distributed system is defined as
A distributed system is defined as A collection of independent computers that appears to its users as a single coherent system CS550: Advanced Operating Systems 2 Resource sharing Openness Concurrency
More informationMiddleware Lou Somers
Middleware Lou Somers April 18, 2002 1 Contents Overview Definition, goals, requirements Four categories of middleware Transactional, message oriented, procedural, object Middleware examples XML-RPC, SOAP,
More informationIngegneria del Software II academic year: 2004-2005 Course Web-site: [www.di.univaq.it/ingegneria2/]
Course: Ingegneria del Software II academic year: 2004-2005 Course Web-site: [www.di.univaq.it/ingegneria2/] Middleware Technology: Middleware Applications and Distributed Systems Lecturer: Henry Muccini
More informationDistributed Operating Systems. Cluster Systems
Distributed Operating Systems Cluster Systems Ewa Niewiadomska-Szynkiewicz ens@ia.pw.edu.pl Institute of Control and Computation Engineering Warsaw University of Technology E&IT Department, WUT 1 1. Cluster
More informationOperating Systems for Parallel Processing Assistent Lecturer Alecu Felician Economic Informatics Department Academy of Economic Studies Bucharest
Operating Systems for Parallel Processing Assistent Lecturer Alecu Felician Economic Informatics Department Academy of Economic Studies Bucharest 1. Introduction Few years ago, parallel computers could
More information3-Tier Architecture. 3-Tier Architecture. Prepared By. Channu Kambalyal. Page 1 of 19
3-Tier Architecture Prepared By Channu Kambalyal Page 1 of 19 Table of Contents 1.0 Traditional Host Systems... 3 2.0 Distributed Systems... 4 3.0 Client/Server Model... 5 4.0 Distributed Client/Server
More informationSimplest Scalable Architecture
Simplest Scalable Architecture NOW Network Of Workstations Many types of Clusters (form HP s Dr. Bruce J. Walker) High Performance Clusters Beowulf; 1000 nodes; parallel programs; MPI Load-leveling Clusters
More informationA Deduplication File System & Course Review
A Deduplication File System & Course Review Kai Li 12/13/12 Topics A Deduplication File System Review 12/13/12 2 Traditional Data Center Storage Hierarchy Clients Network Server SAN Storage Remote mirror
More informationSolaris For The Modern Data Center. Taking Advantage of Solaris 11 Features
Solaris For The Modern Data Center Taking Advantage of Solaris 11 Features JANUARY 2013 Contents Introduction... 2 Patching and Maintenance... 2 IPS Packages... 2 Boot Environments... 2 Fast Reboot...
More informationChapter 2: Remote Procedure Call (RPC)
Chapter 2: Remote Procedure Call (RPC) Gustavo Alonso Computer Science Department Swiss Federal Institute of Technology (ETHZ) alonso@inf.ethz.ch http://www.iks.inf.ethz.ch/ Contents - Chapter 2 - RPC
More informationPatterns in Software Engineering
Patterns in Software Engineering Lecturer: Raman Ramsin Lecture 7 GoV Patterns Architectural Part 1 1 GoV Patterns for Software Architecture According to Buschmann et al.: A pattern for software architecture
More informationPlanning Domain Controller Capacity
C H A P T E R 4 Planning Domain Controller Capacity Planning domain controller capacity helps you determine the appropriate number of domain controllers to place in each domain that is represented in a
More informationCommuniGate Pro White Paper. Dynamic Clustering Solution. For Reliable and Scalable. Messaging
CommuniGate Pro White Paper Dynamic Clustering Solution For Reliable and Scalable Messaging Date April 2002 Modern E-Mail Systems: Achieving Speed, Stability and Growth E-mail becomes more important each
More informationDistributed Data Management
Introduction Distributed Data Management Involves the distribution of data and work among more than one machine in the network. Distributed computing is more broad than canonical client/server, in that
More informationBBM467 Data Intensive ApplicaAons
Hace7epe Üniversitesi Bilgisayar Mühendisliği Bölümü BBM467 Data Intensive ApplicaAons Dr. Fuat Akal akal@hace7epe.edu.tr FoundaAons of Data[base] Clusters Database Clusters Hardware Architectures Data
More informationArchitectural Patterns. Layers: Pattern. Architectural Pattern Examples. Layer 3. Component 3.1. Layer 2. Component 2.1 Component 2.2.
Architectural Patterns Architectural Patterns Dr. James A. Bednar jbednar@inf.ed.ac.uk http://homepages.inf.ed.ac.uk/jbednar Dr. David Robertson dr@inf.ed.ac.uk http://www.inf.ed.ac.uk/ssp/members/dave.htm
More informationSymmetric Multiprocessing
Multicore Computing A multi-core processor is a processing system composed of two or more independent cores. One can describe it as an integrated circuit to which two or more individual processors (called
More informationDistributed Computing
1 Syllabus Distributed Computing Lecture : 4 Hrs / Week One paper : 100 Marks / 3 Hrs duration Practical : 3 Hrs / Week Term work : 25 Marks 1. Fundamentals Evolution of Distributed Computing Systems,
More informationDISTRIBUTED SYSTEMS [COMP9243] Lecture 9a: Cloud Computing WHAT IS CLOUD COMPUTING? 2
DISTRIBUTED SYSTEMS [COMP9243] Lecture 9a: Cloud Computing Slide 1 Slide 3 A style of computing in which dynamically scalable and often virtualized resources are provided as a service over the Internet.
More informationSCALABILITY AND AVAILABILITY
SCALABILITY AND AVAILABILITY Real Systems must be Scalable fast enough to handle the expected load and grow easily when the load grows Available available enough of the time Scalable Scale-up increase
More informationObjectives. Distributed Databases and Client/Server Architecture. Distributed Database. Data Fragmentation
Objectives Distributed Databases and Client/Server Architecture IT354 @ Peter Lo 2005 1 Understand the advantages and disadvantages of distributed databases Know the design issues involved in distributed
More informationChapter 15 Windows Operating Systems
Understanding Operating Systems, Fifth Edition 15-1 Chapter 15 Windows Operating Systems At a Glance Instructor s Manual Table of Contents Overview Objectives s Quick Quizzes Class Discussion Topics Additional
More informationCORBA and object oriented middleware. Introduction
CORBA and object oriented middleware Introduction General info Web page http://www.dis.uniroma1.it/~beraldi/elective Exam Project (application), plus oral discussion 3 credits Roadmap Distributed applications
More informationOperating System Structures
Operating System Structures Meelis ROOS mroos@ut.ee Institute of Computer Science Tartu University fall 2009 Literature A. S. Tanenbaum. Modern Operating Systems. 2nd ed. Prentice Hall. 2001. G. Nutt.
More informationMicrokernels & Database OSs. Recovery Management in QuickSilver. DB folks: Stonebraker81. Very different philosophies
Microkernels & Database OSs Recovery Management in QuickSilver. Haskin88: Roger Haskin, Yoni Malachi, Wayne Sawdon, Gregory Chan, ACM Trans. On Computer Systems, vol 6, no 1, Feb 1988. Stonebraker81 OS/FS
More informationService Oriented Architecture
Service Oriented Architecture Version 9 2 SOA-2 Overview Ok, now we understand the Web Service technology, but how about Service Oriented Architectures? A guiding analogy Terminology excursion Service,
More informationBENCHMARKING CLOUD DATABASES CASE STUDY on HBASE, HADOOP and CASSANDRA USING YCSB
BENCHMARKING CLOUD DATABASES CASE STUDY on HBASE, HADOOP and CASSANDRA USING YCSB Planet Size Data!? Gartner s 10 key IT trends for 2012 unstructured data will grow some 80% over the course of the next
More informationMOSIX: High performance Linux farm
MOSIX: High performance Linux farm Paolo Mastroserio [mastroserio@na.infn.it] Francesco Maria Taurino [taurino@na.infn.it] Gennaro Tortone [tortone@na.infn.it] Napoli Index overview on Linux farm farm
More informationChapter 6. CORBA-based Architecture. 6.1 Introduction to CORBA 6.2 CORBA-IDL 6.3 Designing CORBA Systems 6.4 Implementing CORBA Applications
Chapter 6. CORBA-based Architecture 6.1 Introduction to CORBA 6.2 CORBA-IDL 6.3 Designing CORBA Systems 6.4 Implementing CORBA Applications 1 Chapter 6. CORBA-based Architecture Part 6.1 Introduction to
More informationMulti-Channel Clustered Web Application Servers
THE AMERICAN UNIVERSITY IN CAIRO SCHOOL OF SCIENCES AND ENGINEERING Multi-Channel Clustered Web Application Servers A Masters Thesis Department of Computer Science and Engineering Status Report Seminar
More informationGrid Computing Vs. Cloud Computing
International Journal of Information and Computation Technology. ISSN 0974-2239 Volume 3, Number 6 (2013), pp. 577-582 International Research Publications House http://www. irphouse.com /ijict.htm Grid
More informationResource Utilization of Middleware Components in Embedded Systems
Resource Utilization of Middleware Components in Embedded Systems 3 Introduction System memory, CPU, and network resources are critical to the operation and performance of any software system. These system
More informationChapter 3. Database Environment - Objectives. Multi-user DBMS Architectures. Teleprocessing. File-Server
Chapter 3 Database Architectures and the Web Transparencies Database Environment - Objectives The meaning of the client server architecture and the advantages of this type of architecture for a DBMS. The
More informationWeb Email DNS Peer-to-peer systems (file sharing, CDNs, cycle sharing)
1 1 Distributed Systems What are distributed systems? How would you characterize them? Components of the system are located at networked computers Cooperate to provide some service No shared memory Communication
More information