Embedded Systems An Overview to Embedded Software C.-Z. Yang Sept.-Dec. 2001.

Slides:



Advertisements
Similar presentations
Chapter 25 Embedded systems programming Bjarne Stroustrup
Advertisements

C OMPUTING E SSENTIALS Timothy J. O’Leary Linda I. O’Leary Presentations by: Fred Bounds.
An Overview of the Computer System
Sensor Network Platforms and Tools
Introduction CSCI 444/544 Operating Systems Fall 2008.
 Prof. Dr. M. H. Assal Introduction to Computer AS 15/10/2014.
Chapter 1: Introduction
Lecturer: Sebastian Coope Ashton Building, Room G.18 COMP 201 web-page: Lecture.
Embedded Systems Introduction to Real-Time Operating Systems C.-Z. Yang Sept.-Dec
OS Fall ’ 02 Introduction Operating Systems Fall 2002.
Embedded Systems Introduction to Embedded Software C.-Z. Yang Sept.-Dec
OS Spring’03 Introduction Operating Systems Spring 2003.
Software Requirements
Embedded Systems Software Architectures C.-Z. Yang Sept.-Dec
Chapter 11 Operating Systems
B1051 Fundementals of Information Technology (Intro)
Embedded Systems Basic Design Using a Real- Time Operating System C.-Z. Yang Sept.-Dec
Computing ESSENTIALS     Copyright 2003 The McGraw-Hill Companies, Inc CHAPTER Information Technology, the Internet, and You computing ESSENTIALS.
Embedded Systems Interrupts C.-Z. Yang Sept.-Dec
Chapter 2 Introduction to Systems Architecture. Chapter goals Discuss the development of automated computing Describe the general capabilities of a computer.
Introduction. Why Study OS? Understand model of operation –Easier to see how to use the system –Enables you to write efficient code Learn to design an.
Knowledge Portals and Knowledge Management Tools
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 5 Slide 1 Requirements engineering l The process of establishing the services that the.
Frequently asked questions about software engineering
Lecture 1.
EMBEDDED SOFTWARE Team victorious Team Victorious.
CLOUD COMPUTING. A general term for anything that involves delivering hosted services over the Internet. And Cloud is referred to the hardware and software.
What is Concurrent Programming? Maram Bani Younes.
Chapter 1- Introduction
1.1 1 Introduction Foundations of Computer Science  Cengage Learning.
Chapter 10 State Machine Diagrams
Distributed Systems 1 CS- 492 Distributed system & Parallel Processing Sunday: 2/4/1435 (8 – 11 ) Lecture (1) Introduction to distributed system and models.
Thanks to Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 1: Introduction n What is an Operating System? n Mainframe Systems.
Living in a Digital World Discovering Computers Fundamentals, 2010 Edition.
EMBEDDED SYSTEMS 9 April 2013 William W. McMillan.
Information Technology HARDWARE Dr. GUVEN Aerospace Engineer (P.hD) Nuclear Science and Technology Engineer (M.Sc)
Introduction to Computer
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Architectural Design l Establishing the overall structure of a software system.
1 COMPSCI 110 Operating Systems Who - Introductions How - Policies and Administrative Details Why - Objectives and Expectations What - Our Topic: Operating.
Architectural Design lecture 10. Topics covered Architectural design decisions System organisation Control styles Reference architectures.
Types of Computers. Hardware Classifications  Microcomputers  Minicomputers  Mainframe Computers  Supercomputers.
Advanced Principles of Operating Systems (CE-403).
Lecture # 3 & 4 Chapter # 2 Database System Concepts and Architecture Muhammad Emran Database Systems 1.
Chapter 1 Computer Abstractions and Technology. Chapter 1 — Computer Abstractions and Technology — 2 The Computer Revolution Progress in computer technology.
Programming of Handheld and Mobile Devices Lecture 2 What is a MID? Rob Pooley
Overview of Operating Systems Introduction to Operating Systems: Module 0.
© GCSE Computing Computing Hardware Starter. Creating a spreadsheet to demonstrate the size of memory. 1 byte = 1 character or about 1 pixel of information.
Software Engineering Chapter: Computer Aided Software Engineering 1 Chapter : Computer Aided Software Engineering.
Chapter 1- Introduction Lecture 1. Topics covered  Professional software development  What is meant by software engineering.  Software engineering.
CSC 351 FUNDAMENTALS OF DATABASE SYSTEMS. LECTURE 1: INTRODUCTION TO DATABASES.
Software Engineering, COMP201 Slide 1 Software Requirements BY M D ACHARYA Dept of Computer Science.
CS4315A. Berrached:CMS:UHD1 Introduction to Operating Systems Chapter 1.
IT 5433 LM1. Learning Objectives Understand key terms in database Explain file processing systems List parts of a database environment Explain types of.
1 Software Requirements Descriptions and specifications of a system.
Computer Architecture Organization and Architecture
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Chapter 5:Architectural Design l Establishing the overall structure of a software.
Embedded Operating system GROUP NO. 3 HAMZA MEHMOOD AHMED SAAD.
Industrial Automation Part I Real Time Control Embedded Systems.
Introduction to Databases
Chapter 1- Introduction
Andy Wang COP 5611 Advanced Operating Systems
Chapter 1- Introduction
מעבדה במערכות משובצות ד"ר מרינה ליפשטיין דוא"ל:
Frequently asked questions about software engineering
Chapter 1: Introduction
An Overview of the Computer System
Intro. To Operating Systems
What is Concurrent Programming?
CS1301 – Where it Fits Institute for Personal Robots in Education
Overview of Computer system
Presentation transcript:

Embedded Systems An Overview to Embedded Software C.-Z. Yang Sept.-Dec. 2001

元智大學資訊工程系 Systems - Introduction to Embedded Software2 Before we start the course about Embedded Software ……... One very unfortunate aspect of embedded systems –The terminology surrounding term is not very consistent. Another unfortunate problem –The term embedded systems covers such a broad range of products. –Z8 to PowerPC One thing you must keep in mind –Embedded software is a field in which no wisdom is universal.

元智大學資訊工程系 Systems - Introduction to Embedded Software3 What is Embedded Software?

元智大學資訊工程系 Systems - Introduction to Embedded Software4 Embedded software Though embedded software is a kind of software, it is very different with traditional computer software. –The principal role is not the transformation of data, but rather the interaction with the physical world. –It executes on machines that are not general computers. –It takes time (critical timing requirement). –It consumes power (power limitation). –It does not terminate (unless we turn off the device). –It is not the idealized procedures of Alan Turing.

元智大學資訊工程系 Systems - Introduction to Embedded Software5 Full with constrains Embedded applications are among the most complex software systems being developed today. Such software is often constrained by –Concurrent designs –Real-time constraints –Embedded target environments –Distributed hardware architectures –Device control dependencies

元智大學資訊工程系 Systems - Introduction to Embedded Software6 The characteristics of developers The engineers that write embedded software are rarely computer scientists. They are experts in the application domain with a good understanding of the target architectures they work with. However, The domain experts face a serious challenge. –The complexity of their applications is growing rapidly. –They need entirely new abstractions invented by computer scientists.

元智大學資訊工程系 Systems - Introduction to Embedded Software7 Just software on small computers? We must consider the following five design issues: –Timeliness –Concurrency –Liveness –Reactivity –Heterogeneity

元智大學資訊工程系 Systems - Introduction to Embedded Software8 Timeliness Real “real-time” issue –Not just an asymptotic order –Not just a priority –Merely the amount of elapsed time However, there may be some conflict between the advanced hardware tech and software tech. –Caching? –Branch prediction?

元智大學資訊工程系 Systems - Introduction to Embedded Software9 Concurrency Embedded systems rarely interact with only a single physical process. In conventional general-purpose OS environments, the management of concurrency is primitive. However, they are inefficient and insufficient.

元智大學資訊工程系 Systems - Introduction to Embedded Software10 Liveness In most of embedded systems, programs must not terminate or block waiting for events that will never occur. Deadlocks should be avoided.

元智大學資訊工程系 Systems - Introduction to Embedded Software11 Reactivity Embedded systems usually need to react continuously to their environment at the speed of the environment. Special programming languages –Esterel, Argos, …. –Synchronous languages

元智大學資訊工程系 Systems - Introduction to Embedded Software12 Heterogeneity An intrinsic part of computation in embedded systems. –A mixture of hardware and software designs. Openness challenges

元智大學資訊工程系 Systems - Introduction to Embedded Software13 An Embedded Software Example Trends in Embedded Databases

元智大學資訊工程系 Systems - Introduction to Embedded Software14 Embedded databases These small databases can now be found in a growing number of portable computing devices, including “smart” cellular phones with Internet access, PDAs (personal digital assistants), lap-tops, and embedded systems.

元智大學資訊工程系 Systems - Introduction to Embedded Software15 The population of PDAs Many users also must store material they download from a central enterprise database to the devices so that they can work on the data offline. This has led to the development of embedded databases for the portable machines.

元智大學資訊工程系 Systems - Introduction to Embedded Software16 The challenges In general, embedded databases face a number of challenges that their full-sized counterparts don’t. For example, –they must be integrated into small devices that have limited storage and memory resources and –that require continuous uptime with little or no maintenance.

元智大學資訊工程系 Systems - Introduction to Embedded Software17 The challenges Therefore, embedded databases –must have very small footprints—generally ranging from 8 to 350 Kbytes, compared to hundreds of Mbytes for full- sized enterprise databases—and –must be able to run without the services of a database administrator. Embedded databases also face inter- operability and portability challenges.

元智大學資訊工程系 Systems - Introduction to Embedded Software18 Growing the Embedded-Database Market The embedded- database market has become very healthy, as it has grown and is predicted to grow about 12 percent per year between 1998 and 2003.