CS4220/6235 - Embedded Systems and Real-Time Systems

Fall 2005

Location: College of Computing Building (CCB) 102
Time: MW 4:35-5:55

Instructor: Calton Pu (calton@cc.gatech.edu)
Office: 269 CCB Bldg.
Office hours: by appointment.

TA: Bugra Gedik (bgedik@cc.gatech.edu)
Office: CCB 226B
Office hours: MW 3:30-4:30 CCB 226B or by appointment
Email: please include [CS4220/6235] in the title of your email to get immediate attention

Newsgroup: git.cc.class.cs6235


Announcements:

The official due date for the project reports is December 9! See end of the page for details.

The official due date for the project proposal revisions is (was) October 12!

The official due date for the project proposals is (was) September 28!


Course Description

CS4220 (Embedded Systems) and CS6235 (Real-Time Systems) are co-listed this term. This course covers the principles of real-time and embedded systems inherent in many hardware platforms and applications being developed for engineering and science as well as for ubiquitous systems, including robotics and manufacturing, interactive and multimedia, immersive and omnipresent applications. As part of this course, students will learn about real-time and quality of service system principles, understand real-time operating systems and the resource management and quality of service issues that arise, and construct sample applications on representative platforms. Platforms range from handheld and mobile computers to media and real-time server systems. Platforms may also include specialized systems used in application-specific contexts, such as autonomous robotics, smart sensors, and others.


Homework

All students must submit written commentaries for at least 75% of the classes that involve paper study. The final commentary grade will be based on the average of all commentarries, including the ones not submitted (counted as 0). Each commentary should consist of three paragraphs (not too long, since quality is more important than quantity). The first paragraph should summarize the main ideas and the strong points of the paper. The second paragraph should outline the limitations or weaknesses of the paper. The third paragraph contains your own comments. Commentaries should not be simple cut and paste from the papers -- they should display some understanding of the material and criticism of the work (both pros and cons). Only one commentary is due for each class, and unless indicated otherwise, students may choose which paper to summarize.

Commentaries will be graded by 0 (not submitted), 1 (average), and 2 (good). 0.5 and 1.5 are also possible for commentaries that are slightly below or over the average. Commentaries must be emailed to the TA by class time. The title of the email should be in the form [CS4220/6235] (your last name) (the last name of the first author of the paper you have chosen). Please send your commentaries in plain TXT format placing them in your email. Do NOT attach your commentaries especially in .doc or .pdf format. I appreciate your help.

GTID: For some stats, click here.
If you have any problems accessing your grades, please contact the TA.


Projects

Class projects will use the Unix Solaris and Linux operating systems, both of which offer some facilities for construction and control of real-time systems. Class members have access to selected real-time devices and ubiquitous systems, including smart sensors (skiff boards running Linux), possibly including Lego robots (if there is class interest), including handheld devices and portable PCs (Linux-based PCs and PalmOS/Linux-based handhelds and/or wearables), including camera and other video-based sensors on PCs running Windows or Linux, and they can have access to the commercially most prevalent real-time operating system kernel, called Vxworks, running on Pentium and Sparc machines.

Sample applications available to students include multimedia codes (video and audio), distributed games, sensor processing codes, image processing codes, location identification (if there is class interest) and possibly, distributed virtual environments (again, given class interest).

Sample proposals from last year are here.

Highest rated proposals from this year are here.


Course Outline

NOTE: The paper links are hosted on an internal web server, so you may download them ONLY FROM ON-CAMPUS HOSTS with Georgia Techdomain (gatech.edu), excluding resnet and eastnet. To download files from remote sites, you can ssh any of the CoC or Gatech Linux/Solaris machines and use wget.

Weeks 1 - 2: Basic Concepts and Research Techniques

Weeks 3 - 5: QoS and Feedback

Weeks 6 : Mobile Systems

Weeks 7: Scheduling Algorithms

Weeks 8: Research Results

Weeks 9: Sensor Networks

Weeks 10: Scheduling Algorithms

Weeks 11: Specialization

Weeks 12-13: Industrial Embedded Software

Weeks 14A: QoS Middleware

Weeks 14B-Week 16: Project Presentations

Additional, Possible Class Topics:

Structuring and describing real-time software

Performance Evaluation

Further issues in Real-Time Systems


Note

This class is taught every year, by combining the 4220 and 6235 course numbers. It is suitable for both CoC and non- CoC majors, in part because grades are based on project work, which is defined jointly by the instructor and students. The intent is to ensure some basic skills on the part of each student and also to match both student interests/background and course objectives.


Grading

Each student (or team) will present one course topic in class and also complete a class project. Maximum team size for the project is 3 students. In addition, as part of class homework, all students must submit written commentaries for at least 75% of the papers studied in class, before each paper's presentation.

  1. 60% Project
  2. 20% Commentaries/Class Participation
  3. 20% Student Presentations

Project Presentations and Reports

Presentation Instructions:

Report Instructions:


Useful Links:

Real-time Systems Reading List
Boston University: CS835 Reading List
Ubiquitous Computing Links
Real-Time Resources
Postscript(R) to PDF Converter