CPSC 663 -- Real-Time Systems (Fall 2002)


Time:

MWF 11:30am - 12:20pm

Location:

126 Harvey R. Bright Bldg

Instructor:

Teaching Assistant:

 

Riccardo Bettati
509C Harvey R. Bright Bldg
979-845-5469

 

Soohyun Cho
506 Harvey R. Bright Bldg

 

e-mail: bettati@cs.tamu.edu

 

e-mail:  s0c6496@cs.tamu.edu

 

Office hours: MW 2-3pm, F 9:30am-10:30am, or by appointment

 

Office hours: TBA


 

Schedule

Slides

Video

Tests

HomeWorks

Projects


News

  • December 11: The due date for the projects was announced to be this Friday (Dec 13). You can turn in the projects next week, but I may not be able to grade them in time. Until I turn in the grade, the course will be marked as “incomplete”. (This is not a problem, unless you need the course to graduate this December.)
  • December 7: Don’t forget the final on Monday!
  • December 7:  Discussion of Problem 3 in HW2 is available on the web.
  • November 27: HW2 is available.
  • November 27: Demos for the machine problem are scheduled for Friday, Dec 6th. Please contact the TA for details.
  • November 4: The test application for the machine problem is available here (gzipped tar file).
  • November 4: Exams will be handed out on Nov 6 in class.
  • October 23: A hint for 6.37 in the book is given here. A hint for the optimality of DM is given here.
  • October 11: Our submission deadline for the Challenge Problem has been extended to Nov. 21. This should give us sufficient time to work on it.
  • October 11: The office hours on Friday have been changed from 9:30am-10:30pm to 9:30am-10:30am.
  • October 10: Midterm Exam is scheduled for October 23.
  • October 10: Homework 1 is due by beginning of class on October 21. No delayed submissions will be accepted.
  • October 9: Homework 1 is available. Follow the “HomeWorks” link.
  • October 7: The WPDRTS Challenge Problem is available at http://wpdrts.cs.ohiou.edu/challenge.html.
  • October 6: The handout for MP1 is (finally!) available. Follow the “Projects” link.
  • October 6: Note that we will have no class on October 23.

Course Overview

The advent of integrated services over many forms of networks (Voice-over-IP, sensor networks, multimedia wireless services, etc...) and many forms of multimedia computing, together with the increased use of commercial off-the-shelf technology in embedded systems have raised the general awareness for real-time issues. From being traditionally confined to areas of embedded and/or control systems, where timing constraints have played an important role for a long time, real-time issues now find more and more the interest of the computing community at large. In accordance to these developments, we see real-time facilities increasingly becoming part of general-purpose computing equipment.

This course is designed to provide the student with the theoretical foundations for the design and synthesis of real-time systems and applications; it also presents criteria used to evaluate and validate such systems.

Reading material will expose the student to a small fraction of the classical literature in this area and to recent developments, the latter mostly in the communication area. This course is introductory in nature, and will not have a strong research component to it.


Prerequisites

I will assume that you have a solid background in operating systems, algorithms (if NP completeness is a new concept to you, please stay away from this course; I mean it), networks, and basic queueing theory. Please be aware that the material in this course is very dense, and you won't be able to find much time to develop the required skills on the side.


Material Covered in this Course

Real-time computing means computing so that things get done in time. We will therefore devote much time to how to get things done in time (scheduling) and how to validate that things will be done in time (schedulability analysis). We will then study how operating systems must be designed to support real-time computing, and how some of them are not. Finally, we will devote some time on real-time communication, and how to get it to work in terms of scheduling, architectures, and protocols.

In the second portion of this course, we will study - in quite some detail - deterministic queueing theory. The particular flavor covered in this class will be Network Calculus, which will give you a rather general framework to analyze network elements and their deterministic services in internetworks. Be aware that this part of the course will be quite theoretical.

First Part (Real-Time Systems)

  • Deterministic processor scheduling: system characterization, cyclic executives, priority scheduling, non-periodic workloads.
  • Schedulability analysis: utilization-bound tests, time-demand tests.
  • Real-time synchronization: priority inheritance protocols, priority ceiling protocols, multiprocessor priority ceiling protocols, alternatives to classical synchronization protocols.
  • Non-periodic workloads.
  • Real-time operating systems: issues, case studies.
  • Introduction to real-time communication.

Second Part (Network Calculus)

  • Min-plus and Max-plus Calculus
  • Min-plus and Max-plus System Theory
  • Network Calculus
  • Applications to the Internet

Required Reading

The material covered in the first part of the course follows very closely the textbook Real-Time Systems by Jane W.S. Liu at Illinois (now at Microsoft). Purchase of it is highly recommended.

The second portion of the course will follow the tutorial: Network Calculus: A Theory of Deterministic Queuing Systems for the Internet by J.-Y. LeBoudec and Patrick Thiran. This book appeared as Springer Verlag Lecture Notes in Computer Science (No. 2050), but is available in PDF form on the web as well, at this location.


Homeworks

We will have a non-trivial number of homeworks, which will give you the opportunity to play around with the material covered in class.


Exams

We will have two tests, one for each part of the course. These tests will be rather short, in-class, open-book. The midterm exam will tentatively be held on October 18. A second exam will tentatively be held on December 9th.


Projects

An important part of this class will be a term project. In a few weeks I will be distributing a list of smaller research problems. In addition, I will make available a Request for Solutions. Students can then choose to either attempt to solve a research problem or participate in a competition to provide the best solution in response the the RFS.


Assessment Method

Ideally, grades will be assigned along the following lines:

  • A: Understanding of the material presented in class and in the literature. Strong indication of ability to indipendently develop new ideas based on material learned in class.
  • B: Good understanding of material presented in class and in required reading.
  • C: Unsatisfactory understanding of material presented in class and required reading.
  • D: ....


Back to Bettati's Homepage.


Riccardo Bettati


Last modified: 9/2/2002 10:45AM