Download processes

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
IT 210:
Distributed System Concepts
Lecture 4: Distributed System Model
What is a Distributed System?
Software that manages computer
resources across several computers
Software that provides services for
other software (applications)
…
Process:
Processor State + Memory State
Computer
Registers
Instructions Data
Processor
Memory
Process
Process
Process
Process
Registers
Registers
Registers
Instructions
Registers Data
Instructions
Data
Instructions
Data
Instructions
Data
Thread:
Processor State + Stack
Computer
Registers
Process
Instructions Data
Memory
Processor
Thread
Thread
Thread
Thread
Instructions
Process
Process
Process
Registers
StackRegisters Data
Registers
Stack
Instructions
Data
Stack
Instructions
Data
Registers
Stack
Instructions
Data
Registers
Registers
Registers
Shared Library:
More than one process uses instructions
Computer
Registers
Processor
OS
Kernel
System
Data
Memory
Shared Library
(DLL)
Process
Process
Process
Process
Registers
Registers
Registers
Instructions
Registers Data
Instructions
Data
Instructions
Data
Private
Data
instructions
Distributed System:
Processes that interact between computers
Computer
Computer
Process
Process
Network
Stack
Network
Stack
Network
Cloud
Client / Server:
Process that requests service from another
Computer
Computer
Client
Server
Request
Network
Stack
Response
Network
Stack
Network
Cloud
Browser/ Web Server:
Process that requests service from another
Computer
Computer
Web
BrowserRequest
Web
Server
Network
Stack
HTTP protocol
Over TCP
Over IP
Over Ethernet
Response
Network
Stack
Network
Cloud
Browser/ Web Server:
Two Tier Architecture
Computer
Computer
Web
Browser
Web
Server
Network
Stack
Network
Stack
Network
Cloud
Browser/ Web Server:
3 Tier Architecture
Computer
Computer
Web
Browser
Computer
Web
Server
Network
Stack
Network
Stack
Database
Server
Network
Stack
NetworkCloud
Browser/ Web Server / Middleware / Database …:
N Tier Architecture
Computer
Computer
Web
Browser
Web
Server
Page
HTML
Request
Page
Network
Stack
SQL Request
Network
Stack
Middleware
Object
Request
Object
ResponseServer
SQL Response
Computer
Network
Stack
Computer
NetworkCloud
Database
Server
Network
Stack
Sidebar: Define Middleware
“Middleware is computer software that
connects software components or some
people and their applications.”

“Middleware sits "in the middle" between
application software that may be working
on different operating systems” (Wikipedia)
E.G. Video game middleware
A theme with variations:
All the processes in the same box
Any combination of processes in any
one box
Different network connectivity
requirements…
Browser/ Web Server / Middleware / Database …:
N Tier Architecture
Computer
Computer
Web
Browser
Web
Server
Network
Stack
Computer
Middleware
Server
Network
Stack
NetworkCloud
Database
Server
Network
Stack
External Hard Drive Configuration
Computer
Computer
Web
Browser
Web
Server
Virtual Computer
Database
Server
Network
Stack
Network
Stack
Network
Stack
NetworkCloud
Web
Server
External Hard Drive Configuration
Computer
Computer
Web
Server
Web
Server
Virtual Computer
Database
Server
Network
Stack
Network
Stack
Web
Browser
Network
Stack
NetworkCloud
Cloud Systems
New genre for existing solutions

But new thinking too!
SaaS: Software as a Service
PaaS: Platform as a Service
IaaS: Infrastructure as a Service
HaaS: Hardware as a Service
Advantages of Cloud
Computing
Can have dumb clients (mobile)
Platform independent
Works well across devices
Data loss is less likely (if you trust the cloud)
Software maintenance, installation, updates,
are minimal
Enables different payment models (e.g.,
subscription)
Get resources exactly when needed
Cross-service opportunities
Disadvantages of Cloud
Computing
Easier to “hide” within the cloud
High dependence on Internet (bandwidth!)
New security concerns (more
private/confidential data, single point of
failure)
Requires complex maintenance etc. for those
“in the cloud”
Privacy concerns about others having so
much data about us
Other Models:
Novell: part of $400 million misunderstanding
Client=little machine,
 Server= big machine with resources to share
 Machines connected on very fast, reliable network
which forms a “bus” for the virtual machine.
Note: at the time Novell model was threads not
processes, therefore, add-on software bugs could
kill OS.

Other Models: CORBA Standard
Common Object Request Broker Architecture
Software components, multiple language,
multiple OS  all work together
Used for creation of some middleware for
web
Everything is an object


Objects make requests of other objects through
broker.
Protocol is transparent, while HTTP is very visible.
Java Network Interface
Remote procedure invocation across
JVM’s
Often used for communication between
Java elements after a web conversation
is initiated.
Related documents