real time and embedded systems - simon fraser universitylshannon/courses/ensc351_11/lecture...ensc...

53
Real Time and Embedded Systems by Dr. Lesley Shannon Email: [email protected] Course Website: http://www.ensc.sfu.ca/~lshannon/courses/ensc351 Slide Set: 0 Date: September 6, 2011 Simon Fraser University Simon Fraser University

Upload: others

Post on 26-Sep-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Real Time and Embedded Systems

by

Dr. Lesley Shannon

Email: [email protected] Website: http://www.ensc.sfu.ca/~lshannon/courses/ensc351

Slide Set: 0Date: September 6, 2011

Simon Fraser UniversitySimon Fraser University

Page 2: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Slide Set Overview

• Course Motivation

• Logistical Details

ENSC 351: Lecture Set 0 2

• Course Lab Component

• Lecture Topics

Page 3: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

What are Real Time and Embedded Systems?

ENSC 351: Lecture Set 0 3

What are Real Time and Embedded Systems?

Page 4: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Real Time Systems Definition

? ? ?

ENSC 351: Lecture Set 0 4

Page 5: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Real Time Systems Definition

• A system that responds in a timely and predictable way to unpredictable external stimuli arrivals.

• Must respond quickly to meet each tasks

ENSC 351: Lecture Set 0 5

• Must respond quickly to meet each tasks deadlines

• Often requires simultaneous processing more than one event

– all deadlines (hard, firm, soft) should still be met

• Predictability/Reliability: react to all possible events in a predictable way.

Page 6: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Embedded Systems Definition

? ? ?

ENSC 351: Lecture Set 0 6

Page 7: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Embedded Systems Definition

• A computing system that is embedded in a product

• Its primary function is not computing a general computing platform

ENSC 351: Lecture Set 0 7

computing platform

• Uses a combination of hardware and software to perform the required tasks

– aka Hardware/Software Codesign

• Typically thought to not be “plugged in”, so there is some alternative power source requirement

Page 8: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Can a system be both a Real Time System and

ENSC 351: Lecture Set 0 8

Embedded System?

Page 9: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Real Time and Embedded Systems are EVERYWHERE …

ENSC 351: Lecture Set 0 9

EVERYWHERE …

Page 10: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Outer-Space

ENSC 351: Lecture Set 0 10

Outer-Space

Page 11: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Mars Rover

ENSC 351: Lecture Set 0 11

Page 12: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

On the road

ENSC 351: Lecture Set 0 12

On the road

Page 13: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Automotive Electronics

7-Series BMW:63 Embedded

Processors

Mercedes S-Class65 Embedded

Processors

More than 80% of

ENSC 351: Lecture Set 0 13

More than 80% of the innovation in autos is from innovations in electronics - Daimler-Chrysler

Automotive Semiconductor Market: US$13.1 billion / year

Page 14: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Predicting the weather

ENSC 351: Lecture Set 0 14

Predicting the weather

Page 15: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Meteorological Applications

Doppler Weather Radar

ENSC 351: Lecture Set 0 15

Page 16: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Inside you

ENSC 351: Lecture Set 0 16

Inside you

Page 17: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Biomedical Applications

Medical Applications

ENSC 351: Lecture Set 0 17

Diagnostic Applications

Page 18: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

To build these types of systems, you need specialized software (and hardware for embedded systems only)

to work in concert (hardware/software codesign)

ENSC 351: Lecture Set 0 18

In this course, we’ll only be looking at the software …

Page 19: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

What should you know already?

• Processor Architecture

– We’ll do a crash course review next lecture

• Interrupts

– We’ll do a review later in the course, but you should be

ENSC 351: Lecture Set 0 19

– We’ll do a review later in the course, but you should be familiar with the term

• Assembly Language

– How does software run on the processor?

– Why does it matter? (later in course)

Page 20: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

What should you know already?

• C/C++

– We’ll be using C

• A subset of C++ that follows a sequential programming model (not object-oriented)

• Numbers and Arithmetic

ENSC 351: Lecture Set 0 20

• Numbers and Arithmetic

– Base 2 and 16, floating point/fixed point, masking, etc

• I/O

– Accessing via memory mapping, interrupts, buses, interface circuits, DMA, using peripherals

Page 21: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Why take this course?

• It’s “required” – a core course for most options

ENSC 351: Lecture Set 0 21

*Note: Two in-class tests.

Page 22: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Why take this course?

• It’s “required” – a core course for most options

ENSC 351: Lecture Set 0 22

*Note: Two in-class tests.

Page 23: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Why take this course?

• It’s cool !!

• Strong ties between the lectures (theory) and the labs (application)

ENSC 351: Lecture Set 0 23

(application)

• Develop practical software system design skills for complex

systems and software team development

– No “hack” jobs please

– Try “Extreme Programming” Techniques

Page 24: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Why take this course?

• Embedded Systems are the largest growing computing market.

• “… the computer systems design industry is expected to lead all service industries in terms of output and

ENSC 351: Lecture Set 0 24

lead all service industries in terms of output and employment growth.”

– From: Looking-Ahead: A 10-Year Outlook for the Canadian Labour Market (2006-2015), released by Human Resources and Social Development Canada

Page 25: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

What will you learn?

• PetaLinux

– A full linux kernel for embedded systems (not an RTOS)

• Software Design Issues for Real Time &

ENSC 351: Lecture Set 0 25

• Software Design Issues for Real Time & Embedded Systems

– Working in large design teams

– Good software design and testing practices

• Extreme Programming Techniques

Page 26: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

By the end of this course, you should be able to take a customer specification for a complex embedded/real time system:

-create a set of testing criteria and testbenches

-divide the software into separate tasks

ENSC 351: Lecture Set 0 26

-divide the software into separate tasks

-utilize the extreme programming method for software development

-effectively work as a member of a large software design team (use extreme programming)

Page 27: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

About Me

• Microelectronics Group: Computer Engineer

• Started in fall ’06

– I teach ensc ’350, ’351, ’452

• My research group is the Reconfigurable Computing Lab

• My interests include:

– Reconfigurable Computing, Application-Specific Architectures, Design Methodologies, FPGAs, Embedded Systems, Computing System Design

ENSC 351: Lecture Set 0

Page 28: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

About Me

• One of my major research areas is multicore architecture and effective task scheduling.

– I use Petalinux in this research project and like to hire research coop students, so if you like this class and do well in it, let me know.

ENSC 351: Lecture Set 0

Page 29: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Logistics

ENSC 351: Lecture Set 0 29

Logistics

Page 30: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

My Contact Info

• Office: – ASB8819

• Email: – [email protected]

• Homepage:

ENSC 351: Lecture Set 0 30

• Homepage:– http://www.ensc.sfu.ca/~lshannon/

• Office Hours: – Tuesdays & Thursdays:10:30am-12:30pm

• Teaching Assistants (ASB 8803.1)– Zia Jalali [Office Hours: Mon, Wed, & Fri 2:30-3:30pm]– Eric Matthews [Office Hours: Tues & Thurs 2:30-3:30pm]– Kevan Thompson [Office Hours: Mon, Wed, & Fri 10:30-

11:30am]

Page 31: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Lectures

• Tuesday 8:30-10:30am AQ3159

• Thursday 8:30-9:30am AQ3003– Tutorial: Thursday 9:30-10:30am AQ3003

• 2 in-class pop quizzes (10%)

ENSC 351: Lecture Set 0 31

– You will receive 3 – 10 days notice

• 1 in-class Midterm (20%)– Date: Tuesday, November 1rst

• 1 Final Exam (35%)– Date: December 9th, 3:30-6:30pm

• There may also be a Final Exam tutorial (TBD)

Page 32: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Labs

• Lab Test (10%)– Scheduled for week of September 26th

• Sign up for lab pairs on WebCT for oral exam (Sept 26th)

• Demonstration will take place during your lab demo

ENSC 351: Lecture Set 0 32

– Tutorial modules:• Skeleton code and pdf files with instructions available off the

course website

• Handout in your packet

• Completed in pairs, but people will be tested as individuals

Page 33: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Labs (ASB 10808)

• Lab Project (25%)– Teams of 4, subdivided into groups of 2

– Multi-phased, with deliverables set for:• Oct 12th, Oct 26th, Nov 9th

ENSC 351: Lecture Set 0 33

• Oct 12th, Oct 26th, Nov 9th

– Culminates in Final Demo (Nov 23rd) and Final Report (Nov 28th)

– More details in the Lab Project handout to come

Page 34: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Lab Equipment

• Each team (quad) will be given login access to one machine – But first you need to form a lab group and team

ENSC 351: Lecture Set 0 34

• You are responsible for the well being and proper care of the equipment in the lab

• Destruction/vandalism will result in FAILURE of the class

Page 35: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

The Lab

• To get access to a lab account, you need to email Kevan via WebCT with your quad info:

– Email Kevan through WebCT with your quad info: Full Name, Student Number, and login for each member

– Also sign up on the lab sheet on my lab door (ASB

ENSC 351: Lecture Set 0 35

– Also sign up on the lab sheet on my lab door (ASB 8803.1) This is needed to get your lab equipment

• I know we’re covering a lot of details now

– Don’t worry about the project yet (we’ll talk more about it later)

– Get started on your tutorials!

• Any questions?

Page 36: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

The Lab

• The lab computers have been updated with accounts for the lab teams (quad1, quad2, etc)

– Although you should work in your lab groups (pairs) to do the tutorials and prepare for the lab test, you will be using these accounts:

ENSC 351: Lecture Set 0 36

using these accounts:

• REMEMBER: EVERYONE WILL BE TESTED INDIVIDUALLY

• TELL THE REST OF YOUR QUAD WHEN YOU CHANGE THE PASSWORD FOR YOUR ACCOUNT

Page 37: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

The Lab

• Each lab pair should set up their own subdirectory in the team’s workspace to work on the tutorials

– The oral part of your lab test is scheduled for September 26th

ENSC 351: Lecture Set 0 37

September 26th

• You can sign up with your partner for a time slot on WebCTafter you have formed into a quad

– Your lab demo period will be during your lab demo slot on September 28th

• Time slots to follow

• The test format is posted as one of your handouts

Page 38: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Course Webpage

• Course Webpage: – http://www.ensc.sfu.ca/~lshannon/courses/ensc351/.

• Course Handouts will be posted here.

• Lecture Slides will also be posted before each class.

ENSC 351: Lecture Set 0 38

class.

• We will be using WebCT for bulletin board postings only– Do NOT send technical email to myself or the TAs

• A Course Mailing List has been created for last minute updates ENSC351– You cannot send to it (use the bulletin board)

Page 39: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Course Bulletin Board

• All students must regularly check the course bulletin board.

• All course related questions must be posted to the bulletin board.

• You should also post any answers you know

• Postings are set to be anonymous (you can sign your name

ENSC 351: Lecture Set 0 39

• Postings are set to be anonymous (you can sign your name if you like).

• Announcements and hints regarding the labs and project will be posted here.

• Please observe appropriate bulletin board etiquette (be respectful).

• Good citizenship in this course is expected and will be rewarded.

Page 40: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Course Bulletin Board

Please do not use these forums to post any material that is knowingly false and/or defamatory, abusive, vulgar, hateful, obscene, threatening, invasive of a person's privacy, or otherwise in violation of any law. Do not post any copyrighted material unless the copyright is owned by you. I reserve the right to remove any messages posted and to reveal your identity (or

ENSC 351: Lecture Set 0 40

to remove any messages posted and to reveal your identity (or whatever information is known about you) in the event of a complaint or legal action arising from any message posted by you.

By posting your message, you agree to indemnify me, my employees, agents and representatives, and to hold them harmless from any and all claims and liabilities (including lawyers' fees) resulting from any material posted to these forums, or from any acts resulting from participants' use of these forums.

Page 41: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Course Bulletin Board

• The different Bulletin Board Categories are:

– Course Work Related Topics

• Lectures

• Administrative details

ENSC 351: Lecture Set 0 41

• Administrative details

• Lab tutorials

• Projects

– Uncategorized Topics

• Default Topic

• SFU Cafe

Page 42: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Course Reference Material

ENSC 351: Lecture Set 0 42

There is no textbook this year.

Page 43: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Course Reference Material

• The recommended references are:– A good book on C – A good book on Linux

• There are plenty around (on the web even) and I’ve got some suggestions on the next page.

ENSC 351: Lecture Set 0 43

– Corbet et al. Linux Device Drivers 3rd edition (A free pdf version is available online)

– Andrew S. Tanenbaum. Modern Operating Systems (3rd edition) Prentice Hall, 2008 (same as CMPT 300)

– R.J.A Buhr, R.S. Casselman, Use Case Maps for Object-Oriented Systems.

– Extreme Programming:http://www.extremeprogramming.org/

Page 44: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Possible Linux Reference Books

• On the kernel:– D. Bovet and M. Cesati. “Understanding the

Linux Kernel– R. Love. “Linux Kernel Development”– W. Mauerer. “Professional Linux Kernel

ENSC 351: Lecture Set 0 44

– W. Mauerer. “Professional Linux Kernel Architecture”

• On using Linux:– Welsh et al. “Running Linux”– W. Ball “Using Linux”– E. Nemeth et al. “Linux Administration Handbook”– R. Smith “Linux Power Tools”

Page 45: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Course Grade Breakdown

• 10 % Lab Test• 25 % Lab Project• 10 % Two Pop Quizzes• 20 % Midterm• 35 % Final Exam

ENSC 351: Lecture Set 0 45

• 35 % Final Exam• 5 % Class Participation Bonus

Page 46: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Class Participation Bonus

• 5 % Class Participation:

– This course requires team work, and it will be rewarded:

• Making and responding to posts on the course

ENSC 351: Lecture Set 0 46

• Making and responding to posts on the course bulletin board

• In-lecture participation

• Helpng “the team” (fellow classmates) in the lab

Page 47: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Grade Award Breakdown

• > = 90% A+

• 85 – 89% A

• 80 – 84% A-

• 75 – 79% B+

• 70 – 74% B

ENSC 351: Lecture Set 0 47

• 70 – 74% B

• 65 – 69% B-

• 60 – 64% C+

• 55 – 59% C

• 50 – 54% D

• < 50% F

Page 48: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Final comment on grades:

• I don’t scale

– Pro: If everyone does well, everyone gets a good mark

– But there’s always the flip side …

ENSC 351: Lecture Set 0 48

– But there’s always the flip side …

Page 49: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Lecture Topics for the Course

ENSC 351: Lecture Set 0 49

Lecture Topics for the Course

Page 50: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Lecture Topics

• Processor architecture review

• An overview of multi-threaded systems

• Processes and threads

ENSC 351: Lecture Set 0 50

• Processes and threads

• Drawing multithreaded s/w programs (Collaboration Graph Notation)

• Mutexes and semaphores

• Message passing

Page 51: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Lecture Topics

• Timers

• Interrupts

• Priority inheritance

ENSC 351: Lecture Set 0 51

• Priority inheritance

• Resource managers polling and interrupts

• Deadlines and priority

• System reliability (the evil user)

Page 52: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Lecture Topics

• Real time and embedded systems issues

• Using Extreme Programming Techniques for Software Design

ENSC 351: Lecture Set 0 52

• As time permits:

– Intro to Source Code Control and CVS

– Compilers and optimizations

– …

Page 53: Real Time and Embedded Systems - Simon Fraser Universitylshannon/courses/ensc351_11/Lecture...ENSC 351: Lecture Set 0 31 – You will receive 3 – 10 days notice • 1 in-class Midterm

Closing Thoughts

“Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and

ENSC 351: Lecture Set 0 53

Universe trying to produce bigger and better idiots. So far, the Universe is winning.”

- Author Rick Cook, The Wizardry Compiled