Académique Documents
Professionnel Documents
Culture Documents
d.schmidt@vanderbilt.edu
www.dre.vanderbilt.edu/~schmidt
Professor of Computer Science
Institute for Software
Integrated Systems
Vanderbilt University
Nashville, Tennessee, USA
Douglas C. Schmidt
Layer C
Layer B
Layer A
Douglas C. Schmidt
Applications
Domain-Specific
Middleware Services
Common
Middleware Services
Distribution
Middleware
Host Infrastructure
Middleware
Operating Systems
& Protocols
Hardware
Douglas C. Schmidt
Problems
Concurrent &
Complexity
networked software
with many
components &
developers
stemming from
needed capabilities
at many levels of
abstraction
Hard to keep
track of all the
components &
all of their
dependencies
Douglas C. Schmidt
Problems
Concurrent &
Complexity
networked software
with many
components &
developers
Solution
5
groups of subtasks, with each group residing
at a particular level of abstraction
Douglas C. Schmidt
Problems
Concurrent &
Complexity
networked software
with many
components &
developers
Solution
6
posa1.blogspot.com/2008/05/layered-architecture-pattern.html
has more info
Douglas C. Schmidt
Applications
Hardware
Douglas C. Schmidt
&Applications
OS
Operating Systems
& Protocols
Hardware
Douglas C. Schmidt
&Applications
OS
Operating Systems
& Protocols
Hardware
Douglas C. Schmidt
&Applications
OS
Domain-Specific
Middleware Services
Common
Middleware Services
Distribution
Middleware
Host Infrastructure
Middleware
Operating Systems
& Protocols
Hardware
10
Douglas C. Schmidt
&Applications
OS
Domain-Specific
Middleware Services
Common
Middleware Services
Distribution
Middleware
Host Infrastructure
Middleware
Operating Systems
& Protocols
Hardware
11
www.dre.vanderbilt.edu/~schmidt/PDF/middleware-encyclopedia.pdf
has more
Douglas C. Schmidt
Standards-based off-the-shelf
middleware helps:
&Applications
OS
Domain-Specific
Middleware Services
Common
Middleware Services
Distribution
Middleware
Host Infrastructure
Middleware
Operating Systems
& Protocols
Hardware
12
Douglas C. Schmidt
Standards-based off-the-shelf
middleware helps:
&Applications
OS
Domain-Specific
Middleware Services
Common
Middleware Services
Distribution
Middleware
Host Infrastructure
Middleware
Operating Systems
& Protocols
Hardware
Douglas C. Schmidt
Standards-based off-the-shelf
middleware helps:
&Applications
OS
Domain-Specific
Middleware Services
Common
Middleware Services
Distribution
Middleware
Host Infrastructure
Middleware
Operating Systems
& Protocols
Hardware
Douglas C. Schmidt
Standards-based off-the-shelf
middleware helps:
&Applications
OS
Domain-Specific
Middleware Services
Common
Middleware Services
Distribution
Middleware
Host Infrastructure
Middleware
Operating Systems
& Protocols
Hardware
Douglas C. Schmidt
16
Domain-Specific
Middleware Services
Common
Middleware Services
Distribution
Middleware
Host Infrastructure
Middleware
Operating Systems
& Protocols
Douglas C. Schmidt
Examples
Operating systems:
UNIX/Linux, Windows,
VxWorks, LynxOS,
etc.
17
Domain-Specific
Middleware Services
Common
Middleware Services
Distribution
Middleware
Host Infrastructure
Middleware
Operating Systems
& Protocols
Douglas C. Schmidt
These components abstract away many tedious & errorprone aspects of low-level OS APIs
Domain-Specific
Middleware Services
Common
Middleware Services
Distribution
Middleware
Host Infrastructure
Middleware
Operating Systems
& Protocols
18
Douglas C. Schmidt
These components abstract away many tedious & errorprone aspects of low-level OS APIs
Examples
Java Virtual Machine (JVM), Common Language Runtime
Domain-Specific
Middleware Services
Common
Middleware Services
Distribution
Middleware
Host Infrastructure
Middleware
Operating Systems
& Protocols
Asynchronous
Transfer of
Control
Physical
Memory
Access
Synchronization
Memory
Management
Scheduling
www.rtsj.org
19
www.dre.vanderbilt.edu/ACE
Douglas C. Schmidt
Distribution Middleware
Distribution middleware simplifies networked component
programming & extends OS mechanisms end-to-end
Domain-Specific
Middleware Services
Common
Middleware Services
Distribution
Middleware
Host Infrastructure
Middleware
Operating Systems
& Protocols
20
Douglas C. Schmidt
Distribution Middleware
Distribution middleware simplifies networked component
programming & extends OS mechanisms end-to-end
Common
Middleware Services
Examples
OMG (Real-time) CORBA & DDS, W3C SOAP &
Distribution
Middleware
Host Infrastructure
Middleware
Operating Systems
& Protocols
End-to-End Priority
Propagation
Client
OBJ
REF
IDL
STUBS
Explicit
Binding
Object
(Servant)
in args
operation()
Scheduling
Service
Standard
Synchronizers
Domain-Specific
Middleware Services
App
App
IDL
SKEL
Thread
Pools
Object Adapter
ORB CORE
App
Global
Data
Store
GIOP
App
Portable Priorities
Protocol Properties
www.omg.org/corba
App
www.omg.org/dds
Douglas C. Schmidt
Domain-Specific
Middleware Services
Common
Middleware Services
Distribution
Middleware
Host Infrastructure
Middleware
Operating Systems
& Protocols
22
Douglas C. Schmidt
Examples
CORBA Component Model & Object Services, Suns
J2EE, Microsofts .NET, W3C Web Services, etc.
Domain-Specific
Middleware Services
Common
Middleware Services
Distribution
Middleware
Host Infrastructure
Middleware
Operating Systems
& Protocols
Transactional behavior
Authentication & authorization,
Database connection pooling &
concurrency control
23
Active/passive replication
Dynamic resource management
Douglas C. Schmidt
the requirements of particular domains, such as telecom, ecommerce, health care, process automation, or aerospace
Domain-Specific
Middleware Services
Common
Middleware Services
Distribution
Middleware
Host Infrastructure
Middleware
Operating Systems
& Protocols
24
Douglas C. Schmidt
the requirements of particular domains, such as telecom, ecommerce, health care, process automation, or aerospace
Examples
Domain-Specific
Middleware Services
Common
Middleware Services
Distribution
Middleware
Host Infrastructure
Middleware
Operating Systems
& Protocols
Avionics Control
Systems
Common
software
platform for
avionics control
systems
25
Douglas C. Schmidt
the requirements of particular domains, such as telecom, ecommerce, health care, process automation, or aerospace
Examples
Electronic Medical
Information Systems
Common software platform
for distributed electronic
medical systems
Avionics Control
Systems
Common
software
platform for
avionics control
systems
Modalities
26
Domain-Specific
Middleware Services
Common
Middleware Services
Distribution
Middleware
Host Infrastructure
Middleware
Operating Systems
& Protocols
Douglas C. Schmidt
27
Douglas C. Schmidt
Domain-Specific
Middleware Services
Common
Middleware Services
Distribution
Middleware
Host Infrastructure
Middleware
Operating Systems
& Protocols
Hardware
28
Douglas C. Schmidt
29
Douglas C. Schmidt
Douglas C. Schmidt
31
Douglas C. Schmidt
32
Douglas C. Schmidt
33
Douglas C. Schmidt
Douglas C. Schmidt
Summary
Todays concurrent & networked software systems
consist of capabilities provided by multiple layers
of middleware, operating system, protocols, &
hardware
Applications
Domain-Specific
Middleware Services
Common
Middleware Services
Distribution
Middleware
Host Infrastructure
Middleware
Operating Systems
& Protocols
Hardware
35
Douglas C. Schmidt
Summary
Todays concurrent & networked software systems
consist of capabilities provided by multiple layers
of middleware, operating system, protocols, &
hardware
Applications
Domain-Specific
Middleware Services
Common
Middleware Services
Distribution
Middleware
Host Infrastructure
Middleware
Operating Systems
& Protocols
Hardware
36
d.schmidt@vanderbilt.edu
www.dre.vanderbilt.edu/~schmidt
Professor of Computer Science
Institute for Software
Integrated Systems
Vanderbilt University
Nashville, Tennessee, USA
Douglas C. Schmidt
Applications
Domain-Specific
Middleware Services
Common
Middleware Services
Distribution
Middleware
Host Infrastructure
Middleware
Operating Systems
& Protocols
Hardware
38
Douglas C. Schmidt
Consequences of Commoditization
Consequences of commoditization
Everything gets cheaper forever,
John Chambers, CEO of Cisco
Systems
Applications
Domain-Specific
Middleware Services
Common
Middleware Services
Distribution
Middleware
Host Infrastructure
Middleware
Operating Systems
& Protocols
Hardware
39
Douglas C. Schmidt
Consequences of Commoditization
Consequences of commoditization
More emphasis on integration
rather than programming
40
Douglas C. Schmidt
Consequences of Commoditization
Consequences of commoditization
More emphasis on integration
rather than programming
TFTP
FTP
HTTP
TELNET
DNS
UDP
Middleware
Services
TCP
Middleware
IP
Solaris
Fibre Channel
Ethernet
ATM
Windows
FDDI
20th Century
VxWorks
Linux
LynxOS
21st Century
41
Douglas C. Schmidt
Consequences of Commoditization
Consequences of commoditization
More emphasis on integration
rather than programming
Increased technology
42
Douglas C. Schmidt
Consequences of Commoditization
Consequences of commoditization
More emphasis on integration
rather than programming
Increased technology
43
Douglas C. Schmidt
Consequences of Commoditization
Consequences of commoditization
More emphasis on integration
rather than programming
Increased technology
44
Douglas C. Schmidt
Consequences of Commoditization
Consequences of commoditization
More emphasis on integration
rather than programming
Increased technology
45
Douglas C. Schmidt
Consequences of Commoditization
Consequences of commoditization
More emphasis on integration
rather than programming
Increased technology
Douglas C. Schmidt
Consequences of Commoditization
Consequences of commoditization
en.wikipedia.org/wiki/Ozymandias
47
Not all trends bode well for long-term success
of traditional technology leaders
Summary
Over the past decades we've benefited
from hardware commoditization
48
Douglas C. Schmidt
Summary
Over the past decades we've benefited
from hardware commoditization
49
Douglas C. Schmidt
Summary
Over the past decades we've benefited
from hardware commoditization
Modalities
50
Douglas C. Schmidt
Summary
Over the past decades we've benefited
from hardware commoditization
In a commoditized environment,
Douglas C. Schmidt