Overview of Layered Architectures

Size: px
Start display at page:

Download "Overview of Layered Architectures"

Transcription

1 Overview of ed Architectures Douglas C. Schmidt Professor of Computer Science Institute for Software Integrated Systems Vanderbilt University Nashville, Tennessee, USA

2 1. Know what layered architectures are Learning Objectives in this Lesson Application Presentation Session Transport Internet Data Link Physical 2 Applications Domain-Specific Middleware Services Common Middleware Services Distribution Middleware Host Infrastructure Middleware Operating Systems & Protocols Hardware

3 Learning Objectives in this Lesson 1. Know what layered architectures are 2. Understand the s architectural pattern C interface implementation B A 3

4 Learning Objectives in this Lesson 1. Know what layered architectures are 2. Understand the s architectural pattern 3. Recognize the layers in Android s software stack ART Dalvik Virtual Machine 4

5 Learning Objectives in this Lesson 1. Know what layered architectures are 2. Understand the s architectural pattern 3. Recognize the layers in Android s software stack 4. Realize why layering is used in Android ART Dalvik Virtual Machine 5

6 Overview of ed Architectures 6

7 An Overview of ed Architectures ing is applied in many domains 7

8 An Overview of ed Architectures ing is applied in many domains, e.g. Computer networking protocol stacks Application Presentation Session Enables end-to-end communication by specifying how data should be (un)packetized, addressed, transmitted, routed, & received Transport Internet Data Link See en.wikipedia.org/wiki/protocol_stack 8 Physical

9 An Overview of ed Architectures ing is applied in many domains, e.g. Computer networking protocol stacks Lower layers handle interactions with the hardware e.g., GSM, DSL, & Ethernet 9 Application Presentation Session Transport Internet Data Link Physical See en.wikipedia.org/wiki/link_layer & en.wikipedia.org/wiki/physical_layer

10 An Overview of ed Architectures ing is applied in many domains, e.g. Computer networking protocol stacks Lower layers handle interactions with the hardware Middle layers exchange packets across hosts & routers e.g., IP, TCP, & UDP 10 Application Presentation Session Transport Internet Data Link Physical See en.wikipedia.org/wiki/internet_layer & en.wikipedia.org/wiki/transport_layer

11 An Overview of ed Architectures ing is applied in many domains, e.g. Computer networking protocol stacks Lower layers handle interactions with the hardware Middle layers exchange packets across hosts & routers Upper layers implement & interact with applications e.g., PPTP, XDR, CDR, JSON 11 Application Presentation Session Transport Internet Data Link Physical See en.wikipedia.org/wiki/session_layer & en.wikipedia.org/wiki/presentation_layer

12 An Overview of ed Architectures ing is applied in many domains, e.g. Computer networking protocol stacks Lower layers handle interactions with the hardware Middle layers exchange packets across hosts & routers Upper layers implement & interact with applications Applications (& middleware) mostly just deal with the upper layer(s) e.g., FTP, TELNET, SMTP, & SNMP 12 Application Presentation Session Transport Internet Data Link Physical See en.wikipedia.org/wiki/application_layer

13 An Overview of ed Architectures ing is applied in many domains, e.g. Computer networking protocol stacks Communication middleware in multi-tier enterprise IT systems Provides services beyond the operating system & protocol stacks to enable components in a distributed system to communicate & manage data 13 Applications Domain-Specific Middleware Services Common Middleware Services Distribution Middleware Host Infrastructure Middleware Operating Systems & Protocols Hardware See en.wikipedia.org/wiki/middleware_(distributed_applications)

14 An Overview of ed Architectures ing is applied in many domains, e.g. Computer networking protocol stacks Communication middleware in multi-tier enterprise IT systems Lower layers provide portable APIs for accessing hardware & system resources e.g., Linux, Windows, JVM, & ACE 14 Applications Domain-Specific Middleware Services Common Middleware Services Distribution Middleware Host Infrastructure Middleware Operating Systems & Protocols Hardware See

15 An Overview of ed Architectures ing is applied in many domains, e.g. Computer networking protocol stacks Communication middleware in multi-tier enterprise IT systems Lower layers provide portable APIs for accessing hardware & system resources Middle layers shield applications from network programming details e.g., DDS, Web Services, MQTT, Spring, CORBA, etc. 15 Applications Domain-Specific Middleware Services Common Middleware Services Distribution Middleware Host Infrastructure Middleware Operating Systems & Protocols Hardware See

16 An Overview of ed Architectures ing is applied in many domains, e.g. Computer networking protocol stacks Communication middleware in multi-tier enterprise IT systems Lower layers provide portable APIs for accessing hardware & system resources Middle layers shield applications from network programming details Upper layers enable domain-specific reuse of capabilities e.g., MD-PnP, IIC, & FACE 16 Applications Domain-Specific Middleware Services Common Middleware Services Distribution Middleware Host Infrastructure Middleware Operating Systems & Protocols Hardware See

17 An Overview of ed Architectures ing is applied in many domains, e.g. Computer networking protocol stacks Communication middleware in multi-tier enterprise IT systems Lower layers provide portable APIs for accessing hardware & system resources Middle layers shield applications from network programming details Upper layers enable domain-specific reuse of capabilities Applications may deal w/multiple layers 17 Applications Domain-Specific Middleware Services Common Middleware Services Distribution Middleware Host Infrastructure Middleware Operating Systems & Protocols Hardware See

18 Overview of the s Architectural Pattern 18

19 An Overview of the s Architectural Pattern The concept of layering has been expressed as an architectural pattern See 19

20 An Overview of the s Architectural Pattern The concept of layering has been expressed as an architectural pattern a structural organization schema for software systems that provides a set of predefined subsystems specifies their responsibilities & includes rules & guidelines for organizing the relationships between these roles See en.wikipedia.org/wiki/architectural_pattern 20

21 An Overview of the s Architectural Pattern The concept of layering has been expressed as an architectural pattern a structural organization schema for software systems that provides a set of predefined subsystems specifies their responsibilities & includes rules & guidelines for organizing the relationships between these roles See en.wikipedia.org/wiki/architectural_pattern 21

22 An Overview of the s Architectural Pattern The concept of layering has been expressed as an architectural pattern a structural organization schema for software systems that provides a set of predefined subsystems specifies their responsibilities & includes rules & guidelines for organizing the relationships between these roles See en.wikipedia.org/wiki/architectural_pattern 22

23 An Overview of the s Architectural Pattern The concept of layering has been expressed as an architectural pattern a structural organization schema for software systems that provides a set of predefined subsystems specifies their responsibilities & includes rules & guidelines for organizing the relationships between these roles See en.wikipedia.org/wiki/architectural_pattern 23

24 An Overview of the s Architectural Pattern The s architectural pattern has been described in various publications See en.wikipedia.org/wiki/multilayered_architecture 24

25 An Overview of the s Architectural Pattern The s pattern structures software apps & infrastructure in several ways C interface implementation B A See posa1.blogspot.com/2008/05/layered-architecture-pattern.html 25

26 An Overview of the s Architectural Pattern The s pattern structures software apps & infrastructure in several ways a. Partitions an overall system architecture into groups of subtasks C interface implementation B A 26

27 An Overview of the s Architectural Pattern The s pattern structures software apps & infrastructure in several ways a. Partitions an overall system architecture into groups of subtasks b. Decomposes groups of subtasks into levels of abstraction C interface implementation B A 27

28 An Overview of the s Architectural Pattern The s pattern helps to simplify software development & evolution 28

29 An Overview of the s Architectural Pattern The s pattern helps to simplify software development & evolution e.g., it replaces tightly coupled big balls of mud Function 2 Function B Function 1 Function Y Function 3 Function X Function A Function C Function Z See en.wikipedia.org/wiki/big_ball_of_mud 29

30 An Overview of the s Architectural Pattern The s pattern helps to simplify software development & evolution e.g., it replaces tightly coupled big balls of mud with modular solutions that can be extended & contracted more easily C interface implementation B A See 30

31 An Overview of the s Architectural Pattern Be careful when implementing a layered architecture to avoid unnecessary overhead when exchanging data between the layers C interface implementation B A See 31

32 An Overview of the s Architectural Pattern Be careful when implementing a layered architecture to avoid unnecessary overhead when exchanging data between the layers e.g., minimize context switching, synchronization, & data copying overhead C interface implementation B A See 32

33 An Overview of Android s ed Architecture 33

34 An Overview of Android s ed Architecture Android s architecture is structured in accordance to multiple layers ART Dalvik Virtual Machine 34

35 An Overview of Android s ed Architecture Android s architecture is structured in accordance to multiple layers ART Dalvik Virtual Machine The Android Linux kernel controls hardware 35 & manages system resources

36 An Overview of Android s ed Architecture Android s architecture is structured in accordance to multiple layers ART Dalvik Virtual Machine Several layers of middleware provide 36 higher-level reusable services to apps

37 An Overview of Android s ed Architecture Android s architecture is structured in accordance to multiple layers ART Dalvik Virtual Machine The application layer provides packaged 37 functionality to end-users

38 An Overview of Android s ed Architecture ing is applied in complex systems like Android for several reasons Applications Application Frameworks Native Libraries VM & Runtime Hardware Abstraction Operating System Kernel Hardware 38

39 An Overview of Android s ed Architecture ing is applied in complex systems like Android for several reasons, e.g. Enhance systematic software reuse Applications Application Frameworks Native Libraries VM & Runtime Hardware Abstraction An intentional strategy for increasing productivity & improving software quality Operating System Kernel Hardware See en.wikipedia.org/wiki/code_reuse#systematic_software_reuse 39

40 An Overview of Android s ed Architecture ing is applied in complex systems like Android for several reasons, e.g. Enhance systematic software reuse Applications Application Frameworks Native Libraries VM & Runtime Hardware Abstraction libc provides a common API for accessing OS kernel capabilities Operating System Kernel Hardware 40

41 An Overview of Android s ed Architecture ing is applied in complex systems like Android for several reasons, e.g. Enhance systematic software reuse Applications Application Frameworks Native Libraries VM & Runtime Hardware Abstraction Enable apps to run concurrently over various types of multi-core hardware Operating System Kernel Hardware 41

42 An Overview of Android s ed Architecture ing is applied in complex systems like Android for several reasons, e.g. Enhance systematic software reuse Applications Enable plug & play replacement of certain layer implementations Application Frameworks Native Libraries Hardware Abstraction Operating System Kernel Hardware VM & Runtime 42

43 An Overview of Android s ed Architecture ing is applied in complex systems like Android for several reasons, e.g. Enhance systematic software reuse Applications Enable plug & play replacement of certain layer implementations Shield apps from inconsistent hardware APIs Application Frameworks Native Libraries Hardware Abstraction Operating System Kernel Hardware VM & Runtime 43

44 An Overview of Android s ed Architecture ing is applied in complex systems like Android for several reasons, e.g. Enhance systematic software reuse Applications Enable plug & play replacement of certain layer implementations Application Frameworks Native Libraries Hardware Abstraction Operating System Kernel Hardware VM & Runtime Effects of updates can be confined to the 44 layer whose implementation changes

45 An Overview of Android s ed Architecture ing is applied in complex systems like Android for several reasons, e.g. Enhance systematic software reuse Applications Enable plug & play replacement of certain layer implementations Application Frameworks Reduce the complexity of APIs that app developers must understand See en.wikipedia.org/wiki/facade_pattern 45 Native Libraries Hardware Abstraction Operating System Kernel Hardware VM & Runtime

46 An Overview of Android s ed Architecture ing is applied in complex systems like Android for several reasons, e.g. Enhance systematic software reuse Applications Enable plug & play replacement of certain layer implementations Application Frameworks Reduce the complexity of APIs that app developers must understand Native VM & Libraries Runtime Enable use of popular protocols, APIs, & programming languages Hardware Abstraction Operating System Kernel Hardware 46

47 An Overview of Android s ed Architecture ing is applied in complex systems like Android for several reasons, e.g. Enhance systematic software reuse Applications Enable plug & play replacement of certain layer implementations Application Frameworks Reduce the complexity of APIs that app developers must understand Native VM & Libraries Runtime Enable use of popular protocols, APIs, & programming languages Hardware Abstraction These popular protocols & APIs are available in open-source form Operating System Kernel Hardware See source.android.com & source.android.com/source/building-kernels.html 47

48 End of Overview of ed Architectures 48

Infrastructure Middleware (Part 1): Hardware Abstraction Layer (HAL)

Infrastructure Middleware (Part 1): Hardware Abstraction Layer (HAL) Infrastructure Middleware (Part 1): Douglas C. Schmidt d.schmidt@vanderbilt.edu www.dre.vanderbilt.edu/~schmidt Institute for Software Integrated Systems Vanderbilt University Nashville, Tennessee, USA

More information

Infrastructure Middleware (Part 3): Android Runtime Core & Native Libraries

Infrastructure Middleware (Part 3): Android Runtime Core & Native Libraries Infrastructure Middleware (Part 3): Android Runtime Core & Native Libraries Douglas C. Schmidt d.schmidt@vanderbilt.edu www.dre.vanderbilt.edu/~schmidt Institute for Software Integrated Systems Vanderbilt

More information

Overview of Frameworks: Part 3

Overview of Frameworks: Part 3 : Part 3 d.schmidt@vanderbilt.edu www.dre.vanderbilt.edu/~schmidt Institute for Software Integrated Systems Vanderbilt University Nashville, Tennessee, USA CS 282 Principles of Operating Systems II Systems

More information

Java 8 Parallel ImageStreamGang Example (Part 3)

Java 8 Parallel ImageStreamGang Example (Part 3) Java 8 Parallel ImageStreamGang Example (Part 3) Douglas C. Schmidt d.schmidt@vanderbilt.edu www.dre.vanderbilt.edu/~schmidt Professor of Computer Science Institute for Software Integrated Systems Vanderbilt

More information

Overview of Java Threads (Part 2)

Overview of Java Threads (Part 2) Overview of Java Threads (Part 2) Douglas C. Schmidt d.schmidt@vanderbilt.edu www.dre.vanderbilt.edu/~schmidt Institute for Software Integrated Systems Vanderbilt University Nashville, Tennessee, USA Learning

More information

Benefits of Concurrency in Java & Android: Program Structure

Benefits of Concurrency in Java & Android: Program Structure Benefits of Concurrency in Java & Android: Program Structure Douglas C. Schmidt d.schmidt@vanderbilt.edu www.dre.vanderbilt.edu/~schmidt Institute for Software Integrated Systems Vanderbilt University

More information

The Java Executor (Part 1)

The Java Executor (Part 1) The Java Executor (Part 1) Douglas C. Schmidt d.schmidt@vanderbilt.edu www.dre.vanderbilt.edu/~schmidt Institute for Software Integrated Systems Vanderbilt University Nashville, Tennessee, USA Learning

More information

Overview of Java Threads (Part 3)

Overview of Java Threads (Part 3) Overview of Java Threads (Part 3) Douglas C. Schmidt d.schmidt@vanderbilt.edu www.dre.vanderbilt.edu/~schmidt Institute for Software Integrated Systems Vanderbilt University Nashville, Tennessee, USA Learning

More information

Overview of Java s Support for Polymorphism

Overview of Java s Support for Polymorphism Overview of Java s Support for Polymorphism Douglas C. Schmidt d.schmidt@vanderbilt.edu www.dre.vanderbilt.edu/~schmidt Professor of Computer Science Institute for Software Integrated Systems Vanderbilt

More information

Techniques for Dynamic Swapping in the Lightweight CORBA Component Model

Techniques for Dynamic Swapping in the Lightweight CORBA Component Model in the Lightweight CORBA Component Model jai@dre.vanderbilt.edu www.dre.vanderbilt.edu/~jai Dr. Aniruddha Gokhale gokhale@dre.vanderbilt.edu www.dre.vanderbilt.edu/~gokhale Dr. Douglas C. Schmidt schmidt@dre.vanderbilt.edu

More information

Packet Switching, Layer Models and Protocol Suites

Packet Switching, Layer Models and Protocol Suites Packet Switching, Layer Models and Protocol Suites Course Code CCE 211 Course Title Data Communication Asst. Prof. Md Samsuzzaman, Ph.D. sobuzcce@cse.pstu.ac.bd http://www.cse.pstu.ac.bd/sobuzcse Computer

More information

Lecture 05 Application Layer - I

Lecture 05 Application Layer - I Computer Networks and Internet Protocol Prof. Soumya Kanti Ghosh Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture 05 Application Layer - I Hi. So, we will

More information

Link-Layer Layer Broadcast Protocol for SpaceWire

Link-Layer Layer Broadcast Protocol for SpaceWire Link-Layer Layer Broadcast Protocol for SpaceWire SpaceWire Working Group Meeting Sandra G. Dykes Southwest Research Institute Overview Motivation & Value Protocol Features Protocol Description Performance

More information

CS260 Intro to Java & Android 04.Android Intro

CS260 Intro to Java & Android 04.Android Intro CS260 Intro to Java & Android 04.Android Intro Winter 2015 Winter 2015 CS260 - Intro to Java & Android 1 Android - Getting Started Android SDK contains: API Libraries Developer Tools Documentation Sample

More information

Operating System Services. User Services. System Operation Services. User Operating System Interface - CLI. A View of Operating System Services

Operating System Services. User Services. System Operation Services. User Operating System Interface - CLI. A View of Operating System Services Operating System Services One set of services for users The other set of services for system operations Operating Systems Structures Notice: This set of slides is based on the notes by Professor Perrone

More information

Android App Development

Android App Development Android App Development Outline Introduction Android Fundamentals Android Studio Tutorials Introduction What is Android? A software platform and operating system for mobile devices Based on the Linux kernel

More information

Java 8 Parallel Stream Internals (Part 2)

Java 8 Parallel Stream Internals (Part 2) Java 8 Parallel Stream Internals (Part 2) Douglas C. Schmidt d.schmidt@vanderbilt.edu www.dre.vanderbilt.edu/~schmidt Professor of Computer Science Institute for Software Integrated Systems Vanderbilt

More information

Cisco IOS for S/390 Architecture

Cisco IOS for S/390 Architecture CHAPTER 1 Cisco IOS for S/390 Architecture This chapter describes the architecture of Cisco IOS for S/390. It includes the following sections: Overview An overview of the architecture of Cisco IOS for

More information

Chapter 2: Operating-System Structures. Operating System Concepts 9 th Edit9on

Chapter 2: Operating-System Structures. Operating System Concepts 9 th Edit9on Chapter 2: Operating-System Structures Operating System Concepts 9 th Edit9on Silberschatz, Galvin and Gagne 2013 Chapter 2: Operating-System Structures 1. Operating System Services 2. User Operating System

More information

Chapter 2. Operating-System Structures

Chapter 2. Operating-System Structures Chapter 2 Operating-System Structures 2.1 Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System Calls System Programs Operating System

More information

Operating Systems. 16. Networking. Paul Krzyzanowski. Rutgers University. Spring /6/ Paul Krzyzanowski

Operating Systems. 16. Networking. Paul Krzyzanowski. Rutgers University. Spring /6/ Paul Krzyzanowski Operating Systems 16. Networking Paul Krzyzanowski Rutgers University Spring 2015 1 Local Area Network (LAN) LAN = communications network Small area (building, set of buildings) Same, sometimes shared,

More information

Element: Relations: Topology: no constraints.

Element: Relations: Topology: no constraints. The Module Viewtype The Module Viewtype Element: Elements, Relations and Properties for the Module Viewtype Simple Styles Call-and-Return Systems Decomposition Style Uses Style Generalization Style Object-Oriented

More information

EdgeMarc 250W Network Services Gateway

EdgeMarc 250W Network Services Gateway EdgeMarc 250W Network Services Gateway Quick Start Guide Version 1.0 Page 1 of 7 200-250EW-001 Before You Start Please read this guide thoroughly as it describes the basic installation of the device. Refer

More information

Lesson 5 TCP/IP suite, TCP and UDP Protocols. Chapter-4 L05: "Internet of Things ", Raj Kamal, Publs.: McGraw-Hill Education

Lesson 5 TCP/IP suite, TCP and UDP Protocols. Chapter-4 L05: Internet of Things , Raj Kamal, Publs.: McGraw-Hill Education Lesson 5 TCP/IP suite, TCP and UDP Protocols 1 TCP/IP Suite: Application layer protocols TCP/IP Suite set of protocols with layers for the Internet TCP/IP communication 5 layers: L7, L4, L3, L2 and L1

More information

Parts of a Network. app. router. link. host. Computer Networks 2

Parts of a Network. app. router. link. host. Computer Networks 2 Network Components Parts of a Network app host router link Computer Networks 2 Parts of a Network app host router link Computer Networks 3 Component Names Component Function Example Application, or app,

More information

Overview of Advanced Java 8 CompletableFuture Features (Part 3)

Overview of Advanced Java 8 CompletableFuture Features (Part 3) Overview of Advanced Java 8 CompletableFuture Features (Part 3) Douglas C. Schmidt d.schmidt@vanderbilt.edu www.dre.vanderbilt.edu/~schmidt Professor of Computer Science Institute for Software Integrated

More information

CAS 703 Software Design

CAS 703 Software Design Dr. Ridha Khedri Department of Computing and Software, McMaster University Canada L8S 4L7, Hamilton, Ontario Acknowledgments: Material based on Software by Tao et al. (Chapters 9 and 10) (SOA) 1 Interaction

More information

Review of Important Networking Concepts. Recall the Example from last lecture

Review of Important Networking Concepts. Recall the Example from last lecture Review of Important ing Concepts Review: ed communication architecture The TCP/IP protocol suite Jörg Liebeherr, 1998,1999 1 Recall the Example from last lecture Ellington.cs.virginia.edu establishes an

More information

Introduction. Enterprise Java Instructor: Please introduce yourself Name Experience in Java Enterprise Edition Goals you hope to achieve

Introduction. Enterprise Java Instructor: Please introduce yourself Name Experience in Java Enterprise Edition Goals you hope to achieve Enterprise Java Introduction Enterprise Java Instructor: Please introduce yourself Name Experience in Java Enterprise Edition Goals you hope to achieve Course Description This course focuses on developing

More information

Patterns Architectural Styles Archetypes

Patterns Architectural Styles Archetypes Patterns Architectural Styles Archetypes Patterns The purpose of a pattern is to share a proven, widely applicable solution to a particular problem in a standard form that allows it to be easily reused.

More information

CHAPTER 1: OPERATING SYSTEM FUNDAMENTALS

CHAPTER 1: OPERATING SYSTEM FUNDAMENTALS CHAPTER 1: OPERATING SYSTEM FUNDAMENTALS What is an operating system? A collection of software modules to assist programmers in enhancing system efficiency, flexibility, and robustness An Extended Machine

More information

Four Components of a Computer System

Four Components of a Computer System Four Components of a Computer System Operating System Concepts Essentials 2nd Edition 1.1 Silberschatz, Galvin and Gagne 2013 Operating System Definition OS is a resource allocator Manages all resources

More information

Need For Protocol Architecture

Need For Protocol Architecture Chapter 2 CS420/520 Axel Krings Page 1 Need For Protocol Architecture E.g. File transfer Source must activate communications path or inform network of destination Source must check destination is prepared

More information

Need For Protocol Architecture

Need For Protocol Architecture Chapter 2 CS420/520 Axel Krings Page 1 Need For Protocol Architecture E.g. File transfer Source must activate communications path or inform network of destination Source must check destination is prepared

More information

Component Function Example

Component Function Example Network Components Component Names Component Function Example Application, or app, user Uses the network Skype, itunes, Amazon Host, or end-system, edge device, node, source, sink Router, or switch, node,

More information

Joseph Faber Wonderful Talking Machine (1845)

Joseph Faber Wonderful Talking Machine (1845) Joseph Faber Wonderful Talking Machine (1845) Connected World Human-to-Human communication Human-Machine interaction Machine-to-Machine communication (M2M) Internet-of-Things (IOT) Internet of Things How

More information

Lecture 8: February 19

Lecture 8: February 19 CMPSCI 677 Operating Systems Spring 2013 Lecture 8: February 19 Lecturer: Prashant Shenoy Scribe: Siddharth Gupta 8.1 Server Architecture Design of the server architecture is important for efficient and

More information

External vs. Internal Iteration in Java 8

External vs. Internal Iteration in Java 8 External vs. Internal Iteration in Java 8 Douglas C. Schmidt d.schmidt@vanderbilt.edu www.dre.vanderbilt.edu/~schmidt Professor of Computer Science Institute for Software Integrated Systems Vanderbilt

More information

Java Semaphore (Part 1)

Java Semaphore (Part 1) Java Semaphore (Part 1) Douglas C. Schmidt d.schmidt@vanderbilt.edu www.dre.vanderbilt.edu/~schmidt Institute for Software Integrated Systems Vanderbilt University Nashville, Tennessee, USA Learning Objectives

More information

Network Review TEJ4M. SBrace

Network Review TEJ4M. SBrace Network Review TEJ4M SBrace Example of how the OSI Layers work using an e-mail sent from the computer on the left. Email sent from John: Meet me at Carl s 1:30 John Identify sender and intended receiver;

More information

Introduction. Lecture 1. Operating Systems Practical. 5 October 2016

Introduction. Lecture 1. Operating Systems Practical. 5 October 2016 Introduction Lecture 1 Operating Systems Practical 5 October 2016 This work is licensed under the Creative Commons Attribution 4.0 International License. To view a copy of this license, visit http://creativecommons.org/licenses/by/4.0/.

More information

Introduction to Android Android Smartphone Programming. Outline University of Freiburg. What is Android? Background University of Freiburg.

Introduction to Android Android Smartphone Programming. Outline University of Freiburg. What is Android? Background University of Freiburg. Introduction to Android Android Smartphone Programming Matthias Keil Institute for Computer Science Faculty of Engineering October 19, 2015 Outline 1 What is Android? 2 3 Applications: A Quick Glimpse

More information

Chapter 2: Operating-System Structures

Chapter 2: Operating-System Structures Chapter 2: Operating-System Structures Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System Calls System Programs Operating System

More information

INTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY

INTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY INTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY A PATH FOR HORIZING YOUR INNOVATIVE WORK A REVIEW ON THE ARCHITECTURE OF ANDROID IN SMART PHONES RAVNEET KAUR T. BAGGA 1,

More information

Read addressing table and network map

Read addressing table and network map Term 1 Grade 12 -Task Sheet 4 Name: SIS No Group: N/A (Not Applicable) Signed Date: Grade Start Time: Finishing Time: Read addressing table and network map Picture 1 Picture 2 OBJECTIVE Read addressing

More information

200AE1 Network Services Gateway

200AE1 Network Services Gateway 200AE1 Network Services Gateway Quick Start Guide Version 1.0 Before You Start Please read this guide thoroughly as it describes the basic installation of the device. Refer to online help for assistance

More information

Chapter 1 Introduction

Chapter 1 Introduction Chapter 1 Introduction A note on the use of these Powerpoint slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you see the animations;

More information

AT&T Flow Designer. Current Environment

AT&T Flow Designer. Current Environment AT&T Flow Designer A Visual IoT Application Development environment that includes reusable components, drag & drop design capabilities, team collaboration, and cloud deployment that allows M2M/IoT developers

More information

PATTERN-ORIENTED SOFTWARE ARCHITECTURE

PATTERN-ORIENTED SOFTWARE ARCHITECTURE PATTERN-ORIENTED SOFTWARE ARCHITECTURE A Pattern Language for Distributed Computing Volume 4 Frank Buschmann, Siemens, Munich, Germany Kevlin Henney, Curbralan, Bristol, UK Douglas C. Schmidt, Vanderbilt

More information

Networking and Internetworking 1

Networking and Internetworking 1 Networking and Internetworking 1 Today l Networks and distributed systems l Internet architecture xkcd Networking issues for distributed systems Early networks were designed to meet relatively simple requirements

More information

An Introduction to Software Architecture. David Garlan & Mary Shaw 94

An Introduction to Software Architecture. David Garlan & Mary Shaw 94 An Introduction to Software Architecture David Garlan & Mary Shaw 94 Motivation Motivation An increase in (system) size and complexity structural issues communication (type, protocol) synchronization data

More information

Chapter 2: Operating-System Structures. Operating System Concepts 9 th Edition

Chapter 2: Operating-System Structures. Operating System Concepts 9 th Edition Chapter 2: Operating-System Structures Silberschatz, Galvin and Gagne 2013 Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System

More information

Lecture 17 Overview. Last Lecture. Wide Area Networking (2) This Lecture. Internet Protocol (1) Source: chapters 2.2, 2.3,18.4, 19.1, 9.

Lecture 17 Overview. Last Lecture. Wide Area Networking (2) This Lecture. Internet Protocol (1) Source: chapters 2.2, 2.3,18.4, 19.1, 9. Lecture 17 Overview Last Lecture Wide Area Networking (2) This Lecture Internet Protocol (1) Source: chapters 2.2, 2.3,18.4, 19.1, 9.2 Next Lecture Internet Protocol (2) Source: chapters 19.1, 19.2, 22,1

More information

Modern Internet architecture, technology & philosophy Advanced Internet Services Dept. of Computer Science Columbia University

Modern Internet architecture, technology & philosophy Advanced Internet Services Dept. of Computer Science Columbia University 1 Modern Internet architecture, technology & philosophy Advanced Internet Services Dept. of Computer Science Columbia University Henning Schulzrinne Spring 2015 02/09/2015 2 Key concepts The concept of

More information

Chapter 2 Architectures. Software Architectures

Chapter 2 Architectures. Software Architectures Chapter 2 Architectures Software architectures of distributed systems System architectures of distributed systems 1 Software Architectures Software architecture describes how the software components are

More information

Android App Development. Ahmad Tayeb

Android App Development. Ahmad Tayeb Android App Development Ahmad Tayeb Ahmad Tayeb Lecturer @ Department of Information Technology, Faculty of Computing and Information Technology, KAU Master degree from Information Sciences and Technologies,

More information

Data and Computer Communications. Chapter 2 Protocol Architecture, TCP/IP, and Internet-Based Applications

Data and Computer Communications. Chapter 2 Protocol Architecture, TCP/IP, and Internet-Based Applications Data and Computer Communications Chapter 2 Protocol Architecture, TCP/IP, and Internet-Based s 1 Need For Protocol Architecture data exchange can involve complex procedures better if task broken into subtasks

More information

Chapter 2 Layer Architecture of Network Protocols. School of Info. Sci. & Eng. Shandong Univ.

Chapter 2 Layer Architecture of Network Protocols. School of Info. Sci. & Eng. Shandong Univ. Chapter 2 Architecture of Network Protocols School of Info. Sci. & Eng. Shandong Univ. Outline 2.1 Examples of ing 2.2 OSI Reference Model (Continued from last time) 2.3. TCP/IP Architecture 2.4 Berkeley

More information

Chapter Outline. Chapter 2 Distributed Information Systems Architecture. Layers of an information system. Design strategies.

Chapter Outline. Chapter 2 Distributed Information Systems Architecture. Layers of an information system. Design strategies. Prof. Dr.-Ing. Stefan Deßloch AG Heterogene Informationssysteme Geb. 36, Raum 329 Tel. 0631/205 3275 dessloch@informatik.uni-kl.de Chapter 2 Distributed Information Systems Architecture Chapter Outline

More information

Universal Communication Component on Symbian Series60 Platform

Universal Communication Component on Symbian Series60 Platform Universal Communication Component on Symbian Series60 Platform Róbert Kereskényi, Bertalan Forstner, Hassan Charaf Department of Automation and Applied Informatics Budapest University of Technology and

More information

Chapter 2 Distributed Information Systems Architecture

Chapter 2 Distributed Information Systems Architecture Prof. Dr.-Ing. Stefan Deßloch AG Heterogene Informationssysteme Geb. 36, Raum 329 Tel. 0631/205 3275 dessloch@informatik.uni-kl.de Chapter 2 Distributed Information Systems Architecture Chapter Outline

More information

Overview of Java 8 Parallel Streams (Part 1)

Overview of Java 8 Parallel Streams (Part 1) Overview of Java 8 Parallel s (Part 1) Douglas C. Schmidt d.schmidt@vanderbilt.edu www.dre.vanderbilt.edu/~schmidt Professor of Computer Science Institute for Software Integrated Systems Vanderbilt University

More information

Switching Networks (Fall 2010) EE 586 Communication and. August 27, Lecture 2. (modified by Cheung for EE586; based on K&R original) 1-1

Switching Networks (Fall 2010) EE 586 Communication and. August 27, Lecture 2. (modified by Cheung for EE586; based on K&R original) 1-1 EE 586 Communication and Switching Networks (Fall 2010) Lecture 2 August 27, 2010 (modified by Cheung for EE586; based on K&R original) 1-1 Announcements Read Chapter 1 First homework is due 9/3 In Blackboard

More information

What are some common categories of system calls? What are common ways of structuring an OS? What are the principles behind OS design and

What are some common categories of system calls? What are common ways of structuring an OS? What are the principles behind OS design and What are the services provided by an OS? What are system calls? What are some common categories of system calls? What are the principles behind OS design and implementation? What are common ways of structuring

More information

Set of IP routers. Set of IP routers. Set of IP routers. Set of IP routers

Set of IP routers. Set of IP routers. Set of IP routers. Set of IP routers Smart Sensor Application Sensor Framework Source End IP Address Set of IP routers IoT Application Layer TCP/IP Appl. Protocols Transport Layer TCP/IP IoT Comm. Framework Application Framework IoT Comm.

More information

Lecture 3 Protocol Stacks and Layering

Lecture 3 Protocol Stacks and Layering Lecture 3 Protocol Stacks and ing Hui Zhang School of Computer Science Carnegie Mellon University 15-441 Networking, Fall 2007 http://www.cs.cmu.edu/~srini/15-441/f07/ 1 What is a Communication Network?

More information

CHAPTER 2: SYSTEM STRUCTURES. By I-Chen Lin Textbook: Operating System Concepts 9th Ed.

CHAPTER 2: SYSTEM STRUCTURES. By I-Chen Lin Textbook: Operating System Concepts 9th Ed. CHAPTER 2: SYSTEM STRUCTURES By I-Chen Lin Textbook: Operating System Concepts 9th Ed. Chapter 2: System Structures Operating System Services User Operating System Interface System Calls Types of System

More information

Data Model Considerations for Radar Systems

Data Model Considerations for Radar Systems WHITEPAPER Data Model Considerations for Radar Systems Executive Summary The market demands that today s radar systems be designed to keep up with a rapidly changing threat environment, adapt to new technologies,

More information

Lecture 1 Introduction to Android. App Development for Mobile Devices. App Development for Mobile Devices. Announcement.

Lecture 1 Introduction to Android. App Development for Mobile Devices. App Development for Mobile Devices. Announcement. CSCE 315: Android Lectures (1/2) Dr. Jaerock Kwon App Development for Mobile Devices Jaerock Kwon, Ph.D. Assistant Professor in Computer Engineering App Development for Mobile Devices Jaerock Kwon, Ph.D.

More information

Chapter Outline. Chapter 2 Distributed Information Systems Architecture. Distributed transactions (quick refresh) Layers of an information system

Chapter Outline. Chapter 2 Distributed Information Systems Architecture. Distributed transactions (quick refresh) Layers of an information system Prof. Dr.-Ing. Stefan Deßloch AG Heterogene Informationssysteme Geb. 36, Raum 329 Tel. 0631/205 3275 dessloch@informatik.uni-kl.de Chapter 2 Distributed Information Systems Architecture Chapter Outline

More information

A Case Study of Gang of Four (GoF) Patterns : Part 7

A Case Study of Gang of Four (GoF) Patterns : Part 7 A Case Study of Gang of Four (GoF) Patterns : Part 7 d.schmidt@vanderbilt.edu www.dre.vanderbilt.edu/~schmidt Professor of Computer Science Institute for Software Integrated Systems Vanderbilt University

More information

Informationshanteringssystem - LIMS

Informationshanteringssystem - LIMS Informationshanteringssystem - LIMS 1DL470, 5.0 credits Spring 2017 A LIMS project course 1 http://www.it.uu.se/edu/course/homepage/lims/vt17/ Kjell Orsborn Uppsala Database Laboratory Department of Information

More information

Elmic Systems: From IPv4 to MoonV6. The most fluent way to speak Internet

Elmic Systems: From IPv4 to MoonV6. The most fluent way to speak Internet Elmic Systems: From IPv4 to MoonV6 The most fluent way to speak Internet Agenda Elmic Systems development of IPv6 How Elmic IPv4 became Elmic IPv6 dual stack Lessons learned Elmic Systems and MoonV6 Elmic

More information

Lecture 7. Architectural Patterns: Layers, Façade, Microkernel, Design Pattern: Strategy

Lecture 7. Architectural Patterns: Layers, Façade, Microkernel, Design Pattern: Strategy Lecture 7 Architectural Patterns: Layers, Façade, Microkernel, Design Pattern: Strategy Layers Pattern Operative Metaphor: Assembly Line Layers Architectural layers are collaborating sections of an overall

More information

MTAT Enterprise System Integration. Lecture 2: Middleware & Web Services

MTAT Enterprise System Integration. Lecture 2: Middleware & Web Services MTAT.03.229 Enterprise System Integration Lecture 2: Middleware & Web Services Luciano García-Bañuelos Slides by Prof. M. Dumas Overall view 2 Enterprise Java 2 Entity classes (Data layer) 3 Enterprise

More information

Comprehensive Development and Debug Coverage for Linux and Android on the MIPS Architecture

Comprehensive Development and Debug Coverage for Linux and Android on the MIPS Architecture Comprehensive Development and Debug Coverage for Linux and Android on the MIPS Architecture Presented by MIPS Technologies Powering a Connected World October 2010 Today s presenters: Rick Leatherman VP

More information

Open Mobile Platforms. EE 392I, Lecture-6 May 4 th, 2010

Open Mobile Platforms. EE 392I, Lecture-6 May 4 th, 2010 Open Mobile Platforms EE 392I, Lecture-6 May 4 th, 2010 Open Mobile Platforms The Android Initiative T-Mobile s ongoing focus on Android based devices in US and EU markets In Nov 2007, Google announced

More information

Distributed Systems Principles and Paradigms

Distributed Systems Principles and Paradigms Distributed Systems Principles and Paradigms Chapter 03 (version February 11, 2008) Maarten van Steen Vrije Universiteit Amsterdam, Faculty of Science Dept. Mathematics and Computer Science Room R4.20.

More information

Loosely Coupled Actor Systems

Loosely Coupled Actor Systems Loosely Coupled Actor Systems for the Internet of Things Raphael Hiesgen Internet Technologies Group Hamburg University of Applied Sciences Agenda Introduction Where We Are Next Steps Risks and Conclusion

More information

Notes. Submit homework on Blackboard The first homework deadline is the end of Sunday, Feb 11 th. Final slides have 'Spring 2018' in chapter title

Notes. Submit homework on Blackboard The first homework deadline is the end of Sunday, Feb 11 th. Final slides have 'Spring 2018' in chapter title Notes Ask course content questions on Slack (is651-spring-2018.slack.com) Contact me by email to add you to Slack Make sure you checked Additional Links at homework page before you ask In-class discussion

More information

(if you can t read this, move closer!) The high-performance protocol construction toolkit. Peter Royal

(if you can t read this, move closer!) The high-performance protocol construction toolkit. Peter Royal (if you can t read this, move closer!) Apache The high-performance protocol construction toolkit. Peter Royal Originally presented at ApacheCon US 2007 in Atlanta, GA 1 Hi, I m Peter

More information

E-COMMERCE and SECURITY - 1DL018. An introductury course on e-commerce systems

E-COMMERCE and SECURITY - 1DL018. An introductury course on e-commerce systems 1 E-COMMERCE and SECURITY - 1DL018 Spring 2008 An introductury course on e-commerce systems alt. http://www.it.uu.se/edu/course/homepage/ehandel/vt08/ Kjell Orsborn Uppsala Database Laboratory Department

More information

2 Background: Service Oriented Network Architectures

2 Background: Service Oriented Network Architectures 2 Background: Service Oriented Network Architectures Most of the issues in the Internet arise because of inflexibility and rigidness attributes of the network architecture, which is built upon a protocol

More information

Middleware. Adapted from Alonso, Casati, Kuno, Machiraju Web Services Springer 2004

Middleware. Adapted from Alonso, Casati, Kuno, Machiraju Web Services Springer 2004 Middleware Adapted from Alonso, Casati, Kuno, Machiraju Web Services Springer 2004 Outline Web Services Goals Where do they come from? Understanding middleware Middleware as infrastructure Communication

More information

1. What are the key components of Android Architecture? 2. What are the advantages of having an emulator within the Android environment?

1. What are the key components of Android Architecture? 2. What are the advantages of having an emulator within the Android environment? 1. What are the key components of Android Architecture? Android Architecture consists of 4 key components: - Linux Kernel - Libraries - Android Framework - Android Applications 2. What are the advantages

More information

Overview of Activities

Overview of Activities d.schmidt@vanderbilt.edu www.dre.vanderbilt.edu/~schmidt Institute for Software Integrated Systems Vanderbilt University Nashville, Tennessee, USA CS 282 Principles of Operating Systems II Systems Programming

More information

Android Overview. Most of the material in this section comes from

Android Overview. Most of the material in this section comes from Android Overview Most of the material in this section comes from http://developer.android.com/guide/ Android Overview A software stack for mobile devices Developed and managed by Open Handset Alliance

More information

Architectural Styles I

Architectural Styles I Architectural Styles I Software Architecture VO/KU (707023/707024) Roman Kern KTI, TU Graz 2015-01-07 Roman Kern (KTI, TU Graz) Architectural Styles I 2015-01-07 1 / 86 Outline 1 Non-Functional Concepts

More information

System Programming. Introduction to computer networks

System Programming. Introduction to computer networks Content : by Dr. B. Boufama School of Computer Science University of Windsor Instructor: Dr. A. Habed adlane@cs.uwindsor.ca http://cs.uwindsor.ca/ adlane/60-256 Content Content 1 Introduction to Computer

More information

Java Barrier Synchronizers: CountDownLatch (Part 1)

Java Barrier Synchronizers: CountDownLatch (Part 1) Java Barrier Synchronizers: CountDownLatch (Part 1) Douglas C. Schmidt d.schmidt@vanderbilt.edu www.dre.vanderbilt.edu/~schmidt Institute for Software Integrated Systems Vanderbilt University Nashville,

More information

Introduction to Android

Introduction to Android Introduction to Android Ambient intelligence Alberto Monge Roffarello Politecnico di Torino, 2017/2018 Some slides and figures are taken from the Mobile Application Development (MAD) course Disclaimer

More information

Enterprise Volume Management System Project. April 2002

Enterprise Volume Management System Project. April 2002 Enterprise Volume Management System Project April 2002 Mission Statement To create a state-of-the-art, enterprise level volume management system for Linux which will also reduce the costs associated with

More information

Distributed Systems. Lehrstuhl für Informatik 4. RWTH Aachen. Organization. Literature. Classification of the lecture

Distributed Systems. Lehrstuhl für Informatik 4. RWTH Aachen. Organization. Literature. Classification of the lecture Organization Distributed Systems RWTH Aachen Dr. Dirk Thißen Prof. Dr. Otto Spaniol 1 Exercises about all 14 days Room AH 5, RWTH Aachen Teacher-centered exercises Contact Dirk Thißen, Room 4226 (Building

More information

Mobile Network Architecture & Protocols WINLAB IAB Meeting October 29-30, 2001

Mobile Network Architecture & Protocols WINLAB IAB Meeting October 29-30, 2001 Mobile Network Architecture & Protocols WINLAB IAB Meeting October 29-30, 2001 I. Seskar, D. Raychaudhuri MobNets: Introduction This project aims to explore the fundamentals of nextgeneration mobile network

More information

Network Data Recorder. Chapters and Chapters 9-11 Discussions and a look toward 2019

Network Data Recorder. Chapters and Chapters 9-11 Discussions and a look toward 2019 Network Data Recorder Chapters 22-26 and Chapters 9-11 Discussions and a look toward 2019 5/10/2017 Telemetry Network Standards Standards implement a layer architecture approach through using an Open Systems

More information

UDP, TCP, IP multicast

UDP, TCP, IP multicast UDP, TCP, IP multicast Dan Williams In this lecture UDP (user datagram protocol) Unreliable, packet-based TCP (transmission control protocol) Reliable, connection oriented, stream-based IP multicast Process-to-Process

More information

CCNA 1 Chapter 7 v5.0 Exam Answers 2013

CCNA 1 Chapter 7 v5.0 Exam Answers 2013 CCNA 1 Chapter 7 v5.0 Exam Answers 2013 1 A PC is downloading a large file from a server. The TCP window is 1000 bytes. The server is sending the file using 100-byte segments. How many segments will the

More information

Android App Development

Android App Development Android App Development Course Contents: Android app development Course Benefit: You will learn how to Use Advance Features of Android with LIVE PROJECTS Original Fees: 15000 per student. Corporate Discount

More information

2011 IBM Research Strategic Initiative: Workload Optimized Systems

2011 IBM Research Strategic Initiative: Workload Optimized Systems PIs: Michael Hind, Yuqing Gao Execs: Brent Hailpern, Toshio Nakatani, Kevin Nowka 2011 IBM Research Strategic Initiative: Workload Optimized Systems Yuqing Gao IBM Research 2011 IBM Corporation Motivation

More information

Mobile Internet Devices and the Cloud

Mobile Internet Devices and the Cloud Mobile Internet Devices and the Cloud What Is a Smartphone? Mobile Operating Systems for Smartphones 1. iphone 2. Google (Android) 3. Blackberry 4. Windows Mobile 5. Ubuntu Mobile Internet Device (MID)

More information